亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? agdi.h

?? KEIL的例程
?? H
?? 第 1 頁 / 共 3 頁
字號:
#ifndef __AGDI__INCED___
  #define __AGDI__INCED___


//---Revision History: ----------------------------------------------
//   17.10.2000, added AG_SYM_SFR
//
//-------------------------------------------------------------------


#ifdef __cplusplus
  extern "C"  {
#endif

#include <Windows.h>          // wg. HWND, RECT, CALLBACK, HANDLE

#define _EXPO_   __declspec(dllexport)


/*
 * Advanced GDI types
 */

typedef  unsigned long       UL32;
typedef    signed long       SL32;
typedef    signed char        SC8;
typedef  unsigned char        UC8;
typedef    signed int         I32;
typedef  unsigned int         U32;
typedef    signed short int   I16;
typedef  unsigned short int   U16;
typedef  __int64              I64;
typedef  unsigned __int64     U64;
typedef  float                F32;
typedef  double               F64;


typedef union  {
  U32            u32;       // 32-Bit signed int
  I32            i32;       // 32-Bit unsigned int
  UL32            ul;       // 32-Bit unsigned long
  SL32            sl;       // 32-Bit signed long
  UC8             uc;       // 8-Bit unsigned char
  SC8             sc;       // 8-Bit signed char
  U16            u16;       // 16-Bit unsigned short int
  I16            i16;       // 16-Bit signed short int
  U64            u64;       // 64-Bit unsigned int
  I64            i64;       // 64-Bit signed int
  F32            f32;       // 32-Bit single precision float
  F64            f64;       // 64-Bit single precision float
  UL32       ul2 [2];
  SL32       sl2 [2];
  U16       u16a [4];
  I16       i16a [4];
  UC8        uc8 [8];
  SC8        sc8 [8];
  SC8            *pS;
  UC8            *pU;
  U16            *pW;
  U32            *pD;
} GVAL;


/*
 * 166/167 specific's
 */

#define mWREG  0x100      // 0x100...0x10F := R0...R15
#define mBREG  0x200      // 0x200...0x20F := RL0...RH7
#define mDREG  0x300      // not used.
#define mDPP   0x400      // 0x400...0x403 := DPP0...DPP3
#define mPC    0x500      // PC
#define mPSW   0x600      // PSW
#define mSP    0x700      // SP
#define mCP    0x800      // CP
#define mCYC   0x900      // Cycles value
#define mEPTR  0xA00


#pragma pack(1)
typedef struct  {
  union  {
    U16     wregs [16];      // R0  ... R15
    UC8     bregs [16];      // RL0 ... RH7
  } r;
  U32          Ndpp[4];      // full linear base address values
  U32              nPC;      // full address !
  U16             cPsw;      // current Psw
  U16              cSP;
  U16             cMDL;      // MDL
  U16             cMDH;      // MDH
  U32              cCP;      // CP
  I64          nCycles;      // cycle counter (or time ???)

  INT64           macc;      // 40-Bit value
  U16              mah;      // MAH MAC-Unit Accumulator High
  U16              mal;      // MAL MAC-Unit Accumulator Low
  U16              mas;      // MAS limited MAH/signed
  U16              msw;      // MSW MAC-Unit Status Word
  U16              mcw;      // MCW MAC-Unit Control Word
  U16              mrw;      // MRW MAC-Unit Repeat Word

  U16             idx0;
  U16             idx1;
  U16              qx0;
  U16              qx1;
  U16              qr0;
  U16              qr1;
} RG166;


/*
 * Sle66+ specific's
 */

#define nnR0    0x00     // R0
#define nnR1    0x01     // R1
#define nnR2    0x02     // R2
#define nnR3    0x03     // R3
#define nnR4    0x04     // R4
#define nnR5    0x05     // R5
#define nnR6    0x06     // R6
#define nnR7    0x07     // R7
//#define niR0    0x10     // @R0
//#define niR1    0x11     // @R1
//#define nrAB    0x12     // AB
#define nrCY    0x13     // C
#define nrA     0x14     // A
#define nrDPTR  0x18     // DPTR

#define nnPR0    0x1C     // PR0 (80C51MX)
#define nnPR1    0x1D     // PR1 (80C51MX)



typedef struct  {            // iMCS51 - SLE66Cxx Registers
  UL32           nPC;
  I64        nCycles;        // cycle counter
  UC8            psw;
  UC8             sp;
  UC8              b;
  UC8            acc;
  UC8            dpl;
  UC8            dph;
  UC8      bregs [8];
  UC8          dpsel;
  UC8          adrxh;        // page for MOVX @Ri
  U16       dptx [8];        // DPTR save area
} RGSLE66;

typedef struct  {            // iMCS51-Registers
  BYTE         Rn [16];      // R0 ... R7
  DWORD            nPC;      // full address !
  BYTE              sp;      // SP
  BYTE             psw;      // PSW-sfr
  BYTE               b;      // B-sfr
  BYTE             acc;      // ACC-sfr
  BYTE             dpl;      // DPL-sfr
  BYTE             dph;      // DPH-sfr
  BYTE        ports[8];
  I64          nCycles;      // cycle counter
} RG51;


typedef struct   {           // iMCSARM Registers
  DWORD  cur[16];            // Current Mode:   R0..R15(PC)
  DWORD  cpsr;               // CPSR
  DWORD  spsr;               // Current SPSR
  DWORD  usr[7];             // User & System:  R8..R14
  DWORD  fiq[8];             // Fast Interrupt: R8..R14, SPSR
  DWORD  irq[3];             // Interrupt:      R13,R14, SPSR
  DWORD  svc[3];             // Supervisor:     R13,R14, SPSR
  DWORD  abt[3];             // Abort:          R13,R14, SPSR
  DWORD  und[3];             // Undefined:      R13,R14, SPSR
  INT64  nCycles;            // cycle counter
} RgARM ;

typedef struct  {           // SmartMX-Registers
  BYTE     Rn [32];         // 7F:0000 .. 7F:001F (D:0 .. D:1F)
  BYTE         acc, pcl, pch, pcx, psw, pswh;

// System Mode Registers
  BYTE         s_B,  s_EPL,   s_EPM,   s_EPH,  s_DPL0, s_DPH0;
  BYTE      s_DPL1, s_DPH1, s_MXCON, s_AUXR1, s_XRAMP;
  BYTE        s_SP,  s_SPE, s_SPLOW,s_SPELOW,s_SPHIGH,s_SPEHIGH;
//User Context Registers
  BYTE         u_B,  u_EPL,   u_EPM,   u_EPH,  u_DPL0, u_DPH0;
  BYTE      u_DPL1, u_DPH1, u_MXCON, u_AUXR1, u_XRAMP;
  BYTE        u_SP,  u_SPE, u_SPLOW,u_SPELOW,u_SPHIGH,u_SPEHIGH;
// Physical PC Value
  BYTE       YPCL, YPCH, YPCX;
  BYTE    MMUCTRL;
  BYTE    MMUPTRL, MMUPTRM, MMUPTRH;
} RGSMX;

#pragma pack()


#pragma pack(1)

#define RGROUP    struct rGroup
#define RITEM     struct rItem
#define REGDSC    struct RegDsc

struct rGroup  {             // Register Group Descriptor
  UC8            desc;       // always 0x00
  UC8            ShEx;       // Bit.0 = 1  Show Group initially expanded
                             // Bit.1 = 1  Show Group description 'bold'
  char          *name;       // Group name
};

struct rItem  {              // Register Item Descriptor
  UC8            desc;       // always 0x01
  U16             nGi;       // Group-Index (0...nGroups-1)
  U16           nItem;       // Item indicator
  char      szReg[16];       // Name of Register
  UC8            isPC;       // is this the PC
  UC8          canChg;       // can this Reg be changed in Reg-Window
  UC8           iHigh;       // highlight the value
  UC8           iDraw;       // item needs to be repainted
  char      szVal[32];       // it's value in Ascii
  GVAL              v;       // it's binary item value
};

struct RegDsc  {
  I32         nGitems;       // number of group items
  I32         nRitems;       // number of register items
  RGROUP      *GrpArr;       // array of group descriptors
  RITEM       *RegArr;       // array of register descriptors
  void     (*RegGet) (RITEM *vp, int nR);   // get RegItem's value
  I32      (*RegSet) (RITEM *vp, GVAL *pV); // set RegItem's value
};
  
#pragma pack()

#define UPR_NORMAL  0x80000000  // update normal registers
#define UPR_HIST    0x40000000  // update history registers





/*
 * Advanced GDI Functions
 */

/*
 * Error codes
 */

#define  AG_OK          0     // Ok.
#define  AG_NOACCESS    1     // Cannot access while running.
#define  AG_RDFAILED    2     // memory read failed.
#define  AG_INVALOP     3     // invalid operation code
#define  AG_RO          4     // attempt to write Read-only item
#define  AG_WRFAILED    5     // memory write failed.
#define  AG_CANTMAP     6     // cannot map memory



/*
 * 80x51 + Sle66(+) memory spaces, added 12/19/99
 */

#define   amNONE   0x0000           // not spaced
#define   amXDATA  0x0001           // XDATA
#define   amBANK0  0x0080           // BANK0
#define   amBANK31 0x009F           // BANK31
#define   amDATA   0x00F0           // DATA
#define   amBIT    0x00F1           // BIT
#define   amEDATA  0x00F2           // EDATA (i251)
#define   amIDATA  0x00F3           // IDATA
#define   amECODE  0x00F4           // 251 ecode
#define   amHDATA  0x00F5           // 251 hdata
#define   amHCONS  0x00F6           // 251 hconst
#define   amCONST  0x00F7           // 251 const
#define   amPDATA  0x00FE           // PDATA (c51 macht das bei generic)
#define   amCODE   0x00FF           // CODE 
#define   amPHYS   0x0100           // Physical SLE66+ Memory
#define   amPHLIM  0x0110           // 1MB Physical Memory

#define   amYMEM   0x0040           // Mifare ProX Y: (physical code 1MB)
#define   amZMEM   0x0041           // Mifare ProX Z: (physical xdata)
#define   amSMEM   0x0042           // Mifare ProX S: (physical sfr)

#define   amU1MEM  0x00F8           // UsrMem #1 (E2-PROM)
#define   amU2MEM  0x00F9           // UsrMem #2 (reserved for future use)
#define   amU3MEM  0x00FA           // UsrMem #3 (reserved for future use)
#define   amU4MEM  0x00FB           // UsrMem #4 (reserved for future use)
#define   amU5MEM  0x00FC           // UsrMem #5 (reserved for future use)
#define   mmU6MEM  0x00FD           // UsrMem #6 (reserved for future use)

/*
 * Features
 */

typedef struct  {
  U32       MemAccR : 1;     // memory-access while running supported
  U32       RegAccR : 1;     // register-access while running supported
  U32        hTrace : 1;     // trace-recording supported
  U32        hCover : 1;     // code coverage supported
  U32       hPaLyze : 1;     // Performance-Analyzer support
  U32       hMemMap : 1;     // Memory-Map support
  U32        ResetR : 1;     // Reset possible while running
  U32        ExtBrk : 1;     // OCDS/JTAG: Break in EXTx allowed /10.3.2003/
  U32        LaSupp : 1;     // Logic-Analyzer supported
} SUPP;


#pragma pack(1)
typedef struct  {
  UL32         Adr;          // linear address
  UL32      ErrAdr;          // memory access failed address
  UL32        nLen;          // address range, used for memory-map
  U16       mSpace;          // memory space (not used on 166/167)
} GADR;


typedef struct  {            // Assemble/Disassemble
  UL32           Adr;        // linear address
  UC8        Opc [8];        // 167 needs max. 4 Opcode bytes
  I32         OpcLen;        // Result length in assemble mode
  SC8      szB [256];        // DisAsm-result or Asm-input line
  I32         Result;        // 0:=Ok, otherwise error
} DAAS;


typedef struct  {            // 11.1.2005, DisAssemble Mixed-Mode into File
  UL32        nStart;        // Start-Address for disassemble
  UL32          nEnd;        // Stop-Address for disassemble
  I32         Result;        // 0:=Ok, 1:=can't create file, 2:=file write error
  I32          nMode;        // 0:=Asm-Mode, 1:=Mixed-Mode
  UL32       nRes[8];        // reserved
  char     szN [300];        // name of file to create and write disassembly
} DAS_MIXED;


typedef struct  {            // Memory-Range descriptor
  UC8           mTyp;        // 0=RAM, 1=ROM
  UL32        nStart;        // Memory start address
  UL32         nSize;        // Size of memory block (0=unused)
} OCM;        


typedef struct  {            // 166/167 Device Info
  UC8     Vendor [64];       // Device-Vendor: example 'Siemens'
  UC8     Device [64];       // Device-Name: example 'C167CR-16FM'
  UL32          Clock;       // clock frequency
  UC8       RestoreBp;       // 1 := restore Breakpoints
  UC8            Rtos;       // OS: 0:=none, 1:=RtxTiny, 2:=RtxFull
  UC8          Mod167;       // 0:=166-Instr. Set 1:=167-Instr Set
  UC8    useOnChipRom;       // 1:=use on chip Rom
  UC8   useOnChipXper;       // 1:=use on chip X-peripherals (XRAM+CAN)
  UC8          useMAC;       // 0:=no MACC, 1:=MACC instr. used

  OCM       ExtMem[6];       // up to 6 external memory ranges
  OCM            Ican;       // address range of on-chip CAN
  OCM            Irom;       // address range of on-chip internal Rom
  OCM           Xram1;       // address range of on-chip internal Xram
  OCM           Xram2;       // address range of on-chip internal Xram
  OCM            Iram;       // address range of on-chip internal Ram

  UC8   PrjPath [260];       // path of project
  UC8   AppName [260];       // path and name of loaded application
} DEV_X66;

#pragma pack()




/*
 * Symbol search masks (may be combined using |) :
 */

#define AG_SYM_VAR  0x0001         // search for non-bit Variables
#define AG_SYM_CON  0x0002         // search for named Constants
#define AG_SYM_BIT  0x0004         // search for Bit in Memory
#define AG_SYM_LOC  0x0008         // search for Function/Label
#define AG_SYM_SFR  0x0200         // search for SFR name

/*
 * Type of found symbol:
 */

#define  AG_TP_VOID     0
#define  AG_TP_BIT      1
#define  AG_TP_CHAR     2
#define  AG_TP_UCHAR    3
#define  AG_TP_INT      4
#define  AG_TP_UINT     5
#define  AG_TP_SHORT    6
#define  AG_TP_USHORT   7
#define  AG_TP_LONG     8
#define  AG_TP_ULONG    9
#define  AG_TP_FLOAT    10
#define  AG_TP_DOUBLE   11
#define  AG_TP_PTR      12
#define  AG_TP_UNION    13
#define  AG_TP_STRUCT   14
#define  AG_TP_FUNC     15
#define  AG_TP_STRING   16
#define  AG_TP_ENUM     17
#define  AG_TP_FIELD    18

#pragma pack(1)

typedef struct  {                  // Search for Sym by Name or Value.
  UL32        nMask;               // search mask (AG_SYM_LOC | ...)
  UC8  szName [256];               // search/found name (zero-terminated
  U64           val;               // search/found Adr/Value
  UL32         type;               // type of found symbol (AG_TP_???)
  UL32           Ok;               // 1:=Ok, else find failed.
} SYMDSC;

#pragma pack()


/*
 * Progress-Control Structure
 */

#define PROGRESS_INIT     1
#define PROGRESS_KILL     2
#define PROGRESS_SETPOS   3
#define PROGRESS_INITTXT  4  // 15.3.2003, init progress in text mode
#define PROGRESS_SETTEXT  5  // =========

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本色道久久综合亚洲91| 久久99国产精品久久99果冻传媒| 成人性生交大片免费看中文网站| 国产欧美日韩久久| 成人激情av网| 亚洲精品久久久久久国产精华液| 国产精品久久久久久久久图文区 | 日韩高清电影一区| 欧美一区二区三区视频| 国内成+人亚洲+欧美+综合在线| 久久理论电影网| 不卡在线观看av| 亚洲精品va在线观看| 69久久99精品久久久久婷婷| 精品一区二区在线观看| 中文字幕精品一区二区精品绿巨人| 成人午夜激情片| 亚洲高清三级视频| 精品免费国产二区三区| 99久久综合色| 婷婷综合久久一区二区三区| 国产日韩欧美制服另类| 欧美最猛性xxxxx直播| 久久精品国产一区二区三| 中文字幕在线一区免费| 91精品国产综合久久婷婷香蕉| 国产福利一区二区| 亚洲激情中文1区| 久久网站最新地址| 91黄视频在线观看| 国产高清久久久| 午夜一区二区三区视频| 国产日产欧美一区二区三区 | 日韩在线播放一区二区| 国产欧美一区二区精品性色| 欧美日精品一区视频| 国产精品资源在线看| 亚洲午夜精品在线| 国产欧美日韩精品a在线观看| 精品视频一区二区不卡| 成人激情免费网站| 美女在线视频一区| 亚洲影院免费观看| 国产精品丝袜在线| 精品99999| 欧美一区二区三区影视| 色94色欧美sute亚洲线路二| 国产一二三精品| 日韩精品色哟哟| 亚洲精品国产第一综合99久久 | 国产精品中文字幕欧美| 亚洲成av人片www| ㊣最新国产の精品bt伙计久久| 亚洲猫色日本管| 亚洲国产精华液网站w | 国产精品视频第一区| 日韩午夜在线影院| 欧美剧情片在线观看| 色婷婷久久综合| 9l国产精品久久久久麻豆| 丁香婷婷深情五月亚洲| 国产精品一区久久久久| 蜜桃av一区二区三区电影| 午夜视频在线观看一区二区 | 成人免费av在线| 国产麻豆午夜三级精品| 精彩视频一区二区三区| 人人精品人人爱| 狂野欧美性猛交blacked| 五月婷婷欧美视频| 日韩av电影免费观看高清完整版 | 国产欧美日韩精品一区| 国产性色一区二区| 国产欧美日韩精品a在线观看| 久久久久久久久久看片| 久久精品一区二区三区四区| 久久看人人爽人人| 国产女同性恋一区二区| 国产精品视频第一区| 国产精品福利一区| 亚洲欧美视频在线观看视频| 自拍视频在线观看一区二区| 亚洲少妇30p| 亚洲国产精品影院| 日韩精品一卡二卡三卡四卡无卡| 午夜精品久久久久久久久| 免费成人性网站| 狠狠色丁香久久婷婷综合_中| 黄色精品一二区| 国产成人精品免费看| 97久久精品人人做人人爽50路| 97久久超碰国产精品| 欧美午夜在线观看| 91麻豆精品国产91久久久久久 | 午夜精品一区二区三区免费视频 | 国产亚洲婷婷免费| 亚洲视频精选在线| 午夜电影网亚洲视频| 精品影视av免费| av中文字幕不卡| 欧美日韩免费一区二区三区视频| 欧美一区二区三区播放老司机| 精品国产一区久久| 国产精品久99| 丝袜诱惑亚洲看片| 国产一区二区三区四区在线观看| 国产91精品一区二区麻豆亚洲| 国产麻豆精品在线观看| www.亚洲激情.com| 欧美福利视频一区| 国产欧美日韩亚州综合 | 91亚洲精品乱码久久久久久蜜桃| 欧美怡红院视频| 久久久亚洲精品石原莉奈| 亚洲日本免费电影| 激情综合网激情| 91福利精品第一导航| 久久精品人人做| 亚洲电影欧美电影有声小说| 国产呦萝稀缺另类资源| 欧美亚日韩国产aⅴ精品中极品| 精品欧美一区二区三区精品久久| 综合久久综合久久| 国模娜娜一区二区三区| 在线视频你懂得一区二区三区| 精品免费视频.| 亚洲国产成人av网| www.欧美.com| 久久日韩精品一区二区五区| 亚洲国产综合在线| 99久久综合国产精品| 日韩亚洲欧美中文三级| 夜夜爽夜夜爽精品视频| 成人高清视频在线观看| 欧美成人aa大片| 午夜一区二区三区视频| 91浏览器打开| 国产精品美女久久久久久久久 | 亚洲美女少妇撒尿| 国产乱码精品1区2区3区| 欧美日韩mp4| 亚洲视频一区二区在线| 国产99久久久国产精品潘金网站| 91精品国产一区二区三区蜜臀| 亚洲精品五月天| 91视频观看视频| 国产精品视频免费| 国产精品1区2区3区| 欧美草草影院在线视频| 免费成人在线观看| 欧美一区二区三区精品| 丝袜a∨在线一区二区三区不卡| 色久综合一二码| 亚洲精品日日夜夜| 91论坛在线播放| 亚洲精品乱码久久久久久 | 国产精品1024| 精品国产乱码久久久久久浪潮| 日韩精品免费视频人成| 在线播放91灌醉迷j高跟美女| 亚洲欧美日韩中文播放| 久久电影网站中文字幕| 欧美一区二区成人6969| 美女被吸乳得到大胸91| 日韩视频一区在线观看| 日本中文字幕一区| 欧美大胆人体bbbb| 狠狠色丁香婷婷综合久久片| 久久先锋资源网| 高清不卡在线观看av| 国产日韩欧美精品一区| 成人免费看视频| 亚洲天堂久久久久久久| 在线视频综合导航| 亚洲成av人片在www色猫咪| 91精品国产福利| 精品一区二区三区影院在线午夜| 久久蜜桃一区二区| 成人av高清在线| 一区二区三区在线视频观看| 欧美吻胸吃奶大尺度电影| 日本大胆欧美人术艺术动态| 亚洲精品一区二区三区蜜桃下载| 韩国成人在线视频| 中文字幕av一区二区三区高 | 色网站国产精品| 亚洲国产日韩在线一区模特| 91精品免费在线观看| 国产中文字幕精品| 国产精品久久久久毛片软件| 色综合久久久久久久久| 日日夜夜精品视频天天综合网| 精品理论电影在线| 不卡欧美aaaaa| 亚洲一区二区不卡免费| 精品精品国产高清一毛片一天堂| 国产精品亚洲一区二区三区妖精| 自拍视频在线观看一区二区| 777午夜精品免费视频| 国产自产v一区二区三区c|