Allegro - A game programming library
Welcome to Allegro!
Allegro is a cross-platform library mainly aimed at video game and multimedia programming. It handles common, low-level tasks such as creating windows, accepting user input, loading data, drawing images, playing sounds, etc. and generally abstracting away the underlying platform. However, Allegro is not a game engine: you are free to design and structure your program as you like.
Allegro 5 has the following additional features:
- Supported on Windows, Linux, Mac OSX, iPhone and Android
- User-friendly, intuitive C API usable from C++ and many other languages
- Hardware accelerated bitmap and graphical primitive drawing support (via OpenGL or Direct3D)
- Audio recording support
- Font loading and drawing
- Video playback
- Abstractions over shaders and low-level polygon drawing
- And more!
News
2024-11-27 - Allegro 5.2.10.0 released!
This is a new stable release, containing bug fixes, new features and many assorted improvements. A big new change (that affects the offical binaries) is that OpenMPT now the default handler for audio module files, replacing DUMB (although DUMB is still temporarily provided).
A summary of the changes can be found here.
Thanks to everyone who tested and contributed!
You can download the sources and MinGW binaries from GitHub. Additional packages for other platforms are available on the downloads page.
2024-01-19 - Allegro 5.2.9.1 released!
This is a patch release for 5.2.9.1, fixing a Linux-only regression (thanks to Steve Fosdick for finding it and providing the initial fix).
A summary of the changes can be found here.
You can download the sources and MinGW binaries from GitHub. Additional packages for other platforms are available on the downloads page.
2023-11-25 - Allegro 5.2.9 released!
After a lot of delays, a new stable release of Allegro is upon us! There were a lot of bug fixes, and a small number of API improvements. Thanks to all users who reported issues, filed feature requests and especially those that sent in pull requests.
A summary of the changes can be found here.
You can download the sources and MinGW binaries from GitHub. Additional packages for other platforms are available on the downloads page.
2022-08-14 - Allegro has a discord server!
Some members of the community set up a discord server as a more modern alternative to the IRC #allegro channel and allegro.cc forums. Rest assured, the IRC channel isn’t going away, but it is nice to have options for those not wanting to deal with IRC limitations. Join it here!
2022-06-05 - Allegro 5.2.8 released!
This is a stable release of Allegro. This release includes many important bug fixes and exciting new features. Also, for the release we added an examples section to the website, which contains runnable (via Emscripten) Allegro examples.
You can download it from GitHub. Additional packages for other platforms are available on the downloads page.
The reference manual is available online, as is the list of changes.
We would like to thank everyone who has contributed to Allegro during all these years, not only the developers, but the users who have tested pre-releases, reported bugs and submitted patches.
2021-03-07 - Allegro 5.2.7 released!
This is a stable release of Allegro. This release includes many important bug fixes and exciting new features. Also, for the release we added an examples section to the website, which contains runnable (via Emscripten) Allegro examples.
You can download it from GitHub. Additional packages for other platforms are available on the downloads page.
The reference manual is available online, as is the list of changes.
We would like to thank everyone who has contributed to Allegro during all these years, not only the developers, but the users who have tested pre-releases, reported bugs and submitted patches.
2020-02-09 - Allegro 5.2.6 released!
This is a stable release of Allegro. This release includes many important bug fixes and exciting new features.
You can download it from GitHub. Additional packages for other platforms are available on the downloads page.
The reference manual is available online, as is the list of changes.
We would like to thank everyone who has contributed to Allegro during all these years, not only the developers, but the users who have tested pre-releases, reported bugs and submitted patches.
2019-03-03 - Allegro 4.4.3.1 released!
This is a bugfix release of the legacy version Allegro. This release fixes a small regression in the 4.4.3 release.
You can download it from GitHub.
The reference manual is available online, as is the list of changes.
We would like to thank everyone who has contributed to keeping Allegro 4.x functioning during all these years. It might not be the newest and shiniest version 5, but it still holds a special place in our hearts.
2019-02-25 - Allegro 5.2.5 released!
This is a stable release of Allegro. This release includes many important bug fixes and exciting new (unstable) features.
You can download it from GitHub. Additional packages for other platforms are available on the downloads page.
The reference manual is available online, as is the list of changes.
We would like to thank everyone who has contributed to Allegro during all these years, not only the developers, but the users who have tested pre-releases, reported bugs and submitted patches.
2019-02-03 - Allegro 4.4.3 released!
This is a bugfix release of the legacy version Allegro. This release includes a number of bug fixes to make it work better with modern systems.
You can download it from GitHub.
The reference manual is available online, as is the list of changes.
We would like to thank everyone who has contributed to keeping Allegro 4.x functioning during all these years. It might not be the newest and shiniest version 5, but it still holds a special place in our hearts.
2018-02-25 - Allegro 5.2.4 released!
This is a stable release of Allegro. This release includes many important bug fixes and exciting new (unstable) features.
You can download it from GitHub. Additional packages for other platforms are available on the downloads page.
The reference manual is available online, as is the list of changes.
We would like to thank everyone who has contributed to Allegro during all these years, not only the developers, but the users who have tested pre-releases, reported bugs and submitted patches.
2017-10-10 - Allegro 5.2.3 released!
This is a stable release of Allegro. This release includes many important bug fixes and exciting new (unstable) features.
You can download it from GitHub. Additional packages for other platforms are available on the downloads page.
The reference manual is available online, as is the list of changes.
We would like to thank everyone who has contributed to Allegro during all these years, not only the developers, but the users who have tested pre-releases, reported bugs and submitted patches.
2017-05-04 - Allegro on TuxFamily!
The Allegro project’s developer mailing list and some downloads are now hosted on TuxFamily. A big thank you to them.
The rest (namely, the release archives and binaries) have been moved to GitHub.
2016-12-12 - Allegro 5.2.2 released!
This is a stable release of Allegro. This release includes many important bug fixes and exciting new (unstable) features.
You can download it from GitHub. Additional packages for other platforms are available on the downloads page.
The reference manual is available online, as is the list of changes.
We would like to thank everyone who has contributed to Allegro during all these years, not only the developers, but the users who have tested pre-releases, reported bugs and submitted patches.
2016-08-13 - Allegro 5.2.1.1 released!
This is a patch release of for Allegro 5.2.1. This release fixes a few API regressions found in 5.2.1 release.
You can download it from GitHub. Additional packages for other platforms are available on the downloads page.
The reference manual is available online, as is the list of changes.
We would like to thank everyone who has contributed to Allegro during all these years, not only the developers, but the users who have tested pre-releases, reported bugs and submitted patches.
2016-07-31 - Allegro 5.2.1 released!
This is a stable release of Allegro. This release includes many important bug fixes and exciting new (unstable) features.
You can download it from GitHub. Additional packages for other platforms are available on the downloads page.
The reference manual is available online, as is the list of changes.
We would like to thank everyone who has contributed to Allegro during all these years, not only the developers, but the users who have tested pre-releases, reported bugs and submitted patches.
2016-04-01 - Allegro 5.2.0 released!
After many years of development in the unstable branch, the next stable version of Allegro is ready for release! This version brings most of the features from the unstable branch, but now with a guarantee of backwards source and ABI compatibility. Allegro 5.2 is source but not binary compatible with 5.0.
Allegro 5.2 is developed a little differently than 5.0 and 5.1 were.
This version combines both unstable and stable APIs in one branch. The
unstable branch is no more! Unstable APIs may be changed between
versions, or even removed entirely. Because of this, to use them you
must opt into this instability by defining ALLEGRO_UNSTABLE
definition before including Allegro’s headers.
Combining the two branches will result in more rapid bug fixes and faster addition of new features.
You can download it from GitHub. Additional packages for other platforms are available on the downloads page.
The reference manual is available online, as is the list of changes.
We would like to thank everyone who has contributed to Allegro during all these years, not only the developers, but the users who have tested pre-releases, reported bugs and submitted patches.
2016-03-27 - Allegro now developed on the master branch.
Allegro’s development has moved from ‘5.1’ branch to the ‘master’ branch. Update your clones and scripts which pull the development version accordingly!
2016-02-28 - Allegro 5.1.13.1 (WIP) released!
This is a bug fix release for 5.1.13 which fixes a regression that only appears when Allegro is compiled with MSVC compiler. If you are using a different compiler then there is no need to upgrade.
You can download it from GitHub. Additional packages for other platforms are available on the downloads page.
The reference manual is available online, as is the list of changes.
2016-01-24 - Allegro 5.1.13 (WIP) released!
This is a Work-In-Progress (WIP) release of the unstable 5.1 branch. The 5.1 branch is source compatible, but not binary compatible, with the stable 5.0 branch. It contains provisional new features which are subject to change at any time.
You can download it from GitHub. Additional packages for other platforms are available on the downloads page.
The reference manual is available online, as is the list of changes.
2015-12-23 - Allegro on NuGet!
Allegro is now packaged by NuGet!
Currently only MSVC 2015 is supported, but stay tuned as we figure out what set of platforms and build types to support.
Follow the tutorial here to test it out.
2015-09-29 - Allegro 5.1.12 (WIP) released!
This is a Work-In-Progress (WIP) release of the unstable 5.1 branch. The 5.1 branch is source compatible, but not binary compatible, with the stable 5.0 branch. It contains provisional new features which are subject to change at any time.
You can download it from GitHub. Additional packages for other platforms are available on the downloads page.
The reference manual is available online, as is the list of changes.
We encourage users to test 5.1 releases and report bugs, but remember that they do not provide the stability of 5.0 releases.
2015-08-15 - Allegro on Gna!
The Allegro project’s downloads and developer mailing list are now hosted on Gna!. A big thank you to them.
2015-07-31 - Allegro’s GIT repository is now hosted at GitHub.
We have moved our official GIT repository over to GitHub.
Check it out at https://github.com/liballeg/allegro5. See the GIT page for more details.
Pull requests welcome!
2015-06-21 - Allegro 5.1.11 (WIP) released!
This is a Work-In-Progress (WIP) release of the unstable 5.1 branch. The 5.1 branch is source compatible, but not binary compatible, with the stable 5.0 branch. It contains provisional new features which are subject to change at any time.
You can download it from SourceForge. Additional packages for other platforms are available on the downloads page.
The reference manual is available online, as is the list of changes.
We encourage users to test 5.1 releases and report bugs, but remember that they do not provide the stability of 5.0 releases.
2015-05-05 - Allegro 5.1.10 (WIP) released!
This is a Work-In-Progress (WIP) release of the unstable 5.1 branch. The 5.1 branch is source compatible, but not binary compatible, with the stable 5.0 branch. It contains provisional new features which are subject to change at any time.
You can download it from SourceForge. This is a first release in a long time to provide Windows binaries. Additional packages for other platforms will also be available in the coming days. See the Download page for details.
The reference manual is available online, as is the list of changes.
We encourage users to test 5.1 releases and report bugs, but remember that they do not provide the stability of 5.0 releases.
2015-04-12 - Ubuntu PPAs now available.
For convenience to our Ubuntu users (and those using distributions based on Ubuntu) we now maintain two PPAs. You can use these to install binary and development packages of Allegro 5 stable and unstable releases. Check out the bottom of the downloads section for the links.
2015-04-07 - A new book about Allegro has been published!
A book introducing game programming using Allegro 5 has recently been written by Frédéric Drouillon, titled Allegro 5 - Programmation de jeux en C ou C++. This book is available in French, and will surely be a great read for the French-speaking Allegro 5 users. For others, the code samples available for download on the publisher’s website should be of interest as well. Check out the books section for more information.
2015-01-11 - Allegro 5.0.11 released!
This is a maintenance release for the stable 5.0 branch, with bug fixes and a few new features. You can download it from SourceForge. The reference manual is available online, as is the list of changes.
2015-01-03 - Allegro 5.1.9 (WIP) released!
This is a Work-In-Progress (WIP) release of the unstable 5.1 branch. The 5.1 branch is source compatible, but not binary compatible, with the stable 5.0 branch. It contains provisional new features which are subject to change at any time.
You can download it from SourceForge. The reference manual is available online, as is the list of changes.
We encourage users to test 5.1 releases and report bugs, but remember that they do not provide the stability of 5.0 releases.
2014-05-31 - Go bindings to Allegro created!
Damien Radtke has created Go programming language bindings to Allegro 5.0.10.
Check them out at GitHub.
2014-01-12 - Allegro 5.1.8 (WIP) released!
This is a Work-In-Progress (WIP) release of the unstable 5.1 branch. The 5.1 branch is source compatible, but not binary compatible, with the stable 5.0 branch. It contains provisional new features which are subject to change at any time.
You can download it from SourceForge. The reference manual is available online, as is the list of changes.
We encourage users to test 5.1 releases and report bugs, but remember that they do not provide the stability of 5.0 releases.
2013-06-16 - Allegro 5.0.10 released!
This is a maintenance release for the stable 5.0 branch, with bug fixes and a few new features. You can download it from SourceForge. The reference manual is available online, as is the list of changes.
2013-05-12 - Allegro 5.1.7 (WIP) released!
This is a Work-In-Progress (WIP) release of the unstable 5.1 branch. The 5.1 branch is source compatible, but not binary compatible, with the stable 5.0 branch. It contains provisional new features which are subject to change at any time.
You can download it from SourceForge. The reference manual is available online, as is the list of changes.
We encourage users to test 5.1 releases and report bugs, but remember that they do not provide the stability of 5.0 releases.
2013-03-24 - Allegro 5.1.6 (WIP) released!
This is a Work-In-Progress (WIP) release of the unstable 5.1 branch. The 5.1 branch is source compatible, but not binary compatible, with the stable 5.0 branch. It contains provisional new features which are subject to change at any time.
You can download it from SourceForge. The reference manual is available online, as is the list of changes.
We encourage users to test 5.1 releases and report bugs, but remember that they do not provide the stability of 5.0 releases.
2013-02-17 - Allegro 5.0.9 released!
This is a maintenance release for the stable 5.0 branch, with bug fixes and a few new features. You can download it from SourceForge. The reference manual is available online, as is the list of changes.
2013-01-13 - Allegro 5.1.5 (WIP) released!
This is a Work-In-Progress (WIP) release of the unstable 5.1 branch. The 5.1 branch is source compatible, but not binary compatible, with the stable 5.0 branch. It contains provisional new features which are subject to change at any time.
You can download it from SourceForge. The reference manual is available online, as is the list of changes.
We encourage users to test 5.1 releases and report bugs, but remember that they do not provide the stability of 5.0 releases.
2012-11-18 - Allegro 5.0.8 released!
This is a maintenance release for the stable 5.0 branch, with bug fixes and a few new features. You can download it from SourceForge. The reference manual is available online, as is the list of changes.
2012-10-14 - Allegro 5.1.4 (WIP) released!
This is a Work-In-Progress (WIP) release of the unstable 5.1 branch. The 5.1 branch is source compatible, but not binary compatible, with the stable 5.0 branch. It contains provisional new features which are subject to change at any time.
You can download it from SourceForge. The reference manual is available online, as is the list of changes.
We encourage users to test 5.1 releases and report bugs, but remember that they do not provide the stability of 5.0 releases.
2012-08-12 - Allegro 5.1.3 (WIP) released!
This is a Work-In-Progress (WIP) release of the unstable 5.1 branch. The 5.1 branch is source compatible, but not binary compatible, with the stable 5.0 branch. It contains provisional new features which are subject to change at any time.
You can download it from SourceForge. The reference manual is available online, as is the list of changes.
We encourage users to test 5.1 releases and report bugs, but remember that they do not provide the stability of 5.0 releases.
2012-07-04 - Switched to GIT!
As probably one of the last projects, we finally made the switch from SVN to GIT for version control. Please see that page for details.
2012-06-24 - Allegro 5.0.7 released!
This is a bug fix release for the stable 5.0 branch. You can download it from SourceForge. The reference manual is available online, as is the list of changes.
2012-05-27 - Allegro 5.1.2 (WIP) released!
This is a Work-In-Progress (WIP) release of the unstable 5.1 branch. The 5.1 branch is source compatible, but not binary compatible, with the stable 5.0 branch. It contains provisional new features which are subject to change at any time.
You can download it from SourceForge. The reference manual is available online, as is the list of changes.
We encourage users to test 5.1 releases and report bugs, but remember that they do not provide the stability of 5.0 releases.
2012-03-04 - Allegro 5.0.6 released!
This is a maintenance release for the stable 5.0 branch, with a number of new features and bug fixes. You can download it from SourceForge. The reference manual is available online, as is the list of changes.
2012-02-12 - Allegro 5.1.1 (WIP) released!
This is a Work-In-Progress (WIP) release of the unstable 5.1 branch. The 5.1 branch is source compatible, but not binary compatible, with the stable 5.0 branch. It contains provisional new features which are subject to change at any time.
You can download it from SourceForge. The reference manual is available online, as is the list of changes.
We encourage users to test 5.1 releases and report bugs, but remember that they do not provide the stability of 5.0 releases.
Do you want to read older news? Then follow this link.