Annotation of mstools/samples/sdktools/image/symedit/cv.h, revision 1.1

1.1     ! root        1: /*++
        !             2: 
        !             3: 
        !             4: Copyright (c) 1992  Microsoft Corporation
        !             5: 
        !             6: Module Name:
        !             7: 
        !             8:     cv.h
        !             9: 
        !            10: Abstract:
        !            11: 
        !            12:     This file contains all of the type definitions for accessing
        !            13:     CODEVIEW data.
        !            14: 
        !            15: Author:
        !            16: 
        !            17:     Wesley A. Witt (wesw) 19-April-1993
        !            18: 
        !            19: Environment:
        !            20: 
        !            21:     Win32, User Mode
        !            22: 
        !            23: --*/
        !            24: #include <cvtypes.h>
        !            25: #include <cvinfo.h>
        !            26: #include <cvexefmt.h>
        !            27: 
        !            28: // Global Segment Info table
        !            29: typedef struct _sgf {
        !            30:     unsigned short      fRead   :1;
        !            31:     unsigned short      fWrite  :1;
        !            32:     unsigned short      fExecute:1;
        !            33:     unsigned short      f32Bit  :1;
        !            34:     unsigned short      res1    :4;
        !            35:     unsigned short      fSel    :1;
        !            36:     unsigned short      fAbs    :1;
        !            37:     unsigned short      res2    :2;
        !            38:     unsigned short      fGroup  :1;
        !            39:     unsigned short      res3    :3;
        !            40: } SGF;
        !            41: 
        !            42: typedef struct _sgi {
        !            43:     SGF                 sgf;        // Segment flags
        !            44:     unsigned short      iovl;       // Overlay number
        !            45:     unsigned short      igr;        // Group index
        !            46:     unsigned short      isgPhy;     // Physical segment index
        !            47:     unsigned short      isegName;   // Index to segment name
        !            48:     unsigned short      iclassName; // Index to segment class name
        !            49:     unsigned long       doffseg;    // Starting offset inside physical segment
        !            50:     unsigned long       cbSeg;      // Logical segment size
        !            51: } SGI;
        !            52: 
        !            53: typedef struct _sgm {
        !            54:     unsigned short      cSeg;       // number of segment descriptors
        !            55:     unsigned short      cSegLog;    // number of logical segment descriptors
        !            56: } SGM;
        !            57: 
        !            58: #define FileAlign(x)  ( ((x) + p->optrs.optHdr->FileAlignment - 1) &  \
        !            59:                             ~(p->optrs.optHdr->FileAlignment - 1) )
        !            60: #define SectionAlign(x) (((x) + p->optrs.optHdr->SectionAlignment - 1) &  \
        !            61:                             ~(p->optrs.optHdr->SectionAlignment - 1) )
        !            62: 
        !            63: #define NextSym32(m)  ((DATASYM32 *) \
        !            64:   (((DWORD)(m) + sizeof(DATASYM32) + \
        !            65:     ((DATASYM32*)(m))->name[0] + 3) & ~3))
        !            66: 
        !            67: #define NextSym16(m)  ((DATASYM16 *) \
        !            68:   (((DWORD)(m) + sizeof(DATASYM16) + \
        !            69:     ((DATASYM16*)(m))->name[0] + 1) & ~1))

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.