You're checking for the wrong thing. WinScreenGetAttribute is "Implemented only if the High-Density Display Feature Set is present." So check for that instead of OS 4.0+. For OS 5.0+, the HDD set is always present.
err = FtrGet(sysFtrCreator, sysFtrNumWinVersion, &version); Upon return, if version has a value of 4 or greater, the High-Density Display feature set is present. It's my guess that none of the emulator rom's support the HDD set. -- Tim Kostka http://www.nuprograms.com "Steve A" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] > I am trying to determing if double-density mode is enabled. Before calling > WinScreenGetAttribute, I make sure I'm running OS 4.0 or later. However, > using the emulator (with a 4.2 rom) it crashes when WinScreenGetAttribute is > called with a SysReserved40Trap1 error ("This routine does not exist in this > version of the Palm OS"). What is newbie-me doing wrong? > > #define version40 0x04003000 > DWord dwRomVersion; > > FtrGet(sysFtrCreator, sysFtrNumROMVersion, &dwRomVersion); > if (dwRomVersion >= version40) // dwRomVersion is 0x4103000 > { > UInt32 attr; > WinScreenGetAttribute(winScreenDensity, &attr); // Dies here. > if( attr == kDensityDouble ) > bDoubleDensityMode = true; > } > > Thanks! > > > > -- For information on using the Palm Developer Forums, or to unsubscribe, please see http://www.palmos.com/dev/support/forums/
