CrossLib is a set of tools and a library that provides a retro-hardware abstraction layer for coding "universal" games on *hundreds* of vintage systems (mostly 8-bit) from the '70s till the '90s (computers, consoles, hand-held consoles, scientific calculators, hacked toy computers, arcade boards, micro-boards, new retro boards, etc.) while using the very same code for all systems. You code it once and than you can massively cross-compile it for 200 targets.
A partial list is in: https://github.com/Fabrizio-Caruso/CROSS-LIB/blob/master/docs/STATUS.md
Moreover, this project is also about the universal games I am writing with Cross-Lib. These games are the proof of the flexibility of CrossLib:
- Cross Chase is a "universal" 8-bit game that can be compiled for and run on more than *200* 8-bit computers, game consoles, hand-held game consoles, scientific calculators, arcade boards, etc. It can be parametrized in a way to make it run on systems with as little as 3k or 4k of available memory for the code.
- Cross Shoot is a second "universal" 8-bit game that can also be compiled on a multitude of 8-bit computers and consoles. It requires more memory than "Cross Chase" but it should be equally universal as long as the required memory is available.
- Cross Bomber is a third "universal" 8-bit game that can also be compiled on a multitude of 8-bit computers and consoles. It is a mini-game and clone of Air Attack (aka Blitz). So it requires much less memory than "Cross Chase". Its code is almost entirely in a single file. It uses pre-shifted tiles to produce smoother movements on graphics-enabled targets.