;Copyright (c) 2007 SIMS Corporation All rights Reserved
;
;Module Name:
;   wdmqua.inf
;
;Abstract:
;    INF file for installing QUARTET WDM Driver
;

;==============================================================
[Version]
CatalogFile=wdmqua.cat
CatalogFile.ntamd64=wdmqua64.cat
Signature="$CHICAGO$"
Class=MEDIA
ClassGUID={4d36e96c-e325-11ce-bfc1-08002be10318}
Provider="SIMS Corp."
DriverVer=05/21/2007,1.1.1.0

;==================================================================
[SourceDisksNames]
222 = "INFRASONIC Driver Disk",,,

[SourceDisksFiles]
wdmqua.sys	= 222
asioqua.dll	= 222
ctlqua.exe	= 222
ctlfree.exe	= 222

[SourceDisksFiles.amd64]
wdmqua64.sys	= 222
asioqua.dll	= 222
asioqua64.dll	= 222
ctlqua64.exe	= 222
ctlfree64.exe	= 222

;==================================================================
[Manufacturer]
%MfgName%=ISDEV,NTAMD64

[ISDEV]
%ISDEVINS.DeviceDesc%=ISDEVINS, PCI\VEN_1412&DEV_1724&SUBSYS_49533030
[ISDEV.NTAMD64]
%ISDEVINS.DeviceDesc%=ISDEVINS64, PCI\VEN_1412&DEV_1724&SUBSYS_49533030

;==================================================================
; x86 platform

[ISDEVINS]
AlsoInstall=KS.Registration(ks.inf), WDMAUDIO.Registration(wdmaudio.inf)
CopyFiles=ISDEVINS.CopyList, ISDEVINS.App.CopyList
AddReg=ISDEVINS.AddReg, ISDEVINS.App.AddReg

[ISDEVINS.NT]
Include=ks.inf,wdmaudio.inf
Needs=KS.Registration,WDMAUDIO.Registration
CopyFiles=ISDEVINS.CopyList, ISDEVINS.App.CopyList
AddReg=ISDEVINS.AddReg, ISDEVINS.App.AddReg

