
[Version]
Signature="$CHICAGO$"
Class=MEDIA
ClassGUID={4d36e96c-e325-11ce-bfc1-08002be10318}
provider=%MSFT%
LayoutFile=layout.inf
DriverVer =07/01/2001,5.1.2535.0

[Manufacturer]
%CSMfgName%=Crystal

[SourceDisksNames]
1 = %DiskID1%

[SourceDisksFiles]
cwbase.sys = 1
cwbwdm.sys = 1
cwbmidi.sys = 1

;; Excluding drivers from the "Add New Hardware" list.
[ControlFlags]

ExcludeFromSelect = *CSC000F
ExcludeFromSelect = *CSC010F


[Crystal]
%*CSC0100.DeviceDesc%=CSC0100_Device, *CSC0000
%*CSC010F.DeviceDesc%=CSC010F_Device, *CSC000F
%*CSC0100.DeviceDesc%=CSC0100_Device, *CSC0011
%*CSC0100.DeviceDesc%=CSC0100_Device, *CSC0100
%*CSC010F.DeviceDesc%=CSC010F_Device, *CSC010F
%*CSC0100.DeviceDesc%=CSC0100_Device, *CSC0111

;;REM *CSC0001 & *CSC0101 are in gameport.inf

%*CSC0102.DeviceDesc%=CSC0102_Device, *CSC0002
%*CSC0102.DeviceDesc%=CSC0102_Device, *CSC0010
%*CSC0102.DeviceDesc%=CSC0102_Device, *CSC0102
%*CSC0102.DeviceDesc%=CSC0102_Device, *CSC0110

%*CSC0103.DeviceDesc%=CSC0103_Device, *CSC0003
%*CSC0103.DeviceDesc%=CSC0103_Device, *CSC0103


[DestinationDirs]
CSC0100.CopyList     = 10,system32\drivers ; %SystemRoot%\system32\drivers
CSC0102.CopyList     = 10,system32\drivers ; %SystemRoot%\system32\drivers
CSC0103.CopyList     = 10,system32\drivers ; %SystemRoot%\system32\drivers

[CSC0100_Device]
Include=ks.inf, wdmaudio.inf
Needs=KS.Registration, WDMAUDIO.Registration, WDMAUDIO.FDMA
CopyFiles=CSC0100.CopyList
AddReg=CSC0100.AddReg
KnownFiles = CSC.KnownFiles

[CSC0102_Device]
Include=ks.inf, wdmaudio.inf
Needs=KS.Registration, WDMAUDIO.Registration
CopyFiles=CSC0102.CopyList
AddReg=CSC0102.AddReg
KnownFiles = CSC.KnownFiles

[CSC0103_Device]
Include=ks.inf, wdmaudio.inf
Needs=KS.Registration, WDMAUDIO.Registration
CopyFiles=CSC0103.CopyList
AddReg=CSC0103.AddReg
KnownFiles = CSC.KnownFiles

[CSC010F_Device]
; This device is used as a place holder for a logical device that's been removed

[CSC0100.CopyList]
cwbase.sys
cwbwdm.sys
;cwbaudio.bin

[CSC0102.CopyList]
cwbwdm.sys
cwbase.sys

[CSC0103.CopyList]
cwbmidi.sys


[CSC0100.AddReg]
HKR,,AssociatedFilters,,"wdmaud,swmidi,redbook"
HKR,,Driver,,cwbwdm.sys
HKR,,NTMPDriver,,"cwbase.sys,cwbwdm.sys,sbemul.sys"

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

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\aux\wdmaud.drv,Driver,,wdmaud.drv

HKR,Drivers\wave\wdmaud.drv,Description,,%*CSC0100.DeviceDesc%
HKR,Drivers\midi\wdmaud.drv,Description,,%*CSC0100.DeviceDesc%
HKR,Drivers\mixer\wdmaud.drv,Description,,%*CSC0100.DeviceDesc%
HKR,Drivers\aux\wdmaud.drv,Description,,%*CSC0100.DeviceDesc%

