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

[Version]
Signature = "$Windows NT$"
Class = MEDIA
ClassGUID = {4d36e96c-e325-11ce-bfc1-08002be10318}
Provider = RME
DriverVer = 03/04/2008,2.8.6.0
CatalogFile = fireface.cat

;=== mm/dd/yyyy
;==============================================================

[SourceDisksNames]
1 = "RME Fireface Driver Installation Disk",,,

[SourceDisksFiles]

fireface.sys = 1
fireface_64.sys = 1
fireface_mme.dll = 1
firefacemix.exe = 1
fireface.exe = 1
fireface_asio.dll = 1
fireface_asio_64.dll = 1
fireface.inf = 1

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

[DestinationDirs]
fireface.CopyFiles.Kern = 12
fireface.CopyFiles.User = 11
fireface.CopyFiles.Inf  = 11    ;=== 17
fireface.CopyFiles.Asio = 11
fireface.CopyFiles.Asio64 = 10,SysWOW64
fireface.CopyFiles.Asio64_2 = 11

[fireface.CopyFiles.Kern]
fireface.sys
fireface_64.sys

[fireface.CopyFiles.User]
fireface_mme.dll
firefacemix.exe
fireface.exe

[fireface.CopyFiles.Asio]
fireface_asio.dll

[fireface.CopyFiles.Asio64]
fireface_asio.dll

[fireface.CopyFiles.Asio64_2]
fireface_asio_64.dll

[fireface.CopyFiles.Inf]
fireface.inf

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

[Manufacturer]
RME = Devices,NTX86,NTAMD64

[Devices]
%DeviceDescFireface800% = fireface800, 1394\a35&1
%DeviceDescFireface400% = fireface400, 1394\a35&2

[Devices.NTX86]
%DeviceDescFireface800% = fireface800, 1394\a35&1
%DeviceDescFireface400% = fireface400, 1394\a35&2

[Devices.NTAMD64]
%DeviceDescFireface800% = fireface800, 1394\a35&1
%DeviceDescFireface400% = fireface400, 1394\a35&2


[fireface800.NTX86]
Include = ks.inf, wdmaudio.inf
Needs = KS.Registration, WDMAUDIO.Registration
CopyFiles = fireface.CopyFiles.Kern, fireface.CopyFiles.User, fireface.CopyFiles.Inf, fireface.CopyFiles.Asio
AddReg = fireface.AddReg, fireface800.AddReg, fireface_32.AddReg

[fireface400.NTX86]
Include = ks.inf, wdmaudio.inf
Needs = KS.Registration, WDMAUDIO.Registration
CopyFiles = fireface.CopyFiles.Kern, fireface.CopyFiles.User, fireface.CopyFiles.Inf, fireface.CopyFiles.Asio
AddReg = fireface.AddReg, fireface400.AddReg, fireface_32.AddReg

[fireface800.NTAMD64]
Include = ks.inf, wdmaudio.inf
Needs = KS.Registration, WDMAUDIO.Registration
CopyFiles = fireface.CopyFiles.Kern, fireface.CopyFiles.User, fireface.CopyFiles.Inf, fireface.CopyFiles.Asio64, fireface.CopyFiles.Asio64_2
AddReg = fireface.AddReg, fireface800.AddReg, fireface_64.AddReg

[fireface400.NTAMD64]
Include = ks.inf, wdmaudio.inf
Needs = KS.Registration, WDMAUDIO.Registration
CopyFiles = fireface.CopyFiles.Kern, fireface.CopyFiles.User, fireface.CopyFiles.Inf, fireface.CopyFiles.Asio64, fireface.CopyFiles.Asio64_2
AddReg = fireface.AddReg, fireface400.AddReg, fireface_64.AddReg

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

[fireface.AddReg]

HKR,,AssociatedFilters,,"wdmaud,swmidi,redbook"
HKR,Drivers,SubClasses,,"wave,midi,mixer"

HKR,Drivers\wave\wdmaud.drv,Driver,,wdmaud.drv
HKR,Drivers\midi\wdmaud.drv,Driver,,wdmaud.drv
HKR,Drivers\mixer\wdmaud.drv,Driver,,wdmaud.drv

