;Copyright (c) 1990-2009 ESI Corporation All rights Reserved
;
; WaMi Rack-192L,X for Windows VISTA, 7
;==============================================================

;==============================================================
[Version]
Signature="$WINDOWS NT$"
Class=MEDIA
ClassGUID={4d36e96c-e325-11ce-bfc1-08002be10318}
Provider=%Provider%
CatalogFile.NTx86  = x86.cat
CatalogFile.NTAMD64 = amd64.cat
DriverVer=08/18/2014,1.1.0.14
 

;==============================================================
[SourceDisksNames]
111 = %DiskDescription%,,,
222 = %DiskDescription%,,,\Win32
[SourceDisksNames.x86]
111 = %DiskDescription%,,,
222 = %DiskDescription%,,,\Win32
[SourceDisksNames.amd64]
111 = %DiskDescription%,,,
222 = %DiskDescription%,,,\X64

[SourceDisksFiles.x86]
esi.ico		= 111
WmLX.sys        = 222
WmLXWdm.sys     = 222
WmLXPan.exe     = 222
WmLXAsio.dll    = 222

[SourceDisksFiles.amd64]
esi.ico		= 111
WmLX.sys        = 222
WmLXWdm.sys     = 222
WmLXPan.exe     = 222
WmLXAsio.dll    = 222
WmLXAsio32.dll    = 222

;==============================================================
[WDM.CopyList]
WmLXwdm.sys

[EWDM.CopyList]
WmLX.sys

[EWDM.App.CopyList]
WmLXPan.exe
WmLXAsio.dll
esi.ico

[EWDM.Wow.CopyList]
WmLXAsio32.dll

[DestinationDirs]
WDM.CopyList=10,system32\drivers
EWDM.CopyList=10,system32\drivers
EWDM.App.CopyList=10,system32
EWDM.Wow.CopyList=10,SysWow64

;[DriverUp]
;CopyFiles=WDM.CopyList,EWDM.CopyList,EWDM.App.CopyList

;==============================================================
;[Manufacturer]
;==============================================================
[Manufacturer]
"ESI"=DEVICES,NTx86,NTamd64

[DEVICES]
%DESC_DEVICE_AA%=DEVICE_AA, %PNPID_DEVICE_AA%
%DESC_DEVICE_AB%=DEVICE_AA, %PNPID_DEVICE_AB%
%DESC_DEVICE_01%=DEVICE_01, %PNPID_DEVICE_01%

[DEVICES.NTx86]
%DESC_DEVICE_AA%=DEVICE_AA, %PNPID_DEVICE_AA%
%DESC_DEVICE_AB%=DEVICE_AA, %PNPID_DEVICE_AB%
%DESC_DEVICE_01%=DEVICE_01, %PNPID_DEVICE_01%

[DEVICES.NTamd64]
%DESC_DEVICE_AA%=DEVICE_BB, %PNPID_DEVICE_AA%
%DESC_DEVICE_AB%=DEVICE_BB, %PNPID_DEVICE_AB%
%DESC_DEVICE_01%=DEVICE_01, %PNPID_DEVICE_01%

;==============================================================
; DEVICE_AA (32bit platform) 
;==============================================================
[DEVICE_AA]
AlsoInstall=KS.Registration(ks.inf), WDMAUDIO.Registration(wdmaudio.inf)
Include=ks.inf,wdmaudio.inf
Needs=KS.Registration,WDMAUDIO.Registration
CopyFiles=EWDM.CopyList,EWDM.App.CopyList
AddReg=DEVICE_AA.ASIO.AddReg, PinNameRegistration;,DEVICE_AA.AddReg