[ISDEVINS.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topology%,WDM.Interface.Topology
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave%,WDM.Interface.Wave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave%,WDM.Interface.Wave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave%,WDM.Interface.Wave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Midi%,WDM.Interface.Midi
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Midi%,WDM.Interface.Midi
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Midi%,WDM.Interface.Midi

[ISDEVINS.NT.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topology%,WDM.Interface.Topology
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave%,WDM.Interface.Wave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave%,WDM.Interface.Wave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave%,WDM.Interface.Wave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Midi%,WDM.Interface.Midi
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Midi%,WDM.Interface.Midi
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Midi%,WDM.Interface.Midi

[ISDEVINS.Services]
AddService = %ISDEVINS.Service%, 0x00000002, ISDEVINS_Service_Inst

[ISDEVINS.NT.Services]
AddService = %ISDEVINS.Service%, 0x00000002, ISDEVINS_Service_Inst

[ISDEVINS_Service_Inst]
DisplayName   = %ISDEVINS.SvcDesc%
ServiceType   = 1                  ; SERVICE_KERNEL_DRIVER
StartType     = 1                  ; SERVICE_DEMAND_START
ErrorControl  = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\wdmqua.sys

;==================================================================
; amd64 platform

[ISDEVINS64]
AlsoInstall=KS.Registration(ks.inf), WDMAUDIO.Registration(wdmaudio.inf)
CopyFiles=ISDEVINS64.CopyList, ISDEVINS64.App.CopyList
AddReg=ISDEVINS64.AddReg, ISDEVINS64.App.AddReg

[ISDEVINS64.NT]
Include=ks.inf,wdmaudio.inf
Needs=KS.Registration,WDMAUDIO.Registration
CopyFiles=ISDEVINS64.CopyList, ISDEVINS64.App.CopyList, ISDEVINS64.Wow.CopyList
AddReg=ISDEVINS64.AddReg, ISDEVINS64.App.AddReg

[ISDEVINS64.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topology%,WDM.Interface.Topology
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave%,WDM.Interface.Wave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave%,WDM.Interface.Wave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave%,WDM.Interface.Wave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Midi%,WDM.Interface.Midi
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Midi%,WDM.Interface.Midi
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Midi%,WDM.Interface.Midi

[ISDEVINS64.NT.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topology%,WDM.Interface.Topology
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave%,WDM.Interface.Wave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave%,WDM.Interface.Wave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave%,WDM.Interface.Wave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Midi%,WDM.Interface.Midi
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Midi%,WDM.Interface.Midi
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Midi%,WDM.Interface.Midi

[ISDEVINS64.Services]
AddService = %ISDEVINS.Service%, 0x00000002, ISDEVINS64_Service_Inst

[ISDEVINS64.NT.Services]
AddService = %ISDEVINS.Service%, 0x00000002, ISDEVINS64_Service_Inst

[ISDEVINS64_Service_Inst]
DisplayName   = %ISDEVINS.SvcDesc%
ServiceType   = 1                  ; SERVICE_KERNEL_DRIVER
StartType     = 1                  ; SERVICE_DEMAND_START
ErrorControl  = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\wdmqua64.sys

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

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

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

;==============================================================
[ISDEVINS.AddReg]
HKR,,AssociatedFilters,,"wdmaud,swmidi,redbook"
HKR,,Driver,,wdmqua.sys
HKR,,NTMPDriver,,"wdmqua.sys,sbemul.sys"

HKR,Drivers,SubClasses,,"wave,midi,mixer"

HKR,Drivers\wave\wdmaud.drv,Driver,,wdmaud.drv
HKR,Drivers\wave\wdmaud.drv,Description,,%MME.DeviceDesc%

HKR,Drivers\mixer\wdmaud.drv,Driver,,wdmaud.drv
HKR,Drivers\mixer\wdmaud.drv,Description,,%MME.DeviceDesc%

HKR,Drivers\midi\wdmaud.drv,Driver,,wdmaud.drv
HKR,Drivers\midi\wdmaud.drv,Description,,%MME.DriverDesc%

[ISDEVINS64.AddReg]
HKR,,AssociatedFilters,,"wdmaud,swmidi,redbook"
HKR,,Driver,,wdmqua64.sys
HKR,,NTMPDriver,,"wdmqua64.sys,sbemul.sys"

HKR,Drivers,SubClasses,,"wave,midi,mixer"

HKR,Drivers\wave\wdmaud.drv,Driver,,wdmaud.drv
HKR,Drivers\wave\wdmaud.drv,Description,,%MME.DeviceDesc%

HKR,Drivers\mixer\wdmaud.drv,Driver,,wdmaud.drv
HKR,Drivers\mixer\wdmaud.drv,Description,,%MME.DeviceDesc%

HKR,Drivers\midi\wdmaud.drv,Driver,,wdmaud.drv
HKR,Drivers\midi\wdmaud.drv,Description,,%MME.DriverDesc%

[ISDEVINS.App.AddReg]
HKLM,SOFTWARE\ASIO\%ASIO_DRIVER_NAME%,CLSID,,%ASIO_DRIVER_GUID%
HKCR,CLSID\%ASIO_DRIVER_GUID%,,,%ASIO_DRIVER_NAME%
HKCR,CLSID\%ASIO_DRIVER_GUID%\InProcServer32,,,"%10%\system32\asioqua.dll"
HKCR,CLSID\%ASIO_DRIVER_GUID%\InProcServer32,ThreadingModel,,"Apartment"
HKLM,Software\Microsoft\Windows\CurrentVersion\Run,ctlqua.exe,,ctlqua.exe
HKLM,Software\Microsoft\Windows\CurrentVersion\Run,ctlfree.exe,,ctlfree.exe

[ISDEVINS64.App.AddReg]
; 64BIT ASIO
HKLM,SOFTWARE\ASIO\%ASIO_DRIVER_NAME%,CLSID,,%ASIO_DRIVER_GUID%
HKCR,CLSID\%ASIO_DRIVER_GUID%,,,%ASIO_DRIVER_NAME%
HKCR,CLSID\%ASIO_DRIVER_GUID%\InProcServer32,,,"%10%\system32\asioqua64.dll"
HKCR,CLSID\%ASIO_DRIVER_GUID%\InProcServer32,ThreadingModel,,"Apartment"

; WOW64 ASIO
HKLM,SOFTWARE\Wow6432Node\ASIO\%ASIO_DRIVER_NAME%,CLSID,,%ASIO_DRIVER_GUID%
HKCR,Wow6432Node\CLSID\%ASIO_DRIVER_GUID%,,,%ASIO_DRIVER_NAME%
HKCR,Wow6432Node\CLSID\%ASIO_DRIVER_GUID%\InProcServer32,,,"%10%\system32\asioqua.dll"
HKCR,Wow6432Node\CLSID\%ASIO_DRIVER_GUID%\InProcServer32,ThreadingModel,,"Apartment"

;64BIT Panel
HKLM,Software\Microsoft\Windows\CurrentVersion\Run,ctlqua64.exe,,ctlqua64.exe
HKLM,Software\Microsoft\Windows\CurrentVersion\Run,ctlfree64.exe,,ctlfree64.exe


;==================================================================
[ISDEVINS.CopyList]
wdmqua.sys
[ISDEVINS64.CopyList]
wdmqua64.sys

[ISDEVINS.App.CopyList]
asioqua.dll
ctlqua.exe
ctlfree.exe
[ISDEVINS64.App.CopyList]
asioqua64.dll
ctlqua64.exe
ctlfree64.exe
[ISDEVINS64.Wow.CopyList]
asioqua.dll

[DestinationDirs]
ISDEVINS.CopyList=10,system32\drivers
ISDEVINS.App.CopyList = 10, system32
ISDEVINS64.CopyList=10,system32\drivers
ISDEVINS64.App.CopyList = 10, system32
ISDEVINS64.Wow.CopyList = 10, SysWow64

;[DriverDel]
;DelFiles=ISQU.CopyList, ISQU.App.CopyList
;[DriverUp]
;CopyFiles=ISQU.CopyList, ISQU.App.CopyList

;[DriverDel.NTx86]
;DelFiles=ISQU.CopyList.NTx86, ISQU.App.CopyList.NTx86
;[DriverDel.NTamd86]
;DelFiles=ISQU.CopyList.NTamd64, ISQU.App.CopyList.NTamd64
;[DriverUp.NTx86]
;CopyFiles=ISQU.CopyList.NTx86, ISQU.App.CopyList.NTx86
;[DriverUp.NTamd86]
;CopyFiles=ISQU.CopyList.NTamd64, ISQU.App.CopyList.NTamd64

;====================== Strings ===============================
[Strings]
MfgName					="INFRASONIC"
Provider				="SIMS Corp"
ISDEVINS.Service		="WDMQUA"

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_Wave				="Wave"
KSNAME_Topology			="Topology"
KSNAME_Midi				="Midi"

ISDEVINS.DeviceDesc		="QUARTET Audio Driver"
ISDEVINS.SvcDesc		="Service for QUARTET Audio Driver"
MME.DeviceDesc          ="QUARTET MME Driver"

WDM.Topology.szPname	="QUARTET Mixer"
WDM.Wave.szPname		="QUARTET Audio"
WDM.Midi.szPname		="QUARTET Midi"

ASIO_DRIVER_GUID         ="{B6179B4E-BBEB-4b4e-91CB-B0AAFBB6E3FE}"
ASIO_DRIVER_NAME         ="ASIO 2.2 - QUARTET"