;
; Copyright © Guillemot Corporation, 2016.  All rights reserved.
;
; HDJUSBAudio Driver for DJHERCULESMIX USB Audio Class Devices setup information file
;
; This file supports:
;     Windows XP
;     Windows Vista      Windows Vista x64
;     Windows 7          Windows 7 x64
;     Windows 8/8.1      Windows 7 x64
;     Windows 10         Windows 7 x64
;

;******************************************************************************
; Version Section
;------------------------------------------------------------------------------
[Version]
Signature="$Windows NT$"
DriverVer=04/18/2016,4.9.5.0
Provider=%S_Provider%
CatalogFile=HDJusbaudio.cat

; private setup class
Class=DJHerculesMixUSBAudioDevices
ClassGuid={5ED1E5BD-7EEC-413c-A24A-BF17CCCF0030}

;******************************************************************************
; Manufacturer
;------------------------------------------------------------------------------
[Manufacturer]
%S_Mfg%=_Models, ntamd64


;******************************************************************************
; Models sections
;------------------------------------------------------------------------------
[_Models]
"DJConsole Rmx2 Boot"=_Install, USB\VID_06F8&PID_B112
"DJConsole Rmx2"=_Install, USB\VID_06F8&PID_B113
"DJControl AIR+"=_Install, USB\VID_06F8&PID_B116&MI_02
"DJControlWave"=_Install, USB\VID_06F8&PID_b118&MI_01
"DJHERCULESMIX Universal DJ"=_Install, USB\VID_06F8&PID_b11a&MI_03
"DJControl Jogvision"=_Install, USB\VID_06F8&PID_b11c
"DJControl Jogvision DFU ROM"=_Install, USB\VID_06F8&PID_b11b
"DJControl Jogvision DFU"=_Install, USB\VID_06F8&PID_b11d
"DJControl Jogvision DFU ROM"=_Install, USB\VID_152a&PID_b11b
"DJControl Jogvision DFU"=_Install, USB\VID_152a&PID_b11d
"DJControl Compact"=_Install, USB\VID_06F8&PID_b11e&MI_01
"Hercules P32 DJ"=_Install, USB\VID_06F8&PID_b121&MI_00
"Hercules DJ DFU Device"=_Install, USB\VID_0483&PID_DF11
"DJControl Instinct P8"=_Install, USB\VID_06F8&PID_b122&MI_00

[_Models.ntamd64]
"DJConsole Rmx2 Boot"=_Install, USB\VID_06F8&PID_B112
"DJConsole Rmx2"=_Install, USB\VID_06F8&PID_B113
"DJControl AIR+"=_Install, USB\VID_06F8&PID_B116&MI_02
"DJControlWave"=_Install, USB\VID_06F8&PID_b118&MI_01
"DJHERCULESMIX Universal DJ"=_Install, USB\VID_06F8&PID_b11a&MI_03
"DJControl Jogvision"=_Install, USB\VID_06F8&PID_b11c
"DJControl Jogvision DFU ROM"=_Install, USB\VID_06F8&PID_b11b
"DJControl Jogvision DFU"=_Install, USB\VID_06F8&PID_b11d
"DJControl Jogvision DFU ROM"=_Install, USB\VID_152a&PID_b11b
"DJControl Jogvision DFU"=_Install, USB\VID_152a&PID_b11d
"DJControl Compact"=_Install, USB\VID_06F8&PID_b11e&MI_01
"Hercules P32 DJ"=_Install, USB\VID_06F8&PID_b121&MI_00
"Hercules DJ DFU Device"=_Install, USB\VID_0483&PID_DF11
"DJControl Instinct P8"=_Install, USB\VID_06F8&PID_b122&MI_00

;******************************************************************************
; Install Sections x86
;------------------------------------------------------------------------------
[_Install.ntx86]
CopyFiles=_CopyFiles_sys_x86, _CopyFiles_dll_x86

[_Install.ntx86.HW]
AddReg=_AddReg_HW

[_Install.ntx86.Services]
AddService = %S_ServiceName%, 0x00000002, _AddService_x86, _EventLog_x86

[_AddService_x86]
ServiceType    = 1                  ; SERVICE_KERNEL_DRIVER
StartType      = 3                  ; SERVICE_DEMAND_START
ErrorControl   = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary  = %12%\HDJusbaudio.sys
; No!  This kills the parameters subkey with all the serial numbers of hdjusbaudio!
;DelReg=_DelReg_Parameters
AddReg=_AddReg_Parameters, _AddReg_MediaCategories, _AddReg_Profiles

