;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
;  Motion Control API device driver information file (MCAPI.INF) for 
;  Windows XP64. Do not use on NT 4.0 or 98/ME systems!
;
;  $Id: mcapi_x64.inf 372 2007-05-23 00:09:57Z brian $
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[Version]
Signature="$WINDOWS NT$"
Class="MotionControl"
ClassGUID={7CF3A6E6-1BCE-4228-B307-C8C2311E7D67}
Provider="Precision MicroControl Corp."
DriverVer=5/16/2007,4.0.4.371
; Copyright (c) 2001-2007 by Precision MicroControl Corp.

[DestinationDirs]
DefaultDestDir=10,system32\drivers

[Manufacturer]
%Mfg%=PmcDeviceSection,ntamd64

[PmcDeviceSection.ntamd64]
%DC2PCDesc%     = DC2PC_Inst,     *DC2PC
%DCXPC100Desc%  = DCXPC100_Inst,  *DCXPC100
%DCXAT200Desc%  = DCXAT200_Inst,  *DCXAT200
%DCXAT300Desc%  = DCXAT300_Inst,  *DCXAT300
%DCXPCI100Desc% = DCXPCI100_Inst, PCI\VEN_11B0&DEV_0100&SUBSYS_D10011B0
%DCXPCI300Desc% = DCXPCI300_Inst, PCI\VEN_11B0&DEV_0100&SUBSYS_D30011B0
%MFXPCI1Desc%   = MFXPCI1_Inst,   PCI\VEN_102F&DEV_0181&SUBSYS_C600102F

[ControlFlags]
ExcludeFromSelect=PCI\VEN_11B0&DEV_0100&SUBSYS_D10011B0
ExcludeFromSelect=PCI\VEN_11B0&DEV_0100&SUBSYS_D30011B0
ExcludeFromSelect=PCI\VEN_102F&DEV_0181&SUBSYS_C600102F

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;  Install sections
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[DC2PC_Inst.ntamd64]
CopyFiles=CopyDriver_nt
LogConfig=DC2PC_Inst.LogConfig

[DCXPC100_Inst.ntamd64]
CopyFiles=CopyDriver_nt
LogConfig=DCX_Inst.LogConfig

[DCXAT200_Inst.ntamd64]
CopyFiles=CopyDriver_nt
LogConfig=DCX_Inst.LogConfig

[DCXAT300_Inst.ntamd64]
CopyFiles=CopyDriver_nt
LogConfig=DCX_Inst.LogConfig

[DCXPCI100_Inst.ntamd64]
AddReg=AddFirmwareReg
CopyFiles=CopyDriver_nt, CopyFirmware

[DCXPCI300_Inst.ntamd64]
AddReg=AddFirmwareReg
CopyFiles=CopyDriver_nt, CopyFirmware

[MFXPCI1_Inst.ntamd64]
AddReg=AddFirmwareReg
CopyFiles=CopyDriver_nt, CopyFirmware

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;  Source disks and file layout
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[SourceDisksNames]
1 = %DiskId%

[SourceDisksFiles]
mcapix64.sys   = 1
%Firmware100%  = 1
%Firmware300%  = 1
%FirmwareMFX1% = 1

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;  CopyFiles and AddReg install sections
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[CopyDriver_nt]
mcapix64.sys,,,2

[CopyFirmware]
%Firmware100%,,,4
%Firmware300%,,,4
%FirmwareMFX1%,,,4

[AddFirmwareReg]
HKLM,System\CurrentControlSet\Services\MCAPI,"Dcxpci100Firmware",0x00000002,"%10%\system32\drivers\%Firmware100%"
HKLM,System\CurrentControlSet\Services\MCAPI,"Dcxpci300Firmware",0x00000002,"%10%\system32\drivers\%Firmware300%"
HKLM,System\CurrentControlSet\Services\MCAPI,"Mfxpci1Firmware",0x00000002,"%10%\system32\drivers\%FirmwareMFX1%"

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;  Hardware add registry sections (set friendly name, Win 2000/XP only)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[DC2PC_Inst.ntamd64.hw]
AddReg=DC2PC_HwAddReg

[DC2PC_HwAddReg]
HKR,,FriendlyName,,%DC2PCDesc%

[DCXPC100_Inst.ntamd64.hw]
AddReg=DCXPC100_HwAddReg

[DCXPC100_HwAddReg]
HKR,,FriendlyName,,%DCXPC100Desc%

[DCXAT200_Inst.ntamd64.hw]
AddReg=DCXAT200_HwAddReg

[DCXAT200_HwAddReg]
HKR,,FriendlyName,,%DCXAT200Desc%

[DCXAT300_Inst.ntamd64.hw]
AddReg=DCXAT300_HwAddReg

[DCXAT300_HwAddReg]
HKR,,FriendlyName,,%DCXAT300Desc%

