--- /dev/null
+1.91 (2013-10-)
+ + Added OpenDingux support (Paul Cercueil).
+ + Revived GP2X/Caanoo/Wiz support.
+ + Switched to cleaner CD controller code from Eke-Eke's Genesis Plus GX.
+ * Fixed overflow issue where cd emulation would break after
+ ~10 minutes of gameplay.
+ * Fixed synchronization issue where model1 CD BIOS would randomly hang.
+
+1.90 (2013-09-24)
+ + 32X+CD emulation has been implemented.
+ + CD graphics processor code has been replaced with much cleaner Eke-Eke's
+ implementation from Genesis Plus GX.
+ + CD PCM code has been completely rewritten.
+ * Various CD compatibility issues have been solved. Hopefully no more
+ regressions this time.
+ * pandora: fixed tv-out (again), added automatic layer switching
+ * libretro: fixed crackling sound for some games, added some core options
+ * sdl: multiple joystick support has been fixed (Victor Luchits)
+
+1.85 (2013-08-31)
+ * Lots of 32X compatibility and accuracy improvements. All commercial games
+ are booting now, but some still have issues.
+ * Fixed some regressions in MegaCD code, like hang in jap BIOS.
+ * Implemented pause for SMS.
+ * Updated UI with improvements from PCSX ReARMed.
+ * Frontend timing has been rewritten, should no longer slowly desync from
+ LCD on pandora.
+ * Added libretro and SDL 32/64bit ports, fixed compatibility issues with
+ Android, iOS.
+ * Various other things I forgot (it has been a while since last release..)
+
+1.80 (2010-09-19)
+ + Added Caanoo support. Now the GP2X binary supports GP2X F100/F200, Wiz
+ and Caanoo. Lots of internal refactoring to support this.
+ + Enabled 32X and SMS code. It's still unfinished but better release something
+ now than wait even more (it has been in development for more then a year now
+ due to various other projects or simply lack of time).
+ + Pandora: added hardware scaler support, including ability to resize the
+ layer and control filtering.
+ + GP2X: Added basic line-doubling vertical scaling option.
+ * Changed the way keys are bound, no need to unbind old one any more.
+ * Handle MP3s with ID3 tags better (some MP3s with ID3 did not play).
+ * Improved shadow/hilight color levels.
+ * Fixed broken cheat support.
+
+1.80beta2
+ * Pandora: updated documentation.
+
+1.80beta1 (2010-06-02)
+ + Added pandora port.
+ * Internal refactoring for 32x/SMS support.
+ * Move mapper database to external file.
+ + Added preliminary SMS emulation.
+ + Added emulation of 32x peripherals including VDP. More work is needed here.
+ + ARM: Added new SH2 recompiler for 32x. Some unification with SVP one.
+ - Disabled most of the above bacause I'm not yet happy with the results.
+
+1.56 (2009-09-19)
+ * Changed sync in Sega CD emulation again. Should fix games that
+ broke after changes in 1.51a.
+ * Fixed default keys rebinding when they shouldn't.
+ * Fixed sram being loaded from wrong game.
+ * Emu should no longer hang shortly after using fast-forward.
+ * Fixed save states sometimes no longer showing up in save state menu.
+ * ARM: some asm code refactoring for slight speed improvement.
+
+1.55
+ + Added Wiz support. Now the same GP2X binary supports F100/F200 and Wiz.
+ * Changed shadow/hilight handling a bit, fixes some effects in Pirates! Gold.
+ * Complete input code rewrite. This fixes some limitations like not allowing
+ to control both players using single input device. It also allows to use
+ more devices (like keyboards) on Linux based devices.
+ * Options menu has been reordered, "restore defaults" option added.
+
+1.51b
+ * Fixed a crash when uncompressed savestate is loaded.
+ * Fixed an idle loop detection related hanging problem.
+ * PSP: fixed another palette related regression.
+ * UIQ3: updated frontend for the latest emu core.
+
+1.51a
+ * Fixed a sync problem between main and sub 68k. Should fix the hanging
+ problem for some games.
+ * ARM: fixed a crash when CD savestate is loaded just after loading ROM.
+
+1.51
+ * Improved bin_to_cso_mp3 tool, it should no longer complain about
+ missing lame.exe even if it's in working dir.
+ * Fixed a regression from 1.50, which caused slowdowns in Final Fight.
+ * Fixed some regressions from 1.50 related to sprite limit and palette
+ handling (caused graphical glitches in some games).
+ + Added ABC turbo actions to key config.
+ * Some other minor adjustments.
+
+1.50
+ + Added some basic support for Sega Pico, a MegaDrive-based toy.
+ + Added proper support for cue/bin images, including cdda playback.
+ .cue sheets with iso/cso/mp3/wav files listed in them are now
+ supported too (but 44kHz restriction still applies).
+ + Added bin_to_cso_mp3 tool, based on Exophase's bin_to_iso_ogg.
+ The tool can convert .cue/.bin Sega CD images to .cso/.mp3.
+ * Greatly improved Sega CD load times.
+ * Changed how scheduling between 68k and z80 is handled. Improves
+ performance for some games. Credits to Lordus for the idea.
+ * YM2612 state was not 100% saved, this should be better now.
+ * Improved renderer performance for shadow/hilight mode.
+ * Added a hack for YM2612 frequency overflow issue (bleep noises
+ in Shaq Fu, Spider-Man - The Animated Series (intro music), etc.)
+ Credits to Nemesis @ spritesmind forum. Works only if sound rate
+ is set to 44kHz.
+ + Implemented some sprite rendering improvements, as suggested by
+ Exophase. Games with lots of sprites now perform better.
+ + Added better idle loop detection, based on Lordus' idea again.
+ - "accurate timing" option removed, as disabling it no longer
+ improves performance.
+ - "accurate sprites" was removed too, the new sprite code can
+ properly handle sprite priorities in all cases.
+ * Timers adjusted again.
+ * Improved .smd detection code.
+ * ARM: fixed a bug in DrZ80 core, which could cause problems in
+ some rare cases.
+ * ARM: fixed a problem of occasional clicks on MP3 music start.
+ * Minor general optimizations and menu improvements.
+ * Fixed a bug in Sega CD savestate loader, where the game would
+ sometimes crash after load.
+ * Fixed a crash of games using eeprom (introduced in 1.40b).
+ * PSP: fixed suspend/resume (hopefully for real).
+
+1.40c
+ * Fixed a problem with sound in Marble Madness.
+ * GP2X: Fixed minor problem with key config.
+
+1.40b
+ * Fixed sprite masking code. Thanks to Lordus for explaining how it works.
+ + Added "disable sprite limit" option.
+ + PSP: added black level adjustment to display options.
+ * Changed reset to act as 'soft' reset.
+ + Added detection for Puggsy (it doesn't really have sram).
+ * Some small timing adjustments.
+
+1.40a
+ * GP2X: Fixed a binding problem with up and down keys.
+ * Default game config no longer overrides global user config.
+
+1.40
+ + Added support for SVP (Sega Virtua Processor) to emulate Virtua Racing,
+ wrote ARM recompiler and some HLE code for VR. Credits to Exophase and
+ Rokas for various ideas.
+ * Changed config file format, files are now human-readable. Game specific
+ configs are now held in single file (but old game config files are still
+ read when new one is missing).
+ * Fixed a bug where some key combos didn't work as expected.
+ * Fixed a regression in renderer (ARM ports only, some graphic glitches in
+ rare cases).
+ * Adjusted fast renderer to work with more games, including VR.
+ * Fixed a problem where SegaCD RAM cart data was getting lost on reset.
+ * GP2X: Greatly reduced SegaCD FMV game slowdowns by disabling read-ahead
+ in the Linux kernel and C library (thanks to Rokas and Exophase for ideas
+ again). Be sure to keep "ReadAhead buffer" OFF to avoid slowdowns.
+ + PicoDrive now comes with a game config file for some games which need
+ special settings, so they should now work out-of-the-box. More games will
+ be added with later updates.
+ + GP2X: Files now can be deleted by pressing A+SELECT in the file browser.
+
+1.35b
+ * PSP: mp3 code should no longer fail on 1.5 firmware.
+ + PSP: added gamma adjustment option.
+ + Added .cso ISO format support. Useful for non-FMV games.
+ * It is now possile to force a region after the ROM is loaded.
+ * Fixed a sram bug in memhandlers (fixes Shining in the Darkness saves).
+ * PSP: fixed another bug in memhanlers, which crashed the emu for some games
+ (like NBA Jam and NHL 9x).
+ + PSP: added suspend/resume handling for Sega CD games.
+ + GP2X: added additional low volume levels for my late-night gaming sessions
+ (in stereo mode only).
+ + GP2X: added "fast forward" action in key config. Not recommended to use for
+ Sega CD, may case problems there.
+ * Some other small tweaks I forgot about.
+
+1.35a
+ * PSP: fixed a bug which prevented to load any ROMs after testing the BIOS.
+ * PSP: fixed incorrect CZ80 memory map setup, which caused Z80 crashes and
+ graphics corruption in EU Mega CD model1 BIOS menus.
+ + PSP: added additional "set to 4:3 scaled" display option for convenience.
+ + PSP: Added an option to disable frame limitter (works only with non-auto frameskip).
+
+1.35
+ + PSP port added. Lots of new code for it. Integrated modified FAME/C, CZ80 cores.
+ + Some minor generic optimizations.
+ * Patched some code which was crashing under PSP, but was working in GP2X/Giz
+ (although it should have crashed there too).
+ * Readme updated.
+
+1.34
+ + Gizmondo port added.
+ + Some new optimizations in memory handlers, and for shadow/hilight mode.
+ + Added some hacks to make more games work without enabling "accurate timing".
+ * Adjusted timing for "accurate timing" mode and added preliminary VDP FIFO
+ emulation. Fixes Double Dragon 2, tearing in Chaos Engine and some other games.
+ * Fixed a few games not having sound at startup.
+ * Updated serial EEPROM code to support more games. Thanks to EkeEke for
+ providing info about additional EEPROM types and game mappers.
+ * The above change fixed hang of NBA Jam.
+ * Minor adjustments to control configurator.
+
+1.33
+ * Updated Cyclone core to 0.0088.
+ + Added A r k's usbjoy fix.
+ + Added "perfect vsync" option, which adjusts GP2X LCD refresh rate and syncs
+ emulation to it to eliminate tearing and ensure smoothest scrolling possible.
+ + Added an option to use A_SN's gamma curve for gamma correction (improves dark
+ and bright color display for mk2s).
+ * Sometimes stray sounds were played after loading a savestate. Fixed.
+ * Fixed a problem where >6MB mp3s were corrupted in memory (sound glitches in
+ Snatcher).
+ * PD no longer overwrites video player code in memory, video player now can be
+ used after exiting PicoDrive.
+ * Fixed a bug which was causing Sonic 3 code to deadlock in some rare conditions
+ if "accurate timing" was not enabled.
+ * Fixed support for large hacked ROMs like "Ultimate Mortal Kombat Trilogy".
+ Upto 10MB hacked ROMs are supported now.
+ + Config profiles added (press left/right when saving config).
+ * Changed key configuration behavior to the one from gpfce (should be more
+ intuitive).
+ + Added some skinning capabilities to the menu system with default skin by
+ ketchupgun. Delete skin directory if you want old behaviour.
+ * Some other little tweaks I forgot about.
+
+1.32
+ + Added some new scaling options.
+ + Added ability to reload CD images while game is running (needed for games
+ with multiple CDs, like Night Trap).
+ + Added RAM cart emulation.
+ * Fixed DMA timing emulation (caused lock-ups for some genesis games).
+ * Idle loop detection was picking up wrong code and causing glitches, fixed.
+ * The ym2612 code on 940 now can handle multiple updates per frame
+ (fixes Thunger Force III "seiren" level drums for example).
+ * Memory handlers were ignoring some writes to PSG chip, fixed (missing sounds in
+ Popful Mail, Silpheed).
+ * Improved z80 timing, should fix some sound problems.
+ * Fixed a bug with sram register (fixes Phantasy Star 4).
+ * ROM loader was incorrectly identifying some ROMs as invalid. Fixed.
+ * Added code for PRG ram write protection register (Dungeon Explorer).
+ * The memory mode register change in 1.31 was unsafe and caused some glitches in
+ AH-3 Thunderstrike. Fixed.
+ * Fixed a file descriptor leak.
+ * Updated documentation, added Gmenu2x manual.
+
+1.31
+ * Changed the way memory mode register is read (fixes Lunar 2, broken in 1.30).
+ * Fixed TAS opcode on sub-68k side (fixes Batman games).
+ * File browser now filters out mp3s, saves and some other files, which are not ROMS.
+
+1.30
+ + ISO files now can be zipped. Note that this causes VERY long loading times.
+ + Added data pre-buffering support, this allows to reduce frequency of short pauses
+ in FMV games (caused by SD access), but makes those pauses longer.
+ * Fixed PCM DMA transfers (intro FMV in Popful Mail).
+ + Properly implemented "decode" data transformation (Jaguar XJ220).
+ * Integrated "better sync" code into cyclone code, what made this mode much faster.
+ * Fixed a bug related to game specific config saving.
+ * Frameskipper was skipping sound processing, what caused some audio desyncs. Fixed.
+ * Fixed reset not working for some games.
+ + New assembly optimized memory handlers for CD (gives at least a few fps).
+ Also re-enabled all optimizations from 0.964 release.
+ + New idle-loop detection code for sub-68k. Speeds up at least a few games.
+
+1.201
+ + Added basic cheat support (GameGenie and Genecyst patches).
+
+1.20
+ * Fixed a long-standing problem in audio mixing code which caused slight distortions
+ at lower sample rates.
+ * Changed the way 920 and 940 communicates (again), should be more reliable and give
+ slight performance increase.
+ * Some optimizations in audio mixing code.
+ * Some menu changes (background added, smaller font in ROM browser, savestate loader
+ now can select slots).
+ + 1M mode DMA transfers implemented (used by FMV games like Night Trap and Sewer Shark).
+ + Games now can run code from WORD RAM in 1M mode (fixes Adventures of Willy Beamish).
+ + "Cell arrange" address mapping is now emulated (Heart of the alien).
+ + "Color numeric operation" is now emulated (text in Lunar 2, Silpheed intro graphics).
+ + "Better sync" option added (prevents some games from hanging).
+
+1.14
+ + Region autodetection now can be customized.
+ * When CDDA music tracks changed, old buffer contents were incorrectly played. Fixed.
+ * BRAM is now automatically formatted (no need to enter BIOS menu and format any more).
+ * Games now can be reset, CDDA music no longer breaks after loading another ISO.
+ * Fixed a race condition between 920 and 940 which sometimes caused CDDA music not to play.
+ + Savestates implemented for Sega/Mega CD.
+ + PCM sound added.
+ * Some mixer code rewritten in asm. 22kHz and 11kHz sound rates are now supported in
+ Mega CD mode (but mp3s must still be 44kHz stereo).
+ + Timer emulation added.
+ * CDC DMA tansfers fixed. Snatcher and probably some more games now boot.
+ * 2M word RAM -> VDP transfers fixed, no more corruption in Ecco and some other games.
+
+1.10
+ + GP2X: Added experimental Sega CD support.
+ + GP2X: Added partial gmv movie playback support.
+
+0.964 (2006-12-03)
+ * GP2X: Fixed a sound buffer underflow issue on lower sample rate modes, which was
+ happening for NTSC games and causing sound clicks.
+ * GP2X: Redone key config to better support USB joysticks (now multiple joysticks
+ should be useable and configurable).
+ + GP2X: Added save confirmation option.
+ + GP2X: Added 940 CPU crash detection.
+ + ALL: UIQ3 port added.
+
+0.963
+ * GP2X: Gamma-reset-on-entering-menu bug fixed.
+ * GP2X: Recompiled PicoDrive with gcc profiling option set as described here:
+ http://www.gp32x.com/board/index.php?showtopic=28490
+
+0.962
+ * GP2X: Fixed an issue with incorrect sounds in some games when dualcore operation
+ was enabled (for example punch sound in SOR).
+ * GP2X: Limited max volume to 90, because higher values often cause distortions.
+ * GP2X: Fixed a bug with lower res scaling.
+ * GP2X: Gamma is now reset on exit.
+
+0.96
+ * ALL: Severely optimized MAME's YM2612 core, part of it is now rewritten in asm.
+ + GP2X: The YM2612's code now can be run in GP2X's ARM940T CPU, what causes large
+ performance increase.
+ * ALL: Accurate renderers are slightly faster now.
+ + GP2X: Using quadruple buffering instead of doublebuffer now, also updated
+ framelimitter, this should eliminate some scrolling and tearing problems.
+ * GP2X: Fixed some flickering issues of 8bit accurate renderer.
+ + GP2X: craigix's RAM timings now can be enabled in the menu (see advanced options).
+ + GP2X: Added ability to save config for specific games only.
+ + GP2X: Gamma control added (using GP2X's hardware capabilities for this).
+ * GP2X: Volume keys are now configurable.
+ + GP2X: GnoStiC added USB joystick support, I made it possible to use it for
+ player 2 control (currently untested).
+ * GP2X: squidgehack is now applied through kernel module (cleaner way).
+
+0.95
+ * ALL: Fixed a bug in sprite renderer which was causing slowdowns for some games.
+ + GP2X: Added command line support
+ + GP2X: Added optional hardware scaling for lower-res games like Shining Force.
+ * ALL: Sound chips are now sampled 2 times per frame. This fixed some games which
+ had missing sounds (Vectorman 2 1st level, Thunder Force 3 water level,
+ etc.).
+ + ALL: Added another accurate 8-bit renderer which is slightly faster and made it
+ default.
+
+0.945
+ + GP2X: Added frame limiter for frameskipped modes.
+ * GP2X: Increased brightness a bit (unused pixel bits now also contain data).
+ * GP2X: Suidgehack was not applied correctly (was applied before allocating some
+ high memory and had no effect).
+
+0.94
+ + Added GP2X port.
+ * Improved interrupt timing, Mazin Saga and Burning Force now works.
+ * Rewritten renderer code to better suit GP2X, should be faster on other
+ ports too.
+ + Added support for banking used by 12-in-1 and 4-in-1 ROMs (thanks Haze).
+ + Added some protection device faking, used by some unlicensed games like
+ Super Bubble Bobble, King of Fighters, Elf Wor, ... (thanks to Haze again)
+ + Added primitive Virtua Racing SVP faking, so menus can be seen now.
+
+0.93
+ * Fixed a problem with P900/P910 key configuration in FC mode.
+ * Improved shadow/hilight mode emulation. Still not perfect, but should be
+ enough for most games.
+ + Save state slots added.
+ + Region selector added.
+
+0.92
+ VDP changes:
+ * VDP emulation is now more accurate (fixes flickering in Chase HQ II,
+ Super Hang-On and some other problems in other games).
+ * HV counter emulation is now much more accurate. Fixes the Asterix games,
+ line in Road Rash 3, etc.
+ * Minor sprite and layer scroll masking bugs fixed.
+ + Added partial interlace mode renderer (Sonic 2 vs mode)
+ * Fixed a crash in both renderers when certain size window layers were used.
+ + Added emulation of shadow/hilight operator sprites. Other shadow/hilight
+ effects are still unemulated.
+ + Sprite emulation is more accurate, sprite limit is emulated.
+ + Added "accurate sprites" option, which always draws sprites in correct
+ order and emulates sprite collision bit, but is significantly slower.
+
+ Emulation changes:
+ * Improved interrupt handling, added deferred interrupt emulation
+ (Lemmings, etc).
+ + Added serial EEPROM SRAM support (Wonder Boy in Monster World,
+ Megaman - The Wily Wars and many EA sports games like NBA Jam).
+ + Implemented ROM banking for Super Street Fighter II - The New Challengers
+ * Updated to the latest version of DrZ80 core, integrated memory handlers
+ in it for better performance. A noticeable performance increase, but save
+ states may not work from the previous version (you can only use them with
+ sound disabled in that case).
+ + SRAM word read handler was using incorrect byte order, fixed.
+
+ Changes in Cyclone 0.0086:
+ + Added missing CHK opcode handler (used by SeaQuest DSV).
+ + Added missing TAS opcode handler (Gargoyles,Bubba N Stix,...). As in real genesis,
+ memory write-back phase is ignored (but can be enabled in config.h if needed).
+ + Added missing NBCD and TRAPV opcode handlers.
+ + Added missing addressing mode for CMP/EOR.
+ + Added some minor optimizations.
+ - Removed 216 handlers for 2927 opcodes which were generated for invalid addressing modes.
+ + Fixed flags for ASL, NEG, NEGX, DIVU, ADDX, SUBX, ROXR.
+ + Bugs fixed in MOVEP, LINK, ADDQ, DIVS handlers.
+ * Undocumented flags for CHK, ABCD, SBCD and NBCD are now emulated the same way as in Musashi.
+ + Added Uninitialized Interrupt emulation.
+ + Altered timing for about half of opcodes to match Musashi's.
+
+0.80
+ * Nearly all VDP code was rewritten in ARM asm. Gives ~10-25% performance
+ increase (depends on game).
+ * Optimized 32-column renderer not to render tiles offscreen, games which
+ use 32-column display (like Shining Force) run ~50% faster.
+ + Added new "Alternative renderer", which gives another ~30-45% performance
+ increase (in addition to mentioned above), but works only with some games,
+ because it is missing some features (it uses tile-based rendering
+ instead of default line-based and disables H-ints).
+ + Added "fit2" display mode for all FC gamers. It always uses 208x146 for
+ P800 and 208x208 for all other phones.
+ + Added volume control for Motorolas (experimental).
+
+ VDP changes:
+ + Added support for vertical window (used by Vapor Trail, Mercs, GRIND
+ Stormer and others).
+ + Added sprite masking (hiding), adds some speed.
+ + Added preliminary H counter emulation. Comix Zone and Sonic 3D Blast
+ special stage are now playable.
+ + Added column based vertical scrolling (Gunstar Heroes battleship level,
+ Sonic and Knuckles lava boss, etc).
+
+ Emulation changes:
+ + Re-added and improved Z80 faking when Z80 is disabled. Many games now can
+ be played without enabling Z80 (Lost Vikings, Syndicate, etc), but some
+ still need it (International Superstar Soccer Deluxe).
+ * Improved ym2612 timers, Outrun music plays at correct speed, voices in
+ Earthworm Jim play better, more games play sound.
+ * I/O registers now remember their values (needed for Pirates! Gold)
+ + Added support for 6 button pad.
+
+ Changes in Cyclone 0.0083wip:
+ + Added missing CHK opcode (used by SeaQuest DSV).
+ + Added missing TAS opcode (Gargoyles). As in real genesis, write-back phase
+ is ignored (but is enabled for other systems).
+
+ Backported stuff from Snes9x:
+ * Fixed Pxxx jog up/down which were not working in game.
+ + Added an option to gzip save states to save space.
+ + The emulator now pauses whenever it is loosing focus, so it will now pause
+ when alarm/ponecall/battery low/... windows come up.
+ - Removed 'pause on phonecall' feature, as it is no longer needed.
+ + Video fix for asian A1000s.
+
+0.70
+ * Started using tools from "Symbian GCC Improvement Project", which give
+ considerable speed increase (~4fps in "center 90" mode).
+ * Rewrote some drawing routines in ARM assembly (gives ~6 more fps in
+ "center 90" mode).
+ * Minor improvement to 0 and 180 "fit" modes. Now they look slightly better
+ and are faster.
+ * Minor stability improvements (emulator is less likely to crash).
+ + Added some background for OSD text for better readability.
+ + Added Pal/NTSC detection. This is needed for proper sound speed.
+ + Implemented Reesy's DrZ80 Z80 emu. Made some changes to it with hope to make
+ it faster.
+ + Implemented ym2612 emu from the MAME project. Runs well but sometimes sounds
+ a bit weird. Could be a little faster, so made some changes too.
+ + Implemented SN76489 emu from the MAME project.
+ + Added two separate sound output methods (mediaserver and cmaudiofb) with
+ autodetection (needs testing).
+ * Fixed VDP DMA fill emulation (as described in Charles MacDonald's docs),
+ fixes Contra and some other games.
+
+0.301
+ Launcher:
+ * Launcher now starts emulation process from current directory,
+ not from hardcoded paths.
+ * Improved 'pause on call' feature, should hopefully work with Motorola phones.
+
+0.30 (2006-01-07)
+ Initial release based on fDave's code.
\r
About\r
-----\r
-\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 smartphones and handheld consoles like GP2X and Pandora).\r
-\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 and expanded by notaz.\r
-\r
-PicoDrive is the first emulator ever to properly emulate Virtua Racing and\r
-it's SVP chip.\r
-\r
+#include "../README"\r
\r
How to make it run\r
------------------\r
* The FM sound core doesn't support all features and has some accuracy issues.\r
\r
\r
-Credits\r
+Changelog\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
+#include "../ChangeLog"\r
\r
-fDave\r
-one who started it all:\r
-Cyclone 68000 core and PicoDrive itself\r
-\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
-Reesy & FluBBa\r
-DrZ80, the Z80 interpreter written in ARM assembly.\r
-Homepage: http://reesy.gp32x.de/ (defunct)\r
-\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
-Eke\r
-CD graphics processor and CD controller implementation (from Genesis Plus GX)\r
-#ifdef PSP\r
\r
-people @ ps2dev.org forums / PSPSDK crew\r
-libaudiocodec code (by cooleyes)\r
-other sample code\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
-* Stephane Dallongeville for writing Gens and making it open source.\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
-* Eke\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
-* Inder for some graphics.\r
-* Anyone else I forgot. You know who you are.\r
+Credits\r
+-------\r
\r
+This emulator is made of the code from following people/projects:\r
\r
-Changelog\r
----------\r
-1.91 (2013-10-)\r
- + Switched to CD controller code from Eke's Genesis Plus GX.\r
- * Fixed overflow issue where cd emulation would break after\r
- ~10 minutes of gameplay\r
-\r
-1.90 (2013-09-24)\r
- + 32X+CD emulation has been implemented.\r
- + CD graphics processor code has been replaced with much cleaner Eke's\r
- implementation from Genesis Plus GX.\r
- + CD PCM code has been completely rewritten.\r
- * Various CD compatibility issues have been solved. Hopefully no more\r
- regressions this time.\r
- * pandora: fixed tv-out (again), added automatic layer switching\r
- * libretro: fixed crackling sound for some games, added some core options\r
- * sdl: multiple joystick support has been fixed (Victor Luchits)\r
-\r
-1.85 (2013-08-31)\r
- * Lots of 32X compatibility and accuracy improvements. All commercial games\r
- are booting now, but some still have issues.\r
- * Fixed some regressions in MegaCD code, like hang in jap BIOS.\r
- * Implemented pause for SMS.\r
- * Updated UI with improvements from PCSX ReARMed.\r
- * Frontend timing has been rewritten, should no longer slowly desync from\r
- LCD on pandora.\r
- * Added libretro and SDL 32/64bit ports, fixed compatibility issues with\r
- Android, iOS.\r
- * Various other things I forgot (it has been a while since last release..)\r
-\r
-1.80 (2010-09-19)\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 (2010-06-02)\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 (2009-09-19)\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 (2006-12-03)\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 (2006-01-07)\r
- Initial release.\r
+#include "../AUTHORS"\r
\r
\r
License\r
-------\r
\r
This program and it's code is released under the terms of MAME license:\r
-\r
- Redistribution and use of this code or any derivative works are permitted\r
- provided that the following conditions are met:\r
-\r
- * Redistributions may not be sold, nor may they be used in a commercial\r
- product or activity.\r
-\r
- * Redistributions that are modified from the original source must include the\r
- complete source code, including the source code for all components used by a\r
- binary built from the modified sources. However, as a special exception, the\r
- source code distributed need not include anything that is normally distributed\r
- (in either source or binary form) with the major components (compiler, kernel,\r
- and so on) of the operating system on which the executable runs, unless that\r
- component itself accompanies the executable.\r
-\r
- * Redistributions must reproduce the above copyright notice, this list of\r
- conditions and the following disclaimer in the documentation and/or other\r
- materials provided with the distribution.\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
+#include "../COPYING"\r
\r
SEGA/Genesis/MegaDrive/SEGA-CD/Mega-CD/32X are trademarks of\r
Sega Enterprises Ltd.\r