the problems that we reported are not DirectDraw related.
see our detailed posting here:
http://www.modaco.com/index.php?showtop ... ntry804775
basically GETGXINFO (and therefore GAPI) return a buffer that is landscape oriented.
the buffer returned by GETGXINFO should always be Portrait oriented.
this is not explicitely defined in any MSFT documentation, but unless it is the case, GAPI will not work correctly.
so it is a bug caused by a fuzzy / ambiguous MSFT specification. if a call (like GETGXINFO or GETRAWFRAMEBUFFER) returns a buffer that is un-related to the current UI orientation (which is the case for theos two calls), then the orientation of this buffer should be "absolute" i.e. related to DMDO_0 (the "native" orientation of Pocket PC's, which is portrait).
also, "The return value from ChangeDisplaySettingsEx is allowed to be any of the orientation values for Windows Mobile" might be true, but it contradicts what MSFT engineers told developers at the last MEDC conference:
i remember asking a MSFT engineer at the last MEDC conference if we should worry about making sure that applications should run in the DMDO_180 orientation, and the answer i got was: don't worry about it, the Settings only allow 3 orientations: Portrait (DMDO_0) and Landscape right and left, but not "up-side-down" DMDO_180. That was true at the time, but the advice given proved to be wrong, he should have said: "yes, some device will run in DMDO_180 orientation, so make sure you support it."
Another interesting fact regarding "The return value from ChangeDisplaySettingsEx is allowed to be any of the orientation values for Windows Mobile": if you set most other devices to a DMDO_180 orientation (using third-party software), the D-pad keys either won't work or will not be rotated correctly. this means that most OEM drivers do not support DMDO_180 orientation. this indicates that OEM's are not aware that they should support DMDO_180 orientation in their drivers.
it also indicates that the MSFT platform tests does not test that OEM's D-pad drivers supports DMDO_180 orientation correctly (on all versions of the OS where ChangeDisplaySettingsEx is implemented, i.s. 2003SE and upper).
> I'll still look into this golf game. Maybe it is an app issue?
this golf game uses GAPI, and because of the problem in GETGXINFO, GAPI returns a landscape-oriented buffer. and since GAPI is supposed to always returned a Portait oriented buffer, it can confuse many GAPI-based applications and games.