|
API Guide Home (Online version only) |
![]() |
00001 /****************************************************************************** 00002 * Copyright (c) 2005 palmOne, Inc. or its subsidiaries. 00003 * All rights reserved. 00004 *****************************************************************************/ 00005 /** 00006 * 00007 * @ingroup SystemDef 00008 * 00009 */ 00010 00011 /** 00012 * @file HsExtTraps.h 00013 * @version 00014 * @date 00015 * 00016 * @brief Definitions of selectors used for the 68K trap based 00017 * calls to HsExtensions 00018 * 00019 */ 00020 00021 00022 00023 #ifndef __HS_EXT_TRAPS_H__ 00024 #define __HS_EXT_TRAPS_H__ 00025 00026 #ifndef sysTrapOEMDispatch 00027 /// OEM trap in Palm OS 3.0 and later trap table (formerly sysTrapSysReserved4) 00028 #define sysTrapOEMDispatch 0xA349 /**< */ 00029 #endif // !sysTrapOEMDispatch 00030 00031 /** 00032 * @name This is the system trap that we base all HsExt calls off of. 00033 * 00034 */ 00035 /*@{*/ 00036 #define sysTrapHsSelector sysTrapOEMDispatch /**< */ 00037 /*@}*/ 00038 00039 00040 #define hsSelectorBase 0 /**< */ 00041 00042 #define hsSelInfo 0x0 /**< */ 00043 00044 #ifndef HS_STRIP_UNIMPLEMENTED // not implemented on 5.x yet... 00045 #define hsSelPrvInit 0x1 /**< */ 00046 #define hsSelPrvCallSafely 0x2 /**< */ 00047 #define hsSelPrvCallSafelyNewStack 0x3 /**< */ 00048 00049 #define hsSelDatabaseCopy 0x4 /**< */ 00050 #define hsSelExtKeyboardEnable 0x5 /**< */ 00051 #define hsSelCardAttrGet 0x6 /**< */ 00052 #define hsSelCardAttrSet 0x7 /**< */ 00053 #define hsSelCardEventPost 0x8 /**< */ 00054 #define hsSelPrvErrCatchListP 0x9 /**< */ 00055 #endif 00056 00057 #define hsSelPrefGet 0xA /**< */ 00058 #define hsSelPrefSet 0xB /**< */ 00059 00060 #ifndef HS_STRIP_UNIMPLEMENTED // not implemented on 5.x yet... 00061 #define hsSelDmGetNextDBByTypeCreator 0xC /**< */ 00062 #define hsSelDmGetNextDBInit 0xD /**< */ 00063 00064 #define hsSelCardHdrUpdate 0xE /**< */ 00065 00066 #define hsSelAppEventHandlerSet 0xF /**< */ 00067 #define hsSelAppEventPost 0x10 /**< */ 00068 00069 #define hsSelUsbCommStatePtr 0x11 /**< */ 00070 00071 #define hsSelCardPatchInstall 0x12 /**< */ 00072 #define hsSelCardPatchRemove 0x13 /**< */ 00073 00074 #define hsSelEvtResetAutoOffTimer 0x14 /**< */ 00075 00076 #define hsSelDmDatabaseUniqueIDSeed 0x15 /**< */ 00077 #endif 00078 00079 #define hsSelAboutHandspringApp 0x16 /**< */ 00080 00081 #ifndef HS_STRIP_UNIMPLEMENTED // not implemented on 5.x yet... 00082 #define hsSelDmDatabaseIsOpen 0x17 /**< */ 00083 #define hsSelDmDatabaseIsProtected 0x18 /**< */ 00084 00085 #define hsSelDlkForceSlowSync 0x19 /**< */ 00086 00087 #define hsSelPrvHandleCardChangeEvent 0x1A /**< */ 00088 00089 // 0x03523000 00090 00091 #define hsSelCardPower 0x1B /**< */ 00092 00093 #define hsSelDmDatabaseDeleted 0x1C /**< */ 00094 00095 #define hsSelDmLockFileSystem 0x1D /**< */ 00096 00097 #define hsSelPrvLaunchCompareFunc 0x1E /**< */ 00098 00099 // 0x03523020 00100 00101 #define hsSelPrvLEDCommand 0x1F /**< */ 00102 00103 #define hsInstallSerialWrapper 0x20 /**< */ 00104 00105 #define hsUninstallSerialWrapper 0x21 /**< */ 00106 00107 #define hsPeriodicRegister 0x22 /**< */ 00108 #define hsPeriodicUnregister 0x23 /**< */ 00109 #define hsPeriodicPeriodsAvailable 0x24 /**< */ 00110 00111 // 0x03523030 00112 00113 // No HsExtension calls added 00114 00115 // 0x03523040 00116 00117 // NOTE: Be sure to update 68000Instrs.h if these change 00118 #define hsSelPrvSetButtonDefault 0x25 /**< */ 00119 #define hsSelPrvFindAppFromIDs 0x26 /**< */ 00120 #endif 00121 00122 #define hsSelAttrGet 0x27 /**< */ 00123 #define hsSelAttrSet 0x28 /**< */ 00124 00125 #define hsSelKeyCurrentStateExt 0x29 /**< */ 00126 #define hsSelKeySetMaskExt 0x2A /**< */ 00127 00128 #define hsSelGrfSetStateExt 0x2B /**< */ 00129 #define hsSelGrfGetStateExt 0x2C /**< */ 00130 00131 #ifndef HS_STRIP_UNIMPLEMENTED // not implemented on 5.x yet... 00132 #define hsSelKeyChrToOptChr 0x2D /**< */ 00133 #define hsSelKeyChrToRegChr 0x2E /**< */ 00134 #define hsSelPrvKeyHandleEvent 0x2F /**< */ 00135 #define hsSelWordCorrectInvoke 0x30 /**< */ 00136 #define hsSelWordCorrectUndo 0x31 /**< */ 00137 #define hsSelPrvUpdateBatteryGadget 0x32 /**< */ 00138 #define hsSelPrvUpdateSignalGadget 0x33 /**< */ 00139 #endif 00140 00141 #define hsSelStatusSetGadgetType 0x34 /**< */ 00142 00143 #ifndef HS_STRIP_UNIMPLEMENTED // not implemented on 5.x yet... 00144 #define hsSelSysKeyboardReferenceDialog 0x35 /**< */ 00145 #endif 00146 00147 #define hsSelPutObjectAfterTitle 0x36 /**< */ 00148 00149 #define hsSelEvtMetaEvent 0x37 /**< */ 00150 00151 #define hsSelStatusUpdateGadgets 0x38 /**< */ 00152 00153 #ifndef HS_STRIP_UNIMPLEMENTED // not implemented on 5.x yet... 00154 #define hsSelLstPopupListExt 0x39 /**< */ 00155 #define hsSelDmCreateDatabasesFromImages 0x3A /**< DO NOT CHANGE used in object patch! */ 00156 #define hsSelPrvLaunchDemoApp 0x3B /**< DO NOT CHANGE used in object patch! */ 00157 #define hsSelPrefGetAppKeyCreator 0x3C /**< */ 00158 #endif 00159 00160 #define hsSelUtilFrmDoDialogWithCallback 0x3D /**< */ 00161 00162 #define hsSelHsGetTrapAddress 0x3E /**< */ 00163 00164 00165 #ifndef HS_STRIP_UNIMPLEMENTED // not implemented on 5.x yet... 00166 #define hsSelHsSetTrapAddress 0x3F /**< */ 00167 #endif 00168 00169 #define hsSelUnimplemented 0x40 /**< */ 00170 00171 #ifndef HS_STRIP_UNIMPLEMENTED // not implemented on 5.x yet... 00172 #define hsSelIndicator 0x41 /**< */ 00173 #endif 00174 00175 #define hsSelUtilSclUpdateScrollBar 0x42 /**< */ 00176 #define hsSelUtilSclScroll 0x43 /**< */ 00177 #define hsSelUtilSclScrollPage 0x44 /**< */ 00178 00179 #ifndef HS_STRIP_UNIMPLEMENTED // not implemented on 5.x yet... 00180 #define hsSelPrvInitPostProcess 0x45 /**< */ 00181 #define hsSelPostProcPopupList 0x46 /**< */ 00182 00183 #define hsSelPeriodicUnregisterFromSelf 0x47 /**< */ 00184 #endif 00185 00186 #define hsSelNetworkDropConnection 0x48 /**< */ 00187 00188 #ifndef HS_STRIP_UNIMPLEMENTED // not implemented on 5.x yet... 00189 #define hsSelPrvSetupGoToCustomForm 0x49 /**< DO NOT CHANGE used in object patch! */ 00190 #define hsSelPrvSetupInstallFormEventHandler 0x4A /**< DO NOT CHANGE used in object patch! */ 00191 00192 #endif 00193 #define hsSelUtilSliHandleKeyDown 0x4B /**< */ 00194 #define hsSelUtilWinGetMaxDepth 0x4C /**< */ 00195 00196 #define hsSelLightMode 0x4D /**< */ 00197 #define hsSelLightCircumstance 0x4E /**< */ 00198 00199 #define hsSelUtilBbutInstallFromResource 0x4F /**< */ 00200 #define hsSelUtilBbutHitBigButton 0x50 /**< */ 00201 #define hsSelUtilFrmDoDialog 0x51 /**< */ 00202 00203 #define hsSelUtilStrCSpn 0x52 /**< */ 00204 #define hsSelUtilFrmDoTimedDialog 0x53 /**< */ 00205 00206 // NOTE: Please use up reserved spaces during 00207 // 3.5H5 development; this will reduce merge 00208 // issues... 00209 00210 #ifndef HS_STRIP_UNIMPLEMENTED // not implemented on 5.x yet... 00211 #define hsSelReserved352H5_54 0x54 /**< */ 00212 #define hsSelReserved352H5_55 0x55 /**< */ 00213 #define hsSelReserved352H5_56 0x56 /**< */ 00214 #define hsSelReserved352H5_57 0x57 /**< */ 00215 #define hsSelReserved352H5_58 0x58 /**< */ 00216 #define hsSelReserved352H5_59 0x59 /**< */ 00217 #define hsSelReserved352H5_5A 0x5A /**< */ 00218 #define hsSelReserved352H5_5B 0x5B /**< */ 00219 #define hsSelReserved352H5_5C 0x5C /**< */ 00220 #define hsSelReserved352H5_5D 0x5D /**< */ 00221 00222 // NOTE: Please use up reserved spaces during 00223 // 3.5H6 development; this will reduce merge 00224 // issues... 00225 00226 #define hsSelReserved352H6_5E 0x5E /**< */ 00227 #define hsSelReserved352H6_5F 0x5F /**< */ 00228 #define hsSelReserved352H6_60 0x60 /**< */ 00229 #define hsSelReserved352H6_61 0x61 /**< */ 00230 #define hsSelReserved352H6_62 0x62 /**< */ 00231 #define hsSelReserved352H6_63 0x63 /**< */ 00232 #define hsSelReserved352H6_64 0x64 /**< */ 00233 #define hsSelReserved352H6_65 0x65 /**< */ 00234 #define hsSelReserved352H6_66 0x66 /**< */ 00235 #define hsSelReserved352H6_67 0x67 /**< */ 00236 #define hsSelReserved352H6_68 0x68 /**< */ 00237 #define hsSelReserved352H6_69 0x69 /**< */ 00238 #define hsSelReserved352H6_6A 0x6A /**< */ 00239 #endif 00240 00241 // 0x04103010 00242 #ifndef HS_STRIP_UNIMPLEMENTED // not implemented on 5.x yet... 00243 #define hsSelPrvShowKeyboardLockOnDialog 0x6B /**< */ 00244 #define hsSelPrvHandleKeyboardLock 0x6C /**< */ 00245 #endif 00246 00247 #define hsSelSpringboardNotSupported 0x6D /**< */ 00248 00249 // Reserve some traps for pre-OS5 development 00250 #ifndef HS_STRIP_UNIMPLEMENTED // not implemented on 5.x yet... 00251 #define hsSelReserved41_6E 0x6E /**< */ 00252 #define hsSelReserved41_6F 0x6F /**< */ 00253 #define hsSelReserved41_70 0x70 /**< */ 00254 #define hsSelReserved41_71 0x71 /**< */ 00255 #define hsSelReserved41_72 0x72 /**< */ 00256 #endif 00257 00258 /** 00259 * @name OS-5 00260 * 00261 */ 00262 /*@{*/ 00263 #define hsSelUtilGetObjectUsable 0x73 /**< */ 00264 #define hsSelUtilFrmGetDefaultButtonID 0x74 /**< */ 00265 #define hsSelUtilFrmGetEventHandler 0x75 /**< */ 00266 #define hsSelUtilLstGetItemsText 0x76 /**< */ 00267 #define hsSelUtilLstGetTopItem 0x77 /**< */ 00268 #define hsSelUtilCtlGetControlStyle 0x78 /**< */ 00269 /*@}*/ 00270 00271 /** 00272 * @name Trace Functions 00273 * 00274 */ 00275 /*@{*/ 00276 #define hsSelTraceLevelsSet 0x79 /**< */ 00277 #define hsSelTraceLevelsGet 0x7A /**< */ 00278 #define hsSelTrace 0x7B /**< */ 00279 #define hsSelTraceData 0x7C /**< */ 00280 #define hsSelTraceRecordsDump 0x7D /**< */ 00281 #define hsSelTraceClear 0x7E /**< */ 00282 #define hsSelTraceOutputLevelsSet 0x7F /**< */ 00283 #define hsSelTraceOutputLevelsGet 0x80 /**< */ 00284 #define hsSelTraceText 0x81 /**< */ 00285 #define hsSelTraceFunction 0x82 /**< */ 00286 #define hsSelTraceError 0x83 /**< */ 00287 #define hsSelTraceFunctionError 0x84 /**< */ 00288 #define hsSelTraceEvent 0x85 /**< */ 00289 /*@}*/ 00290 00291 #define hsSelGetPhoneLibrary 0x86 /**< */ 00292 #define hsSelUtilFrmSetLabel 0x87 /**< */ 00293 #define hsSelUtilCtlGetFont 0x88 /**< */ 00294 00295 /** 00296 * @name Mutex functions -- 68K bridge to ARM-native functions 00297 * 00298 */ 00299 /*@{*/ 00300 #define hsSelUtilMutexCreate 0x89 /**< */ 00301 #define hsSelUtilMutexDelete 0x8A /**< */ 00302 #define hsSelUtilMutexReserve 0x8B /**< */ 00303 #define hsSelUtilMutexRelease 0x8C /**< */ 00304 /*@}*/ 00305 00306 #define hsSelGetARMActiveFormPtr 0x8E /**< */ 00307 00308 #define hsSelTwoFontSelect 0x8F /**< */ 00309 #define hsSelOpenDialNumberDialog 0x90 /**< */ 00310 #define hsSelTurnRadioOn 0x91 /**< */ 00311 #define hsSelCreateNewMessage 0x92 /**< */ 00312 #define hsSelCreateNewEmail 0x93 /**< */ 00313 #define hsSelBrowseUrl 0x94 /**< */ 00314 00315 #define hsSelNavGetFocusColor 0x95 /**< */ 00316 #define hsSelNavSetFocusColor 0x96 /**< */ 00317 #define hsSelNavGetFocusRingInfo 0x97 /**< */ 00318 #define hsSelNavDrawFocusRing 0x98 /**< */ 00319 #define hsSelNavRemoveFocusRing 0x99 /**< */ 00320 #define hsSelNavLstGetTempSelection 0x9A /**< */ 00321 #define hsSelNavLstSetTempSelection 0x9B /**< */ 00322 // Trap defined at the end of the list 00323 //#define hsSelNavObjectTakeFocus 0xB7 00324 00325 #define hsSelIndicatorState 0x9C /**< */ 00326 00327 #define hsSelKeysPressed 0x9D /**< */ 00328 #define hsSelKeyEnableKey 0x9E /**< */ 00329 #define hsSelKeyChrCodeToKeyCode 0x9F /**< */ 00330 #define hsSelKeyKeyCodeToChrCode 0xA0 /**< */ 00331 #define hsSelKeyEventIsFromKeyboard 0xA1 /**< */ 00332 00333 #define hsSelTraceContextInit 0xA2 /**< */ 00334 #define hsSelTraceContextDelete 0xA3 /**< */ 00335 00336 #define hsSelDoSaveAsDialog 0xA4 /**< */ 00337 #define hsSelExgSelectTarget 0xA5 /**< */ 00338 #define hsSelExgLocalAccept 0xA6 /**< */ 00339 #define hsSelExgLocalDisconnect 0xA7 /**< */ 00340 00341 #define hsSelUtilAttnNagInfo 0xA8 /**< */ 00342 00343 #define hsSelCrashLogGetLast 0xA9 /**< */ 00344 #define hsSelCrashLogDisplayLast 0xAA /**< */ 00345 00346 #define hsSelTxtPrepFindString 0xAB /**< */ 00347 00348 #define hsSelUtilFrmSetHelpID 0xAC /**< */ 00349 #define hsSelUtilFrmSetLabelFont 0xAD /**< */ 00350 00351 // NOTE: This trap selector was never implemented and never used, therefore it is safe to be reassigned 00352 #define hsNeverUsedBeforeAvailableForUse1 0xAE /**< */ 00353 00354 /** 00355 * @name Additional Trace Utility functions 00356 * 00357 */ 00358 /*@{*/ 00359 #define hsSelTraceOpenDB 0xB0 /**< */ 00360 #define hsSelTraceCloseDB 0xB1 /**< */ 00361 /*@}*/ 00362 00363 #define hsSelSupressDbgLockout 0xB2 /**< */ 00364 #define hsSelIsDbgLockoutSupressed 0xB3 /**< */ 00365 00366 #define hsSelKeyStop 0xB4 /**< */ 00367 00368 #define hsSelGetVersionString 0xB5 /**< */ 00369 00370 #define hsSelUtilEnableAttentionMgr 0xB6 /**< */ 00371 00372 #define hsSelNavObjectTakeFocus 0xB7 /**< */ 00373 00374 #define hsSelPostProcessPopupList 0xB8 /**< */ 00375 00376 #define hsSelTraceSetMaxRecords 0xB9 /**< */ 00377 #define hsSelTraceGetMaxRecords 0xBA /**< */ 00378 00379 /** 00380 * @name multi-byte friendly Txt routines 00381 * 00382 */ 00383 /*@{*/ 00384 #define hsSelTxtNumChars 0xBB /**< */ 00385 #define hsSelTxtTruncateString 0xBC /**< */ 00386 #define hsSelTxtIsAscii 0xBD /**< */ 00387 /*@}*/ 00388 00389 #define hsSelWaitForGPRSAttach 0xBE /**< */ 00390 #define hsSelIsHTTPLibraryLoaded 0xBF /**< */ 00391 00392 /** 00393 * @name This range is reserved for last-minute fixes in OS-5H1-C/D/E 00394 * 00395 */ 00396 /*@{*/ 00397 #define hsSelReserved5H1_C0 0xC0 /**< */ 00398 #define hsSelReserved5H1_C1 0xC1 /**< */ 00399 #define hsSelReserved5H1_C2 0xC2 /**< */ 00400 #define hsSelReserved5H1_C3 0xC3 /**< */ 00401 /*@}*/ 00402 00403 /** 00404 * @name New AcDc traps 00405 * 00406 */ 00407 /*@{*/ 00408 #define hsSelDispatchService 0xC4 /**< */ 00409 00410 #define hsSelOpenDialNumberDialogExt 0xC5 /**< */ 00411 00412 // This trap is technically free. It was temporarily used during Treo650 development but we never shipped 00413 // with it. We continue to define and dispatch it just to be extra safe. There's a small chance that 00414 // not all apps were properly transitioned to the PmUIUtil version of this call during Treo650 development. 00415 // 3rd party apps should have never had access to this function because it is defined in a palmOne 00416 // internal header and apps built with the Treo650 ROM should've always be built against the latest trap 00417 // definitions. There's the slight possibility that palmOne apps built as components, however, were 00418 // never built against the newest trap definitions. 00419 #define hsSelAttnGetAttentionExt 0xC6 /**< */ 00420 00421 #define hsSelUtilBbutInstallNewButton 0xC7 /**< */ 00422 00423 #define hsSelUtilBbutSetLabel 0xC8 /**< */ 00424 00425 // This trap is technically free. It was temporarily used during Treo650 development but we never shipped 00426 // with it. We continue to define and dispatch it just to be extra safe. There's a small chance that 00427 // not all apps were properly transitioned to the PmUIUtil version of this call during Treo650 development. 00428 // 3rd party apps should have never had access to this function because it is defined in a palmOne 00429 // internal header and apps built with the Treo650 ROM should've always be built against the latest trap 00430 // definitions. There's the slight possibility that palmOne apps built as components, however, were 00431 // never built against the newest trap definitions. 00432 #define hsSelAttnUpdateExt 0xC9 /**< */ 00433 00434 #define hsSelUtilAttnIndicatorAllow 0xCA /**< */ 00435 00436 #define hsSelUtilBbutSetBitmap 0xCB /**< */ 00437 00438 #define hsSelMenuSetCurMenuCurItem 0xCC /**< */ 00439 00440 #define hsSelTraceSetCommitInterval 0xCD /**< */ 00441 #define hsSelTraceGetCommitInterval 0xCE /**< */ 00442 00443 #define hsSelWriteROMTokens 0xCF /**< */ 00444 /*@}*/ 00445 00446 // for application to get current light circumstance 00447 #define hsGetCurrentLightCircumstance 0xD0 /**< */ 00448 00449 #define hsSelShowHighVolAlert 0xD1 00450 00451 #define hsSelStartMemoryTracing 0xD2 00452 // WARNING! Please do not re-order the trap numbers. 00453 // If you need to add a new trap, add it to the bottom of the list!! 00454 00455 // WARNING! Leave this one at the end! 00456 // When adding new traps, renumber it 00457 // to one greater than the last trap. 00458 #define hsSelLast 0xD3 /**< */ 00459 00460 00461 00462 #define hsNumSels (hsSelLast - hsSelectorBase) /**< */ 00463 00464 00465 #endif // __HS_EXT_TRAPS_H__
| Top | Palm Developer Network © 2004-2008, Palm, Inc. All rights reserved. Generated on Fri Jun 13 10:06:53 2008 for Palm API Guide |