GLBasic User Manual

Main sections

Platforms

Platforms



General


GLBasic supports different target platforms. Thus, you can compile the same application for e.g. Win32 (Windows 98, NT, 2000, XP, Vista,...) and WinCE (PocketPC2002, 2003, Windows Mobile, ...).
To choose which operating system you would like to compile for, select the menu item "Project/Options" and choose the target OS in the dropdown box.
Once you have selected the correct OS, choose the relevant settings you wish to apply for that OS' build (resolution etc). The "Compile for this platform" option is no longer relevant in this version of GLBasic. Finally press the "Apply" button to activate the settings.
On the next compilation (Compiler menu/Build-multiplatform), an executable file will be created for each specified target platform. Each platform's executable will have a different name - for example, an executable for WinCE would be called ApplicationName_PPC.exe.

More platforms are yet to come. The additional platforms require a <B>license for "NET" or the GLBasic SDK premium</B>. If you are unsure of which license you have installed, this can be seen when you start the program.

Limitations



<B>ARM processors</B>
-For ARM platforms, the floating point numbers are limited to 32 bit floating point numbers.
-The color depth of the screen is usually 16 bit. No changes in code are required, but the value of GETPIXEL might differ to the colour you set with SETPIXEL.

<B>GP2X/WIZ</B>
-Screen is set to 320x240
-Midi playback might not work.
-Memory is limited to about 48 MB.

<B>Non-Windows</B>
FILEREQUEST$ is replaced by INPUT$. DDgui offers a DDgui_FileDialog.

<B>Linux</B>
The following libraries need to be installed before running an executable :

-libSDL_mixer-1.2
-libstdc++.so.5
-libmikmod.so.2
-libvorbisfile.so.3
-libsmpeg-0.4.so.0
-libvorbis.so.0

which can be installed using <B>sudo apt-get install libsdl-mixer1.2-dev libstdc++5</B> (or equivalent)

<B>Mac</B>
-Works on PowerPC or Intel machines (the executable created is a Universal program)
-Full screen mode is currently not implemented
-MP3 files can't be used (OGG files should be used instead)

<B>Win32</B>
-ogg sound files require a codec for the media player.
-The logfile is written to %TEMP%/logfile.txt instead of a console.

<B>iPhone</B>

The iPhone has no keys, thus KEY() will always return 0. If the Home button is pressed, the OS will quit your program very quickly. There's very little time to save the current game status. The way to do this is by inserting a
SUB GLB_ON_QUIT:
and write the status using OPENFILE. No more graphics are possible at this point!

The acceleration sensor of the iPhone can be polled with GETJOYX(0), GETJOYY(0) and GETJOYZ(0) accordingly. The return values are the accelerations for each axis in "G" (9.81 m/s^2). The axes are defined as:


The iPhone has multi touch. Each touch is treated as a "mouse device". See GETMOUSECOUNT().

Apple does not allow GLBasic to install parts of their SDK on non-Apple branded hardware. As a result, you MUST have a Mac in order to compile for iPhone. GLBasic will provide an XCode project which you can then compile using a Mac. The code-signed program file must be copied as "iPhone" to the .app directory afterwards.

See also...