Allegro.cc - Online Community

Allegro.cc Forums » Allegro Development » Allegro Legacy Update

This thread is locked; no one can reply to it. rss feed Print
Allegro Legacy Update
Todd Cope
Member #998
November 2000
avatar

I've recently gotten back into developing Allegro Legacy, a project I started a few years ago to see if it was possible to make a version of Allegro 4 that uses Allegro 5 as a set of drivers for the various hardware that Allegro 4 uses to make the library work.

In my initial work, I was able to make most everything functional, but users would be required to add a little extra code to make graphics actually render onto the screen.

Recently, I thought of a way to make Allegro Legacy a true drop-in replacement for Allegro 4 by emulating a display in a separate thread. The emulated display updates itself from the contents of screen at regular intervals. I was able to get this working, so I think Allegro Legacy is a lot more useful now as a way to run old Allegro 4 code.

I would consider this library to still be in a beta state. So far, I've tested all of the example programs. All but one (ex12bit) work as expected. There are still some things that need to be finished. Display switch modes aren't currently implemented. set_gfx_mode() can't set full screen modes yet. Probably some other things I'm not thinking of at the moment.

I'd appreciate it if others who are interested in this project could download and test this library out. I'd like to know if others can successfully build their Allegro 4 projects and have them function properly with Allegro Legacy. Links below:

amarillion
Member #940
January 2001
avatar

I managed to compile Allegro Legacy on my linux system, so far so good.

How should I modify my A4 project's makefile to refer to allegro legacy? Do you have an example for that?

Edgar Reynaldo
Major Reynaldo
May 2007
avatar

Todd Cope
Member #998
November 2000
avatar

How should I modify my A4 project's makefile to refer to allegro legacy?

Allegro Legacy replaces Allegro 4, so if you have it installed, you don't have to change anything other than linking to the necessary Allegro 5 libraries in addition to -lalleg.

Allegro Legacy's build script generates a script to help with this. You can run allegro-config --libs to get the arguments required for linking properly with Allegro Legacy and Allegro 5.

The CMake generator for mingw needs a little tweaking. It doesn't allow for users to install allegro headers anywhere else than mingw/include, which is bad.

Thanks for testing. I'll see if I can get that fixed.

Edgar Reynaldo
Major Reynaldo
May 2007
avatar

amarillion
Member #940
January 2001
avatar

All the projects I still want to work on have already been migrated to A5.

But it could be cool to recompile some old TINS entries with Allegro Legacy. Do you have any favorites? I'll take requests...

(Here is the complete list: https://tins.amarillion.org/all/entries/)

Go to: