Requirements
============

libSDL
libSDL_mixer
libSDL_image
and accompanying devel packages.

Optional: libSDL_ttf and accompanying devel package.


Desktop Linux
=============

Firstly make sure that you have the necessary devel libraries installed
(plus the libSDL_ttf-devel library if you are not using the pixmap font
option) and then type "make".

If you are editing the source code and modify any header files then
type "make clean && make".

The build system has been set-up so that by default GNU Robbo runs from
the installation folder. If you want to install this software then you
should simply comment the existing PACKAGE_DATA_DIR, BINDIR and DOCDIR
group towards the top of the Makefile and uncomment the ones that
interest you. Then type :-

    make clean
    make
    (If installing system-wide then login as root now)
    make install


Sharp Zaurus
============

Type "make -f Makefile.zaurus". This creates an ipk.


GP2X
====

Type "make -f Makefile.gp2x". This creates a tarball.


Sony PlayStation Portable (PSP)
===============================

Type "make -f Makefile.psp". This creates an EBOOT.PBP.


FONT_USE_PIXMAP/FONT_USE_SDL_TTF
================================

The project renders the text using SDL_ttf by default, but there are
similar pixmap fonts available that can be enabled by selecting
FONT_USE_PIXMAP instead of FONT_USE_SDL_TTF in the Makefile.

You may want to use the pixmap fonts if the target platform...
* uses a lower resolution or has a smaller screen (pixmap is crisper).
* would benefit from the speed advantage of rendering simple pixmaps.
* doesn't accept the Bitstream Vera Fonts licence LICENSE-ttf.
* doesn't have (or can't locate) the SDL_ttf library or devel package.


MUSIC
=====

There is preliminary support for music which can be enabled by
uncommenting the line MUSIC=-DHAVE_MUSIC in the Makefile (please see
the README for more information about configuring music).


DESIGNER
========

There is preliminary support for a mouse driven level designer which is
enabled by default for the PC and can be disabled by commenting the
line DESIGNER=-DHAVE_DESIGNER in the Makefile (please see the README
for more information about the level designer).


Porting to Other Platforms
==========================

The build system and this project have been designed to make it as easy
as possible to port to other platforms and devices. The source code has
official support for win32, PC (Linux desktop), GPH GP2X, Sharp Zaurus
and the Sony PlayStation PSP. Platform dependent code is wrapped in
PLATFORM_WIN32, PLATFORM_PC, PLATFORM_GP2X, PLATFORM_ZAURUS and
PLATFORM_PSP compiler directives respectively, so initially you'll want
to append these #if #elif... #endif conditional groups with a suitable
directive for your platform and either copy and paste the code from
one of the others or add your own.

This project will run centred in any resolution greater than 240x240
via the -XRESxYRES command line option, therefore it can be run on
anything from a portrait orientated mobile/cellular phone to a
widescreen internet tablet or netbook without having to reengineer the
graphics rendering code.

