Cross-platform support for DOS, Windows, Unix, BeOS, QNX and MacOS X
Drawing functions including putpixel, getpixel, lines, rectangles, flat
shaded, gouraud shaded, texture mapped, and z-buffered polygons, circles,
floodfill, bezier splines, patterned fills, masked, run length encoded,
and compiled sprites, blitting, bitmap scaling and rotation,
translucency/lighting, and text output with proportional fonts. Supports
clipping, and can draw directly to the screen or to memory bitmaps of any
DOS graphics drivers for VGA mode 13h, mode-X (twenty three tweaked VGA
resolutions plus unchained 640x400 Xtended mode), and SVGA modes with 8,
15, 16, 24, and 32 bit color depths, taking full advantage of VBE 2.0
linear framebuffers and the VBE/AF hardware accelerator API if they are
available. Additional video hardware support is available from the
FreeBE/AF project (http://www.talula.demon.co.uk/freebe/).
Windows graphics drivers using DirectX in fullscreen and windowed modes,
plus routines for drawing onto GDI device contexts.
Unix graphics drivers for X, DGA2, fbcon, SVGAlib, VBE/AF, mode-X, and
BeOS graphics drivers using BWindowScreen in fullscreen and BDirectWindow
in windowed modes.
MacOS X native graphics drivers using CGDirectDisplay API for direct
fullscreen gfx access and QuickDraw in a Cocoa window in windowed mode.
Hardware scrolling and triple buffering (where available), mode-X split
screens, and palette manipulation.
FLI/FLC animation player.
Plays background MIDI music and up to 64 simultaneous sound effects, and
can record sample waveforms and MIDI input. Samples can be looped
(forwards, backwards, or bidirectionally), and the volume, pan, pitch,
etc, can be adjusted while they are playing. The MIDI player responds to
note on, note off, main volume, pan, pitch bend, and program change
messages, using the General MIDI patch set and drum mappings. DOS version
currently supports Adlib, SB, SB Pro, SB16, AWE32, MPU-401, ESS
AudioDrive, Ensoniq Soundscape, and Windows Sound System. Windows version
supports WaveOut and DirectSound interfaces and the system MIDI drivers.
Unix version supports OSS, ESD, and ALSA sound drivers. BeOS version
supports BSoundPlayer and BMidiSynth interfaces. MacOS X native version
supports CoreAudio, Carbon Sound Manager and QuickTime Note Allocator
interfaces. All versions provide software wavetable MIDI playback.
Easy access to the mouse, keyboard, joystick, and high resolution timer
interrupts, including a vertical retrace interrupt simulator in the DOS
Routines for reading and writing LZSS compressed files.
Multi-object data files and a grabber utility.
Math functions including fixed point arithmetic, lookup table trig, and
3d vector/matrix/quaternion manipulation.
GUI dialog manager and file selector.
Built-in support for 16-bit and UTF-8 format Unicode characters.