Bug#1079654: ITP: libsaf-dev -- SAF - Minimal abstract interface for simple games
Package: wnpp
Severity: wishlist
Owner: Julio Sangrador-Paton <jsangradorp@gmail.com>
X-Debbugs-Cc: debian-devel@lists.debian.org, jsangradorp@gmail.com
* Package name : libsaf-dev
Version : 1.012d
Upstream Contact: Miloslav Číž <drummyfish@disroot.org>
* URL : https://codeberg.org/drummyfish/SAF
* License : Public Domain
Programming Lang: C
Description : SAF - Minimal abstract interface for simple games
My aim is to package for Debian some small games I have developed using this
SAF public domain library (some of them reachable throught the library
homepage itself). It is a header-only C99 library in the public domain.
I might just as well copy the single file saf.h side by side with my own
code for the games but I find it more useful to have it publicly available
for all Debian users who could benefit from it.
In full disclosure, my games are developed using a very slightly modified
version of upstream, which I also plan to package for Debian under the
tentative name libsafjsp-dev (SAF Julio Sangrador-Paton), but I feel it is
owing
to the original spirit of the library to also package it in its original
form.
(long description excerpt from upstream follows)
SAF is a very minimal C interface for programming mainly small games that will
run on many small gaming consoles, but SAF will also run on PCs and other
"big" platforms, and can be used to create not just games but also other "toy"
programs. You can look at SAF in different ways:
It's a bit like SDL for tiny computers, mainly open consoles such as
Pokitto and Arduboy, it provides abstraction, portability and convenience
functions. It spares people of constantly having to manually port games over
and over to new consoles.
It's a bit like a fantasy console, it intentionally limits you so that the
programming is simple, comfy, and your games will inevitably be nostalgic and
"retro". Thanks to this, SAF can be supported even on very small 8 bit
consoles.
It's a library that will save you from implementing and debugging many
things over and over. And it will make it much easier to program games for
platforms that don't come with emulators.
It is an API, an interface, a standard, which has many advantages, it is
e.g. easy to switch backends, automatically process the code etc.
It behaves a bit like an emulator, it gives you the possibility to record
inputs, speed up or slow down time, use pixel art upscaling etc.
Reply to: