Wednesday, June 25, 2008

Linux gaming: It's a blast!

I've been using Linux as my primary (pretty much only) OS for about 2 years now. As a software developer and a certifiable geek, my idea of fun has mainly always revolved around programming, researching technology, reading Wikipedia articles and playing around with the latest OS (Linux, Solaris, BSD).

Well, after a really intense software development project that lasted roughly 9 months, I needed a bit of a mental break from my usual spare-time activities, so I started googling for Linux games. It's been said that there isn't much out there when it comes to gaming on Linux.

I beg to differ.

Enter Wormux.

I've always enjoyed playing Worms and when I discovered Wormux it was a blast. This got me going with gaming on Linux.

As I'm not a heavy gamer, this game made for great gameplay since it's quite light.

With support for full screen, network gameplay and a bit of AI too, this game is a must-have. It's open source and runs on Linux, Windows, Mac OS X and BSD.

Emulation is fun!

As I continued my search for fun games, I was reminded about the emulators I used to use on Windows, mainly for Sega Genesis/MegaDrive.

I'm currently using the following emulators on Linux:
  • FCE Ultra - a Nintendo NES emulator
  • Gens - a Sega Genesis/MegaDrive/32X/CD emulator
  • ZSNES - a Nintendo Super NES emulator
Getting Gens going was a bit of work since it was difficult to find an up-to-date package and the 'gens-opengl' version just kept crashing with a segmentation fault. I was able to compile the latest source though and that version (1.12x I think) ran without problems. Still, it would have been nice to have a package for the latest version and I missed the Open GL capabilities you have in ZSNES. That changed recently when I noticed that there are now RPM and DEB packages available for the latest version, which does have Open GL capabilities.

By now, you have probably figured out that I grew up in the 80's and 90's. Yes, I began gaming on NES (actually on FamiCom clones) and then moved to Sega MegaDrive (known as Genesis in North America). Mario and Sonic made for hours of fun - and possibly caused my myopia :).

A couple of days playing around with these emulators, together with full screen output and TV-out on my NVidia graphics card and I was hooked.

What would gaming be without a gamepad?

I then decided that the keyboard wasn't doing it for me. Using the right hand for direction is just weird coming from a console background, where the directional buttons (D-pad) are on the left hand side of the control (in my exprience any way). Also, most of the dexterity is in my thumbs, so I decided to go hunting for a gamepad.

My search began with a local computer store, where I found the Logitech Dual Action gamepad. Of course, it only comes with Windows drivers, but I bought it knowing that there is a good chance it would work with my Linux system. Also, the product page only shows Windows and Mac OS X compatibility.

Well, I got home, fired up my laptop (which is running PCLinuxOS 2007), plugged the gamepad into an available USB port and... voila! Success! Plug-n-Play!

I went and bought a second Logitech Dual Action gamepad a couple of days later :)

Graphics output

TV-out for emulation works great! For this, I use an S-video to RCA cable (from laptop S-video to TV).

Since my laptop has 1280x800 resolution, I use nvidia-xsettings or krandrtray for dynamically configuring the resolution to a 4:3 ratio. This is necessary for TV-out because you need to use cloned output instead of Twinview. The emulators I've used don't seem to allow selection of which display to use for ouput and cloning 1280x800 doesn't come out right on the TV.

Once you've tweaked it all though, you basically have your good old console back again. Wow!

Sound

Any sound card would of course have a stereo headphone jack for output, so I use a stereo mini to RCA cable. This works great.

Windows games?

I've heard playing Windows games using WINE is pretty good, although I haven't tried it myself.

Just have a look at the WINE App DB and you'll notice that most of the top applications are games. This says a lot. The WINE team is working hard to make running Windows applications on Linux possible. Keep up the good work guys!

Conclusion

All in all, my experience with gaming on Linux has been a blast. Of course, my level of gaming is not quite intense, but what I have played so far has been great.

Basically, it's possible to turn your Linux machine into a gaming station with very little effort. If you get stuck, there's always your good old friend Google :)

What are your favourite games on Linux?
Do you use emulators for your favourite old console?

Reader comments are most welcome.

Thursday, June 12, 2008

Novell: Biting the hand that feeds them

My first real use of Linux was a few years back starting with the then newly released SuSE 10.0. All in all, for a relative newcomer to Linux, it did the job for me and aided me in my transition to freedom.

Today I am a full-time Linux user, but the thing is, I'm no longer using that distro, which is now called openSUSE. Why? Simply because of conscience.

I couldn't use it knowing that the company behind it agrees with Microsoft with regards to their patent infringement claims [ just google for "microsoft claims linux violates patents" and you'll see what I'm talking about ].

There is a lot of material out there that provides the details, so I won't go into that here. I will however share my opinions on Novell.

I know the openSUSE community and Novell are obviously not the same thing, but then openSUSE exists as the vehicle for development and innovation by the community, upon which Novell can build for their commercial versions (SLED and SLES).

Don't get me wrong - openSUSE has always been my absolute favourite among distros, but Novell has crossed the line.

I've noticed that people criticize Linux companies like Red Hat, Mandriva and Canonical for 'commercializing' Linux. I would agree that the world would not be a better place if everything Linux was all commercial. However, I figure that some commercial involvement is a good thing for Linux as it broadens the horizons for Linux in general and allows the 'non-free software' world to see that 'this thing is for real'.

I think making money with Linux is a good thing provided it is done in an ethical manner.

Commercial Linux is good if the company concerned is giving back to Linux. Yes, Novell have contributed a large amount of code (? any ideas how much?), but trying to profit from M$'s anti-Linux FUD is just no good.

The problem I see with Novell, despite their contributions to Linux development, is that they're cashing in on the whole Microsoft thing to further their own interests. Of course, in signing up with M$, they have provided some sort of substance to M$'s claims and that is not a good thing.

Not a good thing for the community; not a good thing for Novell.

I guess, to make a long story short, they are biting the hand that feeds them.

This is the reason I've written them off. I used to only use SUSE/openSUSE, but after the Novell/Microsoft deal, I was put off, much like the rest of the community.

And let's not forget M$'s part in this. If they can cause division in the Linux community, then that would supposedly help them tighten their weakening strangle-hold on the computing world.

To date, however, it's been all talk and no action. I haven't really seen any significant development resulting from this deal. No real benefit for anyone but Novell and M$.

Time will tell exactly what effect these odd dealings will have.

For me, it just means that using openSUSE is no longer viable. Thus, I've moved on to other distros, which is a good thing :) I've been using PCLinuxOS, Mandriva, Ubuntu and it's all good (more about that in another post).

In order to maintain freedom, we must always remain in a position where we have a choice. I think this whole thing is one big attempt to undermine our freedom to choose.

What do you think?
What effect has this whole thing had on you, as well as the Linux community in general?