[DCXPCI100_Inst.ntamd64.hw]
AddReg=DCXPCI100_HwAddReg

[DCXPCI100_HwAddReg]
HKR,,FriendlyName,,%DCXPCI100Desc%

[DCXPCI300_Inst.ntamd64.hw]
AddReg=DCXPCI300_HwAddReg

[DCXPCI300_HwAddReg]
HKR,,FriendlyName,,%DCXPCI300Desc%

[MFXPCI1_Inst.ntamd64.hw]
AddReg=MFXPCI1_HwAddReg

[MFXPCI1_HwAddReg]
HKR,,FriendlyName,,%MFXPCI1Desc%

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Device class setup (Motion control device class)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[ClassInstall32]
Addreg=PmcHwClass

[PmcHwClass]
HKR,,,,%ClassName%
HKR,,Icon,,"-5"

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;  Service (driver) setup for Windows 2000 & XP
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[DC2PC_Inst.ntamd64.Services]
AddService = mcapi, %SPSVCINST_ASSOCSERVICE%, PMC_Service_Inst, PMC_EventLog_Inst

[DCXPC100_Inst.ntamd64.Services]
AddService = mcapi, %SPSVCINST_ASSOCSERVICE%, PMC_Service_Inst, PMC_EventLog_Inst

[DCXAT200_Inst.ntamd64.Services]
AddService = mcapi, %SPSVCINST_ASSOCSERVICE%, PMC_Service_Inst, PMC_EventLog_Inst

[DCXAT300_Inst.ntamd64.Services]
AddService = mcapi, %SPSVCINST_ASSOCSERVICE%, PMC_Service_Inst, PMC_EventLog_Inst

[DCXPCI100_Inst.ntamd64.Services]
AddService = mcapi, %SPSVCINST_ASSOCSERVICE%, PMC_Service_Inst, PMC_EventLog_Inst

[DCXPCI300_Inst.ntamd64.Services]
AddService = mcapi, %SPSVCINST_ASSOCSERVICE%, PMC_Service_Inst, PMC_EventLog_Inst

[MFXPCI1_Inst.ntamd64.Services]
AddService = mcapi, %SPSVCINST_ASSOCSERVICE%, PMC_Service_Inst, PMC_EventLog_Inst

[PMC_Service_Inst]
DisplayName   = %ServiceDesc%
ServiceType   = 1				; SERVICE_KERNEL_DRIVER
StartType     = 3				; SERVICE_MANUAL_START
ErrorControl  = 1				; SERVICE_ERROR_NORMAL
ServiceBinary = %10%\system32\drivers\mcapix64.sys

[PMC_EventLog_Inst]
AddReg = PMC_EventLog_AddReg

[PMC_EventLog_AddReg]
HKR,,"EventMessageFile",0x00020000,"%10%\system32\drivers\mcapix64.sys"
HKR,,"TypesSupported",0x00010001,7


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;  LogConfig & FactDef configuration sections for isa-bus controllers
;  Note that there must be a separate FactDef for each installer section,
;  but installer sections can share LogConfig sections
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[DC2PC_Inst.LogConfig]
ConfigPriority=HARDRECONFIG
IOConfig = 4@100-3FF%FFC

[DC2PC_Inst.ntamd64.FactDef]
ConfigPriority=HARDRECONFIG
IOConfig = 300-303(3FF::)

[DCX_Inst.LogConfig]
ConfigPriority=HARDRECONFIG
MemConfig = 1000@C0000-EFFFF%FF000

[DCXPC100_Inst.ntamd64.FactDef]
ConfigPriority=HARDRECONFIG
MemConfig = D0000-D0FFF

[DCXAT200_Inst.ntamd64.FactDef]
ConfigPriority=HARDRECONFIG
MemConfig = D0000-D0FFF

[DCXAT300_Inst.ntamd64.FactDef]
ConfigPriority=HARDRECONFIG
MemConfig = D0000-D0FFF

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;  String constants
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[Strings]
ClassName               = "Motion control"
DC2PCDesc               = "PMC DC2-PC Motion Controller"
DCXPC100Desc            = "PMC DCX-PC100 Motion Controller"
DCXAT200Desc            = "PMC DCX-AT200 Motion Controller"
DCXAT300Desc            = "PMC DCX-AT300 Motion Controller"
DCXPCI100Desc           = "PMC DCX-PCI100 Motion Controller"
DCXPCI300Desc           = "PMC DCX-PCI300 Motion Controller"
MFXPCI1Desc             = "PMC MFX-PCI Series 1000 MultiFlex Motion Controller"
DiskId                  = "MotionCD"
Firmware100             = "dcx1_10a.hex"		
Firmware300             = "dcx3_32a.hex"
FirmwareMFX1            = "mfx1_45a.hex"
Mfg                     = "Precision MicroControl Corp."
ServiceDesc             = "Motion Control"
SPSVCINST_ASSOCSERVICE  = 0x00000002
