I'm not trying to bash you. But Allegro 5 is really not that different, and as others have posted, there's an A4 to A5 guide.
If your game is tiny, rewriting the Allegro code shouldn't be that bad. If your game is large, the Allegro section should be a tiny fraction of your overall code.
I can't for the life of me, figure out why there's so much friction about this issue. You can literally program A5 the same way as A4 with some function changes. You could practically automate the entire thing. You wouldn't BENEFIT from things like events and acceleration as much, because your game would still be framed in a "pre-HW acceleration" mindset. But you load a bitmap, you draw it. You load a font, you draw some text. You load a sound, and you play it. You can make a key array the exact same way as Allegro 4 runs and there's even examples in the A5 library that do that.
A4 and A5 are both minimal wrappers over the OS. The libraries are tiny compared to something like OpenGL. So most of what's going on... is simply renaming stuff.
Spend a couple days writing some A5 examples and it won't seem daunting at all.
- Disable all audio.
- Disable all graphics
- Disable everything except text. Get it to compile.
- Then add more basic graphics back in.
- Then add all graphics in.
- Then add all sounds in.
You have now ported your game from Allegro 4... to SDL... to SFML... to Allegro 5... to super-magic-library-17. All those libraries are 99% the same. They're imperative drawing libraries. (You want something REALLY ALIEN try working with a scene-graph based 3D library where you're doing nothing but adding things to trees and all rendering is automatically sorted and handled for you.)
99% of that is simply string matching and replacing. BITMAP becomes ALLEGRO_BITMAP. my_bmp->w becomes al_get_bitmap_width(my_bmp). (Personally, I hate that long name change, but whatever.)
It really sounds like there's either a "fear of the unknown", or, some sort of entitlement/"you should fix it for me" mindset at play here.
That being said, Allegro has a tiny dev team right now and A5 rightly gets the focus. So anyone who WANTS to do the work and make an exhaustive porting guide, auto-porting script, or come up with patch solutions to race conditions in A4 is 100% welcome to do it with open arms. But, the community is completely charity-based and everyone is busy with "life" and work issues that come with age. So without corporate support, there's not much that can be demanded from this community.
I hope I don't sound as crass, unapologetic, or disregard your problems. I'm just trying to elaborate my alternative perspective of the situation.