;
; arcsas.inf for Adaptec RAID controllers.
; This INF installs the x64 miniport and its coinstaller.
;
; Copyright 2008 Adaptec, Inc. All rights reserved.
; 
; This software contains the valuable trade secrets of Adaptec or its licensors.
; The software is protected under international copyright laws and treaties.
; This software may only be used in accordance with the terms of its accompanying license agreement.
;
  
[Version]
Signature = "$Windows NT$"
Class = SCSIAdapter
ClassGUID = {4d36e97b-e325-11ce-bfc1-08002be10318}
Provider = %ADPT%
DriverVer=07/08/2008,5.2.0.16119

;
; Source file information
;

[SourceDisksNames]
3426=windows cd

[SourceDisksFiles]
arcsas.sys = 3426

[DestinationDirs]
DefaultDestDir = 12

[ControlFlags]
ExcludeFromSelect = *

[Manufacturer]
%ADPT%=ADAPTEC, NTx86, NTamd64

[ADAPTEC]


[ADAPTEC.NTx86]
%adptAvonPark.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02f21014
%adptRombAurora.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0286&SUBSYS_95801014
%adptBrendon.DeviceDesc% = arcsas_Inst,		PCI\VEN_9005&DEV_0285&SUBSYS_034D1014
%adptIntruder4.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0286&SUBSYS_029D9005
%adptIntruder6.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0286&SUBSYS_029C9005
%adptIntruder8.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0286&SUBSYS_029B9005
%ICPIntruder4.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0286&SUBSYS_02A09005
%ICPIntruder6.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0286&SUBSYS_02A69005
%ICPIntruder8.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0286&SUBSYS_02A19005
%adptBlackBird.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02989005
%adptMarauderX.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02999005
%adptMarauderE.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_029A9005
%icpMarauderX.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02A49005
%icpMarauderE.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02A59005
%adptVoodoo44.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02B59005
%adptVoodoo80.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02B69005
%adptVoodoo08.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02B79005
%icpVoodoo44.DeviceDesc% = arcsas_Inst,	        PCI\VEN_9005&DEV_0285&SUBSYS_02B89005
%icpVoodoo80.DeviceDesc% = arcsas_Inst,	        PCI\VEN_9005&DEV_0285&SUBSYS_02B99005
%icpVoodoo08.DeviceDesc% = arcsas_Inst,	        PCI\VEN_9005&DEV_0285&SUBSYS_02BA9005
%adptMarauder40LP.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02BB9005
%adptMarauder80LP.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02BC9005
%adptMarauder120.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02BD9005
%adptMarauder160.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02BE9005
%icpMarauder40LP.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02BF9005
%icpMarauder80LP.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C09005
%icpMarauder120.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C19005
%icpMarauder160.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C29005
%adptVoodoo120.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C39005
%adptVoodoo160.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C49005
%icpVoodoo120.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C59005
%icpVoodoo160.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C69005
%adptMarauder08LP.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C79005
%icpMarauder08LP.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C89005
%adptAOC_USAS1_S4i.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02B515D9
%adptAOC_USAS1_S8i.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02B615D9
%adptAOC_USAS1_S4iR.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C915D9
%adptAOC_USAS1_S8iR.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02CA15D9
%adptSUN_4i4e.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_7AAC108E
%adptSUN_Narvi.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_7AAE108E
%adptSUN_Cougar.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_0286108E
%adptSUN_Prometheus.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_0287108E
%adptBEDROC44.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0288&SUBSYS_02CB9005
%adptBEDROC80.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0288&SUBSYS_02CC9005
%adptBEDROC08.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0288&SUBSYS_02CD9005
%adptVoodoo124.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02CE9005
%adptVoodoo164.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02CF9005
%adptVoodoo244.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02D09005
%adptVoodoo40.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02D19005
%adptAOC_USAS1_S8iLP.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02D215D9
%adptAOC_USAS1_S8iRLP.DeviceDesc% = arcsas_Inst,PCI\VEN_9005&DEV_0285&SUBSYS_02D315D9
%adptVoodooLite04.DeviceDesc% = arcsas_Inst,    PCI\VEN_9005&DEV_0285&SUBSYS_02D49005
%adptVoodooLite40.DeviceDesc% = arcsas_Inst,    PCI\VEN_9005&DEV_0285&SUBSYS_02D59005
%adptVoodooLite44.DeviceDesc% = arcsas_Inst,    PCI\VEN_9005&DEV_0285&SUBSYS_02D69005
%adptVoodooLite80.DeviceDesc% = arcsas_Inst,    PCI\VEN_9005&DEV_0285&SUBSYS_02D79005


