I never know for sure when something I'm running is PPC, 16-bit x86 or 32-bit x86.
In case anyone else finds it useful, I made a tiny program that tells you if a Windows app is PowerPC, x86 16-bit or x86 32-bit. Runs on PowerPC NT4 SP2 (PPC native app) or on various x86 Windows (x86 32-bit app).
Just drag and drop whatever files onto it, and if it's a Windows app (or DOS app, or OS/2 app), it will tell you that, and what kind. Works on DLLs etc., too, and will also tell you if the binary is MIPS, DEC Alpha, 64-bit x86 or whatever else it could possibly be. There's a readme included with more details, but that's about it.
Source code also included (single ANSI C89 file). All is attached to this post as a ZIP file. On PPC NT, unzip with either
Info-Zip PPC or, at least on PPC NT4, with the
x86 32-bit 7-Zip 9.20 (the ".exe") if you have either Wx86 or Motorola SoftWindows 32 installed.
Here's a screenshot to give you an idea:
I call it "Windows Binary Type Detector 1.0" (WBTD), but
if I further work on this later (e.g. porting it to Mac OS 9 and System 7, because of VPC and dual-booting purposes), I might simply call it "WinBin Detect" or similar (and possibly host it in the Mac Garden in the future).
I was slightly surprised to see a number of 16-bit x86 apps among the "RISC" versions of NT 4.0 ("user.exe" or something, for example), although there might not be many: most I checked were native to their CPU architectures.
This also taught me there are supposedly two kinds of PPC binaries for Windows: Plain PowerPC, and "PowerPC with FPU". I never came across the latter, and the former is produced by VC++4.1 PPC, at least by default. I also discovered Windows CE (at least 2.x and 3.x) existed for PPC officially, usually on embedded-class CPUs without FPU, so I expected to see "regular" PPC apps on those and "with FPU" ones on NT 4, but... That wasn't the case. Does that mean PPC binaries not identified as "with FPU"
necessarily are not making use of the PPC FPU whatsoever? That would be outrageous! And if true, I'd like to know how to compile some of those "with FPU" apps...
I hope others also find this software useful.