al_fread man page
al_fread — Allegro 5 API
#include <allegro5/allegro.h> size_t al_fread(ALLEGRO_FILE *f, void *ptr, size_t size)
Read 'size' bytes into the buffer pointed to by 'ptr', from the given file.
Returns the number of bytes actually read. If an error occurs, or the end-of-file is reached, the return value is a short byte count (or zero).
al_fread() does not distinguish between EOF and other errors. Use al_feof(3) and al_ferror(3) to determine which occurred.
al_fgetc(3), al_fread16be(3), al_fread16le(3), al_fread32be(3), al_fread32le(3)