[_EventLog_x86]
AddReg=_EventLogAddReg_x86

[_EventLogAddReg_x86]
HKR,,EventMessageFile,%REG_EXPAND_SZ%,"%%SystemRoot%%\System32\IoLogMsg.dll;%%SystemRoot%%\System32\drivers\HDJusbaudio.sys"
HKR,,TypesSupported,  %REG_DWORD%, 7



;******************************************************************************
; Install Sections x64
;------------------------------------------------------------------------------
[_Install.ntamd64]
CopyFiles=_CopyFiles_sys_x64,_CopyFiles_dll_x64,_CopyFiles_dll_x86_w3264

[_Install.ntamd64.HW]
AddReg=_AddReg_HW

[_Install.ntamd64.Services]
AddService = %S_ServiceName%, 0x00000002, _AddService_x64, _EventLog_x64

[_AddService_x64]
ServiceType    = 1                  ; SERVICE_KERNEL_DRIVER
StartType      = 3                  ; SERVICE_DEMAND_START
ErrorControl   = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary  = %12%\HDJusbaudio_x64.sys
; No!  This kills the parameters subkey with all the serial numbers of hdjusbaudio!
;DelReg=_DelReg_Parameters
AddReg=_AddReg_Parameters, _AddReg_MediaCategories, _AddReg_Profiles

[_EventLog_x64]
AddReg=_EventLogAddReg_x64

[_EventLogAddReg_x64]
HKR,,EventMessageFile,%REG_EXPAND_SZ%,"%%SystemRoot%%\System32\IoLogMsg.dll;%%SystemRoot%%\System32\drivers\HDJusbaudio_x64.sys"
HKR,,TypesSupported,  %REG_DWORD%, 7

;******************************************************************************
;Class section
;------------------------------------------------------------------------------
[ClassInstall32.NTX86]
Addreg=DJHerculesMixUSBAudioDevicesReg_x86     
CopyFiles=DJHerculesMixUSBAudioDevicesInstallerCopyFiles_x86

[DJHerculesMixUSBAudioDevicesReg_x86]
HKR,,,0,%ClassName%
HKR,,Icon,,100
HKR,,Installer32,,"DJHerculesMixUSBAudioDevices.dll,DJHerculesMixUSBAudioDevicesInstaller"

[DJHerculesMixUSBAudioDevicesInstallerCopyFiles_x86]
DJHerculesMixUSBAudioDevices.dll

[ClassInstall32.NTAMD64]
Addreg=DJHerculesMixUSBAudioDevicesReg_x64     
CopyFiles=DJHerculesMixUSBAudioDevicesInstallerCopyFiles_x64

[DJHerculesMixUSBAudioDevicesReg_x64]
HKR,,,0,%ClassName%
HKR,,Icon,,100
HKR,,Installer32,,"DJHerculesMixUSBAudioDevices_x64.dll,DJHerculesMixUSBAudioDevicesInstaller"

[DJHerculesMixUSBAudioDevicesInstallerCopyFiles_x64]
DJHerculesMixUSBAudioDevices_x64.dll

;******************************************************************************
; Copy file sections
;------------------------------------------------------------------------------
[_CopyFiles_sys_x86]
HDJusbaudio.sys,,,0x00000004

[_CopyFiles_dll_x86]
HDJusbaudioapi.dll,,,0x00000004
HDJusbaudioasio.dll,,,0x00000004
hdjcustom.ini,,,0x00000004

[_CopyFiles_sys_x64]
HDJusbaudio_x64.sys,,,0x00000004

[_CopyFiles_dll_x64]
HDJusbaudioapi_x64.dll,,,0x00000004
HDJusbaudioasio_x64.dll,,,0x00000004
hdjcustom.ini,,,0x00000004

[_CopyFiles_dll_x86_w3264]
HDJusbaudioapi.dll,,,0x00000004
HDJusbaudioasio.dll,,,0x00000004
hdjcustom.ini,,,0x00000004

;******************************************************************************
; Destination Directories
;------------------------------------------------------------------------------
[DestinationDirs]
DefaultDestDir  = 12  ; %windir%\system32\drivers 
_CopyFiles_sys_x86 = 12
_CopyFiles_dll_x86 = 10,System32
_CopyFiles_sys_x64 = 12
_CopyFiles_dll_x64 = 10,System32
_CopyFiles_dll_x86_w3264 = 10,SysWOW64
DJHerculesMixUSBAudioDevicesInstallerCopyFiles_x86 = 11
DJHerculesMixUSBAudioDevicesInstallerCopyFiles_x64 = 11

