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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? 1394.h

?? 書中的主要程序文件。在打開例題的.dsw文件后,請讀者在 tools菜單下的 Options 的 Directories 標(biāo)簽中選擇 Executable files
?? 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 _ADDRESS_OFFSET {
    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[];    // 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

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久99久久| 欧美不卡一区二区三区四区| 日韩高清不卡一区二区| 久久久av毛片精品| 欧美午夜精品久久久久久超碰| 麻豆国产精品一区二区三区| 最新日韩av在线| 2020国产精品| 51久久夜色精品国产麻豆| 99久免费精品视频在线观看 | 一卡二卡三卡日韩欧美| 精品精品欲导航| 欧美日本一区二区| 91首页免费视频| 国产成人午夜电影网| 奇米综合一区二区三区精品视频| 国产精品一二三四五| 亚洲成人激情社区| ●精品国产综合乱码久久久久| 欧美不卡一区二区三区四区| 91精品在线麻豆| 欧美性猛片xxxx免费看久爱| 不卡视频一二三| 国产99精品国产| 国产在线精品免费| 久草热8精品视频在线观看| 亚洲二区视频在线| 亚洲视频综合在线| 中文字幕亚洲欧美在线不卡| 国产日韩精品一区二区三区在线| 亚洲精品一线二线三线无人区| 欧美一区永久视频免费观看| 欧美精品久久久久久久多人混战| 在线观看一区日韩| 欧美综合一区二区| 色素色在线综合| 色狠狠色噜噜噜综合网| 91网站最新网址| 91麻豆免费视频| 99re成人精品视频| 色爱区综合激月婷婷| 色婷婷综合久久久中文字幕| 色悠悠久久综合| 在线亚洲一区二区| 欧美亚洲动漫另类| 欧美日韩国产免费一区二区| 欧美日韩成人综合在线一区二区| 欧美日韩中文字幕一区| 337p亚洲精品色噜噜噜| 日韩视频免费观看高清在线视频| 日韩欧美国产成人一区二区| 精品美女在线播放| 欧美精彩视频一区二区三区| 国产精品美女久久久久aⅴ国产馆| 欧美国产欧美综合| 亚洲色图视频网| 99精品桃花视频在线观看| 91网址在线看| 欧美日韩一区二区三区四区五区 | 国精品**一区二区三区在线蜜桃| 国产伦精品一区二区三区免费| 粉嫩av一区二区三区粉嫩 | 欧美一级日韩不卡播放免费| 精品国产网站在线观看| 中文字幕精品一区二区精品绿巨人 | 懂色av中文一区二区三区| 不卡的电视剧免费网站有什么| 色婷婷久久一区二区三区麻豆| 欧美日韩视频不卡| 久久久久久久久久久电影| 国产精品久久久久久久久免费丝袜 | 中文字幕一区在线观看视频| 一级日本不卡的影视| 日韩精品三区四区| 欧美日韩精品一区二区三区| 精品国产三级a在线观看| 国产精品久久久久一区二区三区共| 亚洲精品精品亚洲| 蜜臀av在线播放一区二区三区| 国产最新精品免费| 色天使色偷偷av一区二区| 欧美一级黄色片| 国产精品久久久久aaaa| 偷拍一区二区三区| 国产不卡视频一区二区三区| 欧美视频在线观看一区二区| 久久久青草青青国产亚洲免观| 亚洲精品免费看| 国产剧情av麻豆香蕉精品| 欧美性大战久久久久久久蜜臀 | 亚洲激情校园春色| 蜜臀a∨国产成人精品| 91在线观看一区二区| 日韩一级片网站| 亚洲天堂福利av| 国内精品国产三级国产a久久| 日本福利一区二区| 久久久久久9999| 天天综合色天天| 99精品热视频| 久久精品在线观看| 日本成人在线不卡视频| 91色视频在线| 欧美激情在线一区二区三区| 免费的国产精品| 色天天综合色天天久久| 中文字幕第一页久久| 另类中文字幕网| 亚洲欧美激情在线| 激情五月婷婷综合网| 欧美片在线播放| 亚洲男人天堂av| 成人深夜在线观看| 精品国产一二三区| 蜜臀99久久精品久久久久久软件| 欧美丝袜自拍制服另类| 亚洲天堂免费在线观看视频| 成人免费观看视频| 久久久久久久电影| 极品少妇一区二区三区精品视频 | 国产精品初高中害羞小美女文| 久久精品国产一区二区| 欧美高清你懂得| 亚洲va欧美va天堂v国产综合| 日本丶国产丶欧美色综合| 亚洲欧美怡红院| av电影一区二区| 欧美国产在线观看| 国产v综合v亚洲欧| 国产色产综合色产在线视频 | 欧美伊人久久久久久久久影院| 专区另类欧美日韩| 99久久精品久久久久久清纯| 国产精品高清亚洲| 成人黄色小视频在线观看| 国产欧美综合色| 国产91丝袜在线播放九色| 国产色产综合产在线视频| 国产美女在线精品| 国产三级久久久| 国产91精品精华液一区二区三区| 韩国av一区二区三区四区| 日韩欧美在线观看一区二区三区| 蜜臀久久久99精品久久久久久| 欧美一级免费观看| 精品影视av免费| 国产欧美一区二区在线观看| 成人h动漫精品| 亚洲日本免费电影| 欧美三片在线视频观看 | 成人午夜激情片| 中文字幕日韩一区| 91国产福利在线| 亚洲国产日日夜夜| 日韩视频不卡中文| 国产一区二区伦理| 中文字幕中文字幕在线一区| 色美美综合视频| 日日骚欧美日韩| 久久亚区不卡日本| 99精品视频在线观看| 亚洲成av人影院| 欧美成人午夜电影| 成人avav在线| 亚洲福利电影网| 久久尤物电影视频在线观看| 成人美女在线观看| 亚洲国产精品久久久男人的天堂| 欧美一区二区三区免费视频| 国产成人鲁色资源国产91色综| 亚洲视频综合在线| 日韩欧美综合在线| 不卡视频免费播放| 丝袜美腿成人在线| 337p粉嫩大胆噜噜噜噜噜91av| 91在线精品秘密一区二区| 日韩成人免费在线| 国产精品无人区| 欧美绝品在线观看成人午夜影视| 国产麻豆一精品一av一免费| 樱桃视频在线观看一区| 欧美成人猛片aaaaaaa| 91伊人久久大香线蕉| 麻豆久久久久久| 中文字幕日本乱码精品影院| 91麻豆精品国产91久久久| 成人一区二区三区中文字幕| 婷婷久久综合九色综合绿巨人 | 国产精品白丝在线| 欧美一级片在线观看| 91视频一区二区三区| 久久电影网电视剧免费观看| 亚洲欧美日韩国产综合| 亚洲精品一区二区三区99| 91久久久免费一区二区| 国产成人av一区二区三区在线| 日韩综合一区二区| 亚洲美女电影在线| 国产欧美久久久精品影院| 91精品国产黑色紧身裤美女|