+++ /dev/null
-#\r
-PicoDrive 1.xx\r
-\r
-About\r
------\r
-\r
-#ifdef PSP\r
-This is yet another Megadrive / Genesis emulator for PSP, but with\r
-Sega CD / Mega CD support. Although it has been originally written having\r
-ARM CPU based devices in mind, it has now been ported to PSP too, by\r
-replacing ARM specific parts with portable C code.\r
-The base code originates from Dave's (fdave, finalburn) PicoDrive 0.30 for\r
-Pocket PC. The Sega/Mega CD code is roughly based on Stephane Dallongeville's\r
-Gens.\r
-#else\r
-This is yet another Megadrive / Genesis / Sega CD / Mega CD / 32X / SMS\r
-emulator, which was written having ARM-based handheld devices in mind\r
-(such as PDAs, smartphones and handheld consoles like GP2X and Gizmondo\r
-of course).\r
-The emulator is heavily optimized for ARM, features assembly cores for\r
-68k, Z80 and VDP chip emulation, also has dynamic recompilers for SH2 and\r
-SSP16 (for 32X and SVP emulation). It was started by Dave (aka fdave,\r
-finalburn author) as basic Genesis/Megadrive emulator for Pocket PC,\r
-then taken over by notaz and developed primarily for GPH devices.\r
-#endif\r
-\r
-PicoDrive is the first emulator ever to properly emulate Virtua Racing and\r
-it's SVP chip.\r
-\r
-\r
-How to make it run\r
-------------------\r
-\r
-#ifdef GP2X\r
-Extract all files to some directory on your SD and run PicoDrive.gpe from your\r
-GP2X/Wiz/Caanoo menu. The same .gpe supports GP2X F100/F200, Wiz and Caanoo,\r
-there is no need to use separate versions.\r
-Then load a ROM and enjoy! ROMs can be in .smd or .bin format and can be zipped.\r
-Sega/Mega CD images can be in ISO/CSO+MP3/WAV or CUE+BIN formats (read below\r
-for more details).\r
-#endif\r
-#ifdef GIZ\r
-First make sure you have homebrew-enabled Service Pack installed. Then copy\r
-PicoDrive.exe and KGSDK.dll to any place in your filesystem (both files must\r
-be in the same directory) and run PicoDrive.exe using the launcher of your choice\r
-(some of them might require renaming PicoDrive.exe to Autorun.exe, placing it in\r
-the root of SD, etc). Then load a ROM and enjoy! ROMs can be placed anywhere, can\r
-be in .smd or .bin format and can be zipped (one ROM per zip).\r
-#endif\r
-#ifdef PSP\r
-If you are running a custom firmware, just copy the whole PicoDrive directory to\r
-/PSP/GAME or /PSP/GAMEXXX directory in your memory stick (it shouldn't matter\r
-which one GAME* directory to use).\r
-\r
-If you are on 1.5, there is a separate KXploited version for it.\r
-#endif\r
-#ifdef UIQ\r
-Copy SIS and some ROMs to any directory in your memory stick, and install the SIS.\r
-Then load a ROM and enjoy! ROMs can be in .smd or .bin format and can be zipped.\r
-#endif\r
-#ifdef PANDORA\r
-Just copy the .pnd to <sd card>/pandora/menu or <sd card>/pandora/desktop.\r
-#endif\r
-#ifndef UIQ\r
-\r
-This emulator has lots of options with various tweaks (for improved speed mostly),\r
-but it should have best compatibility in it's default config. If suddently you\r
-start getting glitches or change something and forget what, use "Restore defaults"\r
-option.\r
-#endif\r
-\r
-\r
-How to run Sega/Mega CD games\r
------------------------------\r
-\r
-To play any game, you need BIOS files. These files must be copied to\r
-#ifdef UIQ\r
-D:\other\PicoDrive\ directory.\r
-#else\r
-#ifdef PANDORA\r
-<sd card>/pandora/appdata/PicoDrive/ directory\r
-(if you run PicoDrive once it will create that directory for you).\r
-#else\r
-the same directory as PicoDrive files.\r
-#endif\r
-#endif\r
-Files can be named as follows:\r
-\r
-US: us_scd1_9210.bin us_scd2_9306.bin SegaCDBIOS9303.bin\r
-EU: eu_mcd1_9210.bin eu_mcd2_9303.bin eu_mcd2_9306.bin\r
-JP: jp_mcd1_9112.bin jp_mcd1_9111.bin\r
-these files can also be zipped.\r
-\r
-The game must be dumped to ISO/CSO+MP3/WAV or CUE+BIN format. When using\r
-CUE/BIN, you must load .cue file from the menu, or else the emu will not find\r
-audio tracks.\r
-CUE/BIN usually takes a lot of space, so it can be converted to cue/cso/mp3 by\r
-#ifdef PANDORA\r
-using bin_to_cso_mp3 tool, which can be downloaded from:\r
-http://notaz.gp2x.de/releases/misc/bin_to_cso_mp3.zip\r
-See readme in the bin_to_cso_mp3/ directory for details.\r
-#else\r
-using bin_to_cso_mp3 tool, which is included with the emulator. See readme in\r
-the bin_to_cso_mp3/ directory for details.\r
-#endif\r
-\r
-ISO+mp3 files can be named similarly as for other emus.\r
-Here are some examples:\r
-\r
-SonicCD.iso data track\r
-SonicCD_02.mp3 audio track 1 (CD track 2)\r
-SonicCD_03.mp3\r
-...\r
-\r
-Sonic the Hedgehog CD (US) - Track 01.iso\r
-Sonic the Hedgehog CD (US) - Track 02.mp3\r
-Sonic the Hedgehog CD (US) - Track 03.mp3\r
-...\r
-\r
-In case there is a .cue file with properly specified files names in it,\r
-file naming doesn't matter. Just be sure to load .cue from the menu.\r
-\r
-It is very important to have the MP3s encoded at 44kHz sample rate and they\r
-must be stereo, or else they will play too fast/slow or won't play at all.\r
-Be sure NOT to use anything but classic mp3 format (don't use things like\r
-mp3pro).\r
-\r
-ISO files can also be .cso compressed or zipped (but not mp3 files, as they\r
-are already compressed). CSO will cause slightly longer loading times, and\r
-is not very good for FMV games. Zipping ISOs is not recommended, as it will\r
-cause very long (several minute) loading times, and make some games\r
-unplayable. File naming is similar as with uncompressed ISOs.\r
-Example:\r
-\r
-SonicCD.cso data track\r
-SonicCD_02.mp3 audio track 1 (CD track 2)\r
-SonicCD_03.mp3\r
-...\r
-\r
-\r
-Other important stuff\r
----------------------\r
-\r
-* Sega/Mega CD: If the game hangs after Sega logo, you may need to enable\r
- "better sync" and/or "Scale/Rot. fx" options, found in "Sega/Mega CD options"\r
- submenu, and then reset the game. Some other games may also require\r
- "CDDA audio" and "PCM audio" to be enabled to work (enabled by default).\r
- Incorrectly named/missing mp3s may also be the cause.\r
-* Sega/Mega CD: If the background music is missing, you might have named your\r
- MP3s incorrectly. Read "How to run Sega/Mega CD games" section again.\r
-* Sega/Mega CD: If the game music plays too fast/too slow/out of sync, you have\r
- encoded your MP3s incorrectly. You will have to re-encode and/or resample them.\r
- PicoDrive is not a mp3 player, so all mp3s MUST be encoded at 44.1kHz stereo.\r
- Badly encoded mp3s can cause various kind of problems, like noises, incorrect\r
- playback speeds, not repeating music or even prevent game from starting.\r
- Some games (like Snatcher) may hang in certain scenes because of this.\r
- Some mp3 rippers/encoders remove silence and beginning/end of audio tracks,\r
- what causes audio desyncs and/or mentioned problems.\r
- If you have cue/bin rip, you can use the bin_to_cso_mp3 tool (included with\r
- the emulator) to make a proper iso/mp3 rip.\r
-* Sega/Mega CD: If your games hangs at the BIOS screen (with planets shown),\r
- you may be using a bad BIOS dump. Try another from a different source.\r
-* Some Sega/Mega CD games don't use Z80 for anything, but they leave it active,\r
- so disabling Z80 manually (in advanced options) improves performance.\r
-* Use lower bitrate for better performance (96 or 128kbps CBRs recommended).\r
-#ifdef GP2X\r
-* GP2X F100/F200: When you use both GP2X CPUs, keep in mind that you can't\r
- overclock as high as when using ARM920 only. For example my GP2X when run\r
- singlecore can reach 280MHz, but with both cores it's about 250MHz. When\r
- overclocked too much, it may start hanging and producing random noise, or\r
- causing ARM940 crashes ("940 crashed" message displayed).\r
-* GP2X F100/F200: Due to internal implementation mp3s must not be larger that\r
- 12MB (12582912 bytes). Larger mp3s will not be fully loaded.\r
-#endif\r
-\r
-\r
-Configuration\r
--------------\r
-\r
-#ifdef UIQ\r
-#include "config.txt"\r
-#else\r
-@@0. "Save slot"\r
-This is a slot number to use for savestates, when done by a button press outside\r
-menu. This can also be configured to be changed with a button\r
-(see "key configuration").\r
-\r
-@@0. "Frameskip"\r
-How many frames to skip rendering before displaying another.\r
-"Auto" is recommended.\r
-\r
-@@0. "Region"\r
-This option lets you force the game to think it is running on machine from the\r
-specified region, or just to set autodetection order. Also affects Sega/Mega CD.\r
-\r
-@@0. "Show FPS"\r
-Self-explanatory. Format is XX/YY, where XX is the number of rendered frames and\r
-YY is the number of emulated frames per second.\r
-\r
-@@0. "Enable sound"\r
-Does what it says. You must enable at least YM2612 or SN76496 (in advanced options,\r
-see below) for this to make sense (already done by default).\r
-\r
-@@0. "Sound Quality"\r
-#ifdef PSP\r
-Sound sample rate, affects sound quality and emulation performance.\r
-22050Hz setting is the recommended one.\r
-#else\r
-Sound sample rate and stereo mode. Mono is not available in Sega/Mega CD mode.\r
-#endif\r
-\r
-@@0. "Confirm savestate"\r
-Allows to enable confirmation on savestate saving (to prevent savestate overwrites),\r
-on loading (to prevent destroying current game progress), and on both or none, when\r
-using shortcut buttons (not menu) for saving/loading.\r
-\r
-#ifdef GP2X\r
-@@0. "GP2X CPU clocks"\r
-Here you can change clocks of both GP2X's CPUs. Larger values increase performance.\r
-There is no separate option for the second CPU because both CPUs use the same clock\r
-source. Setting this option to 200 will cause PicoDrive NOT to change GP2X's clocks\r
-at all (this is if you use external program to set clock).\r
-#endif\r
-#ifdef PSP\r
-@@0. "CPU/bus clock"\r
-This allows to change CPU and bus clocks for PSP. 333MHz is recommended.\r
-#endif\r
-\r
-@@0. "[Display options]"\r
-Enters Display options menu (see below).\r
-\r
-@@0. "[Sega/Mega CD options]"\r
-Enters Sega/Mega CD options menu (see below).\r
-\r
-@@0. "[32X options]"\r
-Enters 32X options menu (see below).\r
-\r
-@@0. "[Advanced options]"\r
-Enters advanced options menu (see below).\r
-\r
-@@0. "Save cfg as default"\r
-If you save your config here it will be loaded on next ROM load, but only if there\r
-is no game specific config saved (which will be loaded in that case).\r
-You can press left/right to switch to a different config profile.\r
-\r
-@@0. "Save cfg for current game only"\r
-Whenever you load current ROM again these settings will be loaded.\r
-\r
-@@0. "Restore defaults"\r
-Restores all options (except controls) to defaults.\r
-\r
-\r
-Display options\r
----------------\r
-\r
-#ifndef PANDORA\r
-@@1. "Renderer"\r
-#ifdef GP2X\r
-8bit fast:\r
-This enables alternative heavily optimized tile-based renderer, which renders\r
-pixels not line-by-line (this is what accurate renderers do), but in 8x8 tiles,\r
-which is much faster. But because of the way it works it can't render any\r
-mid-frame image changes (raster effects), so it is useful only with some games.\r
-\r
-Other two are accurate line-based renderers. The 8bit is faster but does not\r
-run well with some games like Street Racer.\r
-\r
-#endif\r
-#ifdef GIZ\r
-This option allows to switch between 16bit and 8bit renderers. The 8bit one is\r
-a bit faster for some games, but not much, because colors still need to be\r
-converted to 16bit, as this is what Gizmondo requires. It also introduces\r
-graphics problems for some games, so it's best to use 16bit one.\r
-\r
-#endif\r
-#ifdef PSP\r
-This option allows to switch between fast and accurate renderers. The fast one\r
-is much faster, because it draws the whole frame at a time, instead of doing it\r
-line by line, like the accurate one does. But because of the way it works it\r
-can't render any mid-frame image changes (raster effects), so it is useful only\r
-for some games.\r
-\r
-#endif\r
-#endif\r
-#ifdef GP2X\r
-@@1. "Tearing Fix"\r
-Wiz only: works around the tearing problem by using portrait mode. Causes ~5-10%\r
-performance hit, but eliminates the tearing effect.\r
-\r
-@@1. "Gamma correction"\r
-F100/F200 only: Alters image gamma through GP2X hardware. Larger values make\r
-image to look brighter, lower - darker (default is 1.0).\r
-\r
-@@1. "A_SN's gamma curve"\r
-F100/F200 only: If this is enabled, different gamma adjustment method will be\r
-used (suggested by A_SN from gp32x boards). Intended to be used for F100, makes\r
-difference for dark and bright colors.\r
-\r
-@@1. "Vsync"\r
-This one adjusts the LCD refresh rate to better match game's refresh rate and\r
-starts synchronizing rendering with it. Should make scrolling smoother and\r
-eliminate tearing on F100/F200.\r
-#endif\r
-#ifdef GIZ\r
-@@1. "Scanline mode"\r
-This option was designed to work around slow framebuffer access (the Gizmondo's\r
-main bottleneck) by drawing every other line (even numbered lines only).\r
-This improves performance greatly, but looses detail.\r
-\r
-@@1. "Scale low res mode"\r
-The Genesis/Megadrive had several graphics modes, some of which were only 256\r
-pixels wide. This option scales their width to 320 by using simple\r
-pixel averaging scaling. Works only when 16bit renderer is enabled.\r
-\r
-@@1. "Double buffering"\r
-Draws the display to offscreen buffer, and flips it with visible one when done.\r
-Unfortunately this causes serious tearing, unless v-sync is used (next option).\r
-\r
-@@1. "Wait for V-sync"\r
-Waits for vertical sync before drawing (or flipping buffers, if previous option\r
-is enabled). Emulation is stopped while waiting, so this causes large performance\r
-hit.\r
-#endif\r
-#ifdef PSP\r
-@@1. "Scale factor"\r
-This allows to resize the displayed image by using the PSP's hardware. The number is\r
-used to multiply width and height of the game image to get the size of image to be\r
-displayed. If you just want to make it fullscreen, just use "Set to fullscreen"\r
-setting below.\r
-\r
-@@1. "Hor. scale (for low res. games)"\r
-This one works similarly as the previous setting, but can be used to apply additional\r
-scaling horizontally, and is used for games which use lower (256 pixel wide) Gen/MD\r
-resolution.\r
-\r
-@@1. "Hor. scale (for hi res. games)"\r
-Same as above, only for higher (320 pixel wide) resolution using games.\r
-\r
-@@1. "Bilinear filtering"\r
-If this is enabled, PSP hardware will apply bilinear filtering on the resulting image,\r
-making it smoother, but blurry.\r
-\r
-@@1. "Gamma adjustment"\r
-Color gamma can be adjusted with this.\r
-\r
-@@1. "Black level"\r
-This can be used to reduce unwanted "ghosting" effect for dark games, by making\r
-black pixels brighter. Use in conjunction with "gamma adjustment" for more effect.\r
-\r
-@@1. "Wait for v-sync"\r
-Wait for the screen to finish updating before switching to next frame, to avoid tearing.\r
-There are 3 options:\r
-* never: don't wait for vsync.\r
-* sometimes: wait only if emulator is running fast enough.\r
-* always: always wait (causes emulation slowdown).\r
-\r
-@@1. "Set to unscaled centered"\r
-Adjust the resizing options to set game image to it's original size.\r
-\r
-@@1. "Set to 4:3 scaled"\r
-Scale the image up, but keep 4:3 aspect, by adding black borders.\r
-\r
-@@1. "Set to fullscreen"\r
-Adjust the resizing options to make the game image fullscreen.\r
-#endif\r
-#ifdef PANDORA\r
-Allows to set up scaling, filtering and vertical sync.\r
-#endif\r
-\r
-\r
-Sega/Mega CD options \r
---------------------\r
-\r
-@@2. "CD LEDs"\r
-The Sega/Mega CD unit had two blinking LEDs (red and green) on it. This option\r
-will display them on top-left corner of the screen.\r
-\r
-@@2. "CDDA audio"\r
-This option enables CD audio playback.\r
-\r
-@@2. "PCM audio"\r
-This enables 8 channel PCM sound source. It is required for some games to run,\r
-because they monitor state of this audio chip.\r
-\r
-@@2. "ReadAhead buffer"\r
-This option can prefetch more data from the CD image than requested by game\r
-(to avoid accessing card later), what can improve performance in some cases.\r
-#ifndef PSP\r
-"OFF" is the recommended setting.\r
-#endif\r
-\r
-@@2. "Save RAM cart"\r
-Here you can enable 64K RAM cart. Format it in BIOS if you do.\r
-\r
-@@2. "Scale/Rot. fx"\r
-The Sega/Mega CD had scaling/rotation chip, which allows effects similar to\r
-"Mode 7" effects in SNES. Disabling may improve performance but cause graphical\r
-glitches.\r
-\r
-@@2. "Better sync"\r
-This option is similar to "Perfect synchro" in Gens. Some games require it to run,\r
-for example most (all?) Wolfteam games, and some other ones. Don't use it for\r
-games which don't need it, it will just slow them down.\r
-\r
-\r
-32X options\r
------------\r
-\r
-@@3. "32X enabled"\r
-Enables emulation of addon. Option only takes effect when ROM is reloaded.\r
-\r
-#ifdef GP2X\r
-@@3. "32X renderer"\r
-This currently only affects how the Genesis/MD layers are rendered, which is\r
-same as "Renderer" in display options.\r
-\r
-#endif\r
-@@3. "PWM sound"\r
-Emulates PWM sound portion of 32X hardware. Disabling this may greatly improve\r
-performance for games that dedicate one of SD2s for sound, but will cause\r
-missing sound effects and instruments.\r
-\r
-@@3. "Master SH2 cycles" / "Slave SH2 cycles"\r
-This allows underclocking the 32X CPUs for better emulation performance. The\r
-number has the same meaning as cycles in DOSBox, which is cycles per millisecond.\r
-Underclocking too much may cause various in-game glitches.\r
-\r
-\r
-Advanced configuration\r
-----------------------\r
-\r
-@@4. "Use SRAM/BRAM savestates"\r
-This will automatically read/write SRAM (or BRAM for Sega/Mega CD) savestates for\r
-games which are using them. SRAM is saved whenever you enter the menu or exit the\r
-emulator.\r
-\r
-@@4. "Disable sprite limit"\r
-The MegaDrive/Genesis had a limit on how many sprites (usually smaller moving\r
-objects) can be displayed on single line. This option allows to disable that\r
-limit. Note that some games used this to hide unwanted things, so it is not\r
-always good to enable this option.\r
-\r
-@@4. "Emulate Z80"\r
-Enables emulation of Z80 chip, which was mostly used to drive the other sound chips.\r
-Some games do complex sync with it, so you must enable it even if you don't use\r
-sound to be able to play them.\r
-\r
-@@4. "Emulate YM2612 (FM)"\r
-This enables emulation of six-channel FM sound synthesizer chip, which was used to\r
-produce sound effects and music.\r
-\r
-@@4. "Emulate SN76496 (PSG)"\r
-This enables emulation of PSG (programmable sound generation) sound chip for\r
-additional effects.\r
-\r
-Note: if you change sound settings AFTER loading a ROM, you may need to reset\r
-game to get sound. This is because most games initialize sound chips on\r
-startup, and this data is lost when sound chips are being enabled/disabled.\r
-\r
-@@4. "gzip savestates"\r
-This will always apply gzip compression on your savestates, allowing you to\r
-save some space and load/save time.\r
-\r
-@@4. "Don't save last used ROM"\r
-This will disable writing last used ROM to config on exit (what might cause SD\r
-card corruption according to DaveC).\r
-\r
-@@4. "Disable idle loop patching"\r
-Idle loop patching is used to improve performance, but may cause compatibility\r
-problems in some rare cases. Try disabling this if your game has problems.\r
-\r
-@@4. "Disable frame limiter"\r
-This allows games to run faster then 50/60fps, useful for benchmarking.\r
-\r
-#ifdef GP2X\r
-@@4. "Use ARM940 core for sound"\r
-F100/F200: This option causes PicoDrive to use ARM940T core (GP2X's second CPU)\r
-for sound (i.e. to generate YM2612 samples) to improve performance noticeably.\r
-It also decodes MP3s in Sega/Mega CD mode.\r
-\r
-@@4. "RAM overclock"\r
-This overclocks the GP2X RAM chips for improved performance, but may cause\r
-instability. Keep it enabled if it doesn't cause problems.\r
-\r
-@@4. "MMU hack"\r
-Makes framebuffer bufferable for improved performance. There are no drawbacks\r
-so it should be left enabled.\r
-\r
-@@4. "SVP dynarec"\r
-This enables dynamic recompilation for SVP chip emulated for Virtua Racing game,\r
-what improves it's emulation performance greatly.\r
-#endif\r
-\r
-\r
-Key configuration\r
------------------\r
-\r
-Select "Configure controls" from the main menu. Then select "Player 1" and you will\r
-see two columns. The left column lists names of Genesis/MD controller buttons, and\r
-the right column your handheld ones, which are assigned.\r
-#ifndef PANDORA\r
-If you bind 2 different buttons to the same action, you will get a combo\r
-(which means that you will have to press both buttons for that action to happen).\r
-#endif\r
-\r
-There is also option to enable 6 button pad (will allow you to configure XYZ\r
-buttons), and an option to set turbo rate (in Hz) for turbo buttons.\r
-#ifndef UIQ\r
-\r
-\r
-Cheat support\r
--------------\r
-\r
-To use GG/patch codes, you must type them into your favorite text editor, one\r
-per line. Comments may follow code after a whitespace. Only GameGenie and\r
-Genecyst patch formats are supported.\r
-Examples:\r
-\r
-Genecyst patch (this example is for Sonic):\r
-\r
-00334A:0005 Start with five lives\r
-012D24:0001 Keep invincibility until end of stage\r
-009C76:5478 each ring worth 2\r
-009C76:5678 each ring worth 3\r
-...\r
-\r
-Game Genie patch (for Sonic 2):\r
-\r
-ACLA-ATD4 Hidden palace instead of death egg in level select\r
-...\r
-\r
-Both GG and patch codes can be mixed in one file.\r
-\r
-When the file is ready, name it just like your ROM file, but with additional\r
-.pat extension, making sure that case matches.\r
-\r
-Examples:\r
-\r
-ROM: Sonic.zip\r
-PATCH FILE: Sonic.zip.pat\r
-\r
-ROM: Sonic 2.bin\r
-PATCH FILE: Sonic 2.bin.pat\r
-\r
-Put the file into your ROMs directory. Then load the .pat file as you would\r
-a ROM. Then Cheat Menu Option should appear in main menu.\r
-#endif\r
-\r
-\r
-What is emulated?\r
------------------\r
-\r
-Genesis/MegaDrive:\r
-#ifdef PSP\r
-main 68k @ 7.6MHz: yes, FAME/C core\r
-z80 @ 3.6MHz: yes, CZ80 core\r
-#else\r
-main 68k @ 7.6MHz: yes, Cyclone core\r
-z80 @ 3.6MHz: yes, DrZ80 core\r
-#endif\r
-VDP: yes, except some quirks and modes not used by games\r
-YM2612 FM: yes, optimized MAME core\r
-SN76489 PSG: yes, MAME core\r
-SVP chip: yes! This is first emu to ever do this.\r
-Some in-cart mappers are also supported.\r
-\r
-Sega/Mega CD:\r
-#ifdef PSP\r
-another 68k @ 12.5MHz: yes, FAME/C too\r
-#else\r
-another 68k @ 12.5MHz: yes, Cyclone too\r
-#endif\r
-gfx scaling/rotation chip (custom ASIC): yes\r
-PCM sound source: yes\r
-CD-ROM controller: yes (mostly)\r
-bram (internal backup RAM): yes\r
-\r
-32X:\r
-2x SH2 @ 23MHz: yes, custom recompiler\r
-Super VDP: yes\r
-PWM: yes\r
-\r
-\r
-Problems / limitations\r
-----------------------\r
-\r
-#ifdef PSP\r
-* SVP emulation is terribly slow.\r
-#endif\r
-* Various VDP modes and quirks (window bug, scroll size 2, etc.) are not\r
- emulated, as very few games use this (if any at all).\r
-* The emulator is not 100% accurate, so some things may not work as expected.\r
-* The FM sound core doesn't support all features and has some accuracy issues.\r
-\r
-\r
-Credits\r
--------\r
-\r
-This emulator is made of the code from following people/projects:\r
-\r
-notaz\r
-GP2X, UIQ, PSP, Gizmondo ports, CPU core hacks, dynamic recompilers,\r
-lots of additional coding (see changelog).\r
-Homepage: http://notaz.gp2x.de/\r
-\r
-fDave\r
-one who started it all:\r
-Cyclone 68000 core and PicoDrive itself\r
-\r
-#ifdef PSP\r
-Chui\r
-FAME/C 68k interpreter core\r
-(based on C68K by Stephane Dallongeville)\r
-\r
-Stephane Dallongeville (written), NJ (optimized)\r
-CZ80 Z80 interpreter core\r
-\r
-#else\r
-Reesy & FluBBa\r
-DrZ80, the Z80 interpreter written in ARM assembly.\r
-Homepage: http://reesy.gp32x.de/\r
-\r
-#endif\r
-Tatsuyuki Satoh, Jarek Burczynski, MAME development\r
-software implementation of Yamaha FM sound generator\r
-\r
-MAME development\r
-Texas Instruments SN76489 / SN76496 programmable tone/noise generator\r
-Homepage: http://www.mame.net/\r
-\r
-Stephane Dallongeville\r
-Gens, MD/Mega CD/32X emulator. Most Sega CD code is based on this emu.\r
-#ifdef PSP\r
-\r
-people @ ps2dev.org forums / PSPSDK crew\r
-libaudiocodec code (by cooleyes)\r
-other sample code\r
-#else\r
-\r
-Helix community\r
-Helix mp3 decoder\r
-#endif\r
-\r
-\r
-Additional thanks\r
------------------\r
-\r
-* Charles MacDonald (http://cgfm2.emuviews.com/) for old but still very useful\r
- info about genesis hardware.\r
-* Steve Snake for all that he has done for Genesis emulation scene.\r
-* Tasco Deluxe for his reverse engineering work on SVP and some mappers.\r
-* Bart Trzynadlowski for his SSFII and 68000 docs.\r
-* Haze for his research (http://haze.mameworld.info).\r
-* Lordus, Exophase and Rokas for various ideas.\r
-* Nemesis for his YM2612 research.\r
-* Many posters at spritesmind.net forums for valuable information.\r
-* Mark and Jean-loup for zlib library.\r
-* ketchupgun for the skin.\r
-#ifdef GP2X\r
-* rlyeh and all the other people behind the minimal library.\r
-* Squidge for his famous squidgehack(tm).\r
-* Dzz for his ARM940 sample code.\r
-* A_SN for his gamma code.\r
-* craigix for supplying the GP2X hardware and making this port possible.\r
-* Alex for the icon.\r
-* All the people from gp32x boards for their support.\r
-#endif\r
-#ifdef GIZ\r
-* Kingcdr's for the SDK and Reesy for the DLL and sound code.\r
-* jens.l for supplying the Gizmondo hardware and making this port possible.\r
-#endif\r
-#ifdef UIQ\r
-* Peter van Sebille for his various open-source Symbian projects to learn from.\r
-* Steve Fischer for his open-source Motorola projects.\r
-* The development team behind "Symbian GCC Improvement Project"\r
- (http://www.inf.u-szeged.hu/symbian-gcc/) for their updated pre-SymbianOS9\r
- compile tools.\r
-* AnotherGuest for all his Symbian stuff and support.\r
-#endif\r
-* Inder for some graphics.\r
-* Anyone else I forgot. You know who you are.\r
-\r
-\r
-Changelog\r
----------\r
-1.80\r
- + Added Caanoo support. Now the GP2X binary supports GP2X F100/F200, Wiz\r
- and Caanoo. Lots of internal refactoring to support this.\r
- + Enabled 32X and SMS code. It's still unfinished but better release something\r
- now than wait even more (it has been in development for more then a year now\r
- due to various other projects or simply lack of time).\r
- + Pandora: added hardware scaler support, including ability to resize the\r
- layer and control filtering.\r
- + GP2X: Added basic line-doubling vertical scaling option.\r
- * Changed the way keys are bound, no need to unbind old one any more.\r
- * Handle MP3s with ID3 tags better (some MP3s with ID3 did not play).\r
- * Improved shadow/hilight color levels.\r
- * Fixed broken cheat support.\r
-\r
-1.80beta2\r
- * Pandora: updated documentation.\r
-\r
-1.80beta1\r
- + Added pandora port.\r
- * Internal refactoring for 32x/SMS support.\r
- * Move mapper database to external file.\r
- + Added preliminary SMS emulation.\r
- + Added emulation of 32x peripherals including VDP. More work is needed here.\r
- + ARM: Added new SH2 recompiler for 32x. Some unification with SVP one.\r
- - Disabled most of the above bacause I'm not yet happy with the results.\r
-\r
-1.56\r
- * Changed sync in Sega CD emulation again. Should fix games that\r
- broke after changes in 1.51a.\r
- * Fixed default keys rebinding when they shouldn't.\r
- * Fixed sram being loaded from wrong game.\r
- * Emu should no longer hang shortly after using fast-forward.\r
- * Fixed save states sometimes no longer showing up in save state menu.\r
- * ARM: some asm code refactoring for slight speed improvement.\r
-\r
-1.55\r
- + Added Wiz support. Now the same GP2X binary supports F100/F200 and Wiz.\r
- * Changed shadow/hilight handling a bit, fixes some effects in Pirates! Gold.\r
- * Complete input code rewrite. This fixes some limitations like not allowing\r
- to control both players using single input device. It also allows to use\r
- more devices (like keyboards) on Linux based devices.\r
- * Options menu has been reordered, "restore defaults" option added.\r
-\r
-1.51b\r
- * Fixed a crash when uncompressed savestate is loaded.\r
- * Fixed an idle loop detection related hanging problem.\r
- * PSP: fixed another palette related regression.\r
- * UIQ3: updated frontend for the latest emu core.\r
-\r
-1.51a\r
- * Fixed a sync problem between main and sub 68k. Should fix the hanging\r
- problem for some games.\r
- * ARM: fixed a crash when CD savestate is loaded just after loading ROM.\r
-\r
-1.51\r
- * Improved bin_to_cso_mp3 tool, it should no longer complain about\r
- missing lame.exe even if it's in working dir.\r
- * Fixed a regression from 1.50, which caused slowdowns in Final Fight.\r
- * Fixed some regressions from 1.50 related to sprite limit and palette\r
- handling (caused graphical glitches in some games).\r
- + Added ABC turbo actions to key config.\r
- * Some other minor adjustments.\r
-\r
-1.50\r
- + Added some basic support for Sega Pico, a MegaDrive-based toy.\r
- + Added proper support for cue/bin images, including cdda playback.\r
- .cue sheets with iso/cso/mp3/wav files listed in them are now\r
- supported too (but 44kHz restriction still applies).\r
- + Added bin_to_cso_mp3 tool, based on Exophase's bin_to_iso_ogg.\r
- The tool can convert .cue/.bin Sega CD images to .cso/.mp3.\r
- * Greatly improved Sega CD load times.\r
- * Changed how scheduling between 68k and z80 is handled. Improves\r
- performance for some games. Credits to Lordus for the idea.\r
- * YM2612 state was not 100% saved, this should be better now.\r
- * Improved renderer performance for shadow/hilight mode.\r
- * Added a hack for YM2612 frequency overflow issue (bleep noises\r
- in Shaq Fu, Spider-Man - The Animated Series (intro music), etc.)\r
- Credits to Nemesis @ spritesmind forum. Works only if sound rate\r
- is set to 44kHz.\r
- + Implemented some sprite rendering improvements, as suggested by\r
- Exophase. Games with lots of sprites now perform better.\r
- + Added better idle loop detection, based on Lordus' idea again.\r
- - "accurate timing" option removed, as disabling it no longer\r
- improves performance.\r
- - "accurate sprites" was removed too, the new sprite code can\r
- properly handle sprite priorities in all cases.\r
- * Timers adjusted again.\r
- * Improved .smd detection code.\r
- * ARM: fixed a bug in DrZ80 core, which could cause problems in\r
- some rare cases.\r
- * ARM: fixed a problem of occasional clicks on MP3 music start.\r
- * Minor general optimizations and menu improvements.\r
- * Fixed a bug in Sega CD savestate loader, where the game would\r
- sometimes crash after load.\r
- * Fixed a crash of games using eeprom (introduced in 1.40b).\r
- * PSP: fixed suspend/resume (hopefully for real).\r
-\r
-1.40c\r
- * Fixed a problem with sound in Marble Madness.\r
- * GP2X: Fixed minor problem with key config.\r
-\r
-1.40b\r
- * Fixed sprite masking code. Thanks to Lordus for explaining how it works.\r
- + Added "disable sprite limit" option.\r
- + PSP: added black level adjustment to display options.\r
- * Changed reset to act as 'soft' reset.\r
- + Added detection for Puggsy (it doesn't really have sram).\r
- * Some small timing adjustments.\r
-\r
-1.40a\r
- * GP2X: Fixed a binding problem with up and down keys.\r
- * Default game config no longer overrides global user config.\r
-\r
-1.40\r
- + Added support for SVP (Sega Virtua Processor) to emulate Virtua Racing,\r
- wrote ARM recompiler and some HLE code for VR. Credits to Exophase and\r
- Rokas for various ideas.\r
- * Changed config file format, files are now human-readable. Game specific\r
- configs are now held in single file (but old game config files are still\r
- read when new one is missing).\r
- * Fixed a bug where some key combos didn't work as expected.\r
- * Fixed a regression in renderer (ARM ports only, some graphic glitches in\r
- rare cases).\r
- * Adjusted fast renderer to work with more games, including VR.\r
- * Fixed a problem where SegaCD RAM cart data was getting lost on reset.\r
- * GP2X: Greatly reduced SegaCD FMV game slowdowns by disabling read-ahead\r
- in the Linux kernel and C library (thanks to Rokas and Exophase for ideas\r
- again). Be sure to keep "ReadAhead buffer" OFF to avoid slowdowns.\r
- + PicoDrive now comes with a game config file for some games which need\r
- special settings, so they should now work out-of-the-box. More games will\r
- be added with later updates.\r
- + GP2X: Files now can be deleted by pressing A+SELECT in the file browser.\r
-\r
-1.35b\r
- * PSP: mp3 code should no longer fail on 1.5 firmware.\r
- + PSP: added gamma adjustment option.\r
- + Added .cso ISO format support. Useful for non-FMV games.\r
- * It is now possile to force a region after the ROM is loaded.\r
- * Fixed a sram bug in memhandlers (fixes Shining in the Darkness saves).\r
- * PSP: fixed another bug in memhanlers, which crashed the emu for some games\r
- (like NBA Jam and NHL 9x).\r
- + PSP: added suspend/resume handling for Sega CD games.\r
- + GP2X: added additional low volume levels for my late-night gaming sessions\r
- (in stereo mode only).\r
- + GP2X: added "fast forward" action in key config. Not recommended to use for\r
- Sega CD, may case problems there.\r
- * Some other small tweaks I forgot about.\r
-\r
-1.35a\r
- * PSP: fixed a bug which prevented to load any ROMs after testing the BIOS.\r
- * PSP: fixed incorrect CZ80 memory map setup, which caused Z80 crashes and\r
- graphics corruption in EU Mega CD model1 BIOS menus.\r
- + PSP: added additional "set to 4:3 scaled" display option for convenience.\r
- + PSP: Added an option to disable frame limitter (works only with non-auto frameskip).\r
-\r
-1.35\r
- + PSP port added. Lots of new code for it. Integrated modified FAME/C, CZ80 cores.\r
- + Some minor generic optimizations.\r
- * Patched some code which was crashing under PSP, but was working in GP2X/Giz\r
- (although it should have crashed there too).\r
- * Readme updated.\r
-\r
-1.34\r
- + Gizmondo port added.\r
- + Some new optimizations in memory handlers, and for shadow/hilight mode.\r
- + Added some hacks to make more games work without enabling "accurate timing".\r
- * Adjusted timing for "accurate timing" mode and added preliminary VDP FIFO\r
- emulation. Fixes Double Dragon 2, tearing in Chaos Engine and some other games.\r
- * Fixed a few games not having sound at startup.\r
- * Updated serial EEPROM code to support more games. Thanks to EkeEke for\r
- providing info about additional EEPROM types and game mappers.\r
- * The above change fixed hang of NBA Jam.\r
- * Minor adjustments to control configurator.\r
-\r
-1.33\r
- * Updated Cyclone core to 0.0088.\r
- + Added A r k's usbjoy fix.\r
- + Added "perfect vsync" option, which adjusts GP2X LCD refresh rate and syncs\r
- emulation to it to eliminate tearing and ensure smoothest scrolling possible.\r
- + Added an option to use A_SN's gamma curve for gamma correction (improves dark\r
- and bright color display for mk2s).\r
- * Sometimes stray sounds were played after loading a savestate. Fixed.\r
- * Fixed a problem where >6MB mp3s were corrupted in memory (sound glitches in\r
- Snatcher).\r
- * PD no longer overwrites video player code in memory, video player now can be\r
- used after exiting PicoDrive.\r
- * Fixed a bug which was causing Sonic 3 code to deadlock in some rare conditions\r
- if "accurate timing" was not enabled.\r
- * Fixed support for large hacked ROMs like "Ultimate Mortal Kombat Trilogy".\r
- Upto 10MB hacked ROMs are supported now.\r
- + Config profiles added (press left/right when saving config).\r
- * Changed key configuration behavior to the one from gpfce (should be more\r
- intuitive).\r
- + Added some skinning capabilities to the menu system with default skin by\r
- ketchupgun. Delete skin directory if you want old behaviour.\r
- * Some other little tweaks I forgot about.\r
-\r
-1.32\r
- + Added some new scaling options.\r
- + Added ability to reload CD images while game is running (needed for games\r
- with multiple CDs, like Night Trap).\r
- + Added RAM cart emulation.\r
- * Fixed DMA timing emulation (caused lock-ups for some genesis games).\r
- * Idle loop detection was picking up wrong code and causing glitches, fixed.\r
- * The ym2612 code on 940 now can handle multiple updates per frame\r
- (fixes Thunger Force III "seiren" level drums for example).\r
- * Memory handlers were ignoring some writes to PSG chip, fixed (missing sounds in\r
- Popful Mail, Silpheed).\r
- * Improved z80 timing, should fix some sound problems.\r
- * Fixed a bug with sram register (fixes Phantasy Star 4).\r
- * ROM loader was incorrectly identifying some ROMs as invalid. Fixed.\r
- * Added code for PRG ram write protection register (Dungeon Explorer).\r
- * The memory mode register change in 1.31 was unsafe and caused some glitches in\r
- AH-3 Thunderstrike. Fixed.\r
- * Fixed a file descriptor leak.\r
- * Updated documentation, added Gmenu2x manual.\r
-\r
-1.31\r
- * Changed the way memory mode register is read (fixes Lunar 2, broken in 1.30).\r
- * Fixed TAS opcode on sub-68k side (fixes Batman games).\r
- * File browser now filters out mp3s, saves and some other files, which are not ROMS.\r
-\r
-1.30\r
- + ISO files now can be zipped. Note that this causes VERY long loading times.\r
- + Added data pre-buffering support, this allows to reduce frequency of short pauses\r
- in FMV games (caused by SD access), but makes those pauses longer.\r
- * Fixed PCM DMA transfers (intro FMV in Popful Mail).\r
- + Properly implemented "decode" data transformation (Jaguar XJ220).\r
- * Integrated "better sync" code into cyclone code, what made this mode much faster.\r
- * Fixed a bug related to game specific config saving.\r
- * Frameskipper was skipping sound processing, what caused some audio desyncs. Fixed.\r
- * Fixed reset not working for some games.\r
- + New assembly optimized memory handlers for CD (gives at least a few fps).\r
- Also re-enabled all optimizations from 0.964 release.\r
- + New idle-loop detection code for sub-68k. Speeds up at least a few games.\r
-\r
-1.201\r
- + Added basic cheat support (GameGenie and Genecyst patches).\r
-\r
-1.20\r
- * Fixed a long-standing problem in audio mixing code which caused slight distortions\r
- at lower sample rates.\r
- * Changed the way 920 and 940 communicates (again), should be more reliable and give\r
- slight performance increase.\r
- * Some optimizations in audio mixing code.\r
- * Some menu changes (background added, smaller font in ROM browser, savestate loader\r
- now can select slots).\r
- + 1M mode DMA transfers implemented (used by FMV games like Night Trap and Sewer Shark).\r
- + Games now can run code from WORD RAM in 1M mode (fixes Adventures of Willy Beamish).\r
- + "Cell arrange" address mapping is now emulated (Heart of the alien).\r
- + "Color numeric operation" is now emulated (text in Lunar 2, Silpheed intro graphics).\r
- + "Better sync" option added (prevents some games from hanging).\r
-\r
-1.14\r
- + Region autodetection now can be customized.\r
- * When CDDA music tracks changed, old buffer contents were incorrectly played. Fixed.\r
- * BRAM is now automatically formatted (no need to enter BIOS menu and format any more).\r
- * Games now can be reset, CDDA music no longer breaks after loading another ISO.\r
- * Fixed a race condition between 920 and 940 which sometimes caused CDDA music not to play.\r
- + Savestates implemented for Sega/Mega CD.\r
- + PCM sound added.\r
- * Some mixer code rewritten in asm. 22kHz and 11kHz sound rates are now supported in\r
- Mega CD mode (but mp3s must still be 44kHz stereo).\r
- + Timer emulation added.\r
- * CDC DMA tansfers fixed. Snatcher and probably some more games now boot.\r
- * 2M word RAM -> VDP transfers fixed, no more corruption in Ecco and some other games.\r
-\r
-1.10\r
- + GP2X: Added experimental Sega CD support.\r
- + GP2X: Added partial gmv movie playback support.\r
-\r
-0.964\r
- * GP2X: Fixed a sound buffer underflow issue on lower sample rate modes, which was\r
- happening for NTSC games and causing sound clicks.\r
- * GP2X: Redone key config to better support USB joysticks (now multiple joysticks\r
- should be useable and configurable).\r
- + GP2X: Added save confirmation option.\r
- + GP2X: Added 940 CPU crash detection.\r
- + ALL: UIQ3 port added.\r
-\r
-0.963\r
- * GP2X: Gamma-reset-on-entering-menu bug fixed.\r
- * GP2X: Recompiled PicoDrive with gcc profiling option set as described here:\r
- http://www.gp32x.com/board/index.php?showtopic=28490\r
-\r
-0.962\r
- * GP2X: Fixed an issue with incorrect sounds in some games when dualcore operation\r
- was enabled (for example punch sound in SOR).\r
- * GP2X: Limited max volume to 90, because higher values often cause distortions.\r
- * GP2X: Fixed a bug with lower res scaling.\r
- * GP2X: Gamma is now reset on exit.\r
-\r
-0.96\r
- * ALL: Severely optimized MAME's YM2612 core, part of it is now rewritten in asm.\r
- + GP2X: The YM2612's code now can be run in GP2X's ARM940T CPU, what causes large\r
- performance increase.\r
- * ALL: Accurate renderers are slightly faster now.\r
- + GP2X: Using quadruple buffering instead of doublebuffer now, also updated\r
- framelimitter, this should eliminate some scrolling and tearing problems.\r
- * GP2X: Fixed some flickering issues of 8bit accurate renderer.\r
- + GP2X: craigix's RAM timings now can be enabled in the menu (see advanced options).\r
- + GP2X: Added ability to save config for specific games only.\r
- + GP2X: Gamma control added (using GP2X's hardware capabilities for this).\r
- * GP2X: Volume keys are now configurable.\r
- + GP2X: GnoStiC added USB joystick support, I made it possible to use it for\r
- player 2 control (currently untested).\r
- * GP2X: squidgehack is now applied through kernel module (cleaner way).\r
-\r
-0.95\r
- * ALL: Fixed a bug in sprite renderer which was causing slowdowns for some games.\r
- + GP2X: Added command line support\r
- + GP2X: Added optional hardware scaling for lower-res games like Shining Force.\r
- * ALL: Sound chips are now sampled 2 times per frame. This fixed some games which\r
- had missing sounds (Vectorman 2 1st level, Thunder Force 3 water level,\r
- etc.).\r
- + ALL: Added another accurate 8-bit renderer which is slightly faster and made it\r
- default.\r
-\r
-0.945\r
- + GP2X: Added frame limiter for frameskipped modes.\r
- * GP2X: Increased brightness a bit (unused pixel bits now also contain data).\r
- * GP2X: Suidgehack was not applied correctly (was applied before allocating some\r
- high memory and had no effect).\r
-\r
-0.94\r
- + Added GP2X port.\r
- * Improved interrupt timing, Mazin Saga and Burning Force now works.\r
- * Rewritten renderer code to better suit GP2X, should be faster on other\r
- ports too.\r
- + Added support for banking used by 12-in-1 and 4-in-1 ROMs (thanks Haze).\r
- + Added some protection device faking, used by some unlicensed games like\r
- Super Bubble Bobble, King of Fighters, Elf Wor, ... (thanks to Haze again)\r
- + Added primitive Virtua Racing SVP faking, so menus can be seen now.\r
-\r
-0.93\r
- * Fixed a problem with P900/P910 key configuration in FC mode.\r
- * Improved shadow/hilight mode emulation. Still not perfect, but should be\r
- enough for most games.\r
- + Save state slots added.\r
- + Region selector added.\r
-\r
-0.92\r
- VDP changes:\r
- * VDP emulation is now more accurate (fixes flickering in Chase HQ II,\r
- Super Hang-On and some other problems in other games).\r
- * HV counter emulation is now much more accurate. Fixes the Asterix games,\r
- line in Road Rash 3, etc.\r
- * Minor sprite and layer scroll masking bugs fixed.\r
- + Added partial interlace mode renderer (Sonic 2 vs mode)\r
- * Fixed a crash in both renderers when certain size window layers were used.\r
- + Added emulation of shadow/hilight operator sprites. Other shadow/hilight\r
- effects are still unemulated.\r
- + Sprite emulation is more accurate, sprite limit is emulated.\r
- + Added "accurate sprites" option, which always draws sprites in correct\r
- order and emulates sprite collision bit, but is significantly slower.\r
-\r
- Emulation changes:\r
- * Improved interrupt handling, added deferred interrupt emulation\r
- (Lemmings, etc).\r
- + Added serial EEPROM SRAM support (Wonder Boy in Monster World,\r
- Megaman - The Wily Wars and many EA sports games like NBA Jam).\r
- + Implemented ROM banking for Super Street Fighter II - The New Challengers\r
- * Updated to the latest version of DrZ80 core, integrated memory handlers\r
- in it for better performance. A noticeable performance increase, but save\r
- states may not work from the previous version (you can only use them with\r
- sound disabled in that case).\r
- + SRAM word read handler was using incorrect byte order, fixed.\r
-\r
- Changes in Cyclone 0.0086:\r
- + Added missing CHK opcode handler (used by SeaQuest DSV).\r
- + Added missing TAS opcode handler (Gargoyles,Bubba N Stix,...). As in real genesis,\r
- memory write-back phase is ignored (but can be enabled in config.h if needed).\r
- + Added missing NBCD and TRAPV opcode handlers.\r
- + Added missing addressing mode for CMP/EOR.\r
- + Added some minor optimizations.\r
- - Removed 216 handlers for 2927 opcodes which were generated for invalid addressing modes.\r
- + Fixed flags for ASL, NEG, NEGX, DIVU, ADDX, SUBX, ROXR.\r
- + Bugs fixed in MOVEP, LINK, ADDQ, DIVS handlers.\r
- * Undocumented flags for CHK, ABCD, SBCD and NBCD are now emulated the same way as in Musashi.\r
- + Added Uninitialized Interrupt emulation.\r
- + Altered timing for about half of opcodes to match Musashi's.\r
-\r
-0.80\r
- * Nearly all VDP code was rewritten in ARM asm. Gives ~10-25% performance\r
- increase (depends on game).\r
- * Optimized 32-column renderer not to render tiles offscreen, games which\r
- use 32-column display (like Shining Force) run ~50% faster.\r
- + Added new "Alternative renderer", which gives another ~30-45% performance\r
- increase (in addition to mentioned above), but works only with some games,\r
- because it is missing some features (it uses tile-based rendering\r
- instead of default line-based and disables H-ints).\r
- + Added "fit2" display mode for all FC gamers. It always uses 208x146 for\r
- P800 and 208x208 for all other phones.\r
- + Added volume control for Motorolas (experimental).\r
-\r
- VDP changes:\r
- + Added support for vertical window (used by Vapor Trail, Mercs, GRIND\r
- Stormer and others).\r
- + Added sprite masking (hiding), adds some speed.\r
- + Added preliminary H counter emulation. Comix Zone and Sonic 3D Blast\r
- special stage are now playable.\r
- + Added column based vertical scrolling (Gunstar Heroes battleship level,\r
- Sonic and Knuckles lava boss, etc).\r
-\r
- Emulation changes:\r
- + Re-added and improved Z80 faking when Z80 is disabled. Many games now can\r
- be played without enabling Z80 (Lost Vikings, Syndicate, etc), but some\r
- still need it (International Superstar Soccer Deluxe).\r
- * Improved ym2612 timers, Outrun music plays at correct speed, voices in\r
- Earthworm Jim play better, more games play sound.\r
- * I/O registers now remember their values (needed for Pirates! Gold)\r
- + Added support for 6 button pad.\r
-\r
- Changes in Cyclone 0.0083wip:\r
- + Added missing CHK opcode (used by SeaQuest DSV).\r
- + Added missing TAS opcode (Gargoyles). As in real genesis, write-back phase\r
- is ignored (but is enabled for other systems).\r
-\r
- Backported stuff from Snes9x:\r
- * Fixed Pxxx jog up/down which were not working in game.\r
- + Added an option to gzip save states to save space.\r
- + The emulator now pauses whenever it is loosing focus, so it will now pause\r
- when alarm/ponecall/battery low/... windows come up.\r
- - Removed 'pause on phonecall' feature, as it is no longer needed.\r
- + Video fix for asian A1000s.\r
-\r
-0.70\r
- * Started using tools from "Symbian GCC Improvement Project", which give\r
- considerable speed increase (~4fps in "center 90" mode).\r
- * Rewrote some drawing routines in ARM assembly (gives ~6 more fps in\r
- "center 90" mode).\r
- * Minor improvement to 0 and 180 "fit" modes. Now they look slightly better\r
- and are faster.\r
- * Minor stability improvements (emulator is less likely to crash).\r
- + Added some background for OSD text for better readability.\r
- + Added Pal/NTSC detection. This is needed for proper sound speed.\r
- + Implemented Reesy's DrZ80 Z80 emu. Made some changes to it with hope to make\r
- it faster.\r
- + Implemented ym2612 emu from the MAME project. Runs well but sometimes sounds\r
- a bit weird. Could be a little faster, so made some changes too.\r
- + Implemented SN76489 emu from the MAME project.\r
- + Added two separate sound output methods (mediaserver and cmaudiofb) with\r
- autodetection (needs testing).\r
- * Fixed VDP DMA fill emulation (as described in Charles MacDonald's docs),\r
- fixes Contra and some other games.\r
-\r
-0.301\r
- Launcher:\r
- * Launcher now starts emulation process from current directory,\r
- not from hardcoded paths.\r
- * Improved 'pause on call' feature, should hopefully work with Motorola phones.\r
-\r
-0.30\r
- Initial release.\r
-\r
-\r
-Disclaimer\r
-----------\r
-\r
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" \r
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE \r
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE \r
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE \r
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR \r
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF \r
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS \r
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN \r
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) \r
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE \r
-POSSIBILITY OF SUCH DAMAGE. \r
-\r
-SEGA/Genesis/MegaDrive/SEGA-CD/Mega-CD/32X are trademarks of\r
-Sega Enterprises Ltd.\r
-\r