;; Crystal friendly names
HKLM,%MediaCategories%\%CSCGUID.Kmixer%,Name,,%CSCPin.Kmixer%
HKLM,%MediaCategories%\%CSCGUID.Kmixer%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.Serial%,Name,,%CSCPin.Serial%
HKLM,%MediaCategories%\%CSCGUID.Serial%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.SRS%,Name,,%CSCPin.SRS%
HKLM,%MediaCategories%\%CSCGUID.SRS%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.QSound%,Name,,%CSCPin.Qsound%
HKLM,%MediaCategories%\%CSCGUID.QSound%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.Crystal3D%,Name,,%CSCPin.Crystal3D%
HKLM,%MediaCategories%\%CSCGUID.Crystal3D%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.Mono%,Name,,%CSCPin.Mono%
HKLM,%MediaCategories%\%CSCGUID.Mono%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.Mic%,Name,,%CSCPin.Mic%
HKLM,%MediaCategories%\%CSCGUID.Mic%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.LineIn%,Name,,%CSCPin.LineIn%
HKLM,%MediaCategories%\%CSCGUID.LineIn%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.CD%,Name,,%CSCPin.CD%
HKLM,%MediaCategories%\%CSCGUID.CD%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.Synth%,Name,,%CSCPin.Synth%
HKLM,%MediaCategories%\%CSCGUID.Synth%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.Wave%,Name,,%CSCPin.Wave%
HKLM,%MediaCategories%\%CSCGUID.Wave%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.ZVPort%,Name,,%CSCPin.ZVPort%
HKLM,%MediaCategories%\%CSCGUID.ZVPort%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.DAC2%,Name,,%CSCPin.DAC2%
HKLM,%MediaCategories%\%CSCGUID.DAC2%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.VirtualControls%,Name,,%CSCPin.VirtualControls%
HKLM,%MediaCategories%\%CSCGUID.VirtualControls%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.SynthMute%,Name,,%CSCPin.SynthMute%
HKLM,%MediaCategories%\%CSCGUID.SynthMute%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.DSPMute%,Name,,%CSCPin.DSPMute%
HKLM,%MediaCategories%\%CSCGUID.DSPMute%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.KMixerMute%,Name,,%CSCPin.KMixerMute%
HKLM,%MediaCategories%\%CSCGUID.KMixerMute%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.Mix%,Name,,%CSCPin.Mix%
HKLM,%MediaCategories%\%CSCGUID.Mix%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.SRSCenter%,Name,,%CSCPin.SRSCenter%
HKLM,%MediaCategories%\%CSCGUID.SRSCenter%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.SRSSpace%,Name,,%CSCPin.SRSSpace%
HKLM,%MediaCategories%\%CSCGUID.SRSSpace%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.QSoundSpace%,Name,,%CSCPin.QSoundSpace%
HKLM,%MediaCategories%\%CSCGUID.QSoundSpace%,Display,1,00,00,00,00

HKLM,%MediaCategories%\%CSCGUID.Playback%,Name,,%CSCPin.Playback%
HKLM,%MediaCategories%\%CSCGUID.Playback%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.MasterOut%,Name,,%CSCPin.MasterOut%
HKLM,%MediaCategories%\%CSCGUID.MasterOut%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.Record%,Name,,%CSCPin.Record%
HKLM,%MediaCategories%\%CSCGUID.Record%,Display,1,00,00,00,00

HKLM,%MediaCategories%\%CSCGUID.PcSpeaker%,Name,,%CSCPin.PcSpeaker%
HKLM,%MediaCategories%\%CSCGUID.PcSpeaker%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.Headphones%,Name,,%CSCPin.Headphones%
HKLM,%MediaCategories%\%CSCGUID.Headphones%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.MicBoost%,Name,,%CSCPin.MicBoost%
HKLM,%MediaCategories%\%CSCGUID.MicBoost%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.ZVPortEnable%,Name,,%CSCPin.ZVPortEnable%
HKLM,%MediaCategories%\%CSCGUID.ZVPortEnable%,Display,1,00,00,00,00

HKLM,%MediaCategories%\%CSCGUID.Enable%,Name,,%CSCPin.Enable%
HKLM,%MediaCategories%\%CSCGUID.Enable%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%CSCGUID.Disable%,Name,,%CSCPin.Disable%
HKLM,%MediaCategories%\%CSCGUID.Disable%,Display,1,00,00,00,00

; Hardware Sound Blaster Mixer defaults - These are the default mixer values for hardware
; Sound Blaster.  They only work if using hardware Sound Blaster and have  a 3xB/35/39.
; These number follow the data sheet values for the register values.  These are the hardware
; defaults except for CD and xx,00,00,00 where "xx" is the register value.
HKR,Settings,SbMasterVolume,1,99,00,00,00
HKR,Settings,SbVoiceVolume,1,99,00,00,00
HKR,Settings,SbLineVolume,1,11,00,00,00
HKR,Settings,SbMicVolume,1,01,00,00,00
HKR,Settings,SbSynthVolume,1,99,00,00,00
HKR,Settings,SbCdVolume,1,99,00,00,00
HKR,Settings,SbInputSelect,1,04,00,00,00
HKR,Settings,SbVSTC,1,02,00,00,00


; Slider defaults - The formula for the slider defaults is hex(dB * 65536) = 0xwwxxyyzz.
; wwxxyyzz translates to zz,yy,xx,ww.  Uncomment a line below if you wish to change
; the default value for that slider. "r" or "l" denote right or left value.
HKR,Settings,lDigitalVolume,1,00,00,00,00
HKR,Settings,rDigitalVolume,1,00,00,00,00
HKR,Settings,lSynthVolume,1,00,00,f7,ff
HKR,Settings,rSynthVolume,1,00,00,f7,ff
HKR,Settings,lCDVolume,1,00,80,04,00
HKR,Settings,rCDVolume,1,00,80,04,00
HKR,Settings,lLineVolume,1,00,80,04,00
HKR,Settings,rLineVolume,1,00,80,04,00
HKR,Settings,lMicVolume,1,00,00,09,00
HKR,Settings,rMicVolume,1,00,00,09,00
HKR,Settings,MonoVolume,1,00,00,f1,ff
HKR,Settings,lMasterVolume,1,00,80,f5,ff
HKR,Settings,rMasterVolume,1,00,80,f5,ff
HKR,Settings,lSerialVolume,1,00,00,f7,ff
HKR,Settings,rSerialVolume,1,00,00,f7,ff

; 4232/36 Volumes
HKR,Settings,lMixInVolume,1,00,00,00,00
HKR,Settings,rMixInVolume,1,00,00,00,00

; 4237/38 Volumes
HKR,Settings,SRSCenter,1,00,80,f5,ff
HKR,Settings,SRSSpace,1,00,80,f5,ff
HKR,Settings,QSoundVolume,1,00,80,f5,ff
HKR,Settings,QSoundSpace,1,00,80,f5,ff

; 4235/39 Volumes
HKR,Settings,lDAC2Volume,1,00,80,04,00
HKR,Settings,rDAC2Volume,1,00,80,04,00
HKR,Settings,3DVolume,1,00,80,f5,ff


; Slider Ranges - These take the place of tables.  Use these to adjust the dB range
; of the slider (dB*65536).  By default, they are set to the hardware min/max.
; 36B/37B/38B Ranges
HKR,Settings,36BSerialMin,1,00,80,a1,ff
HKR,Settings,36BSerialMax,1,00,00,00,00
HKR,Settings,SRSSpaceMin,1,00,80,e9,ff
HKR,Settings,SRSSpaceMax,1,00,00,00,00
HKR,Settings,SRSCenterMin,1,00,80,e9,ff
HKR,Settings,SRSCenterMax,1,00,00,00,00
HKR,Settings,QSoundSpaceMin,1,00,80,e9,ff
HKR,Settings,QSoundSpaceMax,1,00,00,00,00
HKR,Settings,QSoundVolumeMin,1,00,80,e9,ff
HKR,Settings,QSoundVolumeMax,1,00,00,00,00
HKR,Settings,36BMonoMin,1,00,00,d3,ff
HKR,Settings,36BMonoMax,1,00,00,00,00
HKR,Settings,36BMicMin,1,00,00,e8,ff
HKR,Settings,36BMicMax,1,00,80,16,00
HKR,Settings,36BLineMin,1,00,80,dd,ff
HKR,Settings,36BLineMax,1,00,00,0c,00
HKR,Settings,36BCDMin,1,00,80,dd,ff
HKR,Settings,36BCDMax,1,00,00,0c,00
HKR,Settings,36BSynthMin,1,00,80,a1,ff
HKR,Settings,36BSynthMax,1,00,00,00,00
HKR,Settings,36BDigitalMin,1,00,80,a1,ff
HKR,Settings,36BDigitalMax,1,00,00,00,00
HKR,Settings,36BMasterMin,1,00,80,dd,ff
HKR,Settings,36BMasterMax,1,00,00,0c,00

; 35/39 Ranges
HKR,Settings,3DMin,1,00,80,e9,ff
HKR,Settings,3DMax,1,00,00,00,00
HKR,Settings,39MonoMin,1,00,00,f7,ff
HKR,Settings,39MonoMax,1,00,00,00,00
HKR,Settings,39MicMin,1,00,00,e8,ff
HKR,Settings,39MicMax,1,00,80,16,00
HKR,Settings,39LineMin,1,00,80,dd,ff
HKR,Settings,39LineMax,1,00,00,0c,00
HKR,Settings,39CDMin,1,00,80,dd,ff
HKR,Settings,39CDMax,1,00,00,0c,00
HKR,Settings,39DAC2Min,1,00,80,dd,ff
HKR,Settings,39DAC2Max,1,00,00,0c,00
HKR,Settings,39DigitalMin,1,00,80,a1,ff
HKR,Settings,39DigitalMax,1,00,00,00,00
HKR,Settings,39MasterMin,1,00,00,b0,ff
HKR,Settings,39MasterMax,1,00,00,06,00

; 32/36 Ranges
HKR,Settings,32MonoMin,1,00,00,d3,ff
HKR,Settings,32MonoMax,1,00,00,00,00
HKR,Settings,32LineMin,1,00,80,dd,ff
HKR,Settings,32LineMax,1,00,00,0c,00
HKR,Settings,32CDMin,1,00,80,dd,ff
HKR,Settings,32CDMax,1,00,00,0c,00
HKR,Settings,32SynthMin,1,00,80,dd,ff
HKR,Settings,32SynthMax,1,00,00,0c,00
HKR,Settings,32DigitalMin,1,00,80,a1,ff
HKR,Settings,32DigitalMax,1,00,00,0c,00
HKR,Settings,32MasterMin,1,00,00,e2,ff
HKR,Settings,32MasterMax,1,00,00,00,00
; Can only change this input range
HKR,Settings,32RecordMin,1,00,00,00,00
HKR,Settings,32RecordMax,1,00,80,16,00


; Mutes - This specifies the default state of the mute (1 = muted)
HKR,Settings,DigitalInMute,1,01,00,00,00
HKR,Settings,DigitalOutMute,1,00,00,00,00
HKR,Settings,SynthInMute,1,01,00,00,00
HKR,Settings,SynthOutMute,1,00,00,00,00
HKR,Settings,CDInMute,1,00,00,00,00
HKR,Settings,CDOutMute,1,00,00,00,00
HKR,Settings,LineInMute,1,00,00,00,00
HKR,Settings,LineOutMute,1,00,00,00,00
HKR,Settings,MicInMute,1,00,00,00,00
HKR,Settings,MicOutMute,1,01,00,00,00
HKR,Settings,MicBoost,1,00,00,00,00
HKR,Settings,MonoMute,1,01,00,00,00
HKR,Settings,SerialInMute,1,01,00,00,00
HKR,Settings,SerialOutMute,1,01,00,00,00
HKR,Settings,SynthOutMute,1,00,00,00,00
;HKR,Settings,PCSpeaker,1,00,00,00,00
HKR,Settings,PCSpeaker,1,01,00,00,00
HKR,Settings,DAC2InMute,1,01,00,00,00
HKR,Settings,DAC2OutMute,1,00,00,00,00


; 3D Mutes and ZVPORT (1 = enabled)
HKR,Settings,SRSEnable,1,01,00,00,00
HKR,Settings,QSoundEnable,1,01,00,00,00
HKR,Settings,3DEnable,1,01,00,00,00
HKR,Settings,ZVPORTEnable,1,00,00,00,00


; 4232/36 Input Mux - Number follows datasheet (default = mic)
HKR,Settings,ADCSelect,1,02,00,00,00


; Hardware Master Volume Tracking - This will start Master Volume tracking.  Tracking
; will be active as long a VCEN or this variable is set (1 = on).
HKR,Settings,PollHWMasterVolume,1,00,00,00,00


; Consumer Serial Port - If 4610 is present, this will be turned on by the driver.
; If you wish to have these settings persistent on an upgrade to NT5, a driver will
; have to dynaically set them.
; 0 = disable, 1 = enable
HKR,Settings,ConsumerSerialPortEnable,1,00,00,00,00

; The SPDIF Category Code.
; 00,00,00,00 = 0000000, 01,00,00,00 = 00000001, 00,10,00,00 = 0001xxx, 00,20,00,00
HKR,Settings,SPDIFCategory,1,00,00,00,00

; 0 = Data is non-audio
; 1 = Data is digital audio
HKR,Settings,SPDIFIsAudio,1,01,00,00,00


; 0 = Copying is inhibited/copyright is asserted.
; 1 = Copying is permitted/copyright is not asserted.
HKR,Settings,SPDIFPermitCopy,1,01,00,00,00


; 0 = No indication, 1st generation or higher.
; 1 = Data is original/commercially pre-recorded.
HKR,Settings,SPDIFOriginalGeneration,1,00,00,00,00

; The level of pre-emphesis
; 0 = None,
; 1 = 50/15us, 2-channel audio
HKR,Settings,SPDIFPreemphesis,1,00,00,00,00



[CSC0102.AddReg]
HKR,,AssociatedFilters,,"wdmaud"
HKR,,Driver,,cwbwdm.sys
HKR,,NTMPDriver,,cwbwdm.sys


[CSC0103.AddReg]
HKR,,AssociatedFilters,,"wdmaud"
HKR,,Driver,,cwbmidi.sys
HKR,,NTMPDriver,,cwbmidi.sys

HKR,Drivers,SubClasses,,"midi"
HKR,Drivers\midi\wdmaud.drv,Driver,,wdmaud.drv
HKR,Drivers\midi\wdmaud.drv,Description,,%*CSC0103.DeviceDesc%

