You are here

[Fixed] Powder Toy illegal instruction error

10 posts / 0 new
Last post
PSkilton
PSkilton's picture
Offline
Last seen: 1 year 7 months ago
Joined: 2012-07-02 16:08
[Fixed] Powder Toy illegal instruction error

I tried to run Powder Toy on my XP SP3 and it gave an error saying the following:

powder.exe application error

"The exception Illegal Instruction. An attempt was made to execute an illegal instruction. (0xc000001d) occurred in the application at location 0x004314eb."

Powder Toy worked fine on my Windows Vista.

Thanks,
PSkilton

Ken Herbert
Ken Herbert's picture
Offline
Last seen: 7 hours 54 min ago
DeveloperModerator
Joined: 2010-05-25 18:19
Can't reproduce

WinXP SP3 as well, the app runs fine for me.

Have you tried reinstalling?

PSkilton
PSkilton's picture
Offline
Last seen: 1 year 7 months ago
Joined: 2012-07-02 16:08
yes

I tried reinstalling, uninstalling then reinstalling, and a fresh install to the desktop. I could be that my XP desktop hasn't been hooked up to the internet in a few years for updates, and it's also about 10 years old...

Thanks,
PSkilton

depp.jones
Offline
Last seen: 9 hours 56 min ago
DeveloperTranslator
Joined: 2010-06-05 17:19
Would you try the local

Would you try the local version from http://powdertoy.co.uk ? It is already portable and doesn't leave any traces. Just unzip the archive to a new folder and run powder.exe.

PSkilton
PSkilton's picture
Offline
Last seen: 1 year 7 months ago
Joined: 2012-07-02 16:08
sure

Oddly enough I got the Powder-legacy.exe in the PowderToyPortable/App/PowderToy directory to work fine, but when I tried the Powder.exe it gave the same error. I will try the local version later today.

Thanks,
PSkilton

depp.jones
Offline
Last seen: 9 hours 56 min ago
DeveloperTranslator
Joined: 2010-06-05 17:19
CPU too old

Ah, ok. I think your cpu is too old. Powder Toy expects a cpu capable of the SSE instruction set (I think even SSE2).
As I don't know any way to check this with the launcher or custom code, there is no automatic workaround for this.

You could rename the powder-legacy.exe to powder.exe (deleting or renaming the powder.exe before). This way, it will get picked up by the launcher (PowderToyPortable.exe). The downside is, that it will be reverted by every update since the contents of the app directory get overwritten.

John T. Haller
John T. Haller's picture
Offline
Last seen: 2 hours 42 min ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
CPUDesc

There is an NSIS plugin we could use that can determine if SSE and SSE2 are available here: http://nsis.sourceforge.net/CPUDesc_plug-in

Sadly it is NSIS Ansi only, but we could get someone to recompile for Unicode.

Sometimes, the impossible can become possible, if you're awesome!

depp.jones
Offline
Last seen: 9 hours 56 min ago
DeveloperTranslator
Joined: 2010-06-05 17:19
Ok, I think I need help with

Ok, I think I need help with that. Wink
I had a quick look and, while I basically understand how the plugin works, I have no clue how to set up the custom code - which segment to use, how to change which variable etc...
Is it possible to change the ProgrammExecutable directly?

John T. Haller
John T. Haller's picture
Offline
Last seen: 2 hours 42 min ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
Fixed in 84.3

Forgot to mention this was fixed in the current release. The launcher detects if you have an older CPU and will automatically use the legacy version.

Sometimes, the impossible can become possible, if you're awesome!

PSkilton
PSkilton's picture
Offline
Last seen: 1 year 7 months ago
Joined: 2012-07-02 16:08
Thanks!

Worked like a charm! Thanks for the continuous updates, additions, and all the hard work to all of PA.c!

Thanks again,
-PSkilton

Log in or register to post comments