HKR,Drivers\wave\wdmaud.drv,Description,,%fireface.DeviceDesc%
HKR,Drivers\midi\wdmaud.drv,Description,,%fireface.DeviceDesc%
HKR,Drivers\mixer\wdmaud.drv,Description,,%fireface.DeviceDesc%

HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\FIREFACE,DisplayName,,"RME Fireface"
HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\FIREFACE,DisplayVersion,,"2.8.6.0"
HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\FIREFACE,UninstallString,,"rundll32.exe setupapi.dll,InstallHinfSection DefaultUninstall 132 %11%\fireface.inf"
HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\FIREFACE,Publisher,,"RME Intelligent Audio Solutions"
HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\FIREFACE,UrlInfoAbout,,"http://www.rme-audio.de"
HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\FIREFACE,UrlUpdateInfo,,"http://www.rme-audio.de"
HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\FIREFACE,HelpLink,,"http://www.rme-audio.de"

HKLM,%MediaCategories%\%GUID.Analog_12%,Name,,%fireface.Wave1.szPname%
HKLM,%MediaCategories%\%GUID.Analog_12%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.Analog_34%,Name,,%fireface.Wave2.szPname%
HKLM,%MediaCategories%\%GUID.Analog_34%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.Analog_56%,Name,,%fireface.Wave3.szPname%
HKLM,%MediaCategories%\%GUID.Analog_56%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.Analog_78%,Name,,%fireface.Wave4.szPname%
HKLM,%MediaCategories%\%GUID.Analog_78%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.Analog_910%,Name,,%fireface.Wave5.szPname%
HKLM,%MediaCategories%\%GUID.Analog_910%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.SPDIF%,Name,,%fireface.Wave6.szPname%
HKLM,%MediaCategories%\%GUID.SPDIF%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.ADAT1_12%,Name,,%fireface.Wave7.szPname%
HKLM,%MediaCategories%\%GUID.ADAT1_12%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.ADAT1_34%,Name,,%fireface.Wave8.szPname%
HKLM,%MediaCategories%\%GUID.ADAT1_34%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.ADAT1_56%,Name,,%fireface.Wave9.szPname%
HKLM,%MediaCategories%\%GUID.ADAT1_56%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.ADAT1_78%,Name,,%fireface.waveA.szPname%
HKLM,%MediaCategories%\%GUID.ADAT1_78%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.ADAT2_12%,Name,,%fireface.waveB.szPname%
HKLM,%MediaCategories%\%GUID.ADAT2_12%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.ADAT2_34%,Name,,%fireface.waveC.szPname%
HKLM,%MediaCategories%\%GUID.ADAT2_34%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.ADAT2_56%,Name,,%fireface.waveD.szPname%
HKLM,%MediaCategories%\%GUID.ADAT2_56%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.ADAT2_78%,Name,,%fireface.waveE.szPname%
HKLM,%MediaCategories%\%GUID.ADAT2_78%,Display,1,00,00,00,00

HKLM,SOFTWARE\ASIO\%ASIO_NAME%,CLSID,0,%ASIO_GUID%
HKLM,SOFTWARE\ASIO\%ASIO_NAME%,Description,0,%ASIO_NAME%
HKCR,CLSID\%ASIO_GUID%,,0,%ASIO_NAME%
HKCR,CLSID\%ASIO_GUID%\InProcServer32,ThreadingModel,0,Apartment

HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Run,FirefaceTray,,"fireface.exe"
HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Run,FirefaceMixTray,,"firefacemix.exe"

HKR,Settings,AdvancedDialog,1,0 ;
HKR,Settings,RmeAltIrq,1,1 ;

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

[fireface800.AddReg]

HKR,Settings,DeviceGroups,1,4,1,1,1,1,1,4,1,1,1,4,1,1,1 ; the first value is always 1, next values = num interleaved wdm stereo channels!!!

HKR,Settings,RMEAltStart,1,1 ;
HKR,Settings,RmeAltADA,1,0 ;

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

[fireface400.AddReg]

HKR,Settings,DeviceGroups,1,4,1,1,1,1,4,1,1,1,8,8,8,8,8 ; the first value is always 1, next values = num interleaved wdm stereo channels!!!

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

[fireface_32.AddReg]

HKR,,Driver,,fireface.sys
HKR,,NTMPDriver,,"fireface.sys"

HKR,Drivers\wave\fireface_mme.dll,Driver,,fireface_mme.dll
HKR,Drivers\wave\fireface_mme.dll,Description,,%fireface.DeviceDesc%

HKCR,CLSID\%ASIO_GUID%\InProcServer32,,0,%11%\fireface_asio.dll

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

[fireface_64.AddReg]

HKR,,Driver,,fireface_64.sys
HKR,,NTMPDriver,,"fireface_64.sys"

HKCR,CLSID\%ASIO_GUID%\InProcServer32,,0,%11%\fireface_asio_64.dll

HKLM,SOFTWARE\Wow6432Node\ASIO\%ASIO_NAME%,CLSID,0,%ASIO_GUID%
HKLM,SOFTWARE\Wow6432Node\ASIO\%ASIO_NAME%,Description,0,%ASIO_NAME%
HKCR,Wow6432Node\CLSID\%ASIO_GUID%,,0,%ASIO_NAME%
HKCR,Wow6432Node\CLSID\%ASIO_GUID%\InProcServer32,,0,%11%\fireface_asio.dll
HKCR,Wow6432Node\CLSID\%ASIO_GUID%\InProcServer32,ThreadingModel,0,Apartment

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

[DefaultUninstall]
DelReg = Remove
DelFiles = fireface.CopyFiles.Inf,fireface.CopyFiles.User,fireface.CopyFiles.Kern,fireface.CopyFiles.Asio,fireface.CopyFiles.Asio64,fireface.CopyFiles.Asio64_2
Reboot = 0

[Remove]
HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\FIREFACE
HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Run,FirefaceTray,,"fireface.exe"
HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Run,FirefaceMixTray,,"firefacemix.exe"
HKLM,SOFTWARE\ASIO\%ASIO_NAME%
HKCR,CLSID\%ASIO_GUID%

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

[fireface800.NTX86.Services]
AddService = fireface, 0x00000002, fireface_Service_Inst

[fireface400.NTX86.Services]
AddService = fireface, 0x00000002, fireface_Service_Inst

[fireface800.NTAMD64.Services]
AddService = fireface, 0x00000002, fireface_Service_64_Inst

[fireface400.NTAMD64.Services]
AddService = fireface, 0x00000002, fireface_Service_64_Inst

[fireface_Service_Inst]
DisplayName   = %fireface.SvcDesc%
ServiceType   = 1                  ; SERVICE_KERNEL_DRIVER
StartType     = 3                  ; SERVICE_DEMAND_START
ErrorControl  = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary = %10%\system32\drivers\fireface.sys

[fireface_Service_64_Inst]
DisplayName   = %fireface.SvcDesc%
ServiceType   = 1                  ; SERVICE_KERNEL_DRIVER
StartType     = 3                  ; SERVICE_DEMAND_START
ErrorControl  = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary = %10%\system32\drivers\fireface_64.sys

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