[CSC0100_Device.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave%,CSCAud.Interface.Wave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave%,CSCAud.Interface.Wave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave%,CSCAud.Interface.Wave
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topology%,CSCAud.Interface.Topology
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_FMSynth%,WDM.Interface.FMSynth
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_FMSynth%,WDM.Interface.FMSynth

[CSCAud.Interface.Wave]
AddReg=CSCAud.Interface.Wave.AddReg
[CSCAud.Interface.Wave.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%CSCAud.Wave.szPname%
HKR,,VirtualSourceDefault,1,00,00,00,00

[CSCAud.Interface.Topology]
AddReg=CSCAud.Interface.Topo.AddReg
[CSCAud.Interface.Topo.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%CSCAud.Topology.szPname%

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

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

[CSC0103_Device.Interfaces]
AddInterface = %KSCATEGORY_AUDIO%,%KSNAME_UART%,WDM.Interface.UART
AddInterface = %KSCATEGORY_RENDER%,%KSNAME_UART%,WDM.Interface.UART
AddInterface = %KSCATEGORY_CAPTURE%,%KSNAME_UART%,WDM.Interface.UART

[CSC.KnownFiles]
cwbwdm.sys.4.10.0 = safe

cwbaudix.vxd.4.3 = keep
cwbmidi.vxd.4.3  = keep

cwbaudix.vxd.4.5 = keep
cwbmidi.vxd.4.5  = keep

cwbaudix.vxd.4.5.0.155 = safe
cwbmidi.vxd.4.5.0.155  = safe

cwbaudix.vxd.4.5.0.2400 = force
cwbmidi.vxd.4.5.0.2400  = force

cwaudio.vxd  = safe
csfm.drv     = safe
csmidi.vxd   = safe
msmpu401.vxd = safe
CS32BA11.DRV = safe
CS4232LD.VXD = safe
CS4232LD.VXD.4.0.0.0 = safe, nobackup, LoseINA

mssndsys.vxd = force
mssblst.vxd  = force

;;**************** NT Install ****************

[CSC010F_DEVICE.NT]
[CSC010F_DEVICE.NT.Services]
AddService=,0x2

[CSC0100_Device.NT]
Include=ks.inf, wdmaudio.inf
Needs=KS.Registration, WDMAUDIO.Registration, WDMAUDIO.FDMA
CopyFiles=CSC0100.CopyList
AddReg=CSC0100.AddReg

[CSC0100_Device.NT.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave%,CSCAud.Interface.Wave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave%,CSCAud.Interface.Wave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave%,CSCAud.Interface.Wave
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topology%,CSCAud.Interface.Topology
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_FMSynth%,WDM.Interface.FMSynth
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_FMSynth%,WDM.Interface.FMSynth

[CSC0100_Device.NT.Services]
AddService = cwbwdm_device, 0x00000002, cwbwdm_device_Service_Inst

[CSC0100_Device.NT.LogConfigOverride]
LogConfig=CSC0100_Device.LogConfigOverride

[CSC0100_Device.LogConfigOverride]
IOConfig=530-537,604-60B,E80-E87,F40-F47
IOConfig=388-38B
IOConfig=14@220-293%FE0
IRQConfig=5,7,9,11,12,15
DMAConfig=0,1,3
DMAConfig=0,1,3

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

[CSC0102_Device.NT.Services]
AddService = cwbwdm_device, 0x00000002, cwbwdm_device_Service_Inst

; CSC0102 has no Interfaces (No it doesn't)


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

[CSC0103_Device.NT.Interfaces]
AddInterface = %KSCATEGORY_AUDIO%,%KSNAME_UART%,WDM.Interface.UART
AddInterface = %KSCATEGORY_RENDER%,%KSNAME_UART%,WDM.Interface.UART
AddInterface = %KSCATEGORY_CAPTURE%,%KSNAME_UART%,WDM.Interface.UART

[CSC0103_Device.NT.Services]
AddService = cwbmidi_device,0x00000002, cwbmidi_device_Service_Inst

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

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

[Strings]
MSFT="Microsoft"
CSMfgName="Crystal Semiconductor"
*CSC0100.DeviceDesc="Аудио кодек Crystal WDM"
*CSC0102.DeviceDesc="Регистры управления звуком Crystal WDM"
*CSC0103.DeviceDesc="Crystal WDM совместимый с MPU-401"
*CSC010F.DeviceDesc="Отключенное устройство"
CSCAud.Wave.szPname="Аудио Crystal WDM"
CSCAud.Topology.szPname="Аудио Crystal WDM"

;; Crystal friendly names (non-localizeable)
CSCGUID.Kmixer          ="{A614DD20-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.Serial          ="{A614DD21-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.SRS             ="{A614DD22-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.QSound          ="{A614DD23-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.Crystal3D       ="{A614DD24-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.Mono            ="{A614DD25-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.Mic             ="{A614DD26-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.Linein          ="{A614DD27-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.CD              ="{A614DD28-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.Synth           ="{A614DD29-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.Wave            ="{A614DD2A-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.ZVPort          ="{A614DD2B-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.DAC2            ="{A614DD2C-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.VirtualControls ="{A614DD2D-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.SynthMute       ="{A614DD2E-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.DSPMute         ="{A614DD2F-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.KMixerMute      ="{A614DD30-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.Mix             ="{A614DD31-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.SRSCenter       ="{A614DD32-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.SRSSpace        ="{A614DD33-4F9D-11D1-9845-00A024C0C62C}"
CSCGUID.QSoundSpace     ="{A614DD34-4F9D-11D1-9845-00A024C0C62C}"

CSCGUID.Playback        ="{0CB926A0-4FC4-11D1-9845-00A024C0C62C}"
CSCGUID.MasterOut       ="{0CB926A1-4FC4-11D1-9845-00A024C0C62C}"
CSCGUID.Record          ="{0CB926A2-4FC4-11D1-9845-00A024C0C62C}"

CSCGUID.PcSpeaker       ="{39596800-4FC4-11D1-9845-00A024C0C62C}"
CSCGUID.Headphones      ="{39596801-4FC4-11D1-9845-00A024C0C62C}"
CSCGUID.MicBoost        ="{39596802-4FC4-11D1-9845-00A024C0C62C}"
CSCGUID.ZVPortEnable    ="{39596803-4FC4-11D1-9845-00A024C0C62C}"

CSCGUID.Enable          ="{EBA70C00-4FC5-11D1-9845-00A024C0C62C}"
CSCGUID.Disable         ="{EBA70C01-4FC5-11D1-9845-00A024C0C62C}"

;; Crystal friendly names (localizeable)
CSCPin.Kmixer           ="Цифровой"
CSCPin.Serial           ="Посл."
CSCPin.SRS              ="SRS"
CSCPin.Qsound           ="QSound"
CSCPin.Crystal3D        ="Crystal3D"
CSCPin.Mono             ="Моно"
CSCPin.Mic              ="Микрофон"
CSCPin.LineIn           ="Лин. вход"
CSCPin.CD               ="Компакт-диск"
CSCPin.Synth            ="Синтезатор"
CSCPin.Wave             ="Выход звукозаписи"
CSCPin.ZVPort           ="ZVPORT"
CSCPin.DAC2             ="DAC2"
CSCPin.VirtualControls  ="Виртуальные элементы управления"
CSCPin.SynthMute        ="Выкл. синтез."
CSCPin.DSPMute          ="Выкл. DSP"
CSCPin.KMixerMute       ="Выкл. цифр. звука"
CSCPin.Mix              ="Общая"
CSCPin.SRSCenter        ="Центр SRS"
CSCPin.SRSSpace         ="Пространство SRS"
CSCPin.QSoundSpace      ="Пространство QSound"

CSCPin.Playback         ="Crystal Audio"
CSCPin.MasterOut        ="Общий выход"
CSCPin.Record           ="Запись Crystal Audio"

CSCPin.PcSpeaker        ="Динамик ПК"
CSCPin.Headphones       ="Наушники"
CSCPin.MicBoost         ="Усиление +20dB"
CSCPin.ZVPortEnable     ="ZVPORT"

CSCPin.Enable           ="Включить"
CSCPin.Disable          ="Отключено"

MediaCategories="SYSTEM\CurrentControlSet\Control\MediaCategories"
WDM_MIDI="Устройство на основе WDM"
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_UART="UART"
KSNAME_FMSynth="FMSynth"
KSNAME_Topology="Topology"
KSNAME_Wavetable="Wavetable"

WDM.UART.szPname="Crystal MPU-401"
WDM.FMSynth.szPname="ЧМ-синтезатор Crystal"

CSC0100_device.SvcDesc = "Драйвер аудио кодека Crystal WDM"
CSC0103_device.SvcDesc = "Драйвер Crystal WDM MPU-401 UART"

