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:

JoeyLib Logo

  • Apple IIgs
  • x86 & x64 Windows
  • x86 & x64 macOS
  • x86 & x64 Linux

Future targets:

  • Atari ST
  • Amiga (including CDTV and CD32)
  • Raspbian
  • Pi Bare Metal
  • Android
  • iOS
  • DOS
  • Acorn?

With the Apple IIgs being the most limited of the supported platforms, much of JoeyLib was designed with it in mind.


  • 4-bit color (16 colors, default palette is the EGA Palette)
  • 4-bits per pixel
  • Back 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

Future Features:

  • Multiple controllers
  • Mouse input
  • Networking
  • Full IDE

Interested? Visit the JoeyLib page at the Skunkworks!

No slides