Allegro.cc - Online Community

Allegro.cc Forums » Installation, Setup & Configuration » DirectX SDK version for Allegro 4.4.1.1?

This thread is locked; no one can reply to it. rss feed Print
DirectX SDK version for Allegro 4.4.1.1?
raynebc
Member #11,908
May 2010

I'm setting up my development computer again and was going to build Allegro from source like I did before. I don't have enough time to rewrite the application for Allegro 5 right now so I'm trying to squeeze out extra performance until then. Last time I thought I'd used the DirectX 7 SDK, but I don't remember if I'd considered using DirectX 8 instead. Am I right in assuming DirectX 8 is expected to perform better? The Allegro download page on SF (http://alleg.sourceforge.net/wip.html) doesn't mention DirectX 9, but would that one be a better option?

My previous MinGW installation had a d3d9.h file in the includes folder. Should I take this to mean I'd been using DX9 all along?

Edgar Reynaldo
Major Reynaldo
May 2007
avatar

DX is fully backward compatible. So if you have the DX9 package then DX9 and below will function properly. For Allegro 4 all you need is DX7 though. I don't believe having the latest DX installed affects the functioning or performance of libraries compiled with lower versions.

Thomas Fjellstrom
Member #476
June 2000
avatar

I think A4 still requires the DX9 SDK, though only uses DX7 APIs. Or something like that.

--
Thomas Fjellstrom - [website] - [email] - [Allegro Wiki] - [Allegro TODO]
"If you can't think of a better solution, don't try to make a better solution." -- weapon_S
"The less evidence we have for what we believe is certain, the more violently we defend beliefs against those who don't agree" -- https://twitter.com/neiltyson/status/592870205409353730

raynebc
Member #11,908
May 2010

Thank you both for your replies. I don't remember where I got that d3d9.h file, at this point it's not in my includes folder. The make command is building Allegro so I suppose we'll see if it fails. That Allegro link I cited has downloads for the relevant SDK files for DX7 and DX8, but not DX9. I didn't spend a lot of time looking, but it seemed like those files would be buried inside some Windows development suite or something. What's the easiest way to get those DX9 files if they're actually needed?

Edit: It built Allegro just fine with the DX8 SDK files from the link.

Bruce Pascoe
Member #15,931
April 2015
avatar

Just for future reference, current versions of MSVC include most of the DX9 SDK out of the box, except for the D3DX stuff because it's considered deprecated. Can't speak for MinGW though.

That's why I like Allegro 5, I can compile it with OpenGL only and not have to deal with installing the bloated DX SDK. ;)

Edgar Reynaldo
Major Reynaldo
May 2007
avatar

Thomas Fjellstrom
Member #476
June 2000
avatar

I think msys2 also comes with the DX headers.

--
Thomas Fjellstrom - [website] - [email] - [Allegro Wiki] - [Allegro TODO]
"If you can't think of a better solution, don't try to make a better solution." -- weapon_S
"The less evidence we have for what we believe is certain, the more violently we defend beliefs against those who don't agree" -- https://twitter.com/neiltyson/status/592870205409353730

raynebc
Member #11,908
May 2010

Thank you for the DX9 package, Edgar. But if it's not believed that it will make any difference in performance for Allegro 4 I don't know if I'll worry about it. That zip is about 9 times as large as the DX8 package.

One thing that I've noticed has been happening reliably today after building Allegro from scratch three times: When I get to the part where I call cmake, it stops itself and indicates there were errors, but if I issue the command again, it completes without complaint. Do I need to be suspicious of this or will it work fine?

Edit: I was wondering, the Allegro 4.x branch doesn't have any changelog content newer than 4.4.2. Were there any changes to that branch beyond that?

beoran
Member #12,636
March 2011

<rant>
Allegro 4 is deader than a door nail. We asked around before but no one is wiling to maintain it any longer. Please, please, please port your game to Allegro 5.
</rant>

raynebc
Member #11,908
May 2010

1. I'm not developing a game. It's an rhythm game chart editor so there much less incentive to port it to A5 since it doesn't demand for hardware acceleration.
2. I already said I don't have the time to do it right now, but it is planned for some future date.

beoran
Member #12,636
March 2011

Sure, I see the problem, however, I want to stress that you won't be able to get any bugfixes for allegro 4.x anymore unless you maintain it yourself. That's probably much harder than porting to allegro 5.x...

raynebc
Member #11,908
May 2010

I haven't encountered anything so problematic, Allegro 4 is more than stable enough for me for the immediate time being. And even one of the main things that bugged me (glitched ALT+Tab to bring program into foreground) was reportedly fixed in 4.4.2. Even on 4.4.1.1 I was able to program around issues like that.

I found the git change log and the changes between 4.4 and 4.9.0 don't seem too severe, is it worth trying to gradually update my application by testing compatibility with Allegro 4.9.0 first? Is it simple enough to have both Allegros built on my computer at once and switch them out (ie. changing header inclusions in my program) or should I count on having to remove Allegro 4.4 from my MinGW installation first?

Thomas Fjellstrom
Member #476
June 2000
avatar

raynebc said:

I found the git change log and the changes between 4.4 and 4.9.0 don't seem too severe, is it worth trying to gradually update my application by testing compatibility with Allegro 4.9.0 first?

I doubt it very much. I suspect a lot has changed between 4.9.0 and 5.0.

You can install both Allegro 4 and Allegro 5 side by side.

--
Thomas Fjellstrom - [website] - [email] - [Allegro Wiki] - [Allegro TODO]
"If you can't think of a better solution, don't try to make a better solution." -- weapon_S
"The less evidence we have for what we believe is certain, the more violently we defend beliefs against those who don't agree" -- https://twitter.com/neiltyson/status/592870205409353730

raynebc
Member #11,908
May 2010

As far as upgrading to 4.4.2, do I just build it from source and make-install it on top of my MinGW when it already has 4.4.1, or do I have to follow some process to remove the existing Allegro headers/binaries?

Thomas Fjellstrom
Member #476
June 2000
avatar

4.4.2 is just an incremental update over 4.4.1, so installing over top should work.

--
Thomas Fjellstrom - [website] - [email] - [Allegro Wiki] - [Allegro TODO]
"If you can't think of a better solution, don't try to make a better solution." -- weapon_S
"The less evidence we have for what we believe is certain, the more violently we defend beliefs against those who don't agree" -- https://twitter.com/neiltyson/status/592870205409353730

Edgar Reynaldo
Major Reynaldo
May 2007
avatar

raynebc said:

Thank you for the DX9 package, Edgar. But if it's not believed that it will make any difference in performance for Allegro 4 I don't know if I'll worry about it. That zip is about 9 times as large as the DX8 package.

Those zips are nothing compared to the full DXSDK.

raynebc said:

As far as upgrading to 4.4.2, do I just build it from source and make-install it on top of my MinGW when it already has 4.4.1, or do I have to follow some process to remove the existing Allegro headers/binaries?

You can get build conflicts building allegro when it is already installed on your mingw, or at least I've seen it happen with Allegro 5 for some reason. It's a good idea to not install to your mingw directory, but perhaps a LIBS sub directory, that you link to with -Imingw\LIBS\include and -Lmingw\LIBS\bin.

Go to: