al_get_allegro_version(3)
okay so bestie, you opened al_get_allegro_version(3) from the Library Functions Manual, and honestly? iconic. this is the Allegro 5 API page about grabbing the library version, and it's lowkey a little bit of bit-packing magic β¨
π NAME π
al_get_allegro_version β Allegro 5 API π«Ά
β¨ SYNOPSIS β¨
#include <allegro5/allegro.h>
uint32_t al_get_allegro_version(void)
πΈ DESCRIPTION πΈ
okay so this function returns the (compiled) version of the Allegro library, packed into a single integer. not vibes, not runtime β compiled, iykyk. the packing is groups of 8 bits in the form:
(major << 24) | (minor << 16) | (revision << 8) | release
you can use code like this to extract them:
uint32_t version = al_get_allegro_version();
int major = version >> 24;
int minor = (version >> 16) & 255;
int revision = (version >> 8) & 255;
int release = version & 255;
the release number is 0 for an unofficial version and 1 or greater for an official release. for example, 5.0.2[1] would be the (first) official 5.0.2 release while 5.0.2[0] would be a compile of a version from the 5.0.2 branch before the official release. periodt π
footer tea: this page comes from the Allegro reference manual as al_get_allegro_version(3); thereβs no date line in the footer, so no date to spill, bestie πππ«Ά
π¦ where this page comes from
- arch rolling: allegro 5.2.11.3-2 Β· Zlib AND BSD-3-Clause AND OFL-1.1 AND LicenseRef-Custom
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms