Changelog
Version 0.85
————
Well, this release may not look much different from previous (0.77) one but believe me there have been many, many changes. Two major emulation subsystems have been totally replaced with new ones . They are the timing and event system and the second being the new YM2612 core. There were many betas released to make sure every game worked correctly and more accurately than ever. Though its true that I haven’t implemented some front-end related feature requests because I didn’t wanted to delay this release any longer. I am sorry for that.
- Totally rewrote timing code and implemented a new event system. I think this new code is very close to being 100% accurate. Although Regen still emulates line-by-line this code will give results that can only be achieved by running the emulator cycle-by-cycle. This code is not slow either. In fact, it may be *faster* than the previous code. This code is still in early stages but I thought it was stable enough to released. Now why I did it? Especially since the previous system was already very mature. Well the only *real* reason for me was that a user posted me a small demo program that will only run correctly if the timings of the emulator were absolutely perfect. So, as you may have guessed, that it did not work correctly under Regen. But the interesting thing is that it did not work correctly in Kega either. Fixing the demo broke many other games. But with this new system not only the demo works correctly but also all the games work perfect (as far as I’ve tested). This new system has also fixed some games that did not worked previously which include:
- Bram Stoker’s Dracula
- Wheel of Fortune
It also fixes some of the glitches in games like Legends of Galahad, Nigel Mansell’s World Championship Racing, Striker, Deadly Moves (runs even better than Kega) and many more.
- Replaced MAME’s FM core with my own YM2612 emulator which I had been working on for some time. This is the reason this release took so long. It more accurate than MAME’s core and very close to real thing. Listen to Warlock, Ariel, Shaq Fu etc… for the difference. If a game still doesn’t sound correctly please report it.
- Changed 68k timings. This fixes Surging Aura.
- Sound in Pac-Man 2, The New Adventures (U) fixed. Maybe the first time for any Genesis emulator. I couldn’t find any other emu that runs it correctly.
- Corrected the behavior of X-Men 2: Clone Wars and Eternal Champions on reset.
- Fixed the PAR finally this time. All the codes will now work Regen that worked in Kega and real hardware.
- Added multi-language support to Regen menus. There are many languages available by default. Thanks to their authors. See the respective language files for their names. You can create your own language file too. See the readme for that. Please note that there won’t be any check beside any selected language. That is because I noticed the list changes on every run of Regen even if no new languages are installed. This creates the problem of check appearing against wrong language. There are solutions to it but its just too much pain.
- Changed the drop list height in redefine keys dialog so that 6-button, Menacer, Sega Mouse options are visible. People thought Regen didn’t support them
- Regen will now correctly load Kega and Gens’ created SRAM files.
- Now you can pause a game then press space for executing just one frame. Useful for taking precise screenshots.
- Fixed and improved the EEPROM support. All games that *did* have EEPROM originally will run correctly now.
- Fixed a small glitch in country sub menu.
- Multiple messages can now be displayed.
- Added a small program in “Fonts” directory to create fonts for the emulator text engine. Please note that it will ask twice to select font. The first will be used when ‘Superfast Rendering’ or ‘None’ is selected. The second will be used when a plugin is selected and is usually the same as the first one but nearly twice the size. I could do it programmatically but I didn’t because this way the user can tweak the sizes individually because the second font doesn’t appear to be exactly twice the size (little bigger) even the height is exactly the twice of the first one.
- AVI movie recording support. Don’t ask for any other format please. Recording directory is same as sound.
- Loading a game multiple times will create only one entry in the File History.
- Fixed FPS display being cut-off if in three or more digits in None plugin mode.
- Fixed some crashes especially when changing the sound rate.
- Many other internal changes.
Version 0.77
————-
- Implemented the highly requested “SuperHQ” option in sound settings. Enabling this will result in highly accurate sound and very close to real thing. But it will also slow down emulation so you must have a fast enough PC. Sound rate will automatically be set to 48000 Hz. See Sonic 1, Sonic 3D intro, Vectorman intro, X-Men intro and nearly all games for the difference in accuracy and quality. I am trying to make it as accurate as Kega Fusion. And if you have something to tell me about YM2612, it is highly welcomed :-). Do tell me if it is still inaccurate including the game in which it sounds wrong.
- WAV dumping modified so that it works correctly in SuperHQ mode.
- Rewrote major part of DirectSound code to fix the static in sound on some computers.
- No need to restart the emulator after changing sound rate.
- Changed 68k timings a bit. Fixes “California Games”.
- Improved VDP write timings. Fixes Double Clutch menu (no flickering anymore).
- This time really fixed the sprite masking code. Fixes sprites appearing above HUD in Vectorman and Streets of Rage.
- Improved VBLANK timings which fixes X-perts.
- Updated SVP emulator.
- Following unlicensed games are now supported. As always Autofix Checksum must be *enabled*:
- Lion King 3
- Super King Kong 99
- Fixed the following reported bugs:
- Regen crashing if “Brighten” enabled without any game loaded.
- Backspace key not working to toggle Turbo Mode.
- Cheats not being unloaded when loading a game after another game.
- Hard/soft reset, power off crashing emulator when no game is loaded.
- Having sound disabled for most of the game until you reactivate it, doesn’t re-enable sound.
- Using the taskbar button for Regen doesn’t always autopause gameplay. It keeps on playing minimized.
- Regen doesn’t create srm files properly if you load new game without power offing previous running game.
- Country submenu not setting the right region.
Version 0.7
————
I had some more features to add than these but due to university work I could not complete
them and I had to save some things to do in 0.8
- Fixed a problem in sprite masking code. Fixes sprites in Castle of Illusion appearing above the window plane.
- Fixed sprite problems in Contra Hard Corps.
- Added preliminary FIFO and its timing (VDP write latency) emulation. Menu in Double Clutch is now correct (but flickers) and The Chaos Engine runs perfect (no flickering on scroll). It was reported by Eke and he also helped in fixing it. Thanks.
- Fixed corrupted games when loaded after Virtua Racing.
- Improved DMA timings (Sonic 3D intro).
- Added 7zip support. Only the first file in it will be loaded.
- Added support to redefine menu shortcuts.
- Regen now remembers last ROM path.
- Rewrote major part of DirectInput code to fix some controller issues. All controller related issues should be gone.
- Selecting a window size now has a little check by the selection.
- The “Off” options are now highlighted when loading cheats.
- Default directories for BIOS (system dependent), SRM, BRM, Save States, Screenshots, etc.
- Configuration settings for the various settings and paths to BIOS/various directories (like Kega).
- Added option to brighten the screen (like Kega). But there is no support to save it because it is not correct for all the games (especially the games with Shadow/Highlight effects).
- Following unlicensed games now run correctly, still many more to come:
- Soul Blade
- 12-in-1
- 4-in-1
- Smart Mouse
- Regen will now create the default directories and will show a small message box when its run for the first time.
- Added a special keyword to the cheat files called “Default” this will auto-enable cheat options. For example:
[3]
Name=Infinite Lives
0=Off
1=On
Default=1
This will enable the second option (since counting from zero) for this cheat.
- Added option to reload the cheat file in cheats dialog box. I did this because my cheat editor was very buggy and did not save the cheat file correctly. Now the user can easily edit the cheat code with their favorite editor and reload the cheat file instantly. Note that all the enabled cheats will revert back to being off except those which were auto-enabled with the special “Default” keyword.
- When there is no history to be displayed, nothing appears when hovering over the File History sub-menu.
- Fixed “Disable menu shortcuts” option.
- Fixed “Reset to default keys” option.
- Fixed a minor bug in command line code.
- Option to shorten the path in the history to game name only. Only changeable through the ini file by setting ShortHistoryNames to 1.
- Removed the empty file history slots when less than 5 games have been played.
- Cheat Window is a bit bigger now (on request).
- Fixed Port 2 controller being saved on Port 1d. And possibly others.
- Fixed buzzing sounds when disabling sound mid-game.
- Netplay option has been disabled in this release because it was way too buggy.
- Text engine uses a bit smaller font.
- Regen now directly creates and sizes itself to the last position instead of creating at center and moving to the last window place or resizing itself.
- Minor fixes and tweaks.
- Many, many, MANY new cheat files added (thanks to King of Chaos).
- Fixed many typos in the Readme file. Thanks to Adam.
- Some more things which I forgot.
Version 0.6
———–
- Changed the Z-80 emulator from MZ-80 to RAZE as this is much more accurate and since MZ-80 was having some problems with some games. If you find some games broken report them.
- Updated M68K core to latest version as a result debugger disassembly is broken for now.
- Added highly customizable and fast text engine. You can change the text color from the ini file by modifying TextColor_R, TextColor_G, TextColor_B values. Option to make and change fonts will be added later.
- Option to show framerate.
- Added my own pixel doubling (non-anti-aliased) and interpolated filter plugins.
- Added option to not emulate console lock-ups. These are not emulated by default. You can emulate them by setting EmulateLockups variable to 1 in the ini file.
- Changed the name of “Superfast blitting” to “Superfast rendering” as this is right.
- SRAM and EEPROM saving and loading added. Maybe incorrect. I couldn’t test it much. You can disable their loading and saving from the “System” menu.
- WAV logging added. VGM logging will be added soon. The directory where the sound will be dumped can be specified in the ini file by changing the SoundDumpDir variable.
- Made Super Street Fighter II working. You must disable autofix checksum for it to work.
- Tried to improve the PAR support. I couldn’t test it much. Tell me how it goes.
- Regen can now fool the “Emulator Detector” program made by Tiido. It can detect if his program is being run on real Genesis or on an emulator. I could not find any emulator that is capable of fooling it… no not even Kega.
- Following unlicensed games added, more to come soon:
- Super Bubble Bobble
- Earth Defend
- Whac-A-Critter / Mallet Legend
- Funny World And Balloon Boy
- Squirrel King
- Bugs Life. Autofix checksum must be disabled for this game to work.
- Fixed the following bugs (mostly reported by ZSNES forum members):
- Sprites showing up in Battle Tech start when they shouldn’t be. Thanks to Eke for reporting this problem and telling the solution too ![]()
- Sound problems in Sonic 2.
- Loading another game past Virtua Racing causes the graphics to be messed up.
- Loading another game from history when Virtua Racing is loading causes the emulator to crash.
- Does not mute sound when lost focus.
- Once a cheat is enabled, you can’t change the state if it’s a multi-option cheat (e.g. Sonic 1 chaos emerald modifier, can’t change from Six to Five, always goes back to Six).
- Hopefully fixed(or at least minimized) the static in sound when window is moved.
- The following things are still unfixed due to some valid reasons
- Ultimate Mortal Kombat Trilogy. AFAIK its a hack. I don’t like to add hacked games that need special handling. But if there are enough people who would like to see it on Regen then I will add it. Currently there has been just 2 requests
- No autopause if minimized using taskbar button. Windows reports that Regen has the focus. I could not find any emulator, with autopause option, that autopaused this way.
- Save states in Virtua Racing. Genecyst savestate format currently does not allow extra stuff to be saved. It needs to be extended.
- Game no Kanzume o Tokuyou won’t run. It wants to write to ROM and also seems to use unused VDP control bits. I have not found *right* (read without hack) way to run this game.
- Wonder Library will also not run. Is it really a Genesis game?? Seems to be a Sega CD game. It does lots of unused memory read/writes in the Sega CD area.
Version 0.5
———–
- DMA timings implemented. This fixes the following:
- Single line at bottom in Virtua Racing.
- DAC in Virtua Racing now runs correctly.
- Legends of Galahad bottom screen.
- Formula 1 and Kawasaki Challenge bottom screen.
- Inspector X intro being too fast.
- Many others
- Autofix checksum option added. Note that fixing checksum might break some games.
- Improved YM2612 emulation again.
- Serial EEPROM emulation added. Huge thanks to Eke for his very good documentation on this.
- Added Hex code and PAR(Pro Action Replay) cheat code support to cheat engine. All codes working in Kega should work.
- Fixed the following bugs(taken directly from the Regen topic in ZSNES forums, thanks to King of Chaos:
- Clicking Disable Sound without game loaded can cause the emulator to crash.
- The setting for disabling sound (and other settings) isn’t saved sometimes.
- Editing the Disable Sound setting in the INI doesn’t disable the sound, trying to disable it crashes the emulator.
- Clear History sometimes doesn’t work, unless you click it several times.
- Clicking on an empty history slot will crash the emulator.
- ROMs bigger than the 4MB Genesis limit (e.g Super Street Fighter II) causes the emulator to crash.
- No selection for Gamepad under Use in the controller configuration.
- When you change games, you can’t load in a new cheat file for the new game.
- When you “power off” the emulator, you can still activate cheats, no “No game loaded” dialog.
- No checkboxes for the selected Sound Rate, so you don’t know which one you’re using.
- System > Country > Auto Detect does not have a check by it when selected.
- Some unlicensed game support. The following unlicensed games are supported right now more will be added later, huge thanks to Haze (David Haywood):
- Lion King II
- Elf Wor
- Mahjong Lover
- Emulation of system lock-up on illegal address access. Now Sonic Crackers hangs just like in reality.
Version 0.41
————
This is just a quick update because of a small mistake I made.
- Forgot to uncomment a line of code which made Mega Man (possibly others) break.
- As a bonus I included the Sesame Street fix too :-).
Version 0.4
———–
Note:
Massive changes were done regarding interrupt handling which may have resulted
in some games being broken from the previous version. If you find one do tell me.
- All accuracy hindering things have been removed from this release. Because of this, this version will be slower (read very slow) than the previous one.
- Aggressive interrupt checking.
- Sprite collision and overflow flags now implemented (needed by Shadow of the Beast, Strider 2).
- Changed Musashi’s interrupt handling. This fixes Lemmings status bar.
- SRAM support added. Many games needed this to work properly(Dragon Slayer, NHL 96 etc..)
- No support to save it though.
- Dino Dini Soccer runs perfectly now. Even more accurate than Kega Fusion and Gens!
- DAC now works in Virtua Racing but is not correct.
- Fatal Rewind lockup fixed.
- Double Dragon 2 lockup fixed.
- 68000 Debugger enabled. This was the most requested feature! It might be buggy though
- Stretch option added.
- Option added in NTSC filer to disable scanlines.
- Incorrect screenshots fixed.
- Command line support. Only supports loading of games right now.
- Clear history fixed
- Regen now remembers window position.
- Fixed sound pausing on window move while a game is running.
- Other minor tweaks and fix-ups.
Version 0.3
———–
- Preliminary SVP emulation added. Thanks to notaz and TascoDeluxe. Although now Virtua Racer is playable but the DAC won’t run (strange).
- SoundBufferSize option added to ini file. Default value is 7 because that worked best on my PC. If sound is skipping try playing with different values.
- DirectInput support
- 6-button pad, Teamplayer, 4-way play, lightgun, sega mouse, J-Cart support (all preliminary)
- Sonic 3D bonus stage fixed (got broken in previous version)
- Captain Planet screen fixed
- Further FM emulator improvements. Sound should be a bit more accurate. For an example see Sonic 3 Chaos emerald stages as he picks the balls. It sounds more close to Kega now than previously.
- FM timers fixed in FM emulator. This fixes sound in some games. Thanks to Eke.
- Single line glitches in many games fixed (Road rash 1, 2 etc …)
- Mouse capture/release using F12. This is used for Menacer Lightgun and Sega Mouse.
- Many more games now work (Super kick off etc…).
- Drag and drop file support.
- Added joypad support. Since I don’t have any gamepads I can not tell if it will work. It is just based on estimation.
- Fixed Z80 interrupt timing (again). This fixes slow or missing music from some games.
Version 0.2
————
- Modified FM emulator slightly. It should sounds a bit more accurate now.
- Fixed sound timing problems with games.
- Due to above “Apply timing fix” option now removed
- Fixed some frontend problems that some users reported
- Fixed savestates. They should load correctly now.
- A few tweaks.
- ScreenShotDir option added to the ini file
Version 0.01
————
- Renderer rewrite. Most things implemented.
- VDP rewrite with H/V counter thanks to Gens and Genesis Plus.
- Tatsuyuki Satoh’s YM2612 emulator added.
- DSound added.
- Added PAL timing.
- Improved sync between 68k and Z80. As a result many games work now but still some sound issues.
- Added “Apply timing fix” option to fix sound in some games because of interrupts firing too closely. This makes sound in some games a bit fast.
- Added country selection, domestic, overseas things.
- Some sprite problems fixed. Thanks to TascoDLX.
- Some usual frontend things added.
- Kega Fusion plugin support.
- Savestates support. Loading still incorrect.
- Changed memory handlers from “if”s to “switch”.
- Many, many other things.
Version 0.001 [unreleased]
————————–
- Everything is new
- Basic VDP added
- Basic renderer. No shadow/highlight support. No interlace support. No limitations implemented.
- No sound
- Just enough to make some games work.