You could try profiling your code after building it with debugging and profiling symbols. With MinGW it is -pg. Look it up for your compiler, and then run it through a profiler. You build it with profiling symbols, then run it, then analyze the output result file with a profiler like gprof and a.out.
mingw32-g++ -Wall -g -pg -o mygame-profiler.exe src1.cpp src2.cpp mappy.c -lallegro-5.1.7-monolith-md
And, I briefly looked at mappy_A5 and it does not use an atlas, it uses an array of ALLEGRO_BITMAP** abmTiles;, and so it does not use held bitmap drawing either. I think that was before we had the general knowledge of that around here. The dll mappy.exe wanted was allegro 5.0.2, and I dont' have that installed so the demo doesn't run for me. I might try recompiling the demo later.
mappy does however respect the new bitmap flags, so if its not set to ALLEGRO_VIDEO_BITMAP if won't be a video bitmap, but video is the default, so you would have had to have changed it. :?