Annotation of ntddk/inc/vddsvc.h, revision 1.1

1.1     ! root        1: /*++
        !             2: 
        !             3: Copyright (c) 1992 Microsoft Corporation
        !             4: 
        !             5: Module Name:
        !             6: 
        !             7:     VDDSVC.H
        !             8: 
        !             9: Abstract:
        !            10: 
        !            11:     Include file contains VDM services provided for installable VDDs.
        !            12: 
        !            13: 
        !            14: --*/
        !            15: 
        !            16: 
        !            17: /**
        !            18:  * This file contains VDM services prototype defintions only; their
        !            19:  * related structures and macros are defined in NT_VDD.H.
        !            20:  * If we have not included the file yet, include it and set a signal
        !            21:  * to tell anybody the fact.
        !            22: **/
        !            23: 
        !            24: #ifndef _NT_VDD
        !            25: #include "nt_vdd.h"
        !            26: #define _NT_VDD
        !            27: #endif
        !            28: 
        !            29: 
        !            30: /** Memory Accessing services **/
        !            31: 
        !            32: #define GetVDMAddress(usSeg, usOff) (((ULONG)usSeg << 4) + (ULONG)usOff)
        !            33: 
        !            34: #define GetVDMPointer(Address, Size, Mode) Sim32GetVDMPointer(\
        !            35:                                                Address, Size, Mode)
        !            36: 
        !            37: #define FlushVDMPointer(Address, Size, Buffer, Mode) Sim32FlushVDMPointer(\
        !            38:                                           Address, Size, Buffer, Mode)
        !            39: 
        !            40: #define FreeVDMPointer(Address, Size, Buffer, Mode) Sim32FreeVDMPointer(\
        !            41:                                           Address, Size, Buffer, Mode)
        !            42: 
        !            43: /** interrupt simualtion services **/
        !            44: 
        !            45: #define ICA_MASTER 0
        !            46: #define ICA_SLAVE  1
        !            47: #define VDDSimulateInterrupt(ms, line, count) (call_ica_hw_interrupt)(\
        !            48:                                                   ms, line, 1)
        !            49: 
        !            50: 
        !            51: /** Register manipulation services **/
        !            52: 
        !            53: #ifndef i386
        !            54: 
        !            55: #define        getEAX()        (ULONG)c_getAX()
        !            56: #define        getAX()         c_getAX()
        !            57: #define        getAL()         c_getAL()
        !            58: #define getAH()         c_getAH()
        !            59: #define        getEBX()        (ULONG)c_getBX()
        !            60: #define        getBX()         c_getBX()
        !            61: #define        getBL()         c_getBL()
        !            62: #define        getBH()         c_getBH()
        !            63: #define        getECX()        (ULONG)c_getCX()
        !            64: #define        getCX()         c_getCX()
        !            65: #define        getCL()         c_getCL()
        !            66: #define        getCH()         c_getCH()
        !            67: #define        getEDX()        (ULONG)c_getDX()
        !            68: #define        getDX()         c_getDX()
        !            69: #define        getDL()         c_getDL()
        !            70: #define        getDH()         c_getDH()
        !            71: #define        getESP()        (ULONG)c_getSP()
        !            72: #define        getSP()         c_getSP()
        !            73: #define        getEBP()        (ULONG)c_getBP()
        !            74: #define        getBP()         c_getBP()
        !            75: #define        getESI()        (ULONG)c_getSI()
        !            76: #define        getSI()         c_getSI()
        !            77: #define        getEDI()        (ULONG)c_getDI()
        !            78: #define        getDI()         c_getDI()
        !            79: #define        getEIP()        (ULONG)c_getIP()
        !            80: #define        getIP()         c_getIP()
        !            81: #define        getCS()         c_getCS()
        !            82: #define        getSS()         c_getSS()
        !            83: #define        getDS()         c_getDS()
        !            84: #define        getES()         c_getES()
        !            85: #define        getCF()         c_getCF()
        !            86: #define        getPF()         c_getPF()
        !            87: #define        getAF()         c_getAF()
        !            88: #define        getZF()         c_getZF()
        !            89: #define        getSF()         c_getSF()
        !            90: #define        getIF()         c_getIF()
        !            91: #define        getDF()         c_getDF()
        !            92: #define        getOF()         c_getOF()
        !            93: #define        getMSW()        c_getMSW()
        !            94: 
        !            95: #define        setEAX(value)   c_setAX((WORD)value)
        !            96: #define        setAX(value)    c_setAX(value)
        !            97: #define        setAH(value)    c_setAH(value)
        !            98: #define        setAL(value)    c_setAL(value)
        !            99: #define        setEBX(value)   c_setBX((WORD)value)
        !           100: #define        setBX(value)    c_setBX(value)
        !           101: #define        setBH(value)    c_setBH(value)
        !           102: #define        setBL(value)    c_setBL(value)
        !           103: #define        setECX(value)   c_setCX((WORD)value)
        !           104: #define        setCX(value)    c_setCX(value)
        !           105: #define        setCH(value)    c_setCH(value)
        !           106: #define        setCL(value)    c_setCL(value)
        !           107: #define        setEDX(value)   c_setDX((WORD)value)
        !           108: #define        setDX(value)    c_setDX(value)
        !           109: #define        setDH(value)    c_setDH(value)
        !           110: #define        setDL(value)    c_setDL(value)
        !           111: #define        setESP(value)   c_setSP((WORD)value)
        !           112: #define        setSP(value)    c_setSP(value)
        !           113: #define        setEBP(value)   c_setBP((WORD)value)
        !           114: #define        setBP(value)    c_setBP(value)
        !           115: #define        setESI(value)   c_setSI((WORD)value)
        !           116: #define        setSI(value)    c_setSI(value)
        !           117: #define        setEDI(value)   c_setDI((WORD)value)
        !           118: #define        setDI(value)    c_setDI(value)
        !           119: #define        setEIP(value)   c_setIP((WORD)value)
        !           120: #define        setIP(value)    c_setIP(value)
        !           121: #define        setCS(value)    c_setCS(value)
        !           122: #define        setSS(value)    c_setSS(value)
        !           123: #define        setDS(value)    c_setDS(value)
        !           124: #define        setES(value)    c_setES(value)
        !           125: #define        setCF(value)    c_setCF(value)
        !           126: #define        setPF(value)    c_setPF(value)
        !           127: #define        setAF(value)    c_setAF(value)
        !           128: #define        setZF(value)    c_setZF(value)
        !           129: #define        setSF(value)    c_setSF(value)
        !           130: #define        setIF(value)    c_setIF(value)
        !           131: #define        setDF(value)    c_setDF(value)
        !           132: #define        setOF(value)    c_setOF(value)
        !           133: #define        setMSW(value)   c_setMSW(value)
        !           134: 
        !           135: #endif
        !           136: 
        !           137: 
        !           138: /** Real function prototype declarations **/
        !           139: 
        !           140: 
        !           141: /** interrupt simulation functions **/
        !           142: 
        !           143: VOID
        !           144: call_ica_hw_interrupt (
        !           145:  int ms,
        !           146:  BYTE line,
        !           147:  int count
        !           148:  );
        !           149: 
        !           150: #define Sim32FreeVDMPointer(address, size, buffer, mode) TRUE
        !           151: 
        !           152: /** memory address manipulation functions **/
        !           153: 
        !           154: #ifdef i386
        !           155: 
        !           156: #define Sim32GetVDMPointer(address, size, mode) MGetVdmPointer((ULONG)address,\
        !           157:                                                      (ULONG)size, (CHAR)mode)
        !           158: #define Sim32FlushVDMPointer(addess, size, buffer, mode) TRUE
        !           159: 
        !           160: PBYTE
        !           161: MGetVdmPointer(
        !           162:  ULONG  Address,
        !           163:  ULONG  Size,
        !           164:  CHAR  ProtectedMode
        !           165: );
        !           166: 
        !           167: #else
        !           168: 
        !           169: PBYTE
        !           170: Sim32GetVDMPointer(
        !           171:  ULONG  Address,
        !           172:  USHORT         Size,
        !           173:  BOOLEAN ProtectedMode
        !           174: );
        !           175: 
        !           176: BOOLEAN
        !           177: Sim32FlushVDMPointer(
        !           178:  ULONG  Address,
        !           179:  USHORT         Size,
        !           180:  PBYTE  Buffer,
        !           181:  BOOLEAN ProtectedMode
        !           182: );
        !           183: 
        !           184: #endif
        !           185: 
        !           186: 
        !           187: /** Register manipulation functions **/
        !           188: 
        !           189: #ifdef i386
        !           190: ULONG   getEAX(VOID);
        !           191: USHORT  getAX(VOID);
        !           192: UCHAR   getAL(VOID);
        !           193: UCHAR   getAH(VOID);
        !           194: ULONG   getEBX(VOID);
        !           195: USHORT  getBX(VOID);
        !           196: UCHAR   getBL(VOID);
        !           197: UCHAR   getBH(VOID);
        !           198: ULONG   getECX(VOID);
        !           199: USHORT  getCX(VOID);
        !           200: UCHAR   getCL(VOID);
        !           201: UCHAR   getCH(VOID);
        !           202: ULONG   getEDX(VOID);
        !           203: USHORT  getDX(VOID);
        !           204: UCHAR   getDL(VOID);
        !           205: UCHAR   getDH(VOID);
        !           206: ULONG   getESP(VOID);
        !           207: USHORT  getSP(VOID);
        !           208: ULONG   getEBP(VOID);
        !           209: USHORT  getBP(VOID);
        !           210: ULONG   getESI(VOID);
        !           211: USHORT  getSI(VOID);
        !           212: ULONG   getEDI(VOID);
        !           213: USHORT  getDI(VOID);
        !           214: ULONG   getEIP(VOID);
        !           215: USHORT  getIP(VOID);
        !           216: USHORT  getCS(VOID);
        !           217: USHORT  getSS(VOID);
        !           218: USHORT  getDS(VOID);
        !           219: USHORT  getES(VOID);
        !           220: USHORT  getFS(VOID);
        !           221: USHORT  getGS(VOID);
        !           222: ULONG   getCF(VOID);
        !           223: ULONG   getPF(VOID);
        !           224: ULONG   getAF(VOID);
        !           225: ULONG   getZF(VOID);
        !           226: ULONG   getSF(VOID);
        !           227: ULONG   getIF(VOID);
        !           228: ULONG   getDF(VOID);
        !           229: ULONG   getOF(VOID);
        !           230: USHORT getMSW(VOID);
        !           231: 
        !           232: VOID    setEAX(ULONG);
        !           233: VOID    setAX(USHORT);
        !           234: VOID    setAH(UCHAR);
        !           235: VOID    setAL(UCHAR);
        !           236: VOID    setEBX(ULONG);
        !           237: VOID    setBX(USHORT);
        !           238: VOID    setBH(UCHAR);
        !           239: VOID    setBL(UCHAR);
        !           240: VOID    setECX(ULONG);
        !           241: VOID    setCX(USHORT);
        !           242: VOID    setCH(UCHAR);
        !           243: VOID    setCL(UCHAR);
        !           244: VOID    setEDX(ULONG);
        !           245: VOID    setDX(USHORT);
        !           246: VOID    setDH(UCHAR);
        !           247: VOID    setDL(UCHAR);
        !           248: VOID    setESP(ULONG);
        !           249: VOID    setSP(USHORT);
        !           250: VOID    setEBP(ULONG);
        !           251: VOID    setBP(USHORT);
        !           252: VOID    setESI(ULONG);
        !           253: VOID    setSI(USHORT);
        !           254: VOID    setEDI(ULONG);
        !           255: VOID    setDI(USHORT);
        !           256: VOID    setEIP(ULONG);
        !           257: VOID    setIP(USHORT);
        !           258: VOID    setCS(USHORT);
        !           259: VOID    setSS(USHORT);
        !           260: VOID    setDS(USHORT);
        !           261: VOID    setES(USHORT);
        !           262: VOID    setFS(USHORT);
        !           263: VOID    setGS(USHORT);
        !           264: VOID    setCF(ULONG);
        !           265: VOID    setPF(ULONG);
        !           266: VOID    setAF(ULONG);
        !           267: VOID    setZF(ULONG);
        !           268: VOID    setSF(ULONG);
        !           269: VOID    setIF(ULONG);
        !           270: VOID    setDF(ULONG);
        !           271: VOID    setOF(ULONG);
        !           272: VOID    setMSW(USHORT);
        !           273: 
        !           274: 
        !           275: #else
        !           276: 
        !           277: UCHAR c_getAL(VOID);
        !           278: UCHAR c_getCL(VOID);
        !           279: UCHAR c_getDL(VOID);
        !           280: UCHAR c_getBL(VOID);
        !           281: UCHAR c_getAH(VOID);
        !           282: UCHAR c_getCH(VOID);
        !           283: UCHAR c_getDH(VOID);
        !           284: UCHAR c_getBH(VOID);
        !           285: 
        !           286: USHORT c_getAX(VOID);
        !           287: USHORT c_getCX(VOID);
        !           288: USHORT c_getDX(VOID);
        !           289: USHORT c_getBX(VOID);
        !           290: USHORT c_getSP(VOID);
        !           291: USHORT c_getBP(VOID);
        !           292: USHORT c_getSI(VOID);
        !           293: USHORT c_getDI(VOID);
        !           294: USHORT c_getIP(VOID);
        !           295: USHORT c_getES(VOID);
        !           296: USHORT c_getCS(VOID);
        !           297: USHORT c_getSS(VOID);
        !           298: USHORT c_getDS(VOID);
        !           299: 
        !           300: USHORT c_getMSW(VOID);
        !           301: 
        !           302: ULONG c_getAF(VOID);
        !           303: ULONG c_getCF(VOID);
        !           304: ULONG c_getDF(VOID);
        !           305: ULONG c_getIF(VOID);
        !           306: ULONG c_getOF(VOID);
        !           307: ULONG c_getPF(VOID);
        !           308: ULONG c_getSF(VOID);
        !           309: ULONG c_getZF(VOID);
        !           310: 
        !           311: VOID c_setAL(UCHAR val);
        !           312: VOID c_setCL(UCHAR val);
        !           313: VOID c_setDL(UCHAR val);
        !           314: VOID c_setBL(UCHAR val);
        !           315: VOID c_setAH(UCHAR val);
        !           316: VOID c_setCH(UCHAR val);
        !           317: VOID c_setDH(UCHAR val);
        !           318: VOID c_setBH(UCHAR val);
        !           319: 
        !           320: VOID c_setAX(USHORT val);
        !           321: VOID c_setCX(USHORT val);
        !           322: VOID c_setDX(USHORT val);
        !           323: VOID c_setBX(USHORT val);
        !           324: VOID c_setSP(USHORT val);
        !           325: VOID c_setBP(USHORT val);
        !           326: VOID c_setSI(USHORT val);
        !           327: VOID c_setDI(USHORT val);
        !           328: VOID c_setIP(USHORT val);
        !           329: 
        !           330: VOID c_setES(USHORT val);
        !           331: VOID c_setCS(USHORT val);
        !           332: VOID c_setSS(USHORT val);
        !           333: VOID c_setDS(USHORT val);
        !           334: 
        !           335: VOID c_setMSW(USHORT val);
        !           336: 
        !           337: VOID c_setAF(ULONG val);
        !           338: VOID c_setCF(ULONG val);
        !           339: VOID c_setDF(ULONG val);
        !           340: VOID c_setIF(ULONG val);
        !           341: VOID c_setOF(ULONG val);
        !           342: VOID c_setPF(ULONG val);
        !           343: VOID c_setSF(ULONG val);
        !           344: VOID c_setZF(ULONG val);
        !           345: 
        !           346: #endif
        !           347: 
        !           348: 
        !           349: /* end of VDDSVC.H */

unix.superglobalmegacorp.com

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