To improve compatibility with these large API headers, I am working on a true preprocessor, which will perform most macro/equate substitutions in the first pass instead of progressively in later passes. (It is what Emil had requested.)
This will make the compiler more efficient for handling the 50,000+ equates of MS windows (circa 2004).
It may entail some minor sacrifices, such as local equates - but I think I am the only one playing with them so far.
But I'm still in favour of simplified APIs, like Peter's and Aurel's, and I will maintain Oxygen's small collection of headers to support all the examples and tools.