mirror of
https://github.com/ekeeke/Genesis-Plus-GX.git
synced 2024-12-27 11:41:48 +01:00
695 lines
41 KiB
Plaintext
695 lines
41 KiB
Plaintext
--------------------
|
|
Genesis Plus History
|
|
--------------------
|
|
|
|
All recent changes were backported from the GX version (Gamecube/Wii port), maintained by Eke-Eke.
|
|
Please look at http://code.google.com/p/genplus-gx/ for more infos.
|
|
|
|
|
|
---------------------------------------------------------------------------------------------------------
|
|
Genesis Plus GX 1.7.4 (21/06/2013) (Eke-Eke)
|
|
---------------------------------------------------------------------------------------------------------
|
|
|
|
[Core/SCD]
|
|
---------------
|
|
* fixed access to read-only registers on Main-CPU side ("Batman Returns" platform level freeze)
|
|
* fixed & improved emulation of PRG-RAM write protection register ("Lunar Eternal Blue" japanese version freeze)
|
|
* improved SUB & MAIN-CPU synchronization ("Dracula Unleashed" freeze when using US Model 2 BIOS)
|
|
* improved CPU polling detection
|
|
* improved CDD emulation & added CD drive access time for SEEK command ("Panic!/Switch" intro missing scene)
|
|
* added missing reinitialization of MAIN-CPU PRG-RAM bank on reset
|
|
* added .OGG audio tracks support through LIBTREMOR
|
|
|
|
[Core/Sound]
|
|
---------------
|
|
* fixed YM2612 configurable DAC depth emulation
|
|
* improved Low-Pass filter
|
|
* added optional "MONO" output mode
|
|
|
|
[Core/VDP]
|
|
---------------
|
|
* fixed FIFO access timings when using invalid write code value ("Clue" menu)
|
|
* fixed DMA Copy with undocumented code value ("Fatal Labyrinth" end sequence)
|
|
* minor code fixes & optimizations
|
|
|
|
[Core/CPU]
|
|
---------------
|
|
* optimized 68k stack read/write functions
|
|
* fixed broken 68k address error emulation
|
|
* fixed 68k interrupt behavior (prevents interrupts from being executed multiple time when 68k is halted)
|
|
* fixed Z80 registers initial state, added proper initialization when using PBC (verified on real hardware by Charles McDonald)
|
|
|
|
[Core/MD]
|
|
---------------
|
|
* fixed SRAM incompatibilities between BIG ENDIAN & LITTLE ENDIAN platforms (note: this breaks old .srm files with LITTLE ENDIAN platform ports)
|
|
* added support for a few recently dumped unlicensed games
|
|
* added auto-detection of byte-swapped ROM files
|
|
|
|
|
|
---------------------------------------------------------------------------------------------------------
|
|
Genesis Plus GX 1.7.3 (26/11/2012) (Eke-Eke)
|
|
---------------------------------------------------------------------------------------------------------
|
|
|
|
no win32/SDL port changes
|
|
|
|
|
|
---------------------------------------------------------------------------------------------------------
|
|
Genesis Plus GX 1.7.2 (24/11/2012) (Eke-Eke)
|
|
---------------------------------------------------------------------------------------------------------
|
|
|
|
[Core/SCD]
|
|
---------------
|
|
* added default TOC for Shadow of the Beast II (prevent hangs when audio tracks are missing)
|
|
* fixed CD-DA fader muting
|
|
* fixed PCM channels panning on reset
|
|
* fixed backup RAM file management when using disc swap with Mode 1 cartridge
|
|
* incremented CD drive read latency: fixes Space Adventure Cobra (freeze when opening coffin at 2nd morgue scene)
|
|
* improved CDD emulation accuracy: fixes Snatcher (freeze at the end of Act 2) & various CD player bugs
|
|
* improved MAIN-SUB memory map mirroring in SCD mode (verified on real hardware by Charles McDonald)
|
|
* implemented cycle-accurate "stopwatch" register emulation
|
|
|
|
[Core/Sound]
|
|
---------------
|
|
* fixed broken PSG noise frequency
|
|
* fixed incorrect Game Gear PSG stereo emulation
|
|
* implemented cycle-accurate Game Gear PSG stereo
|
|
|
|
[Core/VDP]
|
|
---------------
|
|
* fixed broken VDP DMA from SVP ROM latency (graphic errors in Virtua Racing)
|
|
|
|
[Core/MD]
|
|
---------------
|
|
* added Super Mario World 64 (unlicensed) cartridge hardware emulation
|
|
|
|
[Core/Input]
|
|
---------------
|
|
* added automatic detection for CD games with Justifier/Menacer support
|
|
* improved Justifier/Menacer emulation
|
|
|
|
|
|
---------------------------------------------------------------------------------------------------------
|
|
Genesis Plus GX 1.7.1 (13/10/2012) (Eke-Eke)
|
|
---------------------------------------------------------------------------------------------------------
|
|
|
|
[Core/SCD]
|
|
---------------
|
|
* added support for CUE files
|
|
* added CD-DA tracks emulation (needs CUE+BIN or ISO+WAV images)
|
|
* added CD fader emulation
|
|
* added CDD "Fast FW" & "Fast RW" commands emulation
|
|
* improved CDD TOC emulation (random freezes in Sonic CD, Switch/Panic, Final Fight CD and probably many others)
|
|
* improved PCM chip synchronization with SUB-CPU (missing speeches in Willy Beamish)
|
|
* fixed PCM chip emulation (random hangs in Snatcher, missing sound effects in Switch/Panic, Final Fight CD, Wonderdog...)
|
|
* fixed Word-RAM memory mode on soft-reset (missing logo gfx effects)
|
|
* fixed SUB-CPU access to unused areas when using PC-relative instructions (Final Fight CD first boss random crash)
|
|
* fixed CPU idle loop detection on memory mode register access (Pugsy CD first boss slowdown)
|
|
* fixed Mode 1 emulation (cartridge boot mode)
|
|
|
|
[Core/Sound]
|
|
---------------
|
|
* replaced FIR resampler by Blip Buffer for FM resampling
|
|
* modified SN76489 core for use of Blip Buffer
|
|
* improved PSG & FM chips synchronization using Blip Buffer
|
|
* added Game Gear PSG stereo support
|
|
* fixed SG-1000 specific PSG noise
|
|
* fixed YM2612 LFO AM waveform (California Games surfing event)
|
|
* fixed YM2612 phase precision
|
|
* minor optimizations to YM2612 core
|
|
|
|
[Core/Game Gear]
|
|
---------------
|
|
* added support for CJ Elephant Fugitive (recently released by SMS Power)
|
|
* added Game Gear extended screen option
|
|
|
|
[Core/Genesis]
|
|
---------------
|
|
* added support for a few recently dumped (but unreleased) games
|
|
|
|
[Core/General]
|
|
---------------
|
|
* improved ROM & CD image file loading
|
|
* various code cleanup
|
|
|
|
|
|
---------------------------------------------------------------------------------------------------------
|
|
Genesis Plus GX 1.7.0 (01/07/2012) (Eke-Eke)
|
|
---------------------------------------------------------------------------------------------------------
|
|
|
|
[Core/SCD]
|
|
---------------
|
|
* added Mega CD / Sega CD hardware emulation (incl. Sub 68K, CDD, CDC, PCM, GFX rotation/scaling, etc)
|
|
* added .ISO & .BIN CD image file support
|
|
* added 512K backup cartridge RAM support
|
|
* added savestate support for CD games
|
|
|
|
NOTES:
|
|
~~~~~~
|
|
* to play CD games, original BIOS ROM files are required in /genplus/bios/ directory: unzip & rename them to bios_CD_U.bin, bios_CD_E.bin, bios_CD_J.bin
|
|
* CD audio tracks (CD-DA) are not supported (yet)
|
|
|
|
[Core/CPU]
|
|
---------------
|
|
* modified 68k core for Mega CD / Sega CD support
|
|
* optimized 68k core using prebuild const tables
|
|
|
|
[Core/VDP]
|
|
---------------
|
|
* improved DMA accuracy
|
|
* improved accuracy of nametables register & VSRAM writes during HBLANK: fixes "The Adventures of Batman & Robin" (graphical issues during 2nd Boss fight).
|
|
* added support for 8-bit VRAM writes with undocumented code value (verified on real hardware by Nemesis)
|
|
|
|
[Core/Sound]
|
|
---------------
|
|
* improved synchronization between SN76489 & YM2162 cores.
|
|
* improved accuracy of SN76489 core timings.
|
|
|
|
[Core/MD]
|
|
---------------
|
|
* added support for some recently dumped unlicensed games.
|
|
* improved emulation of 32k bankswitch hardware used by a few unlicensed games.
|
|
* fixed behavior of Z80 banked reads from 68k RAM (verified on real hardware).
|
|
* fixed support for 128K Pro Action Replay ROM.
|
|
|
|
[Core/MS]
|
|
---------------
|
|
* added support for all recent korean ROM dumps by SMS Power.
|
|
* added emulation of korean multi-game mapper (4-Pak All Action)
|
|
* added pseudo-random RAM pattern initialization on Mark-III and Japanese Master System (fixes "Alibaba and 40 Thieves" & "Block Hole")
|
|
* added port $3E emulation & internal BOOTROM support (Master System & Game Gear only).
|
|
|
|
[Core/General]
|
|
---------------
|
|
* added an option to set VDP mode (PAL/NTSC) independently from console region.
|
|
* added an option to select original system master clock frequency (PAL/NTSC/AUTO), emulation will run at selected frequency when VSYNC is disabled.
|
|
* fixed 68k context loading/saving (Sol Deace).
|
|
* fixed C89 incompatibilities for better portability.
|
|
* removed use of "long int" type for portability on 64-bit platforms.
|
|
* moved savestate zlib compression out of emulation core (for ports that don't use it).
|
|
* various optimizations.
|
|
|
|
[Gamecube/Wii]
|
|
---------------
|
|
* removed ROM load device selection from Load Menu: default ROM device must now be configured in menu settings.
|
|
* added specific load buttons, browsers & saved paths for each systems, this also fixes slowdowns caused by screenshot loading when browsing from slow devices.
|
|
* added support for left/right buttons as page up/down keys in ROM browsers
|
|
* added right analog stick as default "return to menu" key for Gamecube controllers
|
|
* added alternate remappable menu key combo for Gamecube controllers
|
|
* added an option to disable VSYNC (emulator is synced with audio hardware instead of video).
|
|
* added an option to boot system from "BIOS", with or without cartridge.
|
|
* added Master System & Game Gear "BIOS" support (files should be named bios_U.sms, bios_J.sms, bios_E.sms & bios.gg and copied to /genplus/bios directory).
|
|
* replaced "Hard Reset" button by a Soft Reset for systems having a Reset button (Mega Drive / Genesis & Master System)
|
|
* State & SRAM files are now only compressed when saving to Gamecube Memory Cards
|
|
* various fixes & cleanup.
|
|
* compiled with devkitPPC r26 & libogc 1.8.11.
|
|
|
|
[Gamecube]
|
|
----------
|
|
* improved progressive mode support when component cable is detected (hold B during startup to switch menu video mode configuration)
|
|
|
|
|
|
---------------------------------------------------------------------------------------------------------
|
|
[07/08/2011] version 1.6.0 (Eke-Eke)
|
|
---------------------------------------------------------------------------------------------------------
|
|
|
|
[Core/Sound]
|
|
---------------
|
|
* added YM2413 emulation in Master System compatibility mode.
|
|
* fixed SN76489 noise boost initialization.
|
|
* minor YM2612 core optimizations.
|
|
|
|
[Core/VDP]
|
|
---------------
|
|
* added accurate emulation of SG-1000, Master System (315-5124, 315-5246) & Game Gear VDP.
|
|
* added support for all TMS9918 rendering modes.
|
|
* improved Mega Drive VDP timings accuracy in Master System Compatibility mode.
|
|
* fixed color palette initialization.
|
|
* fixed shifted sprites rendering in Mode 4.
|
|
* modified pixel rendering support (pixel depth is now forced at compilation time).
|
|
|
|
[Core/CPU]
|
|
---------------
|
|
* optimized 68k core (rewrote 68k interrupt handling, removed multiple CPU types support & unused code) for 5~8% speed improvment
|
|
|
|
[Core/IO]
|
|
---------------
|
|
* added accurate emulation of Master System (315-5216, 315-5237, 315-5297) & Game Gear I/O controllers.
|
|
* added Terebi Oekaki tablet emulation.
|
|
* improved Mouse emulation (fixes mouse support in Cannon Fodder).
|
|
* improved Justifier emulation (fixes gun support in Lethal Enforcers 2).
|
|
* improved 6-Buttons control pad emulation (fixes Duke Nukem 3D)
|
|
* modified lightgun emulation to use common key inputs for all devices.
|
|
* 2-buttons controller is now picked by default for Master System games.
|
|
|
|
[Core/MD]
|
|
---------------
|
|
* added copy-protection hardware emulation for some new dumped games (Tiny Toon Adventures 3, Mighty Morphin Power Rangers & The Battle of Red Cliffs).
|
|
* added Game Toshokan in EEPROM database (verified on real cartridge).
|
|
* fixed Micro Machines 2 - Turbo Tournament EEPROM size (verified on real cartridge).
|
|
* modified SRAM banswitch hardware emulation to be more compatible with some hacks.
|
|
|
|
[Core/MS]
|
|
---------------
|
|
* added Cyborg Z to Korean mapper database.
|
|
|
|
[Core/GG]
|
|
---------------
|
|
* added 93C46 EEPROM emulation (Majors Pro Baseball, World Series Baseball & World Series Baseball 95).
|
|
|
|
[Core/General]
|
|
---------------
|
|
* added support for .mdx ROM format.
|
|
* added Game Gear & SG-1000 ROM support.
|
|
* added accurate emulation of SG-1000, Master System (I, II) & Game Gear hardware models for 100% compatibility.
|
|
* updated to new Genesis Plus license (see http://cgfm2.emuviews.com/)
|
|
* removed DOS port
|
|
* various code cleanup.
|
|
|
|
|
|
---------------------------------------------------------------------------------------------------------
|
|
[31/03/2011] version 1.5.0 (Eke-Eke)
|
|
---------------------------------------------------------------------------------------------------------
|
|
|
|
[Core/VDP]
|
|
---------------
|
|
* added support for Master System compatibility mode (Z80 ports access mode), incl. Mode 5 rendering.
|
|
* added Mode 4 rendering for both Genesis & Master System modes.
|
|
* added alternate BG planes rendering functions (should be faster on PPC architectures).
|
|
|
|
[Core/IO]
|
|
---------------
|
|
* added support for Master System compatibility mode (Z80 ports access mode).
|
|
* added Master System peripherals emulation (Control Pad, Paddle, Sports Pad & Light Phaser).
|
|
* added XE-1AP (analog controller) emulation.
|
|
* added Activator emulation.
|
|
|
|
[Core/Extra]
|
|
---------------
|
|
* added support for all known Master System cartridge mappers.
|
|
* added copy-protection hardware emulation for a few MD unlicensed games: fixes 777 Casino (crash when talking to bunny girls).
|
|
(NB: most of those unlicensed games seem to have been already patched by ROM dumpers, main purpose is documenting them)
|
|
* added support for Top Shooter arcade board controller. (A=Shoot, B=Bet, C/RIGHT=Coins, START=Start, hold UP on startup to enter service mode)
|
|
* improved King of Fighters 98 mapper emulation (registers address decoding is now 100% accurate)
|
|
* fixed Game Genie when several codes affect same ROM address.
|
|
* fixed EEPROM types for Brian Lara Cricket & NBA Jam TE (verified on real cartridges)
|
|
|
|
[Core/General]
|
|
---------------
|
|
* added Master System compatibility mode emulation (automatically enabled when loading ROM file with .sms extension).
|
|
* improved savestate stability & compatibility (support for old 1.4.x savestates is preserved)
|
|
* various code cleanup & comments.
|
|
|
|
|
|
---------------------------------------------------------------------------------------------------------
|
|
[04/12/2010] version 1.4.1 (Eke-Eke)
|
|
---------------------------------------------------------------------------------------------------------
|
|
|
|
[Core/Sound]
|
|
---------------
|
|
* implemented Blargg's blip buffer in SN76489 core (all channels are now lineary interpolated)
|
|
|
|
[Core/VDP]
|
|
---------------
|
|
* improved 2-cell vscroll emulation accuracy, as verified on real hardware (Gynoug, Cutie Suzuki no Ringside Angel, Formula One, Kawasaki Superbike Challenge)
|
|
* improved VBLANK flag accuracy, as observed on real hardware.
|
|
* improved DMA operations accuracy, writes are now performed on a scanline basis: fixes Gaiares (flickering title screen).
|
|
* improved DMA Fill timing accuracy.
|
|
* fixed DMA with bad code values: fixes Williams Arcade Classics (corrupted gfx after soft reset).
|
|
* fixed horizontal resolution changes during HBLANK: fixes Bugs Bunny in Double Trouble (2nd stage).
|
|
* fixed Vertical Counter in interlace mode 1, as observed on real hardware.
|
|
* fixed horizontal border width, as observed on real hardware.
|
|
* various code improvments & optimizations.
|
|
|
|
[Core/CPU]
|
|
---------------
|
|
* fixed state of Z80 registers on reset (sound issues with Defender & Defender 2 in Williams Arcade Classics)
|
|
* implemented 68k undocumented flags behavior for DIVU/DIVS instructions (Bloodshot / Battle Frenzy)
|
|
|
|
[Core/Extra]
|
|
---------------
|
|
* improved emulation of copy-protection hardware found in some unlicensed cartridges (Mulan, Pocket Monsters II).
|
|
* enabled simultaneous use of multitap & J-CART (Super Skidmarks 6-player mode)
|
|
* improved savestate format: added DMA, SVP, cartridge mapping & internal registers state informations
|
|
* improved unlicensed ROM mappers emulation
|
|
* added Chinese Fighters III mapper support
|
|
* added Top Fighter mapper support
|
|
* fixed Barver Battle Saga mapper support
|
|
* fixed cartridge hardware soft-reset (Game Genie, SVP, ...)
|
|
* fixed Game Genie registers byte reads
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[06/30/10] version 1.4.0 (Eke-Eke)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
[Core/Sound]
|
|
|
|
* completely rewrote sound processing/mixing: sound chips are now clocked with exact output framerate
|
|
to ensure 100% smooth video & audio playback, with no lag or skipping, while rendering an accurate number
|
|
of samples per frame and keeping PSG & FM chips in sync.
|
|
* improved PSG & FM chips synchronization with CPU execution (fixed point precision).
|
|
* improved YM2612 core general accuracy (SSG-EG, CSM mode,...) (based upon Nemesis recent tests on real hardware)
|
|
* improved YM2612 LFO emulation accuracy: fixes "Spider-Man & Venom : Separation Anxiety" (intro)
|
|
* fixed YM2612 bug with Timer B: fixes "Langrisser Hikari II"/"Der Langrisser II" (Sega logo)
|
|
* fixed YM2612 context saving/loading.
|
|
* fixed YM2612 state on reset.
|
|
* removed outdated & less accurate Gens YM2612 core
|
|
* added configurable YM2612 DAC resolution emulation.
|
|
* added configurable & faster FIR resampler (thanks to Blargg & AamirM), removed libsamplerate support.
|
|
* added configurable Low-Pass filtering
|
|
* added configurable 3-Band Equalizer (thanks to Neil C).
|
|
* added an option to boost SN76489 Noise Channel.
|
|
* adjusted SN76489 cut-off frequency.
|
|
|
|
|
|
[Core/VDP]
|
|
|
|
* added support for CRAM writes during horizontal blanking (Striker, Zero the Kamikaze Squirrel,...)
|
|
* added support for 2-Cell vertical scrolling in Interlaced 2 mode
|
|
* added support for some undocumented mode register bits
|
|
* added proper emulation of HV Counter latch: fixes Sunset Riders intro
|
|
* added pixel-accurate emulation of mid-line display on/off (Nigel Mansell World Championship PAL, Ren & Stimpy's Invention PAL,...)
|
|
* improved FIFO timings accuracy: fixes Sol Deace intro
|
|
* improved sprite masking accuracy (thanks to Nemesis for his test program)
|
|
* improved sprites processing accuracy: fixes (un)masked sprites in Mickey Mania (3D level), Sonic 2 (VS mode).
|
|
* improved HBLANK flag timing accuracy: fixes Mega Turrican (Sky level)
|
|
* improved horizontal blanking & HINT/VINT occurence timing accuracy, as measured on real hardware.
|
|
* improved HCounter accuracy in 40-cell mode, as measured on real hardware.
|
|
* improved color accuracy in VDP highlight mode to match results observed on real hardware
|
|
|
|
|
|
[Core/CPU]
|
|
|
|
* updated Z80 core to last version (fixes interrupt Mode 0 timing and some BIT instructions).
|
|
* fixed some Z80 instructions timing.
|
|
* improved Z80 interrupt accuracy
|
|
* improved 68k accuracy (initial Reset timing + auto-vectored interrupts handling).
|
|
* improved 68k timing accuracy for DIVU/DVIS (thanks to Jorge Cwik) & MULU/MULS instructions.
|
|
* improved Z80 & 68k cpu execution/synchronization accuracy by using Master Clock as common reference (now run exactly 3420 M-Cycles per line).
|
|
* modified Z80 & 68k cores to directly use external cycle count instead of intermediate counters.
|
|
|
|
|
|
[Core/Extra]
|
|
|
|
* added Game Genie hardware emulation (Game Genie ROM is now fully supported).
|
|
* added Action Replay hardware emulation (Action replay ROM is now fully supported).
|
|
* added S&K "Lock-On" hardware emulation (you can "lock" any games to Sonic & Knuckles).
|
|
* added Cartridge "hot swap" feature.
|
|
* added missing EEPROM support in some games.
|
|
* added accurate TMSS emulation (VDP lock-out)
|
|
* fixed Realtec mapper emulation: fixes missing sound in Balloon Boy / Funny World.
|
|
* fixed lightgun auto-detection: fixes default cursor position in Lethal Enforcers II.
|
|
* lots of code cleanup, bugfixes & optimization.
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[12/14/08] version 1.3.0 (Eke-Eke)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* YM2612 bugfixes (MAME core):
|
|
.fixed EG Decay->Substain transition when SL & DR are minimals: fix tracks #3 and #9 in "Mega Turrican"
|
|
.fixed a bug in SSG-EG emulation code: fix Level 1 music in "Alisia Dragoon"
|
|
.modified SSG-EG Decay End Level: fix some sound effects (ChainSaw, Zap...) in "Beavis & Butthead"
|
|
.improved Detune overflow accuracy: fix very high frequency sounds in many games
|
|
.fixed registers 0x20-0x26 Reset state: fix intro music in "B.O.B"
|
|
.reverted incorrect fix with KEY ON: fix "Flamethrower" sound effect in "Alien 3" and many others
|
|
* adjusted HCounter values: fixes line flickering in "Sonic 3D" bonus stage
|
|
* adjusted VINT timing: fixes hang-up in "V.R Troopers"
|
|
* improved HBLANK flag accuracy: fixes line flickering in "Gouketsuji Ichizoku"
|
|
* fixed broken Z80 access to WRAM: fixes hang-up in "Mamono Hunter Youko"
|
|
* modified JCART emulation: fixes corrupted tracks logo in "Micro Machines 2"
|
|
* added Blargg's NTSC Filters support (NTSC video artifacts emulation)
|
|
* optimized VDP rendering core, rewrote 68k interface (memory handlers, cycle execution, interrupts): greatly improved emulation speed
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[08/26/08] (Eke-Eke)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* YM2612(MAME): fixed LFO phase update for CH3 special mode: fix sound effects in Warlock & Aladdin (thanks to AamirM)
|
|
* YM2612(MAME): fixed EG attenuation level on "KEY ON": fix Ecco 2's splash sound
|
|
* YM2612(MAME): fixed SSG-EG emulation: fix Bubba'n Stix (Track 5) and many others
|
|
* YM2612(MAME): replaced sample interpolation with libsamplerate support, High Quality mode is now more accurate
|
|
* implemented cycle-accurate HINT timings: every timing sensitive games/demos are now *finally* working fine
|
|
* fixed a bug affecting CRAM/VSRAM DMA timings
|
|
* fixed Sprite Attribute Table address mask for VRAM writes
|
|
* improved accuracy of 68k access to Z80: fix music in Pacman 2 when entering PAUSE menu
|
|
* disabled "Address Error" emulation when UMK3 hack is loaded: fix game crashing after a round ends up
|
|
* added support for some more unlicensed games: Pocket Monster, King of Fighter 98, Soul Blade (credits to Haze)
|
|
* improved Menacer emulation: fix lightgun support in Body Count & T2: The Arcade Game
|
|
* added Konami Justifier emulation: fix lightgun support in Lethal Enforcers 1 & 2
|
|
* added Sega Mouse emulation (Populous 2, Body Count, Shangai 2, Fun'n Games, ...)
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[07/16/08] (Eke-Eke)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* adjusted (again) HINT timings: fix Double Dragon 2 (game freezed), hopefully does not break anything else
|
|
* fixed broken EEPROM support for Codemaster games
|
|
* modified input update timings: fix Dungeons & Dragons * Warriors of the Eternal Sun (thanks to Notaz)
|
|
* added support for "Ultimate Mortal Kombat Trilogy" hack (max. size supported is 10MBytes)
|
|
* added (VERY) preliminar support for PICO roms (credits to Notaz for his documentation)
|
|
* improved YM2612 emulation (credits to Nemesis for his tests on real hardware):
|
|
.implemented phase overflow emulation: improved fix for special music instrument used in Comix Zone, Flashback, Ariel, Shaq Fu...
|
|
.improved SSG-EG emulation in MAME core (also based on additional code from Alone Coder)
|
|
.improved Timers emulation accuracy
|
|
.improved Enveloppe Generator accuracy
|
|
.fixed Channel 3 CSM mode emulation
|
|
.implemented sample interpolation in MAME core to emulate the chip at original frequency (HQ YM2612 mode, from gens)
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[06/01/08] (Eke-Eke)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* improved HCounter accuracy: fix graphic glitches in "Striker (Europe)"
|
|
* improved HINT timing accuracy: fix flickering in "Zero The Kamikaze Squirrel (USA)"
|
|
* improved rendering accuracy when backdrop color is modified during HBLANK (Road Rash I/II/III)
|
|
* fixed broken Game Genie support
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[04/19/08] (Eke-Eke)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* modified VINT timings a little bit: fix lockup during Desert Strike's intro
|
|
* corrected 68k interrupts handling: fix graphic glitches in Darius II/Sagaia
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[04/06/08] (Eke-Eke)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* updated SVP core: fix some perspective issues in Virtua Racing (thanks to Notaz)
|
|
* added internal SAT update during VRAM Fill: fix unmasked sprites during Battletech's intro
|
|
* fixed m68k core issues with gcc 4.2.3: fix Xperts, Lemmings 2, M1 Abrams Battle Tank
|
|
* forced YM2612 Enveloppe update: fix intro music in Batman&Robin (thanks to Aamir)
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[03/01/08] (Eke-Eke)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* added SVP emulation: Virtua Racing is now emulated (big thanks to Notaz and TascoDeluxe)
|
|
* fixed VDP registers behaviour when VDP Mode 4 is enabled: fix Bass Masters Classic Pro, Captain Planet & The Planeeters
|
|
* corrected a bug in DMA Fill operation: fix James Pond 3, Rockman World/Megaman Willy Wars (corrupted VRAM)
|
|
* corrected typo errors in CPU cycle counters update: fix optiom screen music in "College Slam" and probably others games.
|
|
* added preliminary support of undocumented YM2612 bug: fixes soundtracks of Shaq Fu, Spiderman, Comix Zone, Ariel and some others
|
|
* added support for mappers & copy protection devices used in many unlicensed/pirate cartridges (see cart_hw.c for details)
|
|
* rewrote memory handlers for better modularity and some (little) speedup
|
|
* reduced Savestate size
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[01/07/08] (Eke-Eke)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* fixed interleaved rom detection: roms with .smd extension should now work fine
|
|
* fixed a recently introduced bug in VDP registers writes: fixes bad colors in Toy Story (intro)
|
|
* updated list of games using EEPROM: added Sports Talk Baseball (internal memory check fixed) and Brian Lara Cricket
|
|
* fixed VINT flag update when VINT is disabled: fixes NCAA College Football
|
|
* adjusted DMA timings in H32 mode: fixes flickering in Out of this World, Kawasaki Superbike Challenge & Formula One
|
|
* adjusted line rendering and HBLANK timings: fixes flickering in Nigel Mansell's World Championship Racing, Deadly Moves/Power Athlete
|
|
* fixed unmapped ROM reads through Z80 Bank: fixes Zombie High (Proto)
|
|
* added support for custom ROM/RAM mapping used by Game no Kanzume Otokuyou
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[12/28/07] (Eke-Eke)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* many sourcecode cleanup and optimization
|
|
* completely rewrote EEPROM emulation: now support all known EEPROM types (24C01-24C65) and mappers (Sega, Acclaim, EA, Codemasters)
|
|
used in a few games (now use internal game database) as external RAM. This should at least fix save support in the following games:
|
|
. NBA Jam (alternate Acclaim mapper)
|
|
. College Slam, Frank Thomas Big Hurt Baseball (24C65 type)
|
|
. NHLPA Hockey 93, Rings of Power (EA mapper)
|
|
. Micro Machines serie, Brian Lara Cricket 96/Shane Warne Cricket (Codemasters mapper)
|
|
* external RAM is now initialized to 0xFF by default: fix Micromachines 2, Dino Dini Soccer
|
|
* fixed SRAM 16-bits memory handlers: fix some Sega Sports and EA Sports games (NFL95, NBA Action 95, NHL97, NHL98,...)
|
|
* modified WRITE_xxx & READ_xxx macros for better portability and faster memory access on BIG ENDIAN platform
|
|
* completely rewrote BIG ENDIAN support in render.c and vdp.c: rendering should be a little faster
|
|
* rewrote ROM bankswitch emulation (Super Street Fighter II): ROM access are faster, using memory pointers instead of reading ROM copy from ARAM
|
|
* fixed leftmost Window/PlaneA column render and implemented Window bug (as described by Charles Mc Donald)
|
|
* improved "Sprite Limit" and "Sprite Collision" detection accuracy
|
|
* modified RGB565 Color Palette to use the full available color range (0-31;0-63)
|
|
* implemented "cycle accurate" HV Interrupt timings: fix Sesame's Street Counting Cafe, Legend of Galahad (intro)
|
|
* improved VDP access timings accuracy (added FIFO emulation): fix Double Clutch
|
|
* improved DMA timings accuracy: fix Winter Olympics (E), Arch Rivals and probably more
|
|
* fixed HCounter again: Road Rash serie (I,II,III) don't need timing hacks anymore
|
|
* fixed VCounter in Interlaced 2 mode: fix Combat Cars "VS-Mode"
|
|
* improved Interlaced 2 mode (double resolution) rendering: Sonic 2, Combat Cars ("VS-Modes") look far better
|
|
* added TMSS BIOS support (optional)
|
|
* rewrote part of the YM2162 MAME's core: fixed internal FM timers handling, removed non-YM2612 emulation code and unused multiple cpu support
|
|
* implemented "cycle accurate" FM timers & sound samples rendering
|
|
* improved Z80 Interrupt timing accuracy: fix Sonic 3 music slowdowns
|
|
* updated Z80 & 68000 cores to last MAME versions
|
|
* improved Soft Reset emulation: X-Men 2 and Eternal Champions (random character selection) now work more like on real hardware.
|
|
* added full overscan emulation (vertical & horizontal borders) for "pixel perfect" aspect ratio (tested against a real genesis)
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[07/20/07] (Eke-Eke)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* corrected TeamPlayer support: fix multiplayer in Gauntlet 4 (Sept. version), Pengo and a lot of others
|
|
* added J-Cart support: enable multiplayer in Codemasters games (Pete Sampras, Micromachines games, Super Skidmarks)
|
|
* added serial EEPROM autodetection: fix games with bad SRAM informations in header (NBA Jam TE)
|
|
* added SVP faking: display 2D graphics in Virtua Racing (the game is however still unplayable)
|
|
* added support for more internal IO registers: fixe some unlicensed games (Wisdom Tree games...)
|
|
* added preliminary support for unmapped protection device: fix some unlicensed games with special built-in hardware (Squirell King, Lion King 2...)
|
|
* added "Soft Reset" combo (in game, use L+Z triggers): this should be like pressing the RESET button on a real Genesis and this is required
|
|
in some games to enable special features or even complete the game (ex: X-Men).
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[06/21/07] (Eke-Eke)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* added Multitap support (EA 4-Way Play and Sega Teamplayer): allowed up to four players in games supporting those peripherals
|
|
* added partial Sega Menacer lightgun support (use Analog Stick): automatically set when detecting the 6-in-1 Menacer game
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[05/18/07] (Eke-Eke)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* you can now switch between FM cores without reseting the game. FM registers value are automatically restored when switching.
|
|
* removed the previous VINT timings modification because it brokes some games (Rocket Knight, Thunderforce III,...)
|
|
* added automatic Timing configuration (VDP latency, VINT timing & alternate Line Timing) at game loading, based upon specific romname detection.
|
|
This means you can still modify some of these options afterwards but they are now automatically set/unset when loading a game which need
|
|
special timing fixes. These fixes are also automatically desactivated when the current game doesn't need them.
|
|
For information, games that are actually detected and need special timings to run properly are:
|
|
.Legend of Galahad & Road Rash series (single line not rendered properly)
|
|
.Sesame Street Counting Cafe (don't boot)
|
|
.Chaos Engine/Soldiers of Fortune (graphic glitches on scrolling)
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[05/08/07] (Eke-Eke)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* VINT timings are now a little more accurate: fixes Sesame's Street Counting Cafe
|
|
* SN76496 MAX_OUTPUT back to normal
|
|
* modified FB_WNOISE value in SN76496 core according to John Kortink's last informations
|
|
* added support for Maxim's PSG core, same as used in SMSPLUS (it becomes the default PSG core)
|
|
* updated FM core to the latest MAME version
|
|
* corrected DAC output level (fixes voices and some special FX being too low)
|
|
* added support for Gens YM2612 (FM) core (MAME's one still remains default FM core)
|
|
* added configurable preamplification for each sound cores (see Emulator Options)
|
|
* added some other configurable sound options (boost overall volume, FM improvment for Gens YM2612)
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[04/11/07] (Eke-Eke)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* corrected MAX_OUTPUT value in SN76496 core: fix PSG sound (SFX) volume
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[03/17/07] (Eke-Eke)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* added an option to enable alternate line rendering timing (fix single line error in Road Rash series and Legend of Galahad's Intro)
|
|
* Color RAM update now always reset color 0 to border color (fix color glitches in Mortal Kombat,...) (thanks to Noop's for the idea)
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[03/09/07] (Eke-Eke)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* modified HV counter tables (fix graphic glitches in Skitchin's sky, Lotus 2 Recs, Panorama Cotton, Dashin Desperados & maybe more)
|
|
* completely rewrote DMA timings emulation so that it works for all games (no more cpu freezing)
|
|
* added all DMA tranfer rates handling for each three DMA modes and added dma busy flag emulation
|
|
* modified interrupts handling on VDP register #0 and #1 writes (fix Lemmings status bar)
|
|
* added VDP RAM write latency (fix Chaos Engine/Soldier of Fortune gfx glitches)
|
|
* modified FM timers handling a bit (fix Vectorman2 music)
|
|
* corrected Sprite Limit rendering (fix Sonic 1 & Micromachines 2 title screens)
|
|
* corrected IO Registers writes (fix Decap' Attack controls, no more need for alternate input)
|
|
* corrected 6 Buttons Pad emulation (fix 6buttons detection in Mortal Kombat 3, Comix Zone and other 6-buttons compatible games)
|
|
* modified sound mixing a bit according to Generator sourcecode (FM and PSG ratios seems more correct)
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[02/07/07] (Eke-Eke)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* fixed fm timers (fix missing music in Castle of Illusion, Quackshot, Undead Line, Wonderboy in Monster Lair, Cal 50, Turbo Outrun, Thundeforce 4 and maybe more)
|
|
* added complete EEPROM emulation (save support now works fine in Wonderboy5, Megaman Willy Wars, NBA Jam...) (credits to Notaz, adapted from Picodrive code)
|
|
* added preliminar dma timing emulation (fix bottom screen in Legend of Galahad) (credits to Notaz, adapted from Picodrive code)
|
|
* hack: clear Vint pending after Hint (INT level 4) acknowledge (fix Fatal Rewind)
|
|
* hack: modify read_bus16 to return a random value (fake fetch) (fix Time Killers)
|
|
* modified cpu execution timings, with more correct hblank and interrupts timing (fix ISS Deluxe, Double Dragon 2 and certainly more) (Based on Gens code)
|
|
* modified busreq mechanism: better synchro between z80 & 68k (no need to dejitter anymore) (Based on Gens code)
|
|
* added sprite collision detection (fix Strider 2)
|
|
* modified dma fill operation for big endian platform (fix Contra Hardcorps gfx garbage)
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[05/25/03] (Charles MacDonald)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* Fixed a typo that made Z80 banked access to the VDP registers always fail.
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[05/17/03] (Charles MacDonald)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* Modified the rendering code to handle unaligned longword access to memory.
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[04/20/03] (Charles MacDonald)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* Modified 68000 emulator to prevent 'tas.b $mem' from writing data back
|
|
after a read (fixes Gargoyles).
|
|
* Fixed bug in 68000 emulator to swap order of words written for address
|
|
register indirect pre-decremented writes (fixes Jim Power graphics).
|
|
* Added support for 240-line displays (for Super Skidmarks).
|
|
* Rewrote part of the interrupt handling (fixes some raster effects).
|
|
* Removed sprite collision detection code (never really worked).
|
|
* Optimized sprite rendering inner loop.
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[04/13/03] (Charles MacDonald)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
* Finished up memory map for VDP DMA V-bus reads.
|
|
* Fixed handling of 68000 writes to I/O chip at even addresses.
|
|
* Fixed bit 7 handling of control register in I/O chip.
|
|
* Finished up Z80 memory map.
|
|
* Added code to handle Genesis hardware lock-ups.
|
|
* Removed some faulty code from the 68000 memory map handlers.
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
[03/22/03] (Charles MacDonald)
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
* Completed implementation of Z80 banked memory handlers.
|
|
|