[DEVICE_AA.AddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,%FILE.EWDM%

[DEVICE_AA.ASIO.AddReg]
HKLM,SOFTWARE\ASIO\%ASIO_DriverNAME%,CLSID,,%ASIO_DriverGUID%
HKCR,CLSID\%ASIO_DriverGUID%,,,%ASIO_DriverNAME%
HKCR,CLSID\%ASIO_DriverGUID%\InProcServer32,,,"%10%\system32\%FILE.ASIO%"
HKCR,CLSID\%ASIO_DriverGUID%\InProcServer32,ThreadingModel,,"Apartment"
HKLM,Software\Microsoft\Windows\CurrentVersion\Run,%FILE.PANEL%,,%FILE.PANEL%

[DEVICE_AA.Services]
AddService = %FILE.EWDM%, 0x00000002, DEVICE_AA_Service_Inst

[DEVICE_AA_Service_Inst]
DisplayName   = %DEVICE_AA.SvcDesc%
ServiceType   = 1                  
StartType     = 1                  
ErrorControl  = 1                  
ServiceBinary = %12%\%FILE.EWDM%

;==============================================================
; DEVICE_BB (amd64 platform)
;==============================================================
[DEVICE_BB]
AlsoInstall=KS.Registration(ks.inf), WDMAUDIO.Registration(wdmaudio.inf)
Include=ks.inf,wdmaudio.inf
Needs=KS.Registration,WDMAUDIO.Registration
CopyFiles=EWDM.CopyList,EWDM.App.CopyList,EWDM.Wow.CopyList
AddReg=DEVICE_BB.ASIO.AddReg, PinNameRegistration;,DEVICE_BB.AddReg

[DEVICE_BB.AddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,%FILE.EWDM%

[DEVICE_BB.ASIO.AddReg]
HKLM,SOFTWARE\ASIO\%ASIO_DriverNAME%,CLSID,,%ASIO_DriverGUID%
HKCR,CLSID\%ASIO_DriverGUID%,,,%ASIO_DriverNAME%
HKCR,CLSID\%ASIO_DriverGUID%\InProcServer32,,,"%10%\system32\%FILE.ASIO%"
HKCR,CLSID\%ASIO_DriverGUID%\InProcServer32,ThreadingModel,,"Apartment"
HKLM,Software\Microsoft\Windows\CurrentVersion\Run,%FILE.PANEL%,,%FILE.PANEL%
; Wow64 ASIO
HKLM,SOFTWARE\Wow6432Node\ASIO\%ASIO_DriverNAME%,CLSID,,%ASIO_DriverGUID%
HKCR,Wow6432Node\CLSID\%ASIO_DriverGUID%,,,%ASIO_DriverNAME%
HKCR,Wow6432Node\CLSID\%ASIO_DriverGUID%\InProcServer32,,,"%10%\system32\%FILE.WOW.ASIO%"
HKCR,Wow6432Node\CLSID\%ASIO_DriverGUID%\InProcServer32,ThreadingModel,,"Apartment"

[DEVICE_BB.Services]
AddService = %FILE.EWDM%, 0x00000002, DEVICE_AA_Service_Inst

;==============================================================


[WDM.AddReg]
HKR,,AssociatedFilters,,"wdmaud,swmidi,redbook"
HKR,,Driver,,%FILE.WDM%
HKR,,NTMPDriver,,%FILE.WDM%
HKR,Drivers,SubClasses,,"wave,mixer"
HKR,Drivers\wave\wdmaud.drv,Driver,,wdmaud.drv
HKR,Drivers\mixer\wdmaud.drv,Driver,,wdmaud.drv
HKR,Drivers\wave\wdmaud.drv,Description,,%MME.DriverDesc%
HKR,Drivers\mixer\wdmaud.drv,Description,,%MME.DriverDesc%
HKR,Drivers\midi\wdmaud.drv,Driver,,wdmaud.drv
HKR,Drivers\midi\wdmaud.drv,Description,,%MME.DriverDesc%
HKR,,SetupPreferredAudioDevices,3,01,00,00,00
HKR,Branding,icon,,"%11%\Esi.ico"
HKR,Branding,url,,"http://www.esi-audio.com/"

;==============================================================
; DEVICE_01
;==============================================================
[DEVICE_01]
AlsoInstall=KS.Registration(ks.inf), WDMAUDIO.Registration(wdmaudio.inf)
Include=ks.inf,wdmaudio.inf
Needs=KS.Registration,WDMAUDIO.Registration
CopyFiles=WDM.CopyList
AddReg=WDM.AddReg

[DEVICE_01.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topo1%,WDM.Interface.Topo1
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave1%,WDM.Interface.Wave1
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave1%,WDM.Interface.Wave1
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave1%,WDM.Interface.Wave1

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topo2%,WDM.Interface.Topo2
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave2%,WDM.Interface.Wave2
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave2%,WDM.Interface.Wave2
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave2%,WDM.Interface.Wave2

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topo3%,WDM.Interface.Topo3
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave3%,WDM.Interface.Wave3
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave3%,WDM.Interface.Wave3
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave3%,WDM.Interface.Wave3

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topo4%,WDM.Interface.Topo4
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave4%,WDM.Interface.Wave4
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave4%,WDM.Interface.Wave4
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave4%,WDM.Interface.Wave4

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topo5%,WDM.Interface.Topo5
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave5%,WDM.Interface.Wave5
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave5%,WDM.Interface.Wave5
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave5%,WDM.Interface.Wave5

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topo6%,WDM.Interface.Topo6
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave6%,WDM.Interface.Wave6
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave6%,WDM.Interface.Wave6
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave6%,WDM.Interface.Wave6

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Midi1%,WDM.Interface.Midi1
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Midi1%,WDM.Interface.Midi1
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Midi1%,WDM.Interface.Midi1

[WDM.Interface.Topo1]
AddReg=WDM.Interface.Topo1.AddReg
[WDM.Interface.Topo1.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM.Topo1.szPname%

[WDM.Interface.Wave1]
AddReg=WDM.Interface.Wave1.AddReg
[WDM.Interface.Wave1.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM.Wave1.szPname%

[WDM.Interface.Topo2]
AddReg=WDM.Interface.Topo2.AddReg
[WDM.Interface.Topo2.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM.Topo2.szPname%

[WDM.Interface.Wave2]
AddReg=WDM.Interface.Wave2.AddReg
[WDM.Interface.Wave2.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM.Wave2.szPname%

[WDM.Interface.Topo3]
AddReg=WDM.Interface.Topo3.AddReg
[WDM.Interface.Topo3.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM.Topo3.szPname%

[WDM.Interface.Wave3]
AddReg=WDM.Interface.Wave3.AddReg
[WDM.Interface.Wave3.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM.Wave3.szPname%

[WDM.Interface.Topo4]
AddReg=WDM.Interface.Topo4.AddReg
[WDM.Interface.Topo4.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM.Topo4.szPname%

[WDM.Interface.Wave4]
AddReg=WDM.Interface.Wave4.AddReg
[WDM.Interface.Wave4.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM.Wave4.szPname%

[WDM.Interface.Topo5]
AddReg=WDM.Interface.Topo5.AddReg
[WDM.Interface.Topo5.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM.Topo5.szPname%

[WDM.Interface.Wave5]
AddReg=WDM.Interface.Wave5.AddReg
[WDM.Interface.Wave5.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM.Wave5.szPname%

[WDM.Interface.Topo6]
AddReg=WDM.Interface.Topo6.AddReg
[WDM.Interface.Topo6.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM.Topo6.szPname%

[WDM.Interface.Wave6]
AddReg=WDM.Interface.Wave6.AddReg
[WDM.Interface.Wave6.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM.Wave6.szPname%

[WDM.Interface.Wave7]
AddReg=WDM.Interface.Wave7.AddReg
[WDM.Interface.Wave7.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM.Wave7.szPname%



[WDM.Interface.Midi1]
AddReg=WDM.Interface.Midi1.AddReg
[WDM.Interface.Midi1.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM.Midi1.szPname%

[DEVICE_01.Services]
AddService = %FILE.WDM%, 0x00000002, DEVICE_01_Service_Inst

[DEVICE_01_Service_Inst]
DisplayName   = %DEVICE_01.SvcDesc%
ServiceType   = 1                  ; SERVICE_KERNEL_DRIVER
StartType     = 3                  ; SERVICE_DEMAND_START
ErrorControl  = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\%FILE.WDM%

[PinNameRegistration]
HKLM,%MediaCategories%\%GUID.WM192LX1%,Name,,%WDM.Wave1.szPname%
HKLM,%MediaCategories%\%GUID.WM192LX2%,Name,,%WDM.Wave2.szPname%
HKLM,%MediaCategories%\%GUID.WM192LX3%,Name,,%WDM.Wave3.szPname%
HKLM,%MediaCategories%\%GUID.WM192LX4%,Name,,%WDM.Wave4.szPname%
HKLM,%MediaCategories%\%GUID.WM192LX5%,Name,,%WDM.Wave5.szPname%
HKLM,%MediaCategories%\%GUID.WM192LX6%,Name,,%WDM.Wave6.szPname%
HKLM,%MediaCategories%\%GUID.WM192LX7%,Name,,%WDM.Wave7.szPname%

;====================== Strings ===============================
[Strings]
MediaCategories			="SYSTEM\CurrentControlSet\Control\MediaCategories"
GUID.WM192LX1			="{1E6C9243-7F97-4378-AE38-BDE8E8F199BD}"
GUID.WM192LX2			="{6BE7DD1C-AADC-414E-99E3-1468611E6FA2}"
GUID.WM192LX3			="{5E12987F-98C7-44BF-9396-4A4A73847694}"
GUID.WM192LX4			="{CA6BFEB1-BC73-4964-ABFD-17D74D1F352F}"
GUID.WM192LX5			="{5BD6DFE0-B22F-454D-80A2-088469666152}"
GUID.WM192LX6			="{88DDAD40-20B6-4839-A02E-400D2C850110}"
GUID.WM192LX7			="{76B9F4A8-D752-4AA1-9516-B785A6CDB21C}"


Proxy.CLSID				="{17CCA71B-ECD7-11D0-B908-00A0C9223196}"
KSCATEGORY_AUDIO		="{6994AD04-93EF-11D0-A3CC-00A0C9223196}"
KSCATEGORY_RENDER		="{65E8773E-8F56-11D0-A3B9-00A0C9223196}"
KSCATEGORY_CAPTURE		="{65E8773D-8F56-11D0-A3B9-00A0C9223196}"
KSNAME_Topo1			="ESI_Mixer1"
KSNAME_Topo2			="ESI_Mixer2"
KSNAME_Topo3			="ESI_Mixer3"
KSNAME_Topo4			="ESI_Mixer4"
KSNAME_Topo5			="ESI_Mixer5"
KSNAME_Topo6			="ESI_Mixer6"
KSNAME_Wave1			="ESI_Wave1"
KSNAME_Wave2			="ESI_Wave2"
KSNAME_Wave3			="ESI_Wave3"
KSNAME_Wave4			="ESI_Wave4"
KSNAME_Wave5			="ESI_Wave5"
KSNAME_Wave6			="ESI_Wave6"
KSNAME_Midi1			="ESI_Midi1"

Provider			="Esi Products"
DiskDescription			="WaMi Rack 192LX EWDM Driver for X86, X64"
DESC_DEVICE_AA			="WaMi Rack 192X Controller"
DESC_DEVICE_AB			="WaMi Rack 192L Controller"
DESC_DEVICE_01			="WaMi Rack 192 Audio"
PNPID_DEVICE_AA			="PCI\VEN_1412&DEV_1724&SUBSYS_45534938"
PNPID_DEVICE_AB			="PCI\VEN_1412&DEV_1724&SUBSYS_45534939"
PNPID_DEVICE_01			="ESI\WM192LX_01"
DEVICE_AA.SvcDesc		="Service for WaMi Rack 192 Audio Driver EWDM"
DEVICE_01.SvcDesc		="Service for WaMi Rack 192 WDM"

MME.DriverDesc			="WaMi Rack 192 EWDM MME Driver"
WDM.Topo1.szPname		="WaMi Rack 192 Audio Ch 12"
WDM.Topo2.szPname		="WaMi Rack 192 Mixer Ch 34"
WDM.Topo3.szPname		="WaMi Rack 192 Mixer Ch 56"
WDM.Topo4.szPname		="WaMi Rack 192 Mixer Ch 78"
WDM.Topo5.szPname		="WaMi Rack 192 Mixer"
WDM.Topo6.szPname		="WaMi Rack 192 Mixer Ch 9/10 SPDIF Out"
WDM.Wave1.szPname		="WaMi Rack 192 Ch 12"
WDM.Wave2.szPname		="WaMi Rack 192 Ch 34"
WDM.Wave3.szPname		="WaMi Rack 192 Ch 56"
WDM.Wave4.szPname		="WaMi Rack 192 Ch 78"
WDM.Wave5.szPname		="WaMi Rack 192 Speaker"
WDM.Wave6.szPname		="WaMi Rack 192 Ch 9/10 SPDIF Out"
WDM.Wave7.szPname		="WaMi Rack 192 Ch 34 SPDIF In "
WDM.Midi1.szPname		="WaMi Rack 192 Midi"
ASIO_DriverGUID			="{086F0B80-214A-11d6-9C51-0000F461437F}"
ASIO_DriverNAME			="ASIO 2.0 - WaMi Rack 192"

FILE.EWDM			="WmLX.sys"
FILE.WDM			="WmLXWDM.sys"
FILE.ASIO			="WmLXASIO.dll"
FILE.WOW.ASIO		="WmLXASIO32.dll"
FILE.PANEL			="WmLXPAN.exe"

