scsi.inc
来自「用于查询PC机上的USB端口是否有设备挂接上」· INC 代码 · 共 1,482 行 · 第 1/4 页
INC
1,482 行
;****************************************************************************
; *
; THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY *
; KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE *
; IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR *
; PURPOSE. *
; *
; Copyright (C) 1993-95 Microsoft Corporation. All Rights Reserved. *
; *
;****************************************************************************
option expr32
IFNDEF scsi_inc
scsi_inc EQU 1
; Begin of file ..\ioh\scsi.h
_SCSI_H_ EQU 1t
INCLUDE basedef.inc
INCLUDE srb.inc
_SUBCHAN_REC RECORD LogicalUnitNumber@_SUBCHAN_REC:3,
Reserved1@_SUBCHAN_REC:3,
Msf@_SUBCHAN_REC:1,
Reserved0@_SUBCHAN_REC:1
SUBCHAN_REC TYPEDEF _SUBCHAN_REC
_SUBCHAN_SUBQ_REC RECORD Reserved3@_SUBCHAN_SUBQ_REC:1,
SubQ@_SUBCHAN_SUBQ_REC:1,
Reserved2@_SUBCHAN_SUBQ_REC:6
SUBCHAN_SUBQ_REC TYPEDEF _SUBCHAN_SUBQ_REC
_MODE_SNS_DBD_REC RECORD LogicalUnitNumber@_MODE_SNS_DBD_REC:3,
Reserved2@_MODE_SNS_DBD_REC:1,
Dbd@_MODE_SNS_DBD_REC:1,
Reserved1@_MODE_SNS_DBD_REC:3
MODE_SNS_DDB_REC TYPEDEF _MODE_SNS_DBD_REC
_MODE_SNS_PC_REC RECORD Pc@_MODE_SNS_PC_REC:2,
PageCode@_MODE_SNS_PC_REC:6
MODE_SNS_PC_REC TYPEDEF _MODE_SNS_PC_REC
_MODE_SEL_PF_REC RECORD MSEL_LogicalUnitNumber@_MODE_SEL_PF_REC:3,
MS_PF@_MODE_SEL_PF_REC:1,
Reserved1@_MODE_SEL_PF_REC:4
MODE_SEL_PF_REC TYPEDEF _MODE_SEL_PF_REC
_CDB6GENERIC STRUCT 1t
OperationCode UCHAR ?
rec@_CDB6GENERIC_0 RECORD LogicalUnitNumber@_CDB6GENERIC:3,
CommandUniqueBits@_CDB6GENERIC:4,
Immediate@_CDB6GENERIC:1
@bit_0 rec@_CDB6GENERIC_0 <>
CommandUniqueBytes UCHAR 3t DUP (?)
rec@_CDB6GENERIC_1 RECORD VendorUnique@_CDB6GENERIC:2,
Reserved@_CDB6GENERIC:4,
Flag@_CDB6GENERIC:1,
Link@_CDB6GENERIC:1
@bit_1 rec@_CDB6GENERIC_1 <>
_CDB6GENERIC ENDS
@t_scsi2 TYPEDEF PTR _CDB6GENERIC
_CDB6READWRITE STRUCT 1t
OperationCode UCHAR ?
rec@_CDB6READWRITE_0 RECORD LogicalUnitNumber@_CDB6READWRITE:3,
LogicalBlockMsb1@_CDB6READWRITE:5
@bit_0 rec@_CDB6READWRITE_0 <>
LogicalBlockMsb0 UCHAR ?
LogicalBlockLsb UCHAR ?
TransferBlocks UCHAR ?
Control UCHAR ?
_CDB6READWRITE ENDS
@t_scsi3 TYPEDEF PTR _CDB6READWRITE
_CDB6INQUIRY STRUCT 1t
OperationCode UCHAR ?
rec@_CDB6INQUIRY_0 RECORD LogicalUnitNumber@_CDB6INQUIRY:3,
Reserved1@_CDB6INQUIRY:5
@bit_0 rec@_CDB6INQUIRY_0 <>
PageCode UCHAR ?
IReserved UCHAR ?
AllocationLength UCHAR ?
Control UCHAR ?
_CDB6INQUIRY ENDS
@t_scsi4 TYPEDEF PTR _CDB6INQUIRY
_CDB6FORMAT STRUCT 1t
OperationCode UCHAR ?
rec@_CDB6FORMAT_0 RECORD LogicalUnitNumber@_CDB6FORMAT:3,
FormatControl@_CDB6FORMAT:5
@bit_0 rec@_CDB6FORMAT_0 <>
FReserved1 UCHAR ?
InterleaveMsb UCHAR ?
InterleaveLsb UCHAR ?
FReserved2 UCHAR ?
_CDB6FORMAT ENDS
@t_scsi5 TYPEDEF PTR _CDB6FORMAT
_CDB6SENDDIAG STRUCT 1t
OperationCode UCHAR ?
rec@_CDB6SENDDIAG_0 RECORD LogicalUnitNumber@_CDB6SENDDIAG:3,
PF@_CDB6SENDDIAG:1,
Reserved1@_CDB6SENDDIAG:1,
SelfTest@_CDB6SENDDIAG:1,
DevOfl@_CDB6SENDDIAG:1,
UnitOfl@_CDB6SENDDIAG:1
@bit_0 rec@_CDB6SENDDIAG_0 <>
Reserved2 UCHAR ?
ParamListLenMsb UCHAR ?
ParamListLenLsb UCHAR ?
Control UCHAR ?
_CDB6SENDDIAG ENDS
@t_scsi6 TYPEDEF PTR _CDB6SENDDIAG
_CDB6RECDIAG STRUCT 1t
OperationCode UCHAR ?
rec@_CDB6RECDIAG_0 RECORD LogicalUnitNumber@_CDB6RECDIAG:3,
Reserved1@_CDB6RECDIAG:5
@bit_0 rec@_CDB6RECDIAG_0 <>
Reserved UCHAR ?
AllocationLenMsb UCHAR ?
AllocationLenLsb UCHAR ?
Control UCHAR ?
_CDB6RECDIAG ENDS
@t_scsi7 TYPEDEF PTR _CDB6RECDIAG
_CDB10 STRUCT 1t
OperationCode UCHAR ?
rec@_CDB10_0 RECORD LogicalUnitNumber@_CDB10:3,
Reserved1@_CDB10:5
@bit_0 rec@_CDB10_0 <>
LogicalBlockByte0 UCHAR ?
LogicalBlockByte1 UCHAR ?
LogicalBlockByte2 UCHAR ?
LogicalBlockByte3 UCHAR ?
Reserved2 UCHAR ?
TransferBlocksMsb UCHAR ?
TransferBlocksLsb UCHAR ?
Control UCHAR ?
_CDB10 ENDS
@t_scsi8 TYPEDEF PTR _CDB10
_READ_CAPACITY STRUCT 1t
OperationCode UCHAR ?
rec@_READ_CAPACITY_0 RECORD LogicalUnitNumber@_READ_CAPACITY:3,
Reserved1@_READ_CAPACITY:4,
RelAdr@_READ_CAPACITY:1
@bit_0 rec@_READ_CAPACITY_0 <>
LogicalBlockByte0 UCHAR ?
LogicalBlockByte1 UCHAR ?
LogicalBlockByte2 UCHAR ?
LogicalBlockByte3 UCHAR ?
Reserved2 UCHAR ?
Reserved3 UCHAR ?
rec@_READ_CAPACITY_1 RECORD Reserved4@_READ_CAPACITY:7,
PMI@_READ_CAPACITY:1
@bit_1 rec@_READ_CAPACITY_1 <>
Control UCHAR ?
_READ_CAPACITY ENDS
@t_scsi9 TYPEDEF PTR _READ_CAPACITY
_CDB10READWRITE STRUCT 1t
OperationCode UCHAR ?
rec@_CDB10READWRITE_0 RECORD LogicalUnitNumber@_CDB10READWRITE:3,
DPO@_CDB10READWRITE:1,
FUA@_CDB10READWRITE:1,
Reserved1@_CDB10READWRITE:2,
RelAdr@_CDB10READWRITE:1
@bit_0 rec@_CDB10READWRITE_0 <>
LogicalBlockByte0 UCHAR ?
LogicalBlockByte1 UCHAR ?
LogicalBlockByte2 UCHAR ?
LogicalBlockByte3 UCHAR ?
Reserved2 UCHAR ?
TransferBlocksMSB UCHAR ?
TransferBlocksLSB UCHAR ?
Control UCHAR ?
_CDB10READWRITE ENDS
@t_scsi10 TYPEDEF PTR _CDB10READWRITE
_REQ_SENSE STRUCT 1t
OperationCode UCHAR ?
rec@_REQ_SENSE_0 RECORD LogicalUnitNumber@_REQ_SENSE:3,
Reserved1@_REQ_SENSE:5
@bit_0 rec@_REQ_SENSE_0 <>
Reserved2 UCHAR ?
Reserved3 UCHAR ?
TransferLength UCHAR ?
Control UCHAR ?
_REQ_SENSE ENDS
@t_scsi11 TYPEDEF PTR _REQ_SENSE
_PAUSE_RESUME STRUCT 1t
OperationCode UCHAR ?
rec@_PAUSE_RESUME_0 RECORD LogicalUnitNumber@_PAUSE_RESUME:3,
Reserved1@_PAUSE_RESUME:5
@bit_0 rec@_PAUSE_RESUME_0 <>
Reserved2 UCHAR 6t DUP (?)
Action UCHAR ?
Control UCHAR ?
_PAUSE_RESUME ENDS
@t_scsi12 TYPEDEF PTR _PAUSE_RESUME
_READ_TOC STRUCT 1t
OperationCode UCHAR ?
TOC_rec0 SUBCHAN_REC <>
Reserved2 UCHAR 4t DUP (?)
StartingTrack UCHAR ?
AllocationLength UCHAR 2t DUP (?)
Control UCHAR ?
_READ_TOC ENDS
@t_scsi13 TYPEDEF PTR _READ_TOC
_READ_CD_DA STRUCT 1t
OperationCode UCHAR ?
CD_DA_Lun UCHAR ?
LogicalStartAddress UCHAR 4t DUP (?)
CD_DA_TransferLength UCHAR 4t DUP (?)
CD_DA_SubCode UCHAR ?
CD_DA_Control UCHAR ?
_READ_CD_DA ENDS
@t_scsi14 TYPEDEF PTR _READ_CD_DA
_PLAY_AUDIO_MSF STRUCT 1t
OperationCode UCHAR ?
rec@_PLAY_AUDIO_MSF_0 RECORD LogicalUnitNumber@_PLAY_AUDIO_MSF:3,
Reserved1@_PLAY_AUDIO_MSF:5
@bit_0 rec@_PLAY_AUDIO_MSF_0 <>
Reserved2 UCHAR ?
StartingM UCHAR ?
StartingS UCHAR ?
StartingF UCHAR ?
EndingM UCHAR ?
EndingS UCHAR ?
EndingF UCHAR ?
Control UCHAR ?
_PLAY_AUDIO_MSF ENDS
@t_scsi15 TYPEDEF PTR _PLAY_AUDIO_MSF
_PLAY_AUDIO_LBA STRUCT 1t
OperationCode UCHAR ?
rec@_PLAY_AUDIO_LBA_0 RECORD LogicalUnitNumber@_PLAY_AUDIO_LBA:3,
Reserved1@_PLAY_AUDIO_LBA:5
@bit_0 rec@_PLAY_AUDIO_LBA_0 <>
LbaStart UCHAR 4t DUP (?)
Extent UCHAR 4t DUP (?)
LBA_Reserved2 UCHAR ?
Control UCHAR ?
_PLAY_AUDIO_LBA ENDS
@t_scsi16 TYPEDEF PTR _PLAY_AUDIO_LBA
_PLAY_LBA10 STRUCT 1t
OperationCode UCHAR ?
rec@_PLAY_LBA10_0 RECORD LogicalUnitNumber@_PLAY_LBA10:3,
Reserved1@_PLAY_LBA10:5
@bit_0 rec@_PLAY_LBA10_0 <>
Lba10_Start UCHAR 4t DUP (?)
Lba10_Reserved2 UCHAR ?
Lba10_Extent UCHAR 2t DUP (?)
Control UCHAR ?
_PLAY_LBA10 ENDS
@t_scsi17 TYPEDEF PTR _PLAY_LBA10
_SUBCHANNEL STRUCT 1t
OperationCode UCHAR ?
subq_rec0 SUBCHAN_REC <>
subq_rec1 SUBCHAN_SUBQ_REC <>
Format UCHAR ?
SUB_Reserved4 UCHAR 2t DUP (?)
SUB_TrackNumber UCHAR ?
AllocationLength UCHAR 2t DUP (?)
Control UCHAR ?
_SUBCHANNEL ENDS
@t_scsi18 TYPEDEF PTR _SUBCHANNEL
_MODE_SENSE STRUCT 1t
OperationCode UCHAR ?
md_sns_rec0 MODE_SNS_DDB_REC <>
md_sns_rec1 MODE_SNS_PC_REC <>
MS_Reserved3 UCHAR ?
MS_AllocationLength UCHAR ?
Control UCHAR ?
_MODE_SENSE ENDS
@t_scsi19 TYPEDEF PTR _MODE_SENSE
_MODE_SELECT STRUCT 1t
OperationCode UCHAR ?
md_sel_rec0 MODE_SEL_PF_REC <>
MSEL_Reserved2 UCHAR 2t DUP (?)
ParameterListLength UCHAR ?
Control UCHAR ?
_MODE_SELECT ENDS
@t_scsi20 TYPEDEF PTR _MODE_SELECT
_LOCATE STRUCT 1t
OperationCode UCHAR ?
rec@_LOCATE_0 RECORD Reserved2@_LOCATE:6,
CPBit@_LOCATE:1,
Reserved1@_LOCATE:1
@bit_0 rec@_LOCATE_0 <>
Reserved3 UCHAR ?
LogicalBlockAddress UCHAR 4t DUP (?)
Reserved4 UCHAR ?
Partition UCHAR ?
Control UCHAR ?
_LOCATE ENDS
@t_scsi21 TYPEDEF PTR _LOCATE
_LOGSENSE STRUCT 1t
OperationCode UCHAR ?
Unknown1 UCHAR ?
rec@_LOGSENSE_0 RECORD PCBit@_LOGSENSE:2,
PageCode@_LOGSENSE:6
@bit_0 rec@_LOGSENSE_0 <>
Unknown2 UCHAR ?
Unknown3 UCHAR ?
ParameterPointer UCHAR 2t DUP (?)
AllocationLength UCHAR 2t DUP (?)
Control UCHAR ?
_LOGSENSE ENDS
@t_scsi22 TYPEDEF PTR _LOGSENSE
_PRINT STRUCT 1t
OperationCode UCHAR ?
rec@_PRINT_0 RECORD LogicalUnitNumber@_PRINT:3,
Reserved@_PRINT:5
@bit_0 rec@_PRINT_0 <>
TransferLength UCHAR 3t DUP (?)
Control UCHAR ?
_PRINT ENDS
@t_scsi23 TYPEDEF PTR _PRINT
_SEEK STRUCT 1t
OperationCode UCHAR ?
rec@_SEEK_0 RECORD LogicalUnitNumber@_SEEK:3,
Reserved1@_SEEK:5
@bit_0 rec@_SEEK_0 <>
SeekLBA UCHAR 4t DUP (?)
Reserved2 UCHAR 3t DUP (?)
Control UCHAR ?
_SEEK ENDS
@t_scsi24 TYPEDEF PTR _SEEK
_START_STOP STRUCT 1t
OperationCode UCHAR ?
rec@_START_STOP_0 RECORD LogicalUnitNumber@_START_STOP:3,
Reserved1@_START_STOP:4,
Immediate@_START_STOP:1
@bit_0 rec@_START_STOP_0 <>
Reserved2 UCHAR 2t DUP (?)
rec@_START_STOP_1 RECORD Reserved3@_START_STOP:6,
LoadEject@_START_STOP:1,
Start@_START_STOP:1
@bit_1 rec@_START_STOP_1 <>
Control UCHAR ?
_START_STOP ENDS
@t_scsi25 TYPEDEF PTR _START_STOP
_MEDIA_REMOVAL STRUCT 1t
OperationCode UCHAR ?
rec@_MEDIA_REMOVAL_0 RECORD LogicalUnitNumber@_MEDIA_REMOVAL:3,
Reserved1@_MEDIA_REMOVAL:5
@bit_0 rec@_MEDIA_REMOVAL_0 <>
Reserved2 UCHAR 2t DUP (?)
Prevent UCHAR ?
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?