A high-performance library for writing tile-based games for the Apple IIgs personal computer in 65816 assembly langugage. Unlock the full, 16-bit potential of the last machine of the Apple ][ line.
# Introduction The Generic Tile Engine (GTE) project is a tile engine built to exploit the unique hardware capabilities of the Apple IIgs personal computer. It supports the Apple IIgs super hires graphics mode (320x200, 16/256 colors) and provides two full-screen independent scrolling layers along with software sprites. The API and core functionality of the library is inspired by the graphics hardware of the NES/SMS/SNES/Genesis console era. An overview of GTE was presented at KansasFest 2022. [![KansasFest 2022 presentation on GTE](http://img.youtube.com/vi/2x65JymFklk/3.jpg)](http://www.youtube.com/watch?v=2x65JymFklk "KansasFest 2022 25 GTE: A graphic engine for the IIgs - Lucas Scharenbroich") # Building from Source The library iscurrently implemented as a set of source files that must be compiled into a GS/OS application. A set of example project can be found under the `demos` folder. Each demo folder uses a `package.json` file to define the build targets and a build of each application can be created by executing a `npm run build` command. Each demo application has a build script that also builds the toolset and copies it, along with the demo S16 application file, to the target disk image. ## Dependencies * node * merlin32 (1.1.10+) * cadius GTE uses the [merlin32](https://brutaldeluxe.fr/products/crossdevtools/merlin/) [1.1.10](https://github.com/digarok/merlin32/releases/tag/v1.1.10) assembler to compile its source into GS/OS OMF files and [Cadius](https://brutaldeluxe.fr/products/crossdevtools/cadius/index.html) to copy those files onto a ProDOS disk image. The paths to these tool can be set in the `package.json` file. An empty 2MG disk image is included in `emu/Target.2mg` and is used as the default location for copying demo applications. This image can be mounted in any IIgs emulator.
Build of demo app in the IIgs Finder