Thursday, December 22, 2022

The History of Sega Genesis Emulators - DGen

Today we will talk about DGen, another great emulator and I consider it the most notable on Linux systems.

 
DGen (1999)

DGen was created in 1998 by Dave, known in the emu scene as the creator of Final Burn, Dega and PicoDrive, among other emulators. Its first version was created in 1998 for MS-DOS, but we do not know if it was released to the public. Its first version is dated May 1999 for Windows. Right from the start, it came with support for stereo sound, emulation of the YM2612 chip with its six sound channels and the 68k processors, by StarScream and Z80 by Multi-Z80. Also in May, there were some versions with important updates, such as 1.03, which released its source code, which also ended up doing in the versions of May, July and August 1999. Version 1.04, bringing support for MS-DOS. Version 1.05, when it began to support DirectInput. And version 1.06, which added another 68k processor, the Musashi, which was slower than the StarScream, but more accurate. Both were available for use. In June 1999, support for the PSG chip and games in Zip format began. For good performance of the emulator, it was recommended to use at least a Pentium III processor. In January 2000, Dave released his last version and abandoned the project to dedicate himself to Final Burn. In this version, he changed the Z80 emulator to Richard Mitton's, instead of Neil Bradley's, correcting the out-of-time music in some games. Dave released 21 versions in total, not including the beta version. In addition to the functions already mentioned, the emulator also supported save state, region change, image speed from 50 to 70hz, pause, reset, joypad, Game Genie, full screen, triple image buffer, layer options, sound up to 16-bit, sound power of up to 44,100hz, latency change option (bringing greater sound precision) and support for sound recording in .GYM format, which is the original Mega Drive sound format, similar to the NES's NSF (this format starts in the Genecyst emulator, and in future emulators it is replaced by the .VGM format). Despite all these options, the emulator had some screen bugs with some games, with problems in parallax, background and sprites. Regarding the collaborations with the project, we had Neill Corlett with his 68k, Neil Bradley with his Z80, Tatsuyuki Satoh for his YM2612, Steve Snake from Kgen98 for the DirectInput code, Alex Townsend for the support of ZIP format ROMs, Karl Stenerud for his Sharp 68K emulator, John Stiles, owner of the MasterGear, iNes and ColEm emulators for Macintosh for his command line renderer and Flavio Morsoletto for great information about the console. In addition, Richard Bannister and Joe Groff also helped in the project by developing SRAM support in the emulator. Joe was also one of the people responsible for coding the sound of DGen.

About its ports, around May 1999, it was ported to MacOS by Richard Bannister. A curiosity about the port for MacOS. It was the first Macintosh emulator to emulate the Mega sound chip, the YM2612, which allowed most games to run with their full sound. The port was released for MacOS 8.1 and later, as well as 9. John Stiles adds Raster Effects and Gil Peterson adds SRAM support to Bannister's version. In December 2000, Bannister discontinues the port, leaving Generator in its place. In February 2000, Caz from the BeEmulated website creates a port for BeOS. In December 2000, tubooboo from the Ngine website even considered a port of the emulator for Dreamcast, but the project did not go ahead. In addition to all these ports, there was one in particular that ended up becoming the continuation of DGen after its termination. I'm talking about DGen/SDL, ported to Linux in June 1999 by Joe Groff, created on top of version 1.12 of the original emulator. The SDL version made it possible to create ports of the emulator for several operating systems, such as UNIX, BeOS and BSD. Phil K. Hornung helped him with the project, adding filters, joypad support, among others. The project also supported Game Genie, compressed ROMs and other additions. In the same month of its creation, in June 1999, it gained a port to BeOS by Andrew Bazar. It was easier for Andrew to create a port of this version than of Dave's Windows version. In June 2000, it gained another port to BeOS by David from the website smaug.co.uk, since there was no more up-to-date version for the system. Andrew updated his version again later. In addition, DGen/SDL had the help of several other influencers in the field, such as Steve Snake, creator of KGen98. In July 2001, Joe and Phil abandoned the project, releasing their last version of the emulator, totaling 11 versions released. Andrew's last version for BeOS also came out that month.

