API Guide Home (Online version only) |

# HsExtTraps.h

Go to the documentation of this file.

    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