aa_init(3)
πΈ NAME πΈ
okay so bestie, this is aa_init(3) β straight out of the Library Functions Manual β and it's the function that opens the output display for AA-lib. that's it, that's the whole job description π
β¨ SYNOPSIS β¨
#include <aalib.h>
aa_context *aa_init
(
const struct aa_driver *driver,
const struct aa_hardware_params *defparams,
const void *driverdata
);
π PARAMETERS π
const struct aa_driver *driverβ the driver you wanna use, like, the one that actually does the drawing. all the ones you can pick from are chillin' in theNULLterminatedaa_driversarray πconst struct aa_hardware_params *defparamsβ the hardware parameters you're asking for. wanna keep it default? just passaa_defparamsand move on, no thoughts head empty β¨const void *driverdataβ this pointer gets handed directly over to the driver, and it's how you sneak in extra driver dependent parameters. very "pass the aux cord" energy π§
π DESCRIPTION π
so this is the most primitive AA-lib initialization function, and I mean that with love. it gives you way more control over the whole process than the easier to use aa_autoinit does. lowkey the "I'll do it myself" option π«Ά
and listen, every single AA-lib program ought to have a call to aa_parseoptions before the first call to aa_init. not a suggestion bestie, it's just how it's done π
π RETURNS π
you get back a pointer to a shiny new AA-lib context π β or NULL if it failed π (in which case, rip, no display for you).
π¦ SEE ALSO π¦
the whole extended friend group, no cap:
save_d(3),mem_d(3),aa_help(3),aa_formats(3)aa_fonts(3),aa_dithernames(3),aa_drivers(3),aa_kbddrivers(3)aa_mousedrivers(3),aa_kbdrecommended(3),aa_mouserecommended(3),aa_displayrecommended(3)aa_defparams(3),aa_defrenderparams(3),aa_scrwidth(3),aa_scrheight(3)aa_mmwidth(3),aa_mmheight(3),aa_imgwidth(3),aa_imgheight(3)aa_image(3),aa_text(3),aa_attrs(3),aa_currentfont(3)aa_autoinit(3),aa_autoinitkbd(3),aa_autoinitmouse(3),aa_recommendhi(3)aa_recommendlow(3),aa_initkbd(3),aa_initmouse(3),aa_close(3)aa_uninitkbd(3),aa_uninitmouse(3),aa_fastrender(3),aa_render(3)aa_puts(3),aa_printf(3),aa_gotoxy(3),aa_hidecursor(3)aa_showcursor(3),aa_getmouse(3),aa_hidemouse(3),aa_showmouse(3)aa_registerfont(3),aa_setsupported(3),aa_setfont(3),aa_getevent(3)aa_getkey(3),aa_resize(3),aa_resizehandler(3),aa_parseoptions(3)aa_edit(3),aa_createedit(3),aa_editkey(3),aa_putpixel(3)aa_recommendhikbd(3),aa_recommendlowkbd(3),aa_recommendhimouse(3),aa_recommendlowmouse(3)aa_recommendhidisplay(3),aa_recommendlowdisplay(3)
and that's the whole page, periodt π this lil' writeup was brought to you by c2man on aalib.h, dated 8 September 1999 β yeah, it's vintage, it's iconic, it's giving retro main character energy πβ¨
π¦ where this page comes from
- arch rolling: aalib 1.4rc5-19 Β· LGPL-2.0-or-later
- debian bookworm: libaa1-dev 1.4p5-50
- debian trixie: libaa1-dev 1.4p5-51.1+b1
- epel 10: aalib-devel 1.4.0-0.52.rc5.el10_0 Β· LGPL-2.1-or-later
- epel 9: aalib-devel 1.4.0-0.42.rc5.el9 Β· LGPLv2+
- fedora 43: aalib-devel 1.4.0-0.56.rc5.fc43 Β· LGPL-2.1-or-later
- fedora 43: aalib-devel 1.4.0-0.56.rc5.fc43 Β· LGPL-2.1-or-later
- fedora 44: aalib-devel 1.4.0-0.58.rc5.fc44 Β· LGPL-2.1-or-later
- fedora 44: aalib-devel 1.4.0-0.58.rc5.fc44 Β· LGPL-2.1-or-later
- nixpkgs unstable: aalib 1.4rc5
- opensuse-leap 16.0: aalib-devel 1.4.0-bp160.1.14 Β· GPL-2.0-or-later
- opensuse-leap 16.0: aalib-devel 1.4.0-bp160.1.14 Β· GPL-2.0-or-later
- opensuse-leap 16.0: aalib-devel 1.4.0-bp160.1.14 Β· GPL-2.0-or-later
- opensuse-leap 16.0: aalib-devel 1.4.0-bp160.1.14 Β· GPL-2.0-or-later
- ubuntu jammy: libaa1-dev 1.4p5-50build1
- ubuntu noble: libaa1-dev 1.4p5-51.1
- ubuntu questing: libaa1-dev 1.4p5-51.1
- ubuntu resolute: libaa1-dev 1.4p5-51.1build1
- ubuntu stonking: libaa1-dev 1.4p5-51.1build1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms