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

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

?? 1394.h

?? 這是一個人精簡的1394設備驅動程序
?? H
?? 第 1 頁 / 共 5 頁
字號:
/*++

Copyright (c) 1995 Microsoft Corporation

Module Name:

    1394.h

Abstract:

    Definitions for 1394 bus and/or port drivers

Author:

    Shaun Pierce (shaunp) 5-Sep-95

Environment:

    Kernel mode only

Revision History:


--*/

#ifndef _1394_H_
#define _1394_H_

#if (_MSC_VER >= 1020)
#pragma once
#endif

#ifdef __cplusplus
extern "C" {
#endif

//
// 1394 Node Address format
//
typedef struct _NODE_ADDRESS {
    USHORT              NA_Node_Number:6;       // Bits 10-15
    USHORT              NA_Bus_Number:10;       // Bits 0-9
} NODE_ADDRESS, *PNODE_ADDRESS;

//
// 1394 Address Offset format (48 bit addressing)
//
typedef struct _a {
    USHORT              Off_High;
    ULONG               Off_Low;
} ADDRESS_OFFSET, *PADDRESS_OFFSET;

//
// 1394 I/O Address format
//
typedef struct _IO_ADDRESS {
    NODE_ADDRESS        IA_Destination_ID;
    ADDRESS_OFFSET      IA_Destination_Offset;
} IO_ADDRESS, *PIO_ADDRESS;

//
// 1394 Allocated Address Range format
//

typedef struct _ADDRESS_RANGE {
    USHORT              AR_Off_High;
    USHORT              AR_Length;
    ULONG               AR_Off_Low;
} ADDRESS_RANGE, *PADDRESS_RANGE;

//
// 1394 Self ID packet format
//
typedef struct _SELF_ID {
    ULONG               SID_Phys_ID:6;          // Byte 0 - Bits 0-5
    ULONG               SID_Packet_ID:2;        // Byte 0 - Bits 6-7
    ULONG               SID_Gap_Count:6;        // Byte 1 - Bits 0-5
    ULONG               SID_Link_Active:1;      // Byte 1 - Bit 6
    ULONG               SID_Zero:1;             // Byte 1 - Bit 7
    ULONG               SID_Power_Class:3;      // Byte 2 - Bits 0-2
    ULONG               SID_Contender:1;        // Byte 2 - Bit 3
    ULONG               SID_Delay:2;            // Byte 2 - Bits 4-5
    ULONG               SID_Speed:2;            // Byte 2 - Bits 6-7
    ULONG               SID_More_Packets:1;     // Byte 3 - Bit 0
    ULONG               SID_Initiated_Rst:1;    // Byte 3 - Bit 1
    ULONG               SID_Port3:2;            // Byte 3 - Bits 2-3
    ULONG               SID_Port2:2;            // Byte 3 - Bits 4-5
    ULONG               SID_Port1:2;            // Byte 3 - Bits 6-7
} SELF_ID, *PSELF_ID;

//
// Additional 1394 Self ID packet format (only used when More bit is on)
//
typedef struct _SELF_ID_MORE {
    ULONG               SID_Phys_ID:6;          // Byte 0 - Bits 0-5
    ULONG               SID_Packet_ID:2;        // Byte 0 - Bits 6-7
    ULONG               SID_PortA:2;            // Byte 1 - Bits 0-1
    ULONG               SID_Reserved2:2;        // Byte 1 - Bits 2-3
    ULONG               SID_Sequence:3;         // Byte 1 - Bits 4-6
    ULONG               SID_One:1;              // Byte 1 - Bit 7
    ULONG               SID_PortE:2;            // Byte 2 - Bits 0-1
    ULONG               SID_PortD:2;            // Byte 2 - Bits 2-3
    ULONG               SID_PortC:2;            // Byte 2 - Bits 4-5
    ULONG               SID_PortB:2;            // Byte 2 - Bits 6-7
    ULONG               SID_More_Packets:1;     // Byte 3 - Bit 0
    ULONG               SID_Reserved3:1;        // Byte 3 - Bit 1
    ULONG               SID_PortH:2;            // Byte 3 - Bits 2-3
    ULONG               SID_PortG:2;            // Byte 3 - Bits 4-5
    ULONG               SID_PortF:2;            // Byte 3 - Bits 6-7
} SELF_ID_MORE, *PSELF_ID_MORE;

//
// 1394 Phy Configuration packet format
//
typedef struct _PHY_CONFIGURATION_PACKET {
    ULONG               PCP_Phys_ID:6;          // Byte 0 - Bits 0-5
    ULONG               PCP_Packet_ID:2;        // Byte 0 - Bits 6-7
    ULONG               PCP_Gap_Count:6;        // Byte 1 - Bits 0-5
    ULONG               PCP_Set_Gap_Count:1;    // Byte 1 - Bit 6
    ULONG               PCP_Force_Root:1;       // Byte 1 - Bit 7
    ULONG               PCP_Reserved1:8;        // Byte 2 - Bits 0-7
    ULONG               PCP_Reserved2:8;        // Byte 3 - Bits 0-7
    ULONG               PCP_Inverse;            // Inverse quadlet
} PHY_CONFIGURATION_PACKET, *PPHY_CONFIGURATION_PACKET;

//
// 1394 Asynchronous packet format
//
typedef struct _ASYNC_PACKET {
    USHORT              AP_Priority:4;          // Bits 0-3     1st quadlet
    USHORT              AP_tCode:4;             // Bits 4-7
    USHORT              AP_rt:2;                // Bits 8-9
    USHORT              AP_tLabel:6;            // Bits 10-15
    NODE_ADDRESS        AP_Destination_ID;      // Bits 16-31
    union {                                     //              2nd quadlet
        struct {
            USHORT      AP_Reserved:12;         // Bits 0-11
            USHORT      AP_Rcode:4;             // Bits 12-15
        } Response;
        USHORT          AP_Offset_High;         // Bits 0-15
    } u;
    NODE_ADDRESS        AP_Source_ID;           // Bits 16-31
    ULONG               AP_Offset_Low;          // Bits 0-31    3rd quadlet
    union {                                     //              4th quadlet
        struct {
            USHORT      AP_Extended_tCode;      // Bits 0-15
            USHORT      AP_Data_Length;         // Bits 16-31
        } Block;
        ULONG           AP_Quadlet_Data;        // Bits 0-31
    } u1;

} ASYNC_PACKET, *PASYNC_PACKET;

//
// 1394 Isochronous packet header
//
typedef struct _ISOCH_HEADER {
    ULONG               IH_Sy:4;                // Bits 0-3
    ULONG               IH_tCode:4;             // Bits 4-7
    ULONG               IH_Channel:6;           // Bits 8-13
    ULONG               IH_Tag:2;               // Bits 14-15
    ULONG               IH_Data_Length:16;      // Bits 16-31
} ISOCH_HEADER, *PISOCH_HEADER;

//
// 1394 Topology Map format
//
typedef struct _TOPOLOGY_MAP {
    USHORT              TOP_Length;             // number of quadlets in map
    USHORT              TOP_CRC;                // 16 bit CRC defined by 1212
    ULONG               TOP_Generation;         // Generation number
    USHORT              TOP_Node_Count;         // Node count
    USHORT              TOP_Self_ID_Count;      // Number of Self IDs
    SELF_ID             TOP_Self_ID_Array[1];    // Array of Self IDs
} TOPOLOGY_MAP, *PTOPOLOGY_MAP;

//
// 1394 Speed Map format
//
typedef struct _SPEED_MAP {
    USHORT              SPD_Length;             // number of quadlets in map
    USHORT              SPD_CRC;                // 16 bit CRC defined by 1212
    ULONG               SPD_Generation;         // Generation number
    UCHAR               SPD_Speed_Code[4032];
} SPEED_MAP, *PSPEED_MAP;

//
// 1394 Config Rom format (always at 0xffff f0000400 : IEEE 1212)
//
typedef struct _CONFIG_ROM {
    ULONG               CR_Info;                // 0x0
    ULONG               CR_Signiture;           // 0x4  // bus info block
    ULONG               CR_BusInfoBlockCaps;    // 0x8  //      "
    ULONG               CR_Node_UniqueID[2];    // 0xC  //      "
    ULONG               CR_Root_Info;           // 0x14

    //
    // the rest is the root directory which has variable definition and length
    //

} CONFIG_ROM, *PCONFIG_ROM;


//
// 1394A Network channels register format
//

typedef struct _NETWORK_CHANNELS {
    ULONG               NC_Channel:6;           // bits 0-5
    ULONG               NC_Reserved:18;         // bits 6-23
    ULONG               NC_Npm_ID:6;            // bits 24-29
    ULONG               NC_Valid:1;             // bit  30
    ULONG               NC_One:1;               // bit  31
} NETWORK_CHANNELSR, *PNETWORK_CHANNELS;




//
// 1394 Textual Leaf format
//
typedef struct _TEXTUAL_LEAF {
    USHORT              TL_CRC;                 // using 1994 CRC algorithm
    USHORT              TL_Length;              // length of leaf in quads
    ULONG               TL_Spec_Id;             // vendor defined
    ULONG               TL_Language_Id;         // language Id
    UCHAR               TL_Data;                // variable length data
} TEXTUAL_LEAF, *PTEXTUAL_LEAF;

//
// 1394 Cycle Time format
//
typedef struct _CYCLE_TIME {
    ULONG               CL_CycleOffset:12;      // Bits 0-11
    ULONG               CL_CycleCount:13;       // Bits 12-24
    ULONG               CL_SecondCount:7;       // Bits 25-31
} CYCLE_TIME, *PCYCLE_TIME;


//
// Definition of an Address Mapping FIFO element
//
typedef struct _ADDRESS_FIFO {
    SINGLE_LIST_ENTRY   FifoList;               // Singly linked list
    PMDL                FifoMdl;                // Mdl for this FIFO element
} ADDRESS_FIFO, *PADDRESS_FIFO;

//
// Information block the bus driver passes to the higher device drivers
// when the notification handler is called
//
typedef struct _NOTIFICATION_INFO {
    PMDL                Mdl;                    // Supplied by device driver
    ULONG               ulOffset;               // Where in buffer
    ULONG               nLength;                // How big is the operation
    ULONG               fulNotificationOptions; // Which option occurred
    PVOID               Context;                // Device driver supplied
    PADDRESS_FIFO       Fifo;                   // FIFO that completed
    PVOID               RequestPacket;          // Pointer to request packet
    PMDL                ResponseMdl;            // Pointer to response MDL
    PVOID *             ResponsePacket;         // Pointer to pointer to response packet
    PULONG              ResponseLength;         // Pointer to length of response
    PKEVENT *           ResponseEvent;          // Event to be signaled
} NOTIFICATION_INFO, *PNOTIFICATION_INFO;

//
// Various definitions
//
#define IOCTL_1394_CLASS                        CTL_CODE( \
                                                FILE_DEVICE_UNKNOWN, \
                                                0x87, \
                                                METHOD_IN_DIRECT, \
                                                FILE_ANY_ACCESS \
                                                )

//
// these guys are meant to be called from a ring 3 app
// call through the port device object
//
#define IOCTL_1394_TOGGLE_ENUM_TEST_ON          CTL_CODE( \
                                                FILE_DEVICE_UNKNOWN, \
                                                0x88, \
                                                METHOD_BUFFERED, \
                                                FILE_ANY_ACCESS \
                                                )

#define IOCTL_1394_TOGGLE_ENUM_TEST_OFF         CTL_CODE( \
                                                FILE_DEVICE_UNKNOWN, \
                                                0x89, \
                                                METHOD_BUFFERED, \
                                                FILE_ANY_ACCESS \
                                                )

//
// 1394 Additional NT DDK definitions
//
#define IRP_MN_BUS_RESET                        0x87
#define RCODE                                   ULONG
#define BASE_DEVICE_NAME                        L"\\Device\\1394BUS"
#define BASE_SYMBOLIC_LINK_NAME                 L"\\DosDevices\\1394BUS"
#define MAX_SUFFIX_SIZE                         4*sizeof(WCHAR)


//
// 1394 ByteSwap definitions
//

#if defined(_X86_)

ULONG static __inline
bswap(ULONG value)
{
    __asm mov eax, value
    __asm bswap eax
}

#else

#define bswap(value)    RtlUlongByteSwap(value)

#endif

#define bswapw(value) ( (((USHORT) (value)) & 0x00ff) << 8 | \
                        (((USHORT) (value)) & 0xff00) >> 8)



//
// 1394 Transaction codes
//
#define TCODE_WRITE_REQUEST_QUADLET             0           // 0000b
#define TCODE_WRITE_REQUEST_BLOCK               1           // 0001b
#define TCODE_WRITE_RESPONSE                    2           // 0010b
#define TCODE_RESERVED1                         3
#define TCODE_READ_REQUEST_QUADLET              4           // 0100b
#define TCODE_READ_REQUEST_BLOCK                5           // 0101b
#define TCODE_READ_RESPONSE_QUADLET             6           // 0110b

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
9191精品国产综合久久久久久| 国产一区二区三区免费观看| 91视视频在线直接观看在线看网页在线看| 国产色综合久久| 国产69精品久久久久毛片| 国产拍欧美日韩视频二区| 福利一区福利二区| 中文字幕在线免费不卡| 色先锋资源久久综合| 99久久免费精品高清特色大片| 中国av一区二区三区| 一本色道久久综合狠狠躁的推荐| 亚洲综合免费观看高清在线观看| 欧美绝品在线观看成人午夜影视 | 久久综合狠狠综合久久综合88| 经典三级在线一区| 国产精品久久精品日日| 欧美色网站导航| 另类人妖一区二区av| 国产精品福利一区二区| 欧美日韩成人高清| 国产成人av电影免费在线观看| 亚洲视频资源在线| 欧美一区二区三区不卡| 床上的激情91.| 日韩国产欧美视频| 欧美国产一区二区在线观看 | 国产在线精品一区二区| 中文字幕一区日韩精品欧美| 91精品国产日韩91久久久久久| 国产aⅴ精品一区二区三区色成熟| 夜夜精品浪潮av一区二区三区| 欧美xxxxx牲另类人与| 91丨porny丨国产| 黑人精品欧美一区二区蜜桃| 夜色激情一区二区| 国产嫩草影院久久久久| 91精品福利在线一区二区三区| 岛国精品在线观看| 蜜臀av一区二区| 亚洲特黄一级片| 久久欧美一区二区| 欧美精品久久天天躁| av日韩在线网站| 国产一区二区看久久| 亚洲成人精品一区| 亚洲欧美综合另类在线卡通| 欧美mv和日韩mv的网站| 欧美三级蜜桃2在线观看| 大陆成人av片| 极品美女销魂一区二区三区 | 性欧美疯狂xxxxbbbb| 亚洲国产岛国毛片在线| 精品久久久三级丝袜| 欧美日韩国产成人在线免费| 97精品电影院| 成人激情电影免费在线观看| 久久99国内精品| 麻豆一区二区三区| 日韩国产在线观看| 亚洲最快最全在线视频| 亚洲欧美偷拍卡通变态| 国产精品久久久久久户外露出 | 在线免费观看日本一区| 岛国一区二区在线观看| 91精品国产综合久久小美女| 91丝袜美女网| 99麻豆久久久国产精品免费| 成人做爰69片免费看网站| 国产伦精品一区二区三区在线观看 | 91精品国产色综合久久ai换脸| 欧美专区亚洲专区| 91成人网在线| 欧美亚洲另类激情小说| 在线免费观看不卡av| 欧洲一区在线电影| 欧美午夜影院一区| 欧美老肥妇做.爰bbww视频| 欧美久久久久久久久中文字幕| 欧美性极品少妇| 欧美丰满一区二区免费视频| 欧美老女人在线| 日韩精品中文字幕在线不卡尤物| 日韩三级视频在线看| 欧美变态凌虐bdsm| 久久精品亚洲精品国产欧美kt∨| 国产欧美一区二区精品性色超碰| 欧美激情一区在线| 亚洲三级电影网站| 亚洲午夜激情网页| 奇米影视在线99精品| 精品一区二区免费看| 国产传媒久久文化传媒| eeuss国产一区二区三区| 在线免费一区三区| 欧美一卡在线观看| 久久久国产精华| 成人免费一区二区三区在线观看| 亚洲色图20p| 日韩不卡一区二区| 国产精品一区二区视频| 91丨porny丨最新| 欧美丰满嫩嫩电影| 久久久久久久久99精品| 亚洲日本va在线观看| 亚洲电影激情视频网站| 美女视频黄a大片欧美| 成人一区二区视频| 在线免费精品视频| 26uuu欧美日本| 亚洲视频一区二区在线| 美日韩黄色大片| 99在线精品免费| 在线播放91灌醉迷j高跟美女| 久久久www成人免费无遮挡大片| 最新久久zyz资源站| 欧美aⅴ一区二区三区视频| 国产91色综合久久免费分享| 91福利在线看| 久久这里只精品最新地址| 亚洲激情男女视频| 韩国精品免费视频| 欧洲生活片亚洲生活在线观看| 精品嫩草影院久久| 亚洲在线视频一区| 国产福利电影一区二区三区| 欧美亚洲动漫另类| 国产丝袜欧美中文另类| 日精品一区二区| 99精品国产视频| 久久久久久久久久电影| 无码av中文一区二区三区桃花岛| 粉嫩av一区二区三区在线播放 | 日本aⅴ亚洲精品中文乱码| av高清不卡在线| 久久综合九色综合欧美亚洲| 亚洲成av人片| 色综合久久中文字幕| 久久女同精品一区二区| 日本一道高清亚洲日美韩| 91麻豆国产福利精品| 国产日韩av一区| 精品写真视频在线观看| 欧美精品三级日韩久久| 国产一区二区调教| 91麻豆精品91久久久久久清纯| 综合欧美一区二区三区| 国产suv精品一区二区6| 欧美不卡一二三| 日本成人在线看| 欧美三级韩国三级日本一级| 亚洲蜜臀av乱码久久精品| 成人免费三级在线| 国产欧美日韩精品在线| 国产一区二区三区av电影 | 国产专区欧美精品| 日韩丝袜情趣美女图片| 亚洲成av人综合在线观看| 在线视频中文字幕一区二区| 中文字幕在线一区免费| 成人黄色777网| 欧美国产综合一区二区| 高清国产午夜精品久久久久久| 久久人人97超碰com| 国产精品自拍三区| 久久精品一区二区| 成人小视频免费在线观看| 国产人成一区二区三区影院| 国产精品综合av一区二区国产馆| 欧美成人一级视频| 国产一区二区三区久久悠悠色av| 日韩美女视频在线| 久久成人久久鬼色| 久久婷婷成人综合色| 懂色av一区二区三区蜜臀| 中文字幕欧美三区| 91色九色蝌蚪| 亚洲自拍偷拍网站| 91精品免费观看| 久久精品二区亚洲w码| 久久蜜桃香蕉精品一区二区三区| 国产九九视频一区二区三区| 欧美激情综合五月色丁香| 91捆绑美女网站| 亚洲国产日产av| 日韩欧美一卡二卡| 国产成人av资源| 亚洲人成在线播放网站岛国| 在线观看三级视频欧美| 日本不卡在线视频| 久久久久久久精| 色女孩综合影院| 日韩电影在线免费| 国产亚洲女人久久久久毛片| 不卡视频一二三| 五月综合激情网| 久久蜜桃香蕉精品一区二区三区| av在线不卡观看免费观看| 亚洲成人一区在线| 国产色91在线|