![]() |
|
This thread is locked; no one can reply to it.
![]() ![]() |
1
2
|
Allegro 4.4.3 released! |
SiegeLord
Member #7,827
October 2006
![]() |
{"name":"611898","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/b\/b\/bb5e43b061b96236cd5a2dd22beab35c.png","w":532,"h":696,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/b\/b\/bb5e43b061b96236cd5a2dd22beab35c"} Hard to believe this, but Allegro 4 is getting a new release! This is mostly bugfixes accumulated over the past 8(!) years. You can download it from GitHub downloads. Changes from 4.4.3 to 4.4.3.1 (March 2019)
Changes from 4.4.2 to 4.4.3 (February 2019)
SHA256 SUMS: 67981ff3e1dcc785c3cde93e07200f319ff85ab47c33752c03dcbd4b7e818022 allegro-4.4.3.7z 1e096e435e49e2dfd924d9c54ed7325caa1b06cecd28c3307146dd0de3d0bcb4 allegro-4.4.3.tar.gz 2740f951dfc6a7d2ca8fdec808042c899d742e1a04d5571abe60ea5debc1797f allegro-4.4.3.zip 3b471b2db278c5c0e84b6f285c4280d937c5eb762559c368a10529affc4eff57 allegro-4.4.3.1.7z ec19dbc9a021244582b4819b3583ee594b50141f9fcf6944a4ed8069cbf8d4d4 allegro-4.4.3.1.tar.gz 8d1e716a9b6f74fa44b801fb84a63432f74ea9178c219584c3d10793a9fb4520 allegro-4.4.3.1.zip
"For in much wisdom is much grief: and he that increases knowledge increases sorrow."-Ecclesiastes 1:18 |
AMCerasoli
Member #11,955
May 2010
![]() |
I'm also undead
|
Chris Katko
Member #1,881
January 2002
![]() |
I had to check to make sure it wasn't April 1st... also, great picture Any chance we can get a C++ Allegro 4 with OpenGL and Kinect support??? -----sig: |
raynebc
Member #11,908
May 2010
|
Interesting. I'd occasionally run into repeated tab press detection issues, but it's pretty rare. |
ZoriaRPG
Member #16,714
July 2017
![]() |
@Seige Lord I'll push our fix for the keyboard input race condition, if you'll accept it into the build. It corrects an issue on Windows where input becomes frozen based on allegro games being left runing for an extensive time. The patch is here, if you want to review it: Branch: 4.4-ZCFixes Did anyone look at OSX 64b compilation, and is Linux 64b safe now, too? It would also be nice to see precompiled libs for each platform made available with the release. A set of precompiled bins would always be helpful, at least for gccon OSX and Linux. Windows, you'd need MinGW and MSVC bins. We have someone (in theory) going through ag4.4 on OSX and fixing its deps. Quicktime.library is deprecated, and IDK what's happened with Quartz over the last few years. Perhaps in a year or so, we can get some momentum on Allegro Legacy and turn it into 4.5. (IDR if you used that version designation before shifting the primary digit to 5.xx.)
|
SiegeLord
Member #7,827
October 2006
![]() |
Anything can be accepted as long as its in a reasonable state. At least on our side, we consider A4 to be in maintenance mode so we're not really doing any new development... personally, I'm happy to continue merging other people's work though. If someone wishes to create binaries, I'm willing to put them up on github as long as they're of reasonable quality. "For in much wisdom is much grief: and he that increases knowledge increases sorrow."-Ecclesiastes 1:18 |
ZoriaRPG
Member #16,714
July 2017
![]() |
Very good. I put in a pull request. Looks like we need to rebuild for MSVC in order for our static lib to be current with your latest fixes. I'm unsure about this commit, though, as I recall this having been fixed in the past: Quote: This fixes an issue of TAB key code getting stuck in the key buffer after ALT+TAB. We have not encountered this since shifting to 4.4.2. Good to know that there was another fix, though. Perhaps the KB mutex also solved it. IDK.
|
GullRaDriel
Member #3,861
September 2003
![]() |
Incredible. "Code is like shit - it only smells if it is not yours" |
Elias
Member #358
May 2000
|
Did someone test it in DOS? -- |
Frank Drebin
Member #2,987
December 2002
![]() |
Great job! |
Neil Roy
Member #2,229
April 2002
![]() |
Elias said: Did someone test it in DOS?
--- |
Edgar Reynaldo
Major Reynaldo
May 2007
![]() |
I will be glad to build binaries when I get the time. EDIT BUMP
My Website! | EAGLE GUI Library Demos | My Deviant Art Gallery | Spiraloid Preview | A4 FontMaker | Skyline! (Missile Defense) Eagle and Allegro 5 binaries | Older Allegro 4 and 5 binaries | Allegro 5 compile guide |
Neil Roy
Member #2,229
April 2002
![]() |
Edgar Reynaldo said: When Allegro 5.2.5 comes out I will build binaries for both using the latest MinGW-W64. Who wants 64 bit? Anyone still want 32 bit? I'll provide both if I can manage it. Yeah, I think we can finally wave goodbye to 32bit. I thought about messing around with my next project and making it 100% 64bit, never done that before. I was going to build this for DOS, just for shits and giggles, but I realized this version uses CMAKE instead of the trusty old fix.bat files. And I am not THAT interested in messing around with DOS! --- |
Edgar Reynaldo
Major Reynaldo
May 2007
![]() |
If you want to build for Dos, you need Allegro 4.2 . 4.4 dropped support for DOS and assembly as far as I know. EDIT My Website! | EAGLE GUI Library Demos | My Deviant Art Gallery | Spiraloid Preview | A4 FontMaker | Skyline! (Missile Defense) Eagle and Allegro 5 binaries | Older Allegro 4 and 5 binaries | Allegro 5 compile guide |
Neil Roy
Member #2,229
April 2002
![]() |
Edgar Reynaldo said: 4.4 dropped support for DOS and assembly as far as I know. Than I honestly don't see any reason to even bother with it. DOS nostalgia is on the rise lately, check out the MS-DOS Gaming page (https://www.facebook.com/groups/2209352733/) on Facebook sometime! There's a surge in people buying old hardware to build DOS machines again. The cost of older hardware is going up in fact because of this. As much as DOS has been long gone, I still see Allegro 4 as part of that era and seeing as how an update to it like this is rare and not expected at all, I don't see why support should have been dropped when we have Allegro 5 for newer things. I do have 4.2 around here somewhere. Thinking about messing around with it and DOSBOX for kicks. Heck, there are people making money selling new games made for old platforms like the C64 and DOS, if you follow The 8-bit Guy on Youtube, he is. It's quite interesting. --- |
Edgar Reynaldo
Major Reynaldo
May 2007
![]() |
DOS and assembly were a nightmare they couldn't keep up with. Maintaining assembly code for multiple platforms is just a bad idea, and your compiler is most likely far far better at generating it than you are. Allegro 4.4 also added 4 common addons, AllegroGL, loadpng, logg, and jpgalleg and bundled them with the cmake build. Allegro 4.2.1 hasn't seen any development since then, but 4.4.3 has had numerous patches and changes over the years. It was the precursor to Allegro 5, and dropping DOS support made things much easier to maintain. Note : now that there are modern versions of gcc available in djgpp flavor, Allegro 4.2.1 could easily be revived if there was truly interest in DOS again. Note 2 : Allegro 4.2.1 is the only version of Allegro to support both DOS and OpenGL through AllegroGL. I don't think anyone else supports that combination. And it still builds using the old platform makefiles and fix.bat or fix.sh . SiegeLord - any news on this pull request? https://github.com/liballeg/allegro5/pull/997 My Website! | EAGLE GUI Library Demos | My Deviant Art Gallery | Spiraloid Preview | A4 FontMaker | Skyline! (Missile Defense) Eagle and Allegro 5 binaries | Older Allegro 4 and 5 binaries | Allegro 5 compile guide |
SiegeLord
Member #7,827
October 2006
![]() |
I've released 4.4.3.1, which fixes the dat tool which was broken by the 4.4.3 release. "For in much wisdom is much grief: and he that increases knowledge increases sorrow."-Ecclesiastes 1:18 |
Edgar Reynaldo
Major Reynaldo
May 2007
![]() |
Edgar Reynaldo said: SiegeLord - any news on this pull request? https://github.com/liballeg/allegro5/pull/997 ? It was supposed to fix a race condition in the keyboard handler. It does leak a mutex though. Just wonder whether I should include it in my build? My Website! | EAGLE GUI Library Demos | My Deviant Art Gallery | Spiraloid Preview | A4 FontMaker | Skyline! (Missile Defense) Eagle and Allegro 5 binaries | Older Allegro 4 and 5 binaries | Allegro 5 compile guide |
roger levy
Member #2,513
July 2002
|
Does it work on Windows 10? I will deadass consider moving back to 4 just to simplify my life. |
SiegeLord
Member #7,827
October 2006
![]() |
Edgar Reynaldo said: SiegeLord - any news on this pull request? https://github.com/liballeg/allegro5/pull/997 No news. I'll take a look at it when I have time. "For in much wisdom is much grief: and he that increases knowledge increases sorrow."-Ecclesiastes 1:18 |
Chris Katko
Member #1,881
January 2002
![]() |
roger levy said: I will deadass consider moving back to 4 just to simplify my life. I honestly don't understand how this is still a thing. I mean, there's some boilerplate that is silly in retrospect but it's fairly small! Like manually having to attach timers to a queue instead of having a starter queue and attach them to it by default (who would ever use the timer addon but NOT timers?), having to init all kinds of addons (who uses allegro 5 but DOESN'T use the primitive library? If I needed that savings I'd just rip out the code myself.) (But SDL is full of that crap too, which I bring up because it's a very popular alternative and nobody complains enough to not use SDL.) Allegro 5's API suffers from over-generalization instead of "optimize for the most common case." But it's FAR FROM TERRIBLE. Either way, once you either write an Allegro 5 program out 10 times, or make a starter template with the code, you remember the boilerplate gotchas and coding is not bad at all. I just fork a previous project of mine, grab the setup bits, and move on. The only annoying thing is that I have to provide a font instead of using the default "FONT" but I started just giving it a path to a Linux system font (instead of packaging it myself) and I'm fine now. The act of actually making the games is far harder than anything Allegro related. Make an OpenGL / GLEW application (read an old NeHe tutorial!) and you will recoil in horror at the complexity of just getting a triangle on the screen with all the windows messaging, device context, graphics context, opengl context (all separate!) boilerplate crap. http://nehe.gamedev.net/tutorial/creating_an_opengl_window_(win32)/13001/ <--This isn't even a triangle yet, it's JUST the window! The triangle comes in the next tutorial in the series! And, NeHe tutorials are horribly outdated and the proper way of vertex buffers, display lists, and such are even more complex. -----sig: |
Edgar Reynaldo
Major Reynaldo
May 2007
![]() |
NeHe is horribly outdated, and you're better off learning from https://opengl.org/ . There are some awesome tutorials I found not that long ago. I'm sure I bookmarked them one sec... Yep, here it is : https://learnopengl.com/ Their shader example is premium. https://learnopengl.com/Getting-started/Shaders But yeah, if I had to do everything allegro does I would go insane. It's just the boilerplate factor that sucks about it. That's why pretty much everyone has their own game engine / library / framework for working with Allegro. But really it could be far worse. My Website! | EAGLE GUI Library Demos | My Deviant Art Gallery | Spiraloid Preview | A4 FontMaker | Skyline! (Missile Defense) Eagle and Allegro 5 binaries | Older Allegro 4 and 5 binaries | Allegro 5 compile guide |
Neil Roy
Member #2,229
April 2002
![]() |
Chris Katko said: http://nehe.gamedev.net/tutorial/creating_an_opengl_window_(win32)/13001/ <--This isn't even a triangle yet, it's JUST the window! The triangle comes in the next tutorial in the series! And, NeHe tutorials are horribly outdated and the proper way of vertex buffers, display lists, and such are even more complex. Most of what you see there is standard boilerplate Windows code you will see for ANY windows app. That's not OpenGL for the most part and you don't have to memorize most of it. I done this myself, with Windows, you can pretty much copy and paste most of that code for just about every project you make. Heck, make a function, throw most of that code into it with a couple parameters for changing minor things and you can reuse it in every project you make pretty much. While NeHe is outdated, I didn't see the old way as complex at all. I learned OpenGL and done my own 3D program with it using straight Windows code + OpenGL, with display lists which I found really fast, at least for the time. Here's some simple code I used to create a display list using the older immediate mode: GLuint listSkybox = glGenLists(1); glNewList(listSkybox, GL_COMPILE); // insert code to draw skybox here glEndList(); That's it! After this, you simply call glCallList(listSkybox); to draw the skybox whenever you wish to draw that object. I don't know how you see that as complex. If you find that complex, stick to 2D as shaders will really confuse you. And don't even think of looking at Vulcan which forces you to do EVERYTHING which is insane (powerful, but... it makes that Windows code you hated look like a walk in the park in comparison). I may try doing things with just straight Windows code + OpenGL again, only this time with modern opengl shaders. Edgar Reynaldo said: Yep, here it is : https://learnopengl.com/ Agreed, GREAT site for learning modern opengl properly. It's where I learned to make this (video of some code I learned from that site and have added to since)... --- |
Chris Katko
Member #1,881
January 2002
![]() |
I'm not talking about OpenGL boilerplate... I'm talking about Windows boilerplate. But I can see the misunderstanding in my wording. -----sig: |
Neil Roy
Member #2,229
April 2002
![]() |
I think the main problem is that many libraries we use do all this for us so we become accustomed to not having to do much, which can be really misleading. There's a lot that is important in the Windows code that needs to be done. Much of it allows you to adjust absolutely everything. Most of the time we don't need to, but it is important and your opinion of it probably underscores the problems with libraries simplifying things so much without understanding what is going on under the hood. This is why I programmed some stuff where I vowed not to use any libraries, just Windows code + opengl and I was able to do it all and gained a good understanding of how Windows works. The windows boilerplate is pretty simple honestly. You can create functions which you will never have to touch again. In fact, NEHE created a header which has some functions for setting up all the Windows stuff, you just include it and then call his functions and you never have to look at that Windows code again. It reminds me a little of OpenGL shaders which has a lot of boilerplate code which you can reuse once you coded it once. All you need to do is program your code to load and compile your shaders then shove them into reusable function and you never have to program that code again. I think some libraries have functions to load and compile shaders for you. Speaking of modern opengl shaders, I found a great siggraph video explaining how to do them for the beginner, it's a really good talk, going to watch it a couple times I think. --- |
|
1
2
|