compiler-defined #defines so you can write cross-platform code better.
one source code, multiple targets (djgpp, 9x/me, nt-family, vista/7).

I have a web page with a g++ wrapper batch file that makes vista/7-compatible code by adding a manifest XML windows resource, which you supply parameters.  it switches out compiler(s) of your choice.  you only get to choose between a 32-bit and a 64-bit target compiler.
http://JesusnJim.com/code/mingw.html
the batch file has built-in help, albeit lengthy, so make sure your command shell has a long enough layout buffer, at least 100 lines - I usually choose 9900.

I have a "common compiler switches" web page.
http://JesusnJim.com/programming/common-compiler-switches.html
it lists the most useful of the gcc compiler switches I have discovered along the way.

common compiler #defines page: at http://JesusnJim.com/programming/common-compiler-defines.html

any additions to these pages welcome.

what I don't have is the mingw switches and command-line for making DLL's.
any contribution would only help me help someone else, and I could augment my g++ wrapper batch file.

Jim Michaels
jmichae3@yahoo.com(main)
JesusnJim.com (my site)
DoLifeComputers.JesusnJim.com
(Do Life Computers group site which I lead)



while (stone != rolling) moss++;
---
Computer memory/disk size measurements:
[KB KiB] [MB MiB] [GB GiB] [TB TiB]
[10^3B=1000B=1KB][10^6B=1000000B=1MB][10^9B=1000000000B=1GB][10^12B=1000000000000B=1TB]
[2^10B=1024B=1KiB][2^20B=1048576B=1MiB][2^30B=1073741824B=1GiB][2^40B=1099511627776B=1TiB]
Note that with disks, a disk size is measured in GB or TB, not in GiB or TiB.  computer memory (RAM) is measured in MiB and GiB.
---
Robot dog food: Cables n' Bits
---
adress=seg<<4+ofs;  (ambiguity - a double-minded compiler is unstable in all its ways)
biosdsk2.h:733: warning: suggest parentheses around '+' inside '<<'
---