|
|
Welcome to **JoeyLib**!
|
|
|
|
|
|
**JoeyLib** is the low-level porting library that isolates the game code from the target platform's hardware. Using standard ANSI C and JoeyLib allows a single codebase to run on the following targets:
|
|
|
|
|
|
* Apple IIgs
|
|
|
* x86 Windows
|
|
|
* x86 macOS
|
|
|
* x86 Linux
|
|
|
|
|
|
Future targets:
|
|
|
|
|
|
* Amiga
|
|
|
* Atari ST
|
|
|
* DOS?
|
|
|
* Acorn?
|
|
|
|
|
|
With the Apple IIgs being the most limited of the supported platforms, much of JoeyLib was designed with it in mind.
|
|
|
|
|
|
# Features
|
|
|
|
|
|
* 4-bit color (16 colors, default palette is the [EGA Palette](https://en.wikipedia.org/wiki/Enhanced_Graphics_Adapter#Color_palette))
|
|
|
* 4-bits per pixel
|
|
|
* Double buffered rendering
|
|
|
* Basic drawing primitives
|
|
|
* High-speed tile blitting
|
|
|
* Custom memory management
|
|
|
* Custom image format support (and conversion tools)
|
|
|
* MOD music
|
|
|
* Sound effects
|
|
|
* Joystick/Gamepad/Keyboard input
|
|
|
|
|
|
# More Information
|
|
|
|
|
|
* [JoeyLib API Documentation](JoeyLib API)
|
|
|
* [JoeyLib File Formats](JoeyLib Formats)
|
|
|
* [Special Thanks](Special Thanks) |