home *** CD-ROM | disk | FTP | other *** search
/ Computer Shopper 275 / DPCS0111DVD.ISO / Toolkit / Audio-Visual / VirtualDub / Source / VirtualDub-1.9.10-src.7z / src / disasm / h / runtime_tracedec.h < prev    next >
Encoding:
C/C++ Source or Header  |  2009-09-14  |  850 b   |  39 lines

  1. #ifndef f_VD2_DISASM_RUNTIME_TRACEDEC_H
  2. #define f_VD2_DISASM_RUNTIME_TRACEDEC_H
  3.  
  4. #include <vd2/system/vdtypes.h>
  5. #include <stddef.h>
  6.  
  7. struct VDTracedecContext {
  8.     const unsigned char **pRuleSystem;
  9.  
  10.     bool bSizeOverride;            // 66
  11.     bool bAddressOverride;        // 67
  12.     bool bRepnePrefix;            // F2
  13.     bool bRepePrefix;            // F3
  14.     bool bFinal;
  15.     unsigned char    rex;
  16.     const char *pszSegmentOverride;
  17.  
  18.     uint8        mFlags;
  19.  
  20.     ptrdiff_t    physToVirtOffset;
  21. };
  22.  
  23. struct VDTracedecResult {
  24.     ptrdiff_t    mInsnLength;
  25.     ptrdiff_t    mBranchTarget;
  26.     bool        mbIsJmp;
  27.     bool        mbIsJcc;
  28.     bool        mbIsCall;
  29.     bool        mbIsReturn;
  30.     bool        mbIsInvalid;
  31.     bool        mbTargetValid;
  32.     int            mRelTargetSize;
  33. };
  34.  
  35. void VDTraceObjectCode(VDTracedecContext *pvdc, const uint8 *source, int bytes);
  36. void *VDTracedecDecompress(void *_dst, const unsigned char *src, int src_len);
  37.  
  38. #endif
  39.