I completed the translation to allegro 5.
I had to alter the way the tiles are stored in order to take advantage of deferred drawing.
Basically, whenever the game “requests” a tile image, that tile.png is loaded into the game (if it hasn’t been already), given an identifier, and placed onto a 1024×1024 atlas in video memory along with the other previously loaded tile bitmaps. Since the tiles are 64×64, this allows me to use up to 256 tiles at once for efficient drawing that takes advantage of your graphics adapter.
The move to allegro 5 also allows me to load OGG sound/music like I wanted, as well as a variety of other kinds of files.
I need sleep.