Here are GearHead tar.gz packages compiled for Linux, FreeBSD and Mac OS X.
For some Linux distributions you may find more suitable packages, these may be easier to install than my binaries: GH 1 in Debian, GH 1 in Ubuntu, GH 2 in OpenSUSE.
The archives below contain binaries and data files, so you have everything you need to play the game. Just unpack the archive, install SDL libraries (with SDL_image and SDL_ttf; only if you downloaded SDL version), and run the executable.
There are two gearhead games: GearHead 1 (current version 1.100) and GearHead 2 (current version 0.628). Each version comes in two flavors: console one and SDL one.
Contents:
For Linux (i386 architecture — take this if you don't know what "architecture" is):
For Linux (x86_64 architecture):
For FreeBSD (i386 architecture):
For Mac OS X (i386 architecture):
Console version (both GH1 and GH2):
When running the game, make sure that your console size is at least
80 x 24. Otherwise the console display will be messed up.
GH2 SDL version:
If you get pure blue screen after running GH2 (that is, the screen
seems to be resized correctly, but no menu is displayed),
don't panic :) Just exit by pressing Escape.
Then add the line
USE_SOFTWARE_SURFACE
inside the file gearhead.cfg (or make sure it's not commented out by the hash (#) sign). And run the game again. If this doesn't help, add the line saying
WINDOW
inside the same file, gearhead.cfg. This will force windowed (not full-screen) mode, and problem should be gone.
Some graphic cards exhibit a buggy behavior, and they require one more line to be present in gearhead.cfg:
REVERT_SLOWER_SAFER
This workarounds a problem by avoiding glPixelZoom(1 -1) usage. Known cards affected are fglrx (ATI graphic cards, like Radeon, with ATI closed-source drivers installed) and Tungsten Graphics using Mesa driver. See this forum thread for some info.
This problem seems to be gone in newer GearHead versions, so you can probably ignore this, unless the game crashes (in which case report this as a bug, to me or Joseph).
GH is developed on case-insensitive filesystem (as usual on DOS/Windows), and in some places it fails to work on case-sensitive filesystem (as usual on Unix systems), because program tries to open filenames with different case then they are in the archive. Simplest workaround is to unpack and run the game inside a directory on case-insensitive filesystem (like your mounted Windows FAT disk or something like that).
The game expects to find it's data files inside current directory, and saves it's data also inside current directory. So be sure to enter appropriate directory before running the executable. And the safe system-wide installation (so that each user has separate savefiles directory) is not easily possible.
That said, Toni Graffy made a simple script (originally for OpenSUSE package of GH2) to overcome above limitations. It assumes that game data (and normal binary) are installed inside /usr/share/gearhead2/. Then you can place this script on $PATH, and each user will be able to run gearhead and have it's own savegames.
For SDL versions under Mac OS X, you should install SDL libraries (with SDL_image and SDL_ttf) by fink. (These binaries don't work with SDL libraries in frameworks from libsdl.org.) As always when dealing with fink libraries, you should add them to your libs path by command like
export LD_LIBRARY_PATH=/sw/lib:"$LD_LIBRARY_PATH"
before executing programs. You can add this command to your .bashrc file.
Also note that the SDL versions run in XWindows environment. So you have to start XWindows first, and from there run gearhead.
... gearhead[...] Exception raised during posting of notification. Ignored. exception: *** -[NSLayoutManager glyphRangeForTextContainer:]: given container does not appear in the list of containers for this NSLayoutManager.
followed by Illegal instruction and a crash of GH2. In fullscreen mode, this problem is "aggravated" because fullscreen SDL window hides the message box with the error, and you have to press the "Ok" button on the message box to actually close the (crashed and unresponsive) GH2 window... So if you just start switching between programs and pressing random buttons you will usually make the system unusable, and you'll have to reboot, even though the only thing that actually crashed was SDL. So two advices:
Binaries were compiled from GH1 and GH2 sources. Modifications to GH sources:
To cosplay.pas (SDL version of GH1): instead of
Mouse_Pointer := Img_Load( 'Image\cosplay_pointer.png' );
use
Mouse_Pointer := Img_Load( 'Image' + DirectorySeparator +
'cosplay_pointer.png' );
(otherwise Mouse_Pointer is nil (not loaded, since filename is invalid),
and program crashes).For x86_64, some dirty typecasts in sdlgfx.pp (SDL version of GH1) have to be corrected, the patch is here.
GH1 compiled using FPC 2.2.0. GH2 compiled using FPC 2.4.0.
JEDI-SDL sources as taken from jedi-sdl cvs repository on sourceforge, up-to-date on 2008-02-27. SDL_ttf has Workaround_TTF_RenderText_Solid defined (see this post on jedi-sdl mailing list, this is currently the default for jedi-sdl in CVS). For x86_64 compatibility, jedi-sdl had to be fixed quite a bit (actually, I compiled gearhead for x86_64 mostly to test jedi-sdl on 64 bits). The patch is submitted to jedi-sdl developers, you can see it here.
Mac OS X + SDL requires quite specific compilation options, if you want to compile it yourself see FPC_and_SDL wiki page — my compilation followed notes there.
I'm willing to update these binaries as new gearhead, FPC, jedi-sdl, sdl and whatever-else versions will come out. Ping me via email when you want me to update them.
These Unix GearHead binaries were prepared by Michalis Kamburelis.
[Go to Michalis Kamburelis home page].