A Bottle of WINE, a Bottle of Awesomeness!

wineOne of the major concerns that beginner Linux users have is whether they will still be able to use their favorite Windows programs, especially games, despite not running Windows itself. In fact, there are numerous distributions that address this issue as part of their missive. For instance, Zorin OS and Linux Mint advertise themselves as perfect not only for beginners, but also for former Windows users. Those two distributions I would surely recommend to ‘Windows refugees’. Apart from them, Robolinux offers a pre-configured virtual machine for Windows XP and Windows 7, so that Win can run seamlessly alongside Linux.

However, there is one majestic piece of software available to most Linux distributions alike – WINE. Contrary to popular belief, Wine Is NOT an Emulator. Windows emulators of course exist, in the form of virtual machines. However, WINE works slightly differently. It is a compatibility layer that directly translates calls for Windows-specific libraries to their Linux counterparts. Due to that and because of the way the code is written, the resource-usage penalty of running Windows application through WINE is minute.

From a different perspective, modern Windows installments also use a compatibility layer for 32-bit applications  under 64-bit systems. Incidentally, some 32-bit Windows applications may run more smoothly through WINE, than under Windows itself. Although I no longer have a Windows computer to test this, I decided to give some old classics a go. As a case study I have chosen Age of Empires 2: The Age of Kings.

WINE’s main website, WineHQ, hosts a vast database of thousands of Windows applications that have already been tested and may or may not work properly. Age of Empires was a good choice as it was ranked Gold (mainly playable with only minor issues). Admitingly, I did encounter a number of issues I was forced to approach.

1. CD-ROM not recognized. It might come as a surprise, but Linux usually fails to recognize and/or mount the original CD. Brief investigation yielded the explanation. It seems that Age of Empires 2 relies on a rather dated CD filesystem format iso9660. This could be quickly fixed by defining a proper mount point in /etc/fstab, denoting iso9660 as the filesystem of choice. An examplary entry looks as follows:

/dev/sr0                 /media/cdrom                iso9660               ro,exec,noauto                0 0

/dev/sr0 is the name of the DVD-ROM device. While I believe it is a generic setup, other distributions may use different names. /media/cdrom defines the folder to which the content of the CD-ROM (Age of Empires 2, in this case) will be loaded. iso9660 is the filesystem mentioned. Auto could be put in its stead, but iso9660 is a safer choice. ro – read-only (another safe choice, the CD cannot be overwritten anyway), exec – execute (required by some programs), noauto – no automatic mounting (prevents the DVD-ROM from being unnecessarily mounted during system boot). The reason I am actually listing all that is because I had to come up with this makeshift solution myself.

2. Game crash in screen resolution 1024×768. This happens only when in full-screen mode. I believe the reason is a collision between WINE and a window manager. Alas, I have a small, 13” screen with a 1366×768 screen resolution. Not exactly suited for gaming.

On a more positive note, I had no problems with proper display of colors, bitmaps and textures. Sound also worked without fail. While still using Windows 7, I had many more problems with Age of Empires 2.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s