[ADAPTEC.NTamd64]
%adptAvonPark.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02f21014
%adptRombAurora.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0286&SUBSYS_95801014
%adptBrendon.DeviceDesc% = arcsas_Inst,		PCI\VEN_9005&DEV_0285&SUBSYS_034D1014
%adptIntruder4.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0286&SUBSYS_029D9005
%adptIntruder6.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0286&SUBSYS_029C9005
%adptIntruder8.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0286&SUBSYS_029B9005
%ICPIntruder4.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0286&SUBSYS_02A09005
%ICPIntruder6.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0286&SUBSYS_02A69005
%ICPIntruder8.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0286&SUBSYS_02A19005
%adptBlackBird.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02989005
%adptMarauderX.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02999005
%adptMarauderE.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_029A9005
%icpMarauderX.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02A49005
%icpMarauderE.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02A59005
%adptVoodoo44.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02B59005
%adptVoodoo80.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02B69005
%adptVoodoo08.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02B79005
%icpVoodoo44.DeviceDesc% = arcsas_Inst,	        PCI\VEN_9005&DEV_0285&SUBSYS_02B89005
%icpVoodoo80.DeviceDesc% = arcsas_Inst,	        PCI\VEN_9005&DEV_0285&SUBSYS_02B99005
%icpVoodoo08.DeviceDesc% = arcsas_Inst,	        PCI\VEN_9005&DEV_0285&SUBSYS_02BA9005
%adptMarauder40LP.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02BB9005
%adptMarauder80LP.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02BC9005
%adptMarauder120.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02BD9005
%adptMarauder160.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02BE9005
%icpMarauder40LP.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02BF9005
%icpMarauder80LP.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C09005
%icpMarauder120.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C19005
%icpMarauder160.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C29005
%adptVoodoo120.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C39005
%adptVoodoo160.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C49005
%icpVoodoo120.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C59005
%icpVoodoo160.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C69005
%adptMarauder08LP.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C79005
%icpMarauder08LP.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C89005
%adptAOC_USAS1_S4i.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02B515D9
%adptAOC_USAS1_S8i.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02B615D9
%adptAOC_USAS1_S4iR.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02C915D9
%adptAOC_USAS1_S8iR.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02CA15D9
%adptSUN_4i4e.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_7AAC108E
%adptSUN_Narvi.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_7AAE108E
%adptSUN_Cougar.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_0286108E
%adptSUN_Prometheus.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_0287108E
%adptBEDROC44.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0288&SUBSYS_02CB9005
%adptBEDROC80.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0288&SUBSYS_02CC9005
%adptBEDROC08.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0288&SUBSYS_02CD9005
%adptVoodoo124.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02CE9005
%adptVoodoo164.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02CF9005
%adptVoodoo244.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02D09005
%adptVoodoo40.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02D19005
%adptAOC_USAS1_S8iLP.DeviceDesc% = arcsas_Inst,	PCI\VEN_9005&DEV_0285&SUBSYS_02D215D9
%adptAOC_USAS1_S8iRLP.DeviceDesc% = arcsas_Inst,PCI\VEN_9005&DEV_0285&SUBSYS_02D315D9
%adptVoodooLite04.DeviceDesc% = arcsas_Inst,    PCI\VEN_9005&DEV_0285&SUBSYS_02D49005
%adptVoodooLite40.DeviceDesc% = arcsas_Inst,    PCI\VEN_9005&DEV_0285&SUBSYS_02D59005
%adptVoodooLite44.DeviceDesc% = arcsas_Inst,    PCI\VEN_9005&DEV_0285&SUBSYS_02D69005
%adptVoodooLite80.DeviceDesc% = arcsas_Inst,    PCI\VEN_9005&DEV_0285&SUBSYS_02D79005


