al_set_physfs_file_interface man page
al_set_physfs_file_interface — Allegro 5 API
#include <allegro5/allegro_physfs.h> void al_set_physfs_file_interface(void)
This function sets both the ALLEGRO_FILE_INTERFACE(3) and ALLEGRO_FS_INTERFACE(3) for the calling thread.
Subsequent calls to al_fopen(3) on the calling thread will be handled by PHYSFS_open(). Operations on the files returned by al_fopen(3) will then be performed through PhysicsFS. Calls to the Allegro filesystem functions, such as al_read_directory(3) or al_create_fs_entry(3), on the calling thread will be diverted to PhysicsFS.
To remember and restore another file I/O backend, you can use al_store_state(3)/al_restore_state(3).
Note: due to an oversight, this function differs from al_set_new_file_interface(3) and al_set_standard_file_interface(3) which only alter the current ALLEGRO_FILE_INTERFACE(3).
Note: PhysFS does not support the text-mode reading and writing, which means that Windows-style newlines will not be preserved.