;******************************************************************************
; Disk Layout
;------------------------------------------------------------------------------
[SourceDisksNames.x86]
1=%S_DiskName%,,0
[SourceDisksNames.amd64]
1=%S_DiskName%,,0

[SourceDisksFiles.x86]
HDJusbaudio.sys=1
HDJusbaudioapi.dll=1
HDJusbaudioasio.dll=1
DJHerculesMixUSBAudioDevices.dll=1
hdjcustom.ini=1

[SourceDisksFiles.amd64]
HDJusbaudioapi.dll=1
HDJusbaudioasio.dll=1
HDJusbaudio_x64.sys=1
HDJusbaudioapi_x64.dll=1
HDJusbaudioasio_x64.dll=1
DJHerculesMixUSBAudioDevices_x64.dll=1
hdjcustom.ini=1

;******************************************************************************
; Registry sections
;------------------------------------------------------------------------------
[_AddReg_HW]
; audio-mode driver interface name, replace by your custom GUID
; Hercules GUID
HKR, , InterfaceGUID, %REG_SZ%, "{3BD74962-1B8C-4571-BB0A-FB7A7A9AB1AD}"
; enable the following line to support OUT-only configurations with explicit feedback
; that uses a feedback endpoint polling interval > 4
;HKR, , EnableFbEpDescIntervalPatch, %REG_DWORD%, 1
HKR,,FirstInstall,%REG_DWORD%,0x00000001

; No!  This kills the parameters subkey with all the serial numbers of hdjusbaudio!
;[_DelReg_Parameters]
; delete old configuration and settings
;HKR, "Parameters"


[_AddReg_Parameters]
; global setting: ASIO multi-client support, 1 for allowed (default), 0 for disabled
;HKR, "Parameters\Settings", "EnableAsioSharing", %REG_DWORD%, 0
HKR, "Parameters","BreakOnEntry", 0x00010001, 0

[_AddReg_MediaCategories]


[_AddReg_Profiles]



;******************************************************************************
; Text Strings
;------------------------------------------------------------------------------
[Strings]
;
; Non-Localizable Strings, DO NOT MODIFY!
;
REG_SZ         = 0x00000000
REG_DEL        = 0x00000004
REG_MULTI_SZ   = 0x00010000
REG_EXPAND_SZ  = 0x00020000
REG_BINARY     = 0x00000001
REG_DWORD      = 0x00010001
MediaCategories="SYSTEM\CurrentControlSet\Control\MediaCategories"

;
; These are sound device categories predefined by Windows.
; This is a subset only, containing most commonly used categories.
; See ks.inf, ksmedia.h and WDK docs for the full set of available category GUIDs.
;
; KSNODETYPE_SPEAKER, speaker icon
GUID.Speaker="{DFF21CE1-F70F-11D0-B917-00A0C9223196}"
; KSNODETYPE_DESKTOP_SPEAKER, speaker icon
GUID.DesktopSpeaker="{DFF21CE4-F70F-11D0-B917-00A0C9223196}"
; KSNODETYPE_HEADPHONES, headphone icon
GUID.Headphones="{DFF21CE2-F70F-11D0-B917-00A0C9223196}"
; KSNODETYPE_LINE_CONNECTOR, cinch cable icon
GUID.Line="{DFF21FE3-F70F-11D0-B917-00A0C9223196}"
; KSNODETYPE_SPDIF_INTERFACE, black box icon
GUID.SPDIFInterface="{DFF21FE5-F70F-11D0-B917-00A0C9223196}"
; KSNODETYPE_DIGITAL_AUDIO_INTERFACE, black box icon
GUID.DigitalAudioInterface="{DFF21FE2-F70F-11D0-B917-00A0C9223196}"
; KSNODETYPE_HEADSET, headset icon
GUID.Headset="{DFF21DE2-F70F-11D0-B917-00A0C9223196}"
; KSNODETYPE_MICROPHONE, microphone icon
GUID.Microphone="{DFF21BE1-F70F-11D0-B917-00A0C9223196}"


;
; Localizable Strings, modify as required
;
; provider
S_Provider="Guillemot Corporation"
S_Mfg="Guillemot Corporation"

; disk name
S_DiskName="HDJUSBAudio Driver for USB Audio Devices driver disk"

; service name, should be set to x86 binary executable name without .sys extension
S_ServiceName="HDJusbaudio"

ClassName="DJHERCULESMIX USB Audio Devices"

;;;;;;;;;;;;;;;;;;;;;; EOF ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
