On Friday 04 May 2007, David Thacker wrote:
>
> The whole point of this particular exercise was to know when to call the
> HsGetVersionString API to get the Treo's ROM serial number, because some
> Treo designer somewhere sometime decided that it would be too easy for
> developers just to keep it available via the standard SysGetROMToken API...
>
> I can't use SysGlueTrapExists(HsGetVersionString) because
> HsGetVersionString isn't a regular trap API, but rather a
> SysTrapOEMDispatch selector based API...
>
> Oh well, I'll just keep doing the specific device model checks and update
> it again when the next model comes out.

I'm interested in the same thing.  I see HsExt.h says:

/**
 * This is the Handspring feature id. Apps can tell if they're on
 * a handspring device if they get 0 err back from:
 * err = FtrGet (hsFtrCreator, hsFtrIDVersion, &value)
 **/
#define hsFtrCreator                             'hsEx'


Would this work?  If no error is returned, you can check the value to
determine revision number.  I just guessing here, but if the major
byte (high order byte in value) is 5 or greater, would that mean the
HsGetVersionString trap is available?  If that is not sufficient,
maybe examining more bits of the version value would provide a
minimum value where HsGetVersionString is made available.

mike


-- 
For information on using the ACCESS Developer Forums, or to unsubscribe, please 
see http://www.access-company.com/developers/forums/

Reply via email to