Lutris' blog

Day 15 : Sonic 2 on Sega Genesis (1992)

by on Apr.25, 2010, under lutris

Ok, now let’s have some good old fun. No, I’m not talking about Sonic 2 which is of course full of funnies, but about the terrible situation surrounding the world of emulators on Debian and Ubuntu.
The Sega Genesis is one of those machine to have very limited support on Ubuntu. Of course you have dgen, but basically it sucks. I never managed to run Sonic 2 with dgen and when you want to emulate a Sega Genesis you’re likely to play Sonic 2… The other alternative is Gens/GS, which is not in Ubuntu repos because of some silly licensing issues. The “offending” part is StarScream an old 68000 emulator that hasn’t been updated in almost 10 years. And no, StarScream is not under the GPL licence, in fact StarScream documentation says :

“Starscream may be distributed freely in unmodified form, as long as this
documentation is included.

No money, goods, or services may be charged or solicited for Starscream, or
any emulator or other program which includes Starscream, in whole or in part.

Ok, that makes it non-free I suppose … WHAT ABOUT PUTTING THE WHOLE THING IN THE NON-FREE REPO THEN! It’s sickening, most emulators use libs of one kind or another and chances are that sometimes they happen to use a non-free one. So Debian guys has decided to punish everyone and keep a good piece of (Open Source) software out of their distribution.
It’s not GPL’d so they have to make a big fuss out of this and hurt the authors by not giving them a good coverage (while dgen gets an excellent coverage, being the only Genesis emulator in town).
Oh and one last thing, Gens is really Gens/GS, the original Gens is dead and there has been a major fuck up in the transition of maintainer. Either Gens original author decided to stop his project without giving commit access to anyone (which is very rude) or GerbilSoft decided it was very important that his initials where in Gens’ name (which is not very humble). Apparently :

The main motivation for creating this fork was that the original Gens for Linux project was a disaster. Among other things, menus kept desynchronizing and various features didn’t work.

Same thing again, either GerbilSoft does not believe in sending patches, or original Gens maintainer was nowhere to be found when GS sent his patches. As you can see, I’m not a big fan of forks and I see them as huge failures in Open Source software management.
Anyway, Gens/GS (or let’s simply call it Gens) is the very best emulator of Sega Genesis around, and the good thing is that there is a package for it here (32bit only).

Writing the gens runner took me about 4 minutes, that’s how easy it gets when you have a good emulator. The game runs without any kind of problem. It’s a shame that licensing issues come and spoil everything.

Sonic 2

5 Comments for this entry

  • Anonymous Bloke

    Well said dude. I used to have audio issues with that emulator, I’m looking forward to testing out your configuration and see everything works. fingers crossed!

    By the way, thank you for your continued work on this project. It looks very promising and I hope it works fantastic!

  • strider

    I tried running Genesis games with lutris last week end and it worked great :)
    The emulator still needs a manual installation, but this should soon be fixed.

  • Anonymous Bloke

    Hi strider,

    I’ve got some feedback. Since I don’t know where to leave it, I’ll leave it here, hope it’s ok!

    Here’s the first thing. Lutris is a very ambitious project. Making an interface to coordinate all these different emulators, wine and native linux games is one hell of a job. The potential, however, is fantastic. Considering just the emulators, Lutris could make it so easy to play retro games it’d make linux the best platform for this without a shadow of a doubt.

    For this to happen, my suggestion would be to phase the project. Tackle one issue at a time. After you lay out the ground work, you could move on to one emulator at a time. Make Lutris and Gens work perfect. When that’s done, move to pcsx and make that perfect. Have you considered this tactic? I have a suspicion this could be easily planned out on launchpad using blueprints.

    I only tried out Gens and here’s my experience.

    I installed gens/gs from playdeb and tried it out first. After I enabled sdl+opengl rendering it started working ok, so I guess I was ready.

    Then I opened Lutris. I had no idea where to start. The difference between “add game” and “install game” is not that obvious. I tried install game first, but I couldn’t see where to choose my rom. So I quit and then chose add game, and then the distinction was finally clear. In install game, Gens should not be listed as a runner if you cannot add a game through this mechanism.

    So finally, Sonic was listed and it started. It wasn’t obvious that a game launches by double clicking. Each button on the toolbar should have a description of what it does on the status bar. I still don’t know what Reset does, but I assume it resets the configuration to a given default.

    Then I started playing with the different runner configuration options in the “Edit game configuration” window. There are two tabs with the same name there! On the first one, the “Fullscreen” and “Exit emulator with esc” options all worked great. On the second one, things were much more confusing.

    I have no idea what “Default game path” does. I was able to deduce what the “Desktop” and “Gaming Window Manager” options were for, but the fact that they had no default option chosen was a bit confusing. A tooltip with an explanation would’ve been great.
    “Resolution” I just had to try to understand what it did. This option and “Reset resolution when game quits” work great and come incredibly handy for some games in wine. There is a bug I noticed, however. The choice of resolution is not persistent. When I open the “Edit game configuration” window a second time, the “Resolution” entry is blank.

    The OSS wrapper I understand what it does because of my fights in the past with pulseaudio and emulators. Gens audio worked fine so I didn’t try this out or the “Reset PulseAudio” option.

    Another bug I noticed is “Hide Gnome Panels” works, but is not reset when the emulator quits. I had to manually disable the auto-hide option.

    The last two entries are a bit of a mess. From your soul calibrur struggle I understood what these were for, but they didn’t work as I expected. I don’t understand what I was supposed to write in the text boxes. The last one reads “Make a fullscreen window with c”. I assume c stands for compiz?

    I would very much like to help you out with this project. I have 4 linux boxes running Ubuntu 10.04, a netbook, an old laptop, an old desktop and a recent desktop. They have an intel, ati, ati, and nvidia graphics cards respectively, so I could do some very extensive testing. I have some experience with playing with gens and pcsx options to make them work just right. Can I be of any help?

  • sonic the hedgehog

    forget about gens gs use kega fusion it runs megadrive, 32x and mega cd flawlessy. haven’t tried master system yet.

  • segasoniclover

    Despite the other comments I have read here, I have to thank you for the tip about Gens/GS. I have been trying to play Sonic 2 for a while now and downloaded a number of different rom files for it but none of them would get past the opening screen of dgen. And dgen is the only genesis emulator that shows up in the main repositories for linux mint.
    Then I found your site!
    Now I can play Sonic 2 again. Thank you.
    p. s. Although I haven’t been able to get the sound test cheat codes to work. I don’t know. Maybe I’m just doing it wrong.

Leave a Reply

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!


All entries, chronologically...