| 1 | ; $Id: calltab.asm,v 1.15 2000-09-22 09:22:39 bird Exp $
|
|---|
| 2 | ;
|
|---|
| 3 | ; callTab - Call back again table - table with entry for each function or
|
|---|
| 4 | ; variable which is overrided.
|
|---|
| 5 | ; It holds the part of the prolog which was replaced by the jmp
|
|---|
| 6 | ; instruction (overridden functions).
|
|---|
| 7 | ;
|
|---|
| 8 | ; Copyright (c) 1998-2000 knut st. osmundsen
|
|---|
| 9 | ;
|
|---|
| 10 | ; Project Odin Software License can be found in LICENSE.TXT
|
|---|
| 11 | ;
|
|---|
| 12 | .386p
|
|---|
| 13 |
|
|---|
| 14 | ;
|
|---|
| 15 | ; Include files
|
|---|
| 16 | ;
|
|---|
| 17 | include devsegdf.inc
|
|---|
| 18 |
|
|---|
| 19 | ;
|
|---|
| 20 | ; Exported symbols
|
|---|
| 21 | ;
|
|---|
| 22 | public callTab
|
|---|
| 23 | public _ldrClose@4
|
|---|
| 24 | public _ldrOpen@12
|
|---|
| 25 | public _ldrRead@24
|
|---|
| 26 | public _LDRQAppType@8
|
|---|
| 27 | public _ldrEnum32bitRelRecs@24
|
|---|
| 28 |
|
|---|
| 29 | public _IOSftOpen@20
|
|---|
| 30 | public _IOSftClose@4
|
|---|
| 31 | public _IOSftTransPath@4
|
|---|
| 32 | public _IOSftReadAt@20
|
|---|
| 33 | public _IOSftWriteAt@20
|
|---|
| 34 | public _SftFileSize@8
|
|---|
| 35 |
|
|---|
| 36 | public _VMAllocMem@36
|
|---|
| 37 | public _VMGetOwner@8
|
|---|
| 38 | public _g_tkExecPgm
|
|---|
| 39 | public _tkStartProcess
|
|---|
| 40 | public _f_FuStrLenZ
|
|---|
| 41 | public _f_FuBuff
|
|---|
| 42 |
|
|---|
| 43 | public _VMObjHandleInfo@12
|
|---|
| 44 | public _ldrASMpMTEFromHandle@4
|
|---|
| 45 | public __ldrOpenPath ; exported thru assembly wrapper
|
|---|
| 46 | public _LDRClearSem@0
|
|---|
| 47 | public _ldrFindModule@16
|
|---|
| 48 | public _KSEMRequestMutex@8
|
|---|
| 49 | public _KSEMReleaseMutex@4
|
|---|
| 50 | public _KSEMQueryMutex@8
|
|---|
| 51 | public _KSEMInit@12
|
|---|
| 52 |
|
|---|
| 53 | public pLDRSem
|
|---|
| 54 | public LDRSem_offObject
|
|---|
| 55 | public _fpLDRSem
|
|---|
| 56 | public LDRSem_sel
|
|---|
| 57 |
|
|---|
| 58 | public pLDRLibPath
|
|---|
| 59 | public LDRLibPath_offObject
|
|---|
| 60 | public _fpLDRLibPath
|
|---|
| 61 | public LDRLibPath_sel
|
|---|
| 62 |
|
|---|
| 63 | public _TKSuBuff@16
|
|---|
| 64 | public _TKFuBuff@16
|
|---|
| 65 | public _TKFuBufLen@20
|
|---|
| 66 | public _ldrValidateMteHandle@4
|
|---|
| 67 |
|
|---|
| 68 | public ppTCBCur
|
|---|
| 69 | public pTCBCur_offObject
|
|---|
| 70 | public _fppTCBCur
|
|---|
| 71 | public pTCBCur_sel
|
|---|
| 72 |
|
|---|
| 73 | public ppPTDACur
|
|---|
| 74 | public pPTDACur_offObject
|
|---|
| 75 | public _fppPTDACur
|
|---|
| 76 | public pPTDACur_sel
|
|---|
| 77 |
|
|---|
| 78 | public pptda_start
|
|---|
| 79 | public ptda_start_offObject
|
|---|
| 80 | public _fpptda_start
|
|---|
| 81 | public ptda_start_sel
|
|---|
| 82 |
|
|---|
| 83 | public pptda_environ
|
|---|
| 84 | public ptda_environ_offObject
|
|---|
| 85 | public _fpptda_environ
|
|---|
| 86 | public ptda_environ_sel
|
|---|
| 87 |
|
|---|
| 88 | public pptda_ptdasem
|
|---|
| 89 | public ptda_ptdasem_offObject
|
|---|
| 90 | public _fpptda_ptdasem
|
|---|
| 91 | public ptda_ptdasem_sel
|
|---|
| 92 |
|
|---|
| 93 | public pptda_module
|
|---|
| 94 | public ptda_module_offObject
|
|---|
| 95 | public _fpptda_module
|
|---|
| 96 | public ptda_module_sel
|
|---|
| 97 |
|
|---|
| 98 | public pptda_pBeginLIBPATH
|
|---|
| 99 | public ptda_pBeginLIBPATH_offObject
|
|---|
| 100 | public _fpptda_pBeginLIBPATH
|
|---|
| 101 | public pptda_pBeginLIBPATH_sel
|
|---|
| 102 |
|
|---|
| 103 | public pldrpFileNameBuf
|
|---|
| 104 | public pldrpFileNameBuf_offObject
|
|---|
| 105 | public _fpldrpFileNameBuf
|
|---|
| 106 | public pldrpFileNameBuf_sel
|
|---|
| 107 |
|
|---|
| 108 | public SecPathFromSFN
|
|---|
| 109 |
|
|---|
| 110 |
|
|---|
| 111 | ;
|
|---|
| 112 | ; Constants
|
|---|
| 113 | ;
|
|---|
| 114 | MAXSIZE_PROLOG EQU 18h
|
|---|
| 115 |
|
|---|
| 116 |
|
|---|
| 117 |
|
|---|
| 118 | CALLTAB segment
|
|---|
| 119 | ;assume cs:CALLTAB, ds:flat, ss:nothing
|
|---|
| 120 | assume ds:flat, ss:nothing
|
|---|
| 121 | ;
|
|---|
| 122 | ; callTab is an array of evt. function prologs with a jump to the real function.
|
|---|
| 123 | ; Imported and Overrided OS/2 kernel functions are called tru this table.
|
|---|
| 124 | ;
|
|---|
| 125 | ; This array of near procedures are parallel to the aImportTab array in dev16\ProbKrnl.c.
|
|---|
| 126 | ; Remember to update both!.
|
|---|
| 127 | ;
|
|---|
| 128 | callTab:
|
|---|
| 129 |
|
|---|
| 130 | ; 0
|
|---|
| 131 | _ldrRead@24 PROC NEAR
|
|---|
| 132 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 133 | _ldrRead@24 ENDP
|
|---|
| 134 |
|
|---|
| 135 | ; 1
|
|---|
| 136 | _ldrOpen@12 PROC NEAR
|
|---|
| 137 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 138 | _ldrOpen@12 ENDP
|
|---|
| 139 |
|
|---|
| 140 | ; 2
|
|---|
| 141 | _ldrClose@4 PROC NEAR
|
|---|
| 142 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 143 | _ldrClose@4 ENDP
|
|---|
| 144 |
|
|---|
| 145 | ; 3
|
|---|
| 146 | _LDRQAppType@8 PROC NEAR
|
|---|
| 147 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 148 | _LDRQAppType@8 ENDP
|
|---|
| 149 |
|
|---|
| 150 | ; 4
|
|---|
| 151 | _ldrEnum32bitRelRecs@24 PROC NEAR
|
|---|
| 152 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 153 | _ldrEnum32bitRelRecs@24 ENDP
|
|---|
| 154 |
|
|---|
| 155 | ; 5
|
|---|
| 156 | _IOSftOpen@20 PROC NEAR
|
|---|
| 157 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 158 | _IOSftOpen@20 ENDP
|
|---|
| 159 |
|
|---|
| 160 | ; 6
|
|---|
| 161 | _IOSftClose@4 PROC NEAR
|
|---|
| 162 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 163 | _IOSftClose@4 ENDP
|
|---|
| 164 |
|
|---|
| 165 | ; 7
|
|---|
| 166 | _IOSftTransPath@4 PROC NEAR
|
|---|
| 167 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 168 | _IOSftTransPath@4 ENDP
|
|---|
| 169 |
|
|---|
| 170 | ; 8
|
|---|
| 171 | _IOSftReadAt@20 PROC NEAR
|
|---|
| 172 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 173 | _IOSftReadAt@20 ENDP
|
|---|
| 174 |
|
|---|
| 175 | ; 9
|
|---|
| 176 | _IOSftWriteAt@20 PROC NEAR
|
|---|
| 177 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 178 | _IOSftWriteAt@20 ENDP
|
|---|
| 179 |
|
|---|
| 180 | ; 10
|
|---|
| 181 | _SftFileSize@8 PROC NEAR
|
|---|
| 182 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 183 | _SftFileSize@8 ENDP
|
|---|
| 184 |
|
|---|
| 185 | ; 11
|
|---|
| 186 | _VMAllocMem@36 PROC NEAR
|
|---|
| 187 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 188 | _VMAllocMem@36 ENDP
|
|---|
| 189 |
|
|---|
| 190 | ; 12
|
|---|
| 191 | _VMGetOwner@8 PROC NEAR
|
|---|
| 192 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 193 | _VMGetOwner@8 ENDP
|
|---|
| 194 |
|
|---|
| 195 | ; 13
|
|---|
| 196 | _g_tkExecPgm PROC NEAR
|
|---|
| 197 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 198 | _g_tkExecPgm ENDP
|
|---|
| 199 |
|
|---|
| 200 | ; 14
|
|---|
| 201 | _tkStartProcess PROC NEAR
|
|---|
| 202 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 203 | _tkStartProcess ENDP
|
|---|
| 204 |
|
|---|
| 205 | ; 15
|
|---|
| 206 | _f_FuStrLenZ PROC FAR
|
|---|
| 207 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 208 | _f_FuStrLenZ ENDP
|
|---|
| 209 |
|
|---|
| 210 | ; 16
|
|---|
| 211 | _f_FuStrLen PROC FAR
|
|---|
| 212 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 213 | _f_FuStrLen ENDP
|
|---|
| 214 |
|
|---|
| 215 | ; 17
|
|---|
| 216 | _f_FuBuff PROC FAR
|
|---|
| 217 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 218 | _f_FuBuff ENDP
|
|---|
| 219 |
|
|---|
| 220 | ; 18
|
|---|
| 221 | _VMObjHandleInfo@12 PROC NEAR
|
|---|
| 222 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 223 | _VMObjHandleInfo@12 ENDP
|
|---|
| 224 |
|
|---|
| 225 | ; 19
|
|---|
| 226 | _ldrASMpMTEFromHandle@4 PROC NEAR
|
|---|
| 227 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 228 | _ldrASMpMTEFromHandle@4 ENDP
|
|---|
| 229 |
|
|---|
| 230 | ; 20 - exported thru assembly interface due to change in build 14053.
|
|---|
| 231 | __ldrOpenPath PROC NEAR
|
|---|
| 232 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 233 | __ldrOpenPath ENDP
|
|---|
| 234 |
|
|---|
| 235 | ; 21
|
|---|
| 236 | _LDRClearSem@0 PROC NEAR
|
|---|
| 237 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 238 | _LDRClearSem@0 ENDP
|
|---|
| 239 |
|
|---|
| 240 | ; 22
|
|---|
| 241 | _ldrFindModule@16 PROC NEAR
|
|---|
| 242 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 243 | _ldrFindModule@16 ENDP
|
|---|
| 244 |
|
|---|
| 245 | ; 23
|
|---|
| 246 | _KSEMRequestMutex@8 PROC NEAR
|
|---|
| 247 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 248 | _KSEMRequestMutex@8 ENDP
|
|---|
| 249 |
|
|---|
| 250 | ; 24
|
|---|
| 251 | _KSEMReleaseMutex@4 PROC NEAR
|
|---|
| 252 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 253 | _KSEMReleaseMutex@4 ENDP
|
|---|
| 254 |
|
|---|
| 255 | ; 25
|
|---|
| 256 | _KSEMQueryMutex@8 PROC NEAR
|
|---|
| 257 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 258 | _KSEMQueryMutex@8 ENDP
|
|---|
| 259 |
|
|---|
| 260 | ; 26
|
|---|
| 261 | _KSEMInit@12 PROC NEAR
|
|---|
| 262 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 263 | _KSEMInit@12 ENDP
|
|---|
| 264 |
|
|---|
| 265 | ; 27
|
|---|
| 266 | pLDRSem dd 0
|
|---|
| 267 | LDRSem_offObject dd 0
|
|---|
| 268 | _fpLDRSem dd 0
|
|---|
| 269 | LDRSem_sel dw 0
|
|---|
| 270 | db (MAXSIZE_PROLOG - 14) dup(0cch)
|
|---|
| 271 |
|
|---|
| 272 |
|
|---|
| 273 | ; 28
|
|---|
| 274 | pLDRLibPath dd 0
|
|---|
| 275 | LDRLibPath_offObject dd 0
|
|---|
| 276 | _fpLDRLibPath dd 0
|
|---|
| 277 | LDRLibPath_sel dw 0
|
|---|
| 278 | db (MAXSIZE_PROLOG - 14) dup(0cch)
|
|---|
| 279 |
|
|---|
| 280 | ; 29
|
|---|
| 281 | _TKSuBuff@16 PROC NEAR
|
|---|
| 282 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 283 | _TKSuBuff@16 ENDP
|
|---|
| 284 |
|
|---|
| 285 | ; 30
|
|---|
| 286 | _TKFuBuff@16 PROC NEAR
|
|---|
| 287 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 288 | _TKFuBuff@16 ENDP
|
|---|
| 289 |
|
|---|
| 290 | ; 31
|
|---|
| 291 | _TKFuBufLen@20 PROC NEAR
|
|---|
| 292 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 293 | _TKFuBufLen@20 ENDP
|
|---|
| 294 |
|
|---|
| 295 | ; 32
|
|---|
| 296 | _ldrValidateMteHandle@4 PROC NEAR
|
|---|
| 297 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 298 | _ldrValidateMteHandle@4 ENDP
|
|---|
| 299 |
|
|---|
| 300 | ; 33
|
|---|
| 301 | ppTCBCur dd 0
|
|---|
| 302 | pTCBCur_offObject dd 0
|
|---|
| 303 | _fppTCBCur dd 0
|
|---|
| 304 | pTCBCur_sel dw 0
|
|---|
| 305 | db (MAXSIZE_PROLOG - 14) dup(0cch)
|
|---|
| 306 |
|
|---|
| 307 | ; 34
|
|---|
| 308 | ppPTDACur dd 0
|
|---|
| 309 | pPTDACur_offObject dd 0
|
|---|
| 310 | _fppPTDACur dd 0
|
|---|
| 311 | pPTDACur_sel dw 0
|
|---|
| 312 | db (MAXSIZE_PROLOG - 14) dup(0cch)
|
|---|
| 313 |
|
|---|
| 314 | ; 35
|
|---|
| 315 | pptda_start dd 0
|
|---|
| 316 | ptda_start_offObject dd 0
|
|---|
| 317 | _fpptda_start dd 0
|
|---|
| 318 | ptda_start_sel dw 0
|
|---|
| 319 | db (MAXSIZE_PROLOG - 14) dup(0cch)
|
|---|
| 320 |
|
|---|
| 321 | ; 36
|
|---|
| 322 | pptda_environ dd 0
|
|---|
| 323 | ptda_environ_offObject dd 0
|
|---|
| 324 | _fpptda_environ dd 0
|
|---|
| 325 | ptda_environ_sel dw 0
|
|---|
| 326 | db (MAXSIZE_PROLOG - 14) dup(0cch)
|
|---|
| 327 |
|
|---|
| 328 | ; 37
|
|---|
| 329 | pptda_ptdasem dd 0
|
|---|
| 330 | ptda_ptdasem_offObject dd 0
|
|---|
| 331 | _fpptda_ptdasem dd 0
|
|---|
| 332 | ptda_ptdasem_sel dw 0
|
|---|
| 333 | db (MAXSIZE_PROLOG - 14) dup(0cch)
|
|---|
| 334 |
|
|---|
| 335 | ; 38
|
|---|
| 336 | pptda_module dd 0
|
|---|
| 337 | ptda_module_offObject dd 0
|
|---|
| 338 | _fpptda_module dd 0
|
|---|
| 339 | ptda_module_sel dw 0
|
|---|
| 340 | db (MAXSIZE_PROLOG - 14) dup(0cch)
|
|---|
| 341 |
|
|---|
| 342 | ; 39
|
|---|
| 343 | pptda_pBeginLIBPATH dd 0
|
|---|
| 344 | ptda_pBeginLIBPATH_offObject dd 0
|
|---|
| 345 | _fpptda_pBeginLIBPATH dd 0
|
|---|
| 346 | pptda_pBeginLIBPATH_sel dw 0
|
|---|
| 347 | db (MAXSIZE_PROLOG - 14) dup(0cch)
|
|---|
| 348 |
|
|---|
| 349 | ; 40
|
|---|
| 350 | pldrpFileNameBuf dd 0
|
|---|
| 351 | pldrpFileNameBuf_offObject dd 0
|
|---|
| 352 | _fpldrpFileNameBuf dd 0
|
|---|
| 353 | pldrpFileNameBuf_sel dw 0
|
|---|
| 354 | db (MAXSIZE_PROLOG - 14) dup(0cch)
|
|---|
| 355 |
|
|---|
| 356 | ; 41
|
|---|
| 357 | SecPathFromSFN PROC NEAR
|
|---|
| 358 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 359 | SecPathFromSFN ENDP
|
|---|
| 360 |
|
|---|
| 361 | ; 42
|
|---|
| 362 | _ldrSetVMflags@16 PROC NEAR
|
|---|
| 363 | db MAXSIZE_PROLOG dup(0cch)
|
|---|
| 364 | _ldrSetVMflags@16 ENDP
|
|---|
| 365 |
|
|---|
| 366 | CALLTAB ENDS
|
|---|
| 367 |
|
|---|
| 368 | END
|
|---|
| 369 |
|
|---|