Changeset 667 for GPL/branches/uniaud32-next/include/stacktoflat.h
- Timestamp:
- Jan 27, 2021, 9:35:47 AM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
GPL/branches/uniaud32-next/include/stacktoflat.h
r655 r667 26 26 #define __STACKTOFLAT_H__ 27 27 28 #ifdef KEE29 28 extern ULONG stacksel; //16 bits stack selector 30 29 #pragma aux stacksel "stacksel" … … 33 32 #pragma aux stackbase "stackbase" 34 33 35 #else36 37 extern ULONG TKSSBase;38 #pragma aux TKSSBase "_TKSSBase"39 40 extern ULONG GetTKSSBase();41 #pragma aux GetTKSSBase "GetTKSSBase" \42 value [eax];43 44 #endif45 46 #ifdef KEE47 34 //Convert 16:16 stack based address to 0:32 flat addresss 48 35 #define __Stack16ToFlat(addr) (LINEAR)((ULONG)(addr&0xffff) + stackbase) 49 #else50 //Convert 16:16 stack based address to 0:32 flat addresss51 #define __Stack16ToFlat(addr) (LINEAR)((((ULONG)addr)&0xffff) + *(ULONG *)TKSSBase)52 #endif53 36 54 37 // Convert 16:16 pointer to 16:32 … … 105 88 #define FLATPTR(a) GETFLATPTR((char FAR48 *)a) 106 89 107 #ifdef KEE108 90 #define FlatToSel(addr32) ((stacksel << 16) | (((ULONG)addr32 - stackbase) & 0xffff)) 109 #else110 //Only valid for stack based pointer!!111 ULONG FlatToSel(ULONG addr32);112 #endif113 91 114 92 #endif
Note:
See TracChangeset
for help on using the changeset viewer.