[fireface800.NTX86.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave1%,fireface800.Interface.HDSPFireWave1
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave2%,fireface800.Interface.HDSPFireWave2
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave3%,fireface800.Interface.HDSPFireWave3
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave4%,fireface800.Interface.HDSPFireWave4
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave5%,fireface800.Interface.HDSPFireWave5
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave6%,fireface800.Interface.HDSPFireWave6
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave7%,fireface800.Interface.HDSPFireWave7
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave8%,fireface800.Interface.HDSPFireWave8
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave9%,fireface800.Interface.HDSPFireWave9
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_WaveA%,fireface800.Interface.HDSPFireWaveA
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_WaveB%,fireface800.Interface.HDSPFireWaveB
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_WaveC%,fireface800.Interface.HDSPFireWaveC
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_WaveD%,fireface800.Interface.HDSPFireWaveD
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_WaveE%,fireface800.Interface.HDSPFireWaveE

AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave1%,fireface800.Interface.HDSPFireWave1
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave2%,fireface800.Interface.HDSPFireWave2
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave3%,fireface800.Interface.HDSPFireWave3
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave4%,fireface800.Interface.HDSPFireWave4
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave5%,fireface800.Interface.HDSPFireWave5
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave6%,fireface800.Interface.HDSPFireWave6
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave7%,fireface800.Interface.HDSPFireWave7
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave8%,fireface800.Interface.HDSPFireWave8
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave9%,fireface800.Interface.HDSPFireWave9
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_WaveA%,fireface800.Interface.HDSPFireWaveA
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_WaveB%,fireface800.Interface.HDSPFireWaveB
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_WaveC%,fireface800.Interface.HDSPFireWaveC
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_WaveD%,fireface800.Interface.HDSPFireWaveD
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_WaveE%,fireface800.Interface.HDSPFireWaveE

AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave1%,fireface800.Interface.HDSPFireWave1
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave2%,fireface800.Interface.HDSPFireWave2
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave3%,fireface800.Interface.HDSPFireWave3
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave4%,fireface800.Interface.HDSPFireWave4
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave5%,fireface800.Interface.HDSPFireWave5
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave6%,fireface800.Interface.HDSPFireWave6
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave7%,fireface800.Interface.HDSPFireWave7
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave8%,fireface800.Interface.HDSPFireWave8
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave9%,fireface800.Interface.HDSPFireWave9
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_WaveA%,fireface800.Interface.HDSPFireWaveA
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_WaveB%,fireface800.Interface.HDSPFireWaveB
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_WaveC%,fireface800.Interface.HDSPFireWaveC
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_WaveD%,fireface800.Interface.HDSPFireWaveD
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_WaveE%,fireface800.Interface.HDSPFireWaveE

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_UART1%,fireface800.Interface.HDSPFireUart
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_UART1%,fireface800.Interface.HDSPFireUart
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_UART1%,fireface800.Interface.HDSPFireUart

[fireface400.NTX86.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave1%,fireface400.Interface.HDSPFireWave1
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave2%,fireface400.Interface.HDSPFireWave2
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave3%,fireface400.Interface.HDSPFireWave3
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave4%,fireface400.Interface.HDSPFireWave4
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave5%,fireface400.Interface.HDSPFireWave5
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave6%,fireface400.Interface.HDSPFireWave6
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave7%,fireface400.Interface.HDSPFireWave7
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave8%,fireface400.Interface.HDSPFireWave8
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave9%,fireface400.Interface.HDSPFireWave9

AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave1%,fireface400.Interface.HDSPFireWave1
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave2%,fireface400.Interface.HDSPFireWave2
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave3%,fireface400.Interface.HDSPFireWave3
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave4%,fireface400.Interface.HDSPFireWave4
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave5%,fireface400.Interface.HDSPFireWave5
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave6%,fireface400.Interface.HDSPFireWave6
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave7%,fireface400.Interface.HDSPFireWave7
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave8%,fireface400.Interface.HDSPFireWave8
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave9%,fireface400.Interface.HDSPFireWave9

AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave1%,fireface400.Interface.HDSPFireWave1
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave2%,fireface400.Interface.HDSPFireWave2
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave3%,fireface400.Interface.HDSPFireWave3
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave4%,fireface400.Interface.HDSPFireWave4
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave5%,fireface400.Interface.HDSPFireWave5
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave6%,fireface400.Interface.HDSPFireWave6
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave7%,fireface400.Interface.HDSPFireWave7
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave8%,fireface400.Interface.HDSPFireWave8
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave9%,fireface400.Interface.HDSPFireWave9

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_UART1%,fireface400.Interface.HDSPFireUart1
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_UART1%,fireface400.Interface.HDSPFireUart1
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_UART1%,fireface400.Interface.HDSPFireUart1
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_UART2%,fireface400.Interface.HDSPFireUart2
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_UART2%,fireface400.Interface.HDSPFireUart2
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_UART2%,fireface400.Interface.HDSPFireUart2

[fireface800.NTAMD64.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave1%,fireface800.Interface.HDSPFireWave1
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave2%,fireface800.Interface.HDSPFireWave2
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave3%,fireface800.Interface.HDSPFireWave3
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave4%,fireface800.Interface.HDSPFireWave4
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave5%,fireface800.Interface.HDSPFireWave5
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave6%,fireface800.Interface.HDSPFireWave6
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave7%,fireface800.Interface.HDSPFireWave7
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave8%,fireface800.Interface.HDSPFireWave8
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave9%,fireface800.Interface.HDSPFireWave9
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_WaveA%,fireface800.Interface.HDSPFireWaveA
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_WaveB%,fireface800.Interface.HDSPFireWaveB
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_WaveC%,fireface800.Interface.HDSPFireWaveC
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_WaveD%,fireface800.Interface.HDSPFireWaveD
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_WaveE%,fireface800.Interface.HDSPFireWaveE

AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave1%,fireface800.Interface.HDSPFireWave1
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave2%,fireface800.Interface.HDSPFireWave2
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave3%,fireface800.Interface.HDSPFireWave3
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave4%,fireface800.Interface.HDSPFireWave4
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave5%,fireface800.Interface.HDSPFireWave5
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave6%,fireface800.Interface.HDSPFireWave6
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave7%,fireface800.Interface.HDSPFireWave7
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave8%,fireface800.Interface.HDSPFireWave8
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave9%,fireface800.Interface.HDSPFireWave9
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_WaveA%,fireface800.Interface.HDSPFireWaveA
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_WaveB%,fireface800.Interface.HDSPFireWaveB
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_WaveC%,fireface800.Interface.HDSPFireWaveC
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_WaveD%,fireface800.Interface.HDSPFireWaveD
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_WaveE%,fireface800.Interface.HDSPFireWaveE

AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave1%,fireface800.Interface.HDSPFireWave1
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave2%,fireface800.Interface.HDSPFireWave2
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave3%,fireface800.Interface.HDSPFireWave3
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave4%,fireface800.Interface.HDSPFireWave4
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave5%,fireface800.Interface.HDSPFireWave5
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave6%,fireface800.Interface.HDSPFireWave6
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave7%,fireface800.Interface.HDSPFireWave7
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave8%,fireface800.Interface.HDSPFireWave8
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave9%,fireface800.Interface.HDSPFireWave9
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_WaveA%,fireface800.Interface.HDSPFireWaveA
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_WaveB%,fireface800.Interface.HDSPFireWaveB
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_WaveC%,fireface800.Interface.HDSPFireWaveC
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_WaveD%,fireface800.Interface.HDSPFireWaveD
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_WaveE%,fireface800.Interface.HDSPFireWaveE

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_UART1%,fireface800.Interface.HDSPFireUart
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_UART1%,fireface800.Interface.HDSPFireUart
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_UART1%,fireface800.Interface.HDSPFireUart

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

[fireface400.NTAMD64.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave1%,fireface400.Interface.HDSPFireWave1
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave2%,fireface400.Interface.HDSPFireWave2
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave3%,fireface400.Interface.HDSPFireWave3
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave4%,fireface400.Interface.HDSPFireWave4
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave5%,fireface400.Interface.HDSPFireWave5
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave6%,fireface400.Interface.HDSPFireWave6
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave7%,fireface400.Interface.HDSPFireWave7
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave8%,fireface400.Interface.HDSPFireWave8
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave9%,fireface400.Interface.HDSPFireWave9

AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave1%,fireface400.Interface.HDSPFireWave1
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave2%,fireface400.Interface.HDSPFireWave2
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave3%,fireface400.Interface.HDSPFireWave3
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave4%,fireface400.Interface.HDSPFireWave4
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave5%,fireface400.Interface.HDSPFireWave5
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave6%,fireface400.Interface.HDSPFireWave6
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave7%,fireface400.Interface.HDSPFireWave7
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave8%,fireface400.Interface.HDSPFireWave8
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave9%,fireface400.Interface.HDSPFireWave9

AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave1%,fireface400.Interface.HDSPFireWave1
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave2%,fireface400.Interface.HDSPFireWave2
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave3%,fireface400.Interface.HDSPFireWave3
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave4%,fireface400.Interface.HDSPFireWave4
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave5%,fireface400.Interface.HDSPFireWave5
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave6%,fireface400.Interface.HDSPFireWave6
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave7%,fireface400.Interface.HDSPFireWave7
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave8%,fireface400.Interface.HDSPFireWave8
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave9%,fireface400.Interface.HDSPFireWave9

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_UART1%,fireface400.Interface.HDSPFireUart1
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_UART1%,fireface400.Interface.HDSPFireUart1
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_UART1%,fireface400.Interface.HDSPFireUart1
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_UART2%,fireface400.Interface.HDSPFireUart2
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_UART2%,fireface400.Interface.HDSPFireUart2
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_UART2%,fireface400.Interface.HDSPFireUart2
;==============================================================

[fireface800.Interface.HDSPFireWave1]
AddReg=fireface800.I.HDSPFireWave1.AddReg
[fireface800.Interface.HDSPFireWave2]
AddReg=fireface800.I.HDSPFireWave2.AddReg
[fireface800.Interface.HDSPFireWave3]
AddReg=fireface800.I.HDSPFireWave3.AddReg
[fireface800.Interface.HDSPFireWave4]
AddReg=fireface800.I.HDSPFireWave4.AddReg
[fireface800.Interface.HDSPFireWave5]
AddReg=fireface800.I.HDSPFireWave5.AddReg
[fireface800.Interface.HDSPFireWave6]
AddReg=fireface800.I.HDSPFireWave6.AddReg
[fireface800.Interface.HDSPFireWave7]
AddReg=fireface800.I.HDSPFireWave7.AddReg
[fireface800.Interface.HDSPFireWave8]
AddReg=fireface800.I.HDSPFireWave8.AddReg
[fireface800.Interface.HDSPFireWave9]
AddReg=fireface800.I.HDSPFireWave9.AddReg
[fireface800.Interface.HDSPFireWaveA]
AddReg=fireface800.I.HDSPFireWaveA.AddReg
[fireface800.Interface.HDSPFireWaveB]
AddReg=fireface800.I.HDSPFireWaveB.AddReg
[fireface800.Interface.HDSPFireWaveC]
AddReg=fireface800.I.HDSPFireWaveC.AddReg
[fireface800.Interface.HDSPFireWaveD]
AddReg=fireface800.I.HDSPFireWaveD.AddReg
[fireface800.Interface.HDSPFireWaveE]
AddReg=fireface800.I.HDSPFireWaveE.AddReg
[fireface800.Interface.HDSPFireUart]
AddReg=fireface800.I.HDSPFireUart.AddReg

[fireface400.Interface.HDSPFireWave1]
AddReg=fireface400.I.HDSPFireWave1.AddReg
[fireface400.Interface.HDSPFireWave2]
AddReg=fireface400.I.HDSPFireWave2.AddReg
[fireface400.Interface.HDSPFireWave3]
AddReg=fireface400.I.HDSPFireWave3.AddReg
[fireface400.Interface.HDSPFireWave4]
AddReg=fireface400.I.HDSPFireWave4.AddReg
[fireface400.Interface.HDSPFireWave5]
AddReg=fireface400.I.HDSPFireWave5.AddReg
[fireface400.Interface.HDSPFireWave6]
AddReg=fireface400.I.HDSPFireWave6.AddReg
[fireface400.Interface.HDSPFireWave7]
AddReg=fireface400.I.HDSPFireWave7.AddReg
[fireface400.Interface.HDSPFireWave8]
AddReg=fireface400.I.HDSPFireWave8.AddReg
[fireface400.Interface.HDSPFireWave9]
AddReg=fireface400.I.HDSPFireWave9.AddReg
[fireface400.Interface.HDSPFireUart1]
AddReg=fireface400.I.HDSPFireUart1.AddReg
[fireface400.Interface.HDSPFireUart2]
AddReg=fireface400.I.HDSPFireUart2.AddReg


[fireface800.I.HDSPFireWave1.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface800.Wave1.szPname%

[fireface400.I.HDSPFireWave1.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface400.Wave1.szPname%


[fireface800.I.HDSPFireWave2.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface800.Wave2.szPname%

[fireface400.I.HDSPFireWave2.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface400.Wave2.szPname%


[fireface800.I.HDSPFireWave3.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface800.Wave3.szPname%

[fireface400.I.HDSPFireWave3.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface400.Wave3.szPname%


[fireface800.I.HDSPFireWave4.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface800.Wave4.szPname%

[fireface400.I.HDSPFireWave4.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface400.Wave4.szPname%


[fireface800.I.HDSPFireWave5.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface800.Wave5.szPname%

[fireface400.I.HDSPFireWave5.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface400.Wave5.szPname%


[fireface800.I.HDSPFireWave6.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface800.Wave6.szPname%

[fireface400.I.HDSPFireWave6.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface400.Wave6.szPname%


[fireface800.I.HDSPFireWave7.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface800.Wave7.szPname%

[fireface400.I.HDSPFireWave7.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface400.Wave7.szPname%


[fireface800.I.HDSPFireWave8.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface800.Wave8.szPname%

[fireface400.I.HDSPFireWave8.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface400.Wave8.szPname%


[fireface800.I.HDSPFireWave9.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface800.Wave9.szPname%

[fireface400.I.HDSPFireWave9.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface400.Wave9.szPname%


[fireface800.I.HDSPFireWaveA.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface800.WaveA.szPname%

[fireface800.I.HDSPFireWaveB.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface800.WaveB.szPname%

[fireface800.I.HDSPFireWaveC.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface800.WaveC.szPname%

[fireface800.I.HDSPFireWaveD.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface800.WaveD.szPname%

[fireface800.I.HDSPFireWaveE.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface800.WaveE.szPname%

[fireface800.I.HDSPFireUart.AddReg]
HKR,,CSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface800.Uart.szPname%


[fireface400.I.HDSPFireUart1.AddReg]
HKR,,CSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface400.Uart1.szPname%

[fireface400.I.HDSPFireUart2.AddReg]
HKR,,CSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%fireface400.Uart2.szPname%

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

[Strings]
DiskDescription = "Fireface Driver Disk"
DeviceDescFireface800 = "RME Fireface 800"
DeviceDescFireface400 = "RME Fireface 400"
fireface.DeviceDesc = "RME Fireface"

fireface800.Wave1.szPname = "Fireface 800 Analog (1+2)"
fireface800.Wave2.szPname = "Fireface 800 Analog (3+4)"
fireface800.Wave3.szPname = "Fireface 800 Analog (5+6)"
fireface800.Wave4.szPname = "Fireface 800 Analog (7+8)"
fireface800.Wave5.szPname = "Fireface 800 Analog (9+10)"
fireface800.Wave6.szPname = "Fireface 800 SPDIF"
fireface800.Wave7.szPname = "Fireface 800 ADAT1 (1+2)"
fireface800.Wave8.szPname = "Fireface 800 ADAT1 (3+4)"
fireface800.Wave9.szPname = "Fireface 800 ADAT1 (5+6)"
fireface800.WaveA.szPname = "Fireface 800 ADAT1 (7+8)"
fireface800.WaveB.szPname = "Fireface 800 ADAT2 (1+2)"
fireface800.WaveC.szPname = "Fireface 800 ADAT2 (3+4)"
fireface800.WaveD.szPname = "Fireface 800 ADAT2 (5+6)"
fireface800.WaveE.szPname = "Fireface 800 ADAT2 (7+8)"
fireface800.Uart.szPname = "Fireface 800 Midi"

fireface400.Wave1.szPname = "Fireface 400 Analog (1+2)"
fireface400.Wave2.szPname = "Fireface 400 Analog (3+4)"
fireface400.Wave3.szPname = "Fireface 400 Analog (5+6)"
fireface400.Wave4.szPname = "Fireface 400 Analog (7+8)"
fireface400.Wave5.szPname = "Fireface 400 SPDIF"
fireface400.Wave6.szPname = "Fireface 400 ADAT (1+2)"
fireface400.Wave7.szPname = "Fireface 400 ADAT (3+4)"
fireface400.Wave8.szPname = "Fireface 400 ADAT (5+6)"
fireface400.Wave9.szPname = "Fireface 400 ADAT (7+8)"
fireface400.Uart1.szPname = "Fireface 400 Midi 1"
fireface400.Uart2.szPname = "Fireface 400 Midi 2" 

fireface.Wave1.szPname = "Analog (1+2)"
fireface.Wave2.szPname = "Analog (3+4)"
fireface.Wave3.szPname = "Analog (5+6)"
fireface.Wave4.szPname = "Analog (7+8)"
fireface.Wave5.szPname = "Analog (9+10)"
fireface.Wave6.szPname = "SPDIF"
fireface.Wave7.szPname = "ADAT1 (1+2)"
fireface.Wave8.szPname = "ADAT1 (3+4)"
fireface.Wave9.szPname = "ADAT1 (5+6)"
fireface.WaveA.szPname = "ADAT1 (7+8)"
fireface.WaveB.szPname = "ADAT2 (1+2)"
fireface.WaveC.szPname = "ADAT2 (3+4)"
fireface.WaveD.szPname = "ADAT2 (5+6)"
fireface.WaveE.szPname = "ADAT2 (7+8)"

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}"
KSCATEGORY_TOPOLOGY = "{DDA54A40-1E4C-11D1-A050-405705C10000}" 

KSNAME_Wave1 = "HDSPFireWave1"
KSNAME_Wave2 = "HDSPFireWave2"
KSNAME_Wave3 = "HDSPFireWave3"
KSNAME_Wave4 = "HDSPFireWave4"
KSNAME_Wave5 = "HDSPFireWave5"
KSNAME_Wave6 = "HDSPFireWave6"
KSNAME_Wave7 = "HDSPFireWave7"
KSNAME_Wave8 = "HDSPFireWave8"
KSNAME_Wave9 = "HDSPFireWave9"
KSNAME_WaveA = "HDSPFireWaveA"
KSNAME_WaveB = "HDSPFireWaveB"
KSNAME_WaveC = "HDSPFireWaveC"
KSNAME_WaveD = "HDSPFireWaveD"
KSNAME_WaveE = "HDSPFireWaveE"
KSNAME_UART  = "HDSPFireUart"
KSNAME_UART1 = "HDSPFireUart1"
KSNAME_UART2 = "HDSPFireUart2"

fireface.SvcDesc = "Service for Fireface (WDM)"

ASIO_NAME = "ASIO Fireface"
ASIO_GUID = "{60E4866B-2FD5-4cc5-BA49-F34E6BF3EB21}"

GUID.Analog_12 =    "{BE8C38C0-E0EF-4114-8DF1-363072BD27D2}"
GUID.Analog_34 =    "{BE8C38C1-E0EF-4114-8DF1-363072BD27D2}"
GUID.Analog_56 =    "{BE8C38C2-E0EF-4114-8DF1-363072BD27D2}"
GUID.Analog_78 =    "{BE8C38C3-E0EF-4114-8DF1-363072BD27D2}"
GUID.Analog_910 =   "{BE8C38C4-E0EF-4114-8DF1-363072BD27D2}"
GUID.SPDIF =        "{BE8C38C5-E0EF-4114-8DF1-363072BD27D2}"
GUID.ADAT1_12 =     "{BE8C38C6-E0EF-4114-8DF1-363072BD27D2}"
GUID.ADAT1_34 =     "{BE8C38C7-E0EF-4114-8DF1-363072BD27D2}"
GUID.ADAT1_56 =     "{BE8C38C8-E0EF-4114-8DF1-363072BD27D2}"
GUID.ADAT1_78 =     "{BE8C38C9-E0EF-4114-8DF1-363072BD27D2}"
GUID.ADAT2_12 =     "{BE8C38CA-E0EF-4114-8DF1-363072BD27D2}"
GUID.ADAT2_34 =     "{BE8C38CB-E0EF-4114-8DF1-363072BD27D2}"
GUID.ADAT2_56 =     "{BE8C38CC-E0EF-4114-8DF1-363072BD27D2}"
GUID.ADAT2_78 =     "{BE8C38CD-E0EF-4114-8DF1-363072BD27D2}"

MediaCategories="SYSTEM\CurrentControlSet\Control\MediaCategories"

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