[arcsas_Inst.HW]
Include=machine.inf
Needs=PciASPMOptOut
AddReg = MsiEnable_addreg

[MsiEnable_addreg] 
; The line may not be needed because LH OS creates other Keys at this same location 
; HKR, Interrupt Management, 0x00000010 
; Definitely need this Key and value 
HKR, Interrupt Management\MessageSignaledInterruptProperties, 0x00000010 
HKR, Interrupt Management\MessageSignaledInterruptProperties, MSISupported, 0x00010001, 1 

[arcsas_Inst]
CopyFiles = @arcsas.sys


[arcsas_Inst.Services]
AddService = arcsas, %SPSVCINST_ASSOCSERVICE%, arcsas_Service_Inst, Miniport_EventLog_Inst


[arcsas_Service_Inst]
DisplayName    = %arcsas_ServiceName%
ServiceType    = %SERVICE_KERNEL_DRIVER%
StartType      = %SERVICE_BOOT_START%
ErrorControl   = %SERVICE_ERROR_NORMAL%
ServiceBinary  = %12%\arcsas.sys
LoadOrderGroup = SCSI miniport
AddReg         = arcsas_Parameters_Inst
AddReg         = Bus_Type_Raid

[Bus_Type_Raid]
HKR, "Parameters", "BusType", %FLG_ADDREG_TYPE_REG_DWORD%, 0x00000008


[arcsas_Parameters_Inst]
HKR, "Parameters\PnpInterface", "5", %FLG_ADDREG_TYPE_REG_DWORD%, 1
HKR, "Parameters\Device", "NumberOfRequests", %FLG_ADDREG_TYPE_REG_DWORD%, 254
HKR, "Parameters\Device", "DriverParameter", %FLG_ADDREG_TYPE_SZ%, "BLEDCheck=1"

[Miniport_EventLog_Inst]
AddReg = Miniport_EventLog_AddReg

[Miniport_EventLog_AddReg]
HKR,,EventMessageFile,%FLG_ADDREG_TYPE_EXPAND_SZ%,"%%SystemRoot%%\System32\IoLogMsg.dll"
HKR,,TypesSupported,%FLG_ADDREG_TYPE_REG_DWORD%,7

[Strings]
;localizable
ADPT = "Adaptec"
adptAvonPark.DeviceDesc = "IBM ServeRAID 8i Controller"
adptRombAurora.DeviceDesc = "IBM ServeRAID 8k/8k-l Controller"
adptBrendon.DeviceDesc = "IBM ServeRAID 8s Controller"
adptIntruder4.DeviceDesc = "Adaptec SATA RAID AAR-2420SA Controller"
adptIntruder6.DeviceDesc = "Adaptec SATA RAID AAR-2620SA Controller"
adptIntruder8.DeviceDesc = "Adaptec SATA RAID AAR-2820SA Controller"
ICPIntruder4.DeviceDesc = "ICP SATA RAID ICP9047MA Controller"
ICPIntruder6.DeviceDesc = "ICP SATA RAID ICP9067MA Controller"
ICPIntruder8.DeviceDesc = "ICP SATA RAID ICP9087MA Controller"
adptBlackBird.DeviceDesc = "Adaptec RAID 4000"
adptMarauderX.DeviceDesc = "Adaptec SAS RAID 4800SAS Controller"
adptMarauderE.DeviceDesc = "Adaptec SAS RAID 4805SAS Controller"
icpMarauderX.DeviceDesc = "ICP SAS RAID ICP9085LI Controller"
icpMarauderE.DeviceDesc = "ICP SAS RAID ICP5085BR Controller"
adptVoodoo40.DeviceDesc = "Adaptec RAID 5405"
adptVoodoo44.DeviceDesc = "Adaptec RAID 5445"
adptVoodoo80.DeviceDesc = "Adaptec RAID 5805"
adptVoodoo08.DeviceDesc = "Adaptec RAID 5085"
adptVoodoo124.DeviceDesc = "Adaptec RAID 51245"
adptVoodoo164.DeviceDesc = "Adaptec RAID 51645"
adptVoodoo244.DeviceDesc = "Adaptec RAID 52445"
icpVoodoo44.DeviceDesc = "ICP5445SL"
icpVoodoo80.DeviceDesc = "ICP5085SL"
icpVoodoo08.DeviceDesc = "ICP5805SL"
adptMarauder40LP.DeviceDesc = "Adaptec RAID 3405"
adptMarauder80LP.DeviceDesc = "Adaptec RAID 3805"
adptMarauder120.DeviceDesc = "Adaptec RAID 31205"
adptMarauder160.DeviceDesc = "Adaptec RAID 31605"
icpMarauder40LP.DeviceDesc = "ICP5045BL"
icpMarauder80LP.DeviceDesc = "ICP5085BL"
icpMarauder120.DeviceDesc = "ICP5125BR"
icpMarauder160.DeviceDesc = "ICP5165BR"
adptVoodoo120.DeviceDesc = "Adaptec RAID 51205"
adptVoodoo160.DeviceDesc = "Adaptec RAID 51605"
icpVoodoo120.DeviceDesc = "ICP5125SL"
icpVoodoo160.DeviceDesc = "ICP5165SL"
adptVoodooLite04.DeviceDesc = "Adaptec RAID 2045"
adptVoodooLite40.DeviceDesc = "Adaptec RAID 2405"
adptVoodooLite44.DeviceDesc = "Adaptec RAID 2445"
adptVoodooLite80.DeviceDesc = "Adaptec RAID 2805"
adptMarauder08LP.DeviceDesc = "Adaptec RAID 3085"
icpMarauder08LP.DeviceDesc = "ICP5805BL"
adptAOC_USAS1_S4i.DeviceDesc = "AOC-USAS-S4i RAID Controller"
adptAOC_USAS1_S8i.DeviceDesc = "AOC-USAS-S8i RAID Controller"
adptAOC_USAS1_S4iR.DeviceDesc = "AOC-USAS-S4iR RAID Controller"
adptAOC_USAS1_S8iR.DeviceDesc = "AOC-USAS-S8iR RAID Controller"
adptAOC_USAS1_S8iLP.DeviceDesc = "AOC-USAS-S8i-LP RAID Controller"
adptAOC_USAS1_S8iRLP.DeviceDesc = "AOC-USAS-S8iR-LP RAID Controller"
adptSUN_4i4e.DeviceDesc = "Sun STK RAID REM"
adptSUN_Narvi.DeviceDesc = "Sun STK RAID EM"
adptSUN_Cougar.DeviceDesc = "Sun STK RAID INT"
adptSUN_Prometheus.DeviceDesc = "Sun STK RAID EXT"
adptBEDROC44.DeviceDesc = "BEDROC 44"
adptBEDROC80.DeviceDesc = "BEDROC 80"
adptBEDROC08.DeviceDesc = "BEDROC 08"
arcsas_ServiceName = "Adaptec SAS/SATA-II RAID Windows Inbox Miniport Driver"



;non-localizable
;Handy macro substitutions  
;=================================================================
COPYFLG_FORCE_FILE_IN_USE = 0x00000008 
SPSVCINST_ASSOCSERVICE = 0x00000002
SPSVCINST_NOCLOBBER_DISPLAYNAME = 0x00000008
SERVICE_KERNEL_DRIVER  = 1
SERVICE_WIN32_OWN_PROCESS = 0x10
SERVICE_BOOT_START     = 0
SERVICE_SYSTEM_START   = 1
SERVICE_AUTO_START     = 2
SERVICE_DEMAND_START   = 3
SERVICE_NO_START       = 4
SERVICE_ERROR_IGNORE   = 0
SERVICE_ERROR_NORMAL   = 1
FLG_ADDREG_TYPE_SZ = 0x00000000
FLG_ADDREG_TYPE_EXPAND_SZ = 0x00020000
FLG_ADDREG_TYPE_MULTI_SZ = 0x00010000
FLG_ADDREG_TYPE_REG_DWORD  = 0x00010001