DGen/SDL was ported to the XBox by XPort in July 2002 as DGenX and to the PSP by Syn-Z in June 2005. In 2008, Bertrand Janin, Tamentis, tried to revive the project, putting the latest version of the emulator made by Joe and Phil online on his website at SourceForge, an open source developer website, in an attempt to have some kind of cooperation, but was unsuccessful, releasing only one version of the emulator in August 2008. Bertrand, together with Inkscape, were responsible for creating the first logo for the emulator in May 2008. In 2011, the emulator was once again revived, this time by Zamaz, releasing nine versions of the emulator from September 2011 to July 2014. As of October 2011, Zamaz also began releasing versions for Windows. This version had no interface, requiring the ROM to be dragged on top of the emulator executable to be run (I believe this was the case since Joe's first version in 1999). Compared to the previous Tamentis version released in 2008, Zamaz added video filters, automatic region selection, a 68k debugger (Dave's Cyclone 68k, created after the original DGen was finished), OpenGL support, and several other updates and improvements. The emulator has not had any further versions released since 2014.

Thursday, December 15, 2022

The History of Sega Genesis Emulators - Gens

Today we will talk about the story of Gens, one of the greatest voice actors for Mega Drive and also for Sega consoles.


Gens (1999)

Gens was started in July 1999 by Frenchman Stephane Dallongeville, known as Stef, as a prototype. In October 1999, it released its first version for MS-DOS. Despite this, it later became popular as a simple Windows emulator. The only emulators that ran well at the time were Genecyst and KGen98, but they only ran on MS-DOS, and Gens wanted to be the first Windows-mode emulator with good performance, and at the time, the only ones available for this system were DGen and Megasis, which did not perform so well. The Gens project had a lot of support from the Genesis scene, such as Steve Snake from KGen98, Atani from Windows ports of Generator and Genital, Charles MacDonald from SMS Plus from Master System, Red5 from The Genesis Project for testing the emulator and creating its documentation and Christian Schiller from Eidolon's Inn, among others. The first version of the emulator was semi-functional, running only the 68k debugger created by Stef, called C68K, and running games in BIN and SMD formats. In November, it began supporting the reset option. In January 2000, it integrated Neil Bradley's Z80 emulator, added 4 buttons to the second Mega controller, supported frameskip and was able to run 50% of the console's ROMs. In February, it launched the Windows version in partnership with DirectX, known as Wgens, and at the same time launched the latest version for MS-DOS. In this version, it added save state in the format of the famous Genecyst emulator. In March, it began supporting sound, both through the Yamaha chip and the PSG. In mid-March, it began using Neill Corlett's 68k processor and began emulating the DAC. In the penultimate version of March, it was already running 75% of the games, and in the last one of the month it decided to continue using Neil Bradley's Z80 after changing the emulation for Mitton's Z80 several times between February and March. Also in March, it added support for a sound rate of up to 44,100hz. In April, it added support for the joypad. In May, it started supporting specific directories for saving screenshots, save states and others and loading ROMs in .ZIP format. In June, it added the 2xSAI game texture, the same used in the SNES, ZSNES and Snes9x emulators, as well as the pause option. It also added Scanline mode, the famous TV Mode (or TV mode). In June, it added stereo sound. In September, it added Game Genie, VSync and language support, starting with Spanish and French, reaching in June 2001 to support 23 languages ​​in total, including Portuguese, when it stopped supporting them and returned to only English. In October, it supports screenshots. In April 2001, it starts supporting netplay via Kaillera. In August, it adds stretch mode, which stretches the game screen. One of its differences was the addition of support for the Sega CD in September, being the first Mega Drive emulator to have this option. With this update, the bios menu comes,which later also supports the BIOS of other consoles supported by the emulator. In October, it brings the option of choosing up to 64kb of SRAM for Sega CD emulation. In July 2002, it begins to support color adjustment, with options to change contrast and brightness. And finally, in August, it begins to run 32X games. In addition to all the functions mentioned, the emulator also has the ability to save emulator settings, several Scanline derivations, change the game region, among others. The last version of the emulator is from October 2002. Its end is largely due to the competition with Kega, started in January 2002, and reborn as Kega Lazarus in September 2002, and which in the future would become the famous Kega Fusion. At the time of its launch, Kega is praised by Stephane as an emulator with good game compatibility, and better speed than Gens. It also had support for Master System and Game Gear, which Gens did not have. One of the few advantages of Gens was that it began supporting the Sega CD before Kega. Regarding its executable icon, it was added in April 2000 and modified in December 2000, and its icon/logo at the top of the emulator, it was added in June 2000 and modified in July 2002. In May 2003, Gens was ported by Caz to BeOS and in July 2003 to Linux/SDL by Stéphane Akhoun, using the core of Caz's port as a base. Gens ran on a simple Pentium 200MHz with 32Mb of RAM and a 2Mb video card, an affordable configuration in 2002. For the Sega CD, a Pentium II 233MHz was required. For 32X, an 800MHz processor was required, with a recommendation of up to 1Ghz, which at the time was considered a top-of-the-line computer configuration.using the core of Caz's port as a base. Gens ran on a simple Pentium 200MHz with 32Mb of RAM and a 2Mb video card, an affordable configuration in 2002. For the Sega CD, a Pentium II 233MHz was required. For the 32X, an 800MHz processor was required, with a recommendation of up to 1Ghz, which at the time was considered a top-of-the-line computer configuration.using the core of Caz's port as a base. Gens ran on a simple Pentium 200MHz with 32Mb of RAM and a 2Mb video card, an affordable configuration in 2002. For the Sega CD, a Pentium II 233MHz was required. For 32X, an 800MHz processor was required, with a recommendation of up to 1Ghz, which at the time was considered a top-of-the-line computer configuration.

In January 2005, a team from SourceForge released an update to the emulator, with some bug fixes and increased compatibility, reaching 92% of games played. It was known as Gens 2.12b. This version also changed the icon at the top of the emulator, and was widely used as a basis for several clones/hacks of the project. After that, DarkDancer, creator of the Gens fork, Gens32, released a version in May 2006 known as 2.14, with some elements from Gens32. It became known under the codename Souvenir, which means memory in French, and is the best-known version of Gens to this day. Both versions had the participation of Stef. At this stage, Stef also had the help of influencers Rodrigo Cardoso from the Gens fork, Gens Plus! from 2004 and Fox68k's NeoGeo CD emulator for Dreamcast, NEO4ALL from 2005. Due to its huge success, Gens was one of the most cloned emulators of all time. We had clone versions for Windows like sGens in 2003, IDC Log Gens, Gens Re-Recording (also for Linux, with Nitsuja as one of the authors, who also helped in the creation of FCEUX for NES), Gens (authored by Nick o'DIMM – nick ou-dem), DebuGens, Gens KMod and Gens Plus! (the latter becoming a Sega 8 and 16-bit multi-emulator) both in 2004, Gens32 in 2005, Gens Surreal (evolution of Gens32), Gens32 Ray (version for weak PCs of Gens Surreal) and Gens Tracer both in 2006, DualGens in 2008, Gens+ REWiND! and Gens/GS (also for Linux) both in 2009 and RaGens in 2018. Debu, Tracer and IDC are the only clones that have no apparent modifications in the interface and credits. For other devices, it was ported to Xbox by XPort, as GensX and NeoGenesis in 2003 and Gens_xport in 2004 and by Hikaru as Gens X in 2003, to Android as Gnome Gens in 2003 and TigerGens in 2012 and to Dreamcast, as Gens4All in 2008 (by the Spanish Daniel Lancha, Chui, creator of PSX4ALL for PSX and collaborator of the PicoDrive emulator of SMD). The interesting ports that we can highlight are the Gens/SG from 2009 that comes with the proposal of cleaning the source code and combining features of several other Gens ports. There was a second version of the emulator called Gens/GS II that began to be written between 2014 and 2016, but was never finished. The IDC Log Gens from 2004, also known as GensHack, which has a process of understanding assembly instructions of a ROM. Gens Re-Recording from 2004, previously known as Gens Movie Test, which specializes in recording videos and all the tools around it, being an emulator widely used by the TASVideos community, a YouTube of games recorded on emulators. And DualGens from 2008, which was developed to compare differences between ROMs. The remaining ports add image effects, video, information on technical parts of the emulator and the ROMs being run, among others.

Thursday, December 8, 2022

The History of Sega Genesis Emulators - Generator, Megasis and VGen

Today we will talk about the Generator, Megasis and VGen emulators.


Generator (1998)

Generator was an emulator that began in November 1997, created by James Ponder for a third-year college project. Its first version was released in March 1998 for UNIX (also running on Linux), and is among the first emulators for the Mega Drive. The project was born from open source and was built to be portable to other systems, such as Solaris, Net, Risc and Open BSD and RiscOS. Its first versions did not support sound, joypad, or save state, and had many bugs. In 1999, it gained ports for the Amiga by AmiDog and MacOS by Richard Bannister. In January 2000, it began to support sound by emulating the Zilog Z80 processor (by Neil Bradley's Multi-Z80) and the YM2612 chip (by Tatsuyuki Satoh). Also on the same date, it brought improvements for the M68k processor and palettes, among others. The first version for Windows was released in February 2000 under the name Generator32, and was created by Atani (it was closed in May). This version ran too fast for slow computers of the time, making it impossible to play anything that ran on it on modern computers. In April 2000, James released a second original port of the emulator, now for MS-DOS. This version had a fixed front-end that remained on the screen along with the game. It could be disabled by a keyboard shortcut. In addition, it also had NTSC/PAL video support, choice of region between US/EU and JP, full screen, reset, save state, screenshot and changes in video quality. Interestingly, James' emulator used its own 68k emulator, unlike other projects in the emulation world. It was even born with this proposal, to create processor emulation techniques (such as the 68k, for example) in an optimized way. In August 2001, Z80 emulation was added using Richard Mitton's Raze Z80. Its latest release was released in May 2003 for Linux and MS-DOS. The emulator also had several other ports, such as for Pocket PCs, iPAQ and Cassiopeia (the precursors of smartphones) in 2001 by Domenico Dato as PocketGenesis, two ports for Dreamcast in 2002 by Atani Software and MetaFox, for Playstation 2 in 2002 by Sjeep (and in 2010 also working on PS3s compatible with PS2, by aries2k), PSP in 2005 by sougen, and for UNIX by Christian Biere. Interestingly, in August 2003, Richard, who had ported the emulator to Mac, began to develop it himself (now for MacOS X). The emulator was last updated by Bannister in November 2022.

Megasis (1998)

Megasis (a mix of Mega and Genesis) was a Mega Drive emulator released on November 11, 1998, by Japanese developers JT and Bori. Interestingly, it was released for Windows, when at the time most emulators were released for MS-DOS. To run the emulator correctly, a Pentium 133MHz was required, and a Pentium 2 was recommended. A graphics card with DirectDraw support and, if possible, hardware acceleration was also required. For sound, DirectSound support was required. The emulator only really started working in the December 1998 update, when it started emulating the Z80 processor, and the PCM and FM sound chips, as well as fixing bugs in the 68k processor. The emulator had perfect emulation of the YM2612 chip (the console's FM chip), as well as stereo sound with up to 44,100hz quality. It also had save states (in .GSV and .KSB formats) and ran BIN and SMD game formats, as well as ZIP and LZH compressed formats. In addition, it also supported pause, reset, frameskip (with great acceleration for low-end computers), full-screen mode, multiple window modes, multiple game regions, sound recording in .WAV format, as well as FM and PCM sound recording, echo effect, changing the 68k processor clock, support for a six-button joypad, VDP emulation (which is the console's GPU), editing shortcut keys for various emulator functions, among others. Megasis had six versions in total, the last one being released in April 2001. From November 1998 onwards, fans were asking for a MacOS version. It seems that there was some indication from the creators for this at the time. In January 2000, it was posted on the project's home page that this version would be developed, but by June of the same year this information had already been taken down.

VGen (1998)

VGen or Virtual Genesis began to be developed in 1997 by Jason Meehan, and was released in March 1998 for MS-DOS. From May 1998, it began to run games via the command line, and in the November 1998 version it began to emulate sound through the Zilog Z80. The emulator also emulates the console's two sound chips, the PSG and the YM2612. The processors it used were Neill Corlett's 68k and Neil Bradley's Z80. VGen later provides a GUI that you control with the mouse, in addition to support for two controllers, supporting various joypad styles, various screen size modes and formats, frame rate, reset, up to 44,100hz sound, changing the game region and access to various technical information about the emulator, among others. Despite this diversity of options and information, the emulator was very deficient in speed, sound and compatibility, never leaving the alpha state. VGen also supported the Sega CD bios without running the games. It is said that the emulator would have been the first to run the Sega CD bios in the first version released in 1998, when in fact the first to run it was the NextLEVEL emulator in October 1997. Some information about Sega CD was brought by Christian Schiller, owner of the website Eidolon's Inn. In addition to the Sega CD, Master System and Game Gear were also planned for the emulator. The emulator ran on a Pentium 1 with 8Mb of RAM. Its last version was released in June 2001. As far as we know, the emulator would have had four versions released in total, the launch, two in 1998, in the months of May and November and the closing.

Thursday, December 1, 2022

The History of Sega Genesis Emulators - KGen, KGen98, Kega, Kega Lazarus and Kega Fusion

Today we will talk about all the emulators created by Steve Snake, from the classics KGen and KGen98, quite famous in the 1990s, to Kega, Kega Lazarus and the renowned Kega Fusion, one of the greatest emulators, not only for Mega Drive, but also for Sega consoles in history. Check it out.


KGen / KGen98 / Kega / Kega Lazarus / Kega Fusion (1997)

KGen, short for Kega Genesis, was released in August 1997 by Steve Snake, alongside Kode and Muzak Ltd for MS-DOS. The project was developed over a two-month period, from June to August. Describing the emulator, it works on the command line, without its own interface (gaining a GUI from September 1997), had a VSync function to run games on a Pentium 200 with twice the speed of a regular Mega Drive, and the regular speed of the console on a Pentium 133, as well as screenshots (in .PCX format), keyboard and joypad control configuration, frameskip, region switching, as well as good emulation of the YM2612 sound chip, and from October 1997 of PSG Sound. The emulator also had save states, however, unlike other emulators, here it was called snapshots, and saved them in KSS format. From September 1997 onwards, save states began to be loaded in GSV format, corresponding to the Genecyst emulator. In May 1998, a front-end (interface) for Windows mode of the emulator was released by Airds, called Kgen Loader, and was updated until August 1998. The same person also created versions for GenEm for Mega Drive and ESNES and Snes9x for SNES. Steve had help from some people on the project, such as Colin Rodgers and Stuart McKenna with information about the Z80A and 68K microprocessors, his friend Warren Mills for information about his own Z80 emulator, and the creator of the Magic Engine for PC Engine, David Michel, helping with some questions, among others. The emulator had eight versions between August and October 1997, when it ceased its activities.

In late 1997, Steve began to create an emulator for MMX processors, a new Intel technology released earlier that year. Due to several optimization tricks used in the emulation, the speed gained by MMX processing was barely noticeable, causing Steve to give up on the idea, which was called KGen-X. After that, he began to develop KGen98, completely rewritten and with better performance than KGen-X, releasing it in June 1998 for MS-DOS. In addition to better performance, it also rewrote and improved part of the GUI, added support for Game Genie, improved video quality, with the addition of scanlines, 8/16-bit mode, among others, and brought stereo sound quality to the emulator. Your save state can now be created and accessed within the game, no longer needing to go to the main menu. KGen98 had only four versions, all in June. Also in June, the Kgen Loader front-end also began to support Kgen98. Due to the success of his emulator, Sega called Steve to be the lead programmer for the Sega Smash Pack project for Windows. To do this, they used Steve's Kgen98, which received some changes and got a new look. The collection was released in 1999, with eight games: Golden Axe, Shinobi, Phantasy Star II, OutRun, Columns, Sonic Spinball, Altered Beast and Vectorman. Next came Sega Puzzle Pack, also released in 1999, with the games Dr. Robotnik's Mean Bean Machine and Columns III, as well as the puzzle Lose Your Marbles created by Sega in 1997. And finally, Sega Smash Pack II, which contained the games Comix Zone, Flicky, Kid Chameleon, Shining Force, Sonic The Hedgehog 2, Super Hang-On and Vectorman 2, in 2000. At the time, he received a proposal from Sega to create a new emulator especially for the future Sega Smash Pack packages, which would be released for Dreamcast and GBA, but Steve refused and the project was developed by other creators. These releases without Steve were Sega Smash Pack Volume 1 in 2001 for Dreamcast and Sega Smash Pack in 2002 for GBA.

After almost four years away, Steve resurfaced alone with the launch of Kega in January 2002 for Windows, which came with the Sega CD feature, already used in the competitor Gens. Kega did not use any of the KGen98 source code, except for parts of the 68k and Z80 cores. The rest was completely rewritten from scratch, and now with Windows support. The difference was its speed and compatibility with games. It came completely revamped, with a completely different interface and several other options included, such as bios configuration for emulated consoles, various screen sizes, TV mode, selection of quality in hz for sound, giving the choice between 11025, 22050 and 44100Hz, the Perfect Sync option, which synchronized the two 68k SegaCD cores for perfect synchronization (being suggested only for powerful PCs and for specific games), among others. Kega also supported games compressed in .zip format (only for SMD games). The difference with the project was that the code had been created by Steve himself. In March 2002, Kega included the Game Gear and Master System consoles, having later depopularized the Meka emulator, which until then had been used for games on these consoles, mainly the Master System. The project has five versions released, the last one in March 2002.

In September 2002, Steve came up with an alternative version called Kega Lazarus. It was the beginning of the emulator, and yet another beginning of a Mega Drive emulator in Steve's history. Steve had suffered a hardware failure and lost all of Kega's source code, with the exception of the code for version 0.02 from January 2002, the third version of the emulator. Many of the changes from the emulator were maintained, and new ones appeared, such as a completely new Z80 core, faster Master and Game Gear emulation, and improvements in Mega and Sega CD emulation. It was basically identical to Kega in terms of interface and options. The second version of Kega Lazarus came out only seven months after the first, in April 2003. This version was special for Master and Game Gear, with all kinds of improvements for the consoles, from compatibility, graphics, to performance. In the May 2003 version, it also adds support for Sega's SG-1000 and SC-3000 consoles. In the latest version from June 2003, it makes improvements to Sega CD support, adding Bin/Cue support, improving ISO support, among others. Steve said that this version surpasses in every aspect the last version released by the old project, Kega. The emulator had six versions, from the second to the fourth version, that is, three of them, dedicated almost exclusively to optimizing the Master and Game Gear consoles. It is mentioned on some websites that the project would have added support for the 32X, but neither in the "readme" files nor in the emulators themselves was this support mentioned or implemented.

After a year without updating Kega Lazarus, Steve released his latest emulator, the acclaimed Kega Fusion, in July 2004. The project is the merging of part of the Kega and Kega Lazarus emulators with Kega Fusion. Much of the source code was rewritten from scratch, remaining as close as possible to Kega's previous projects, while maintaining the user interface and functions of the emulator. It was only in this new phase that Steve was able to support 32X in one of his emulators, releasing it in the first version of Fusion. As he described, it was the most accurate emulator of all at the time for emulating the add-on. In addition to all the console support, chip and processor emulation, tools and performance also present in Kega Lazarus, it added many other functions to the emulator. Also in 2004, it supported rendering plug-ins such as 2xSai, hq2x, and two created by Snake, such as Double and DoubleRaw. At this time, the Gens emulator, which had been the priority for 16-bit console games, began to be displaced. Over time, all other Sega console emulators below the Sega Saturn began to lose popularity due to Steve's emulator. In 2005, the emulator changed its numbering from 0.1 to 3.0. The reason was that this numbering was linked to emulators that were still in a very early stage, which caused people to lack interest in downloading it. Steve then had the idea of ​​changing this, and since Fusion was the third emulator in its Kega series, he put it as 3.0. In this version, from February 2005, support for MP3 format was added to Sega CD game audio, in addition to the Pro Action Replay cheat. In February 2006, support for Netplay was added, unlike many emulators that used to use the Kaillera server. In this version, users could choose whichever server they wanted to host their games. There were no updates in 2007. In 2008, there were also important updates, such as in December 2008 with support for SVP (Sega Virtua Processor), used to run the game Virtua Racing, which originally came in a special cartridge to generate 3D graphics. This support was initially brought to the PicoDrive emulator, Fusion's latest competitor. Also in the same month, Fusion began running on MacOS X. In September 2009, Linux was able to run the emulator. That month, Mac also gained another version. The emulator also supported Direct3D thanks to its joint work with DirectX. Its latest version, which is still used today, was released in March 2010. The emulator has had sixteen versions in total.

Featured Posts

Emulator and Rom Sites - Part 1

When we talk about emulation and ROMs, we also talk about the websites that spread this idea. And there are many of them. Here we will talk ...

Popular Posts

Total Pageviews