;==============================================================================
; TerraTec Cinergy Hybrid T USB XS XS (DVB-T & analog & USB audio)
; TerraTec Cinergy T USB XS XS        (DVB-T)
; BDA Driver Install Script
; Copyright (c) 2005, TerraTec Electronic GmbH
;------------------------------------------------------------------------------
; Notes:    This installation is for Windows XP only.
;------------------------------------------------------------------------------
; History:
;------------------------------------------------------------------------------
; 22-Jul-05 FMB 1st driver version 3.5.0707.0
; 22-Jul-05 FMB new driver version 3.5.0718.0
; 01-Aug-05 FMB modified DS filter name (added suffix analog/digital)
; 24-Aug-05 FMB New driver version 3.5.0811.0
; 13-Sep-05 FMB New driver version 3.5.0906.0
;------------------------------------------------------------------------------


[Version]
Signature   = "$CHICAGO$"
Class       = Media                                 
ClassGUID   = {4d36e96c-e325-11ce-bfc1-08002be10318}
Provider    = %Vendor%
DriverVer   = 09/13/2005, 3.5.0906.0
CatalogFile = Cinergy_Hybrid_T_USB_XS.cat

[ControlFlags]
ExcludeFromSelect = *

[SourceDisksNames]
1 = %DiskLabel%,emBDA.sys,,

[SourceDisksFiles]
emPRP.ax  = 1
emOEM.sys = 1
emBDA.sys = 1

[DestinationDirs]
DefaultDestDir = 11 ; FMB NOTE: could cause problems with implicit MS INF files
CAP.CopyDLL    = 11
CAP.CopySYS    = 10,system32\drivers

[Manufacturer]
%Vendor% = Models

[Models]
; Cinergy T USB XS (DVB-T)
%USB2870.DeviceDesc% = USB2870,USB\VID_0CCD&PID_0043

; Cinergy Hybrid T USB XS (DVB-T & analog & USB audio)
%USB2881.DeviceDesc% = USB2881,USB\VID_0CCD&PID_0042&MI_00




;---------------------  U S B 2 8 7 0  --------------------

[USB2870]
Include       = ks.inf, kscaptur.inf, ksfilter.inf, bda.inf
Needs         = KS.Registration, KSCAPTUR.Registration, BDA.Installation
AddReg        = CAP.AddReg, OEM.AddReg, OEM.Defaults.AddReg
CopyFiles     = CAP.CopySYS, CAP.CopyDLL

[USB2870.NT]
Include       = ks.inf, kscaptur.inf, ksfilter.inf, bda.inf
Needs         = KS.Registration, KSCAPTUR.Registration.NT, BDA.Installation.NT
AddReg        = CAP.AddReg, OEM.AddReg, OEM.Defaults.AddReg
CopyFiles     = CAP.CopySYS, CAP.CopyDLL


;------------ H W ------------

[USB2870.HW]
AddReg = InstFilter2870

[InstFilter2870]
HKR,,LowerFilters,0,"emOEM.sys"

[USB2870.NT.HW]
AddReg = InstFilter2870NT

[InstFilter2870NT]
HKR,,"LowerFilters",0x00010000,"USB28xxOEM"


;---- I N T E R F A C E S ----

[USB2870.Interfaces]
AddInterface = %KSCATEGORY_BDA_RECEIVER%,%BDACapFilter%,  BDACap2870.Interface
AddInterface = %KSCATEGORY_BDA_TUNER%,   %BDATunerFilter%,BDATuner2870.Interface

[USB2870.NT.Interfaces]
AddInterface = %KSCATEGORY_BDA_RECEIVER%,%BDACapFilter%,  BDACap2870.Interface
AddInterface = %KSCATEGORY_BDA_TUNER%,   %BDATunerFilter%,BDATuner2870.Interface


[BDACap2870.Interface]
AddReg = BDACap.2870.AddReg

[BDATuner2870.Interface]
AddReg = BDATuner.2870.AddReg

[BDACap.2870.AddReg]
HKR,,CLSID,,%ProxyVCap.CLSID%
HKR,,FriendlyName,,%BDACap.2870.Name%

[BDATuner.2870.AddReg]
HKR,,CLSID,,%ProxyVCap.CLSID%
HKR,,FriendlyName,,%BDATuner.2870.Name%


;------ S E R V I C E S ------

[USB2870.NT.Services]
AddService = USB28xxBGA,0x00000002,BDAInstall2870
AddService = USB28xxOEM,0x00000000,OEMInstall2870

[BDAInstall2870]
DisplayName   = %USB2870.DeviceDesc%
ServiceType   = 1		;SERVICE_KERNEL_DRIVER
StartType     = 3		;SERVICE_DEMAND_START
ErrorControl  = 1		;SERVICE_ERROR_NORMAL
ServiceBinary = %12%\emBDA.sys

[OEMInstall2870]
DisplayName   = %OEM.DeviceDesc%
ServiceType   = 1		;SERVICE_KERNEL_DRIVER
StartType     = 3		;SERVICE_DEMAND_START
ErrorControl  = 1		;SERVICE_ERROR_NORMAL
ServiceBinary = %12%\emOEM.sys


;---------------------  U S B 2 8 8 1  --------------------

[USB2881]
Include       = ks.inf, kscaptur.inf, ksfilter.inf, bda.inf
Needs         = KS.Registration, KSCAPTUR.Registration, BDA.Installation
AddReg        = CAP.AddReg, OEM.AddReg, OEM.Defaults.AddReg
CopyFiles     = CAP.CopySYS, CAP.CopyDLL

[USB2881.NT]
Include       = ks.inf, kscaptur.inf, ksfilter.inf, bda.inf
Needs         = KS.Registration, KSCAPTUR.Registration.NT, BDA.Installation.NT
AddReg        = CAP.AddReg, OEM.AddReg, OEM.Defaults.AddReg
CopyFiles     = CAP.CopySYS, CAP.CopyDLL


;------------ H W ------------

[USB2881.HW]
AddReg = InstFilter2881

[InstFilter2881]
HKR,,LowerFilters,0,"emOEM.sys"

[USB2881.NT.HW]
AddReg = InstFilter2881NT

[InstFilter2881NT]
HKR,,"LowerFilters",0x00010000,"USB28xxOEM"


;---- I N T E R F A C E S ----

[USB2881.Interfaces]
AddInterface = %KSCATEGORY_VIDEO%,       %WDMCapFilter%,  Capture2881.Interface
AddInterface = %KSCATEGORY_CAPTURE%,     %WDMCapFilter%,  Capture2881.Interface
AddInterface = %KSCATEGORY_TVTUNER%,     %WDMTunerFilter%,TVTuner2881.Interface
AddInterface = %KSCATEGORY_TVAUDIO%,     %WDMTVAudFilter%,TVAudio2881.Interface
AddInterface = %KSCATEGORY_XBAR%,        %WDMXbarFilter%, Xbar2881.Interface
AddInterface = %KSCATEGORY_BDA_RECEIVER%,%BDACapFilter%,  BDACap2881.Interface
AddInterface = %KSCATEGORY_BDA_TUNER%,   %BDATunerFilter%,BDATuner2881.Interface

[USB2881.NT.Interfaces]
AddInterface = %KSCATEGORY_VIDEO%,       %WDMCapFilter%,  Capture2881.Interface
AddInterface = %KSCATEGORY_CAPTURE%,     %WDMCapFilter%,  Capture2881.Interface
AddInterface = %KSCATEGORY_TVTUNER%,     %WDMTunerFilter%,TVTuner2881.Interface
AddInterface = %KSCATEGORY_TVAUDIO%,     %WDMTVAudFilter%,TVAudio2881.Interface
AddInterface = %KSCATEGORY_XBAR%,        %WDMXbarFilter%, Xbar2881.Interface
AddInterface = %KSCATEGORY_BDA_RECEIVER%,%BDACapFilter%,  BDACap2881.Interface
AddInterface = %KSCATEGORY_BDA_TUNER%,   %BDATunerFilter%,BDATuner2881.Interface


[Capture2881.Interface]
AddReg = Capture.2881.AddReg

[TVTuner2881.Interface]
AddReg = TVTuner.2881.AddReg

[TVAudio2881.Interface]
AddReg = TVAudio.2881.AddReg

[Xbar2881.Interface]
AddReg = Xbar.2881.AddReg

[BDACap2881.Interface]
AddReg = BDACap.2881.AddReg

[BDATuner2881.Interface]
AddReg = BDATuner.2881.AddReg

[Capture.2881.AddReg]
HKR,,CLSID,,%ProxyVCap.CLSID%
HKR,,FriendlyName,,%Capture.2881.Name%
; FMB NOTE: ???
HKLM,%Name.Key%,"DSName",0,%Capture.2881.Name%

; IAMVideoCompression installed as static interface on both output pins
HKR,PinFactory\0\Interfaces\{C6E13343-30AC-11d0-A18C-00A0C9118956},,,{C6E13343-30AC-11d0-A18C-00A0C9118956}
HKR,PinFactory\1\Interfaces\{C6E13343-30AC-11d0-A18C-00A0C9118956},,,{C6E13343-30AC-11d0-A18C-00A0C9118956}

[TVTuner.2881.AddReg]
HKR,,CLSID,,%ProxyTVTuner.CLSID%
HKR,,FriendlyName,,%TVTuner.2881.Name%
    
[TVAudio.2881.AddReg]
HKR,,CLSID,,%ProxyTVAudio.CLSID%
HKR,,FriendlyName,,%TVAudio.2881.Name%

[Xbar.2881.AddReg]
HKR,,CLSID,,%ProxyXbar.CLSID%
HKR,,FriendlyName,,%Xbar.2881.Name%

[BDACap.2881.AddReg]
HKR,,CLSID,,%ProxyVCap.CLSID%
HKR,,FriendlyName,,%BDACap.2881.Name%

[BDATuner.2881.AddReg]
HKR,,CLSID,,%ProxyVCap.CLSID%
HKR,,FriendlyName,,%BDATuner.2881.Name%


;------ S E R V I C E S ------

[USB2881.NT.Services]
AddService = USB28xxBGA,0x00000002,BDAInstall2881
AddService = USB28xxOEM,0x00000000,OEMInstall2881

[BDAInstall2881]
DisplayName   = %USB2881.DeviceDesc%
ServiceType   = 1		;SERVICE_KERNEL_DRIVER
StartType     = 3		;SERVICE_DEMAND_START
ErrorControl  = 1		;SERVICE_ERROR_NORMAL
ServiceBinary = %12%\emBDA.sys

[OEMInstall2881]
DisplayName   = %OEM.DeviceDesc%
ServiceType   = 1		;SERVICE_KERNEL_DRIVER
StartType     = 3		;SERVICE_DEMAND_START
ErrorControl  = 1		;SERVICE_ERROR_NORMAL
ServiceBinary = %12%\emOEM.sys







;---------------------  C O M M O N  ----------------------

[CAP.AddReg]
HKR,,HardwareConfig,1,1
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,emBDA.sys
HKR,,OkToHibernate,3,1
HKR,,DontSuspendIfStreamsAreRunning,3,1 
HKR,,PageOutWhenUnopened,3,0
HKR,,PowerDownWhenUnopened,3,0

; IBDA2800CustomProp
HKCR,CLSID\{846A4C4E-76D8-42ec-A333-121F365A4DA8},,,%CustomPlugIn%
HKCR,CLSID\{846A4C4E-76D8-42ec-A333-121F365A4DA8}\InprocServer32,,,emPRP.ax
HKCR,CLSID\{846A4C4E-76D8-42ec-A333-121F365A4DA8}\InprocServer32,ThreadingModel,,Both
; This IID is aggregated for the filter given the CLSID of the property set
HKLM,System\CurrentControlSet\Control\MediaInterfaces\{846A4C4E-76D8-42ec-A333-121F365A4DA8},,,%CustomPlugIn%
HKLM,System\CurrentControlSet\Control\MediaInterfaces\{846A4C4E-76D8-42ec-A333-121F365A4DA8},IID,1,4e,4c,6A,84, d8,76, ec,42, 0xa3, 0x33, 0x12, 0x1f, 0x36, 0x5a, 0x4d, 0xa8

; Video Image Property Page
HKCR,CLSID\{7F229794-410B-4e67-B492-4C80C2843871},,,%CustomPropPage%
HKCR,CLSID\{7F229794-410B-4e67-B492-4C80C2843871}\InprocServer32,,,emPRP.ax
HKCR,CLSID\{7F229794-410B-4e67-B492-4C80C2843871}\InprocServer32,ThreadingModel,,Both

; Associate property set with property page
HKLM,System\CurrentControlSet\Control\MediaSets\{846A4C4E-76D8-42ec-A333-121F365A4DA8}\PropertyPages\{7F229794-410B-4e67-B492-4C80C2843871},,,%CustomPropPage%


[CAP.CopyDLL]
emPRP.ax

[CAP.CopySYS]
emBDA.sys
emOEM.sys


;-------------------------  O E M  ------------------------

[OEM.AddReg]
; The sub-section below adds the driver configurations, regardless of 
; EEPROM's presence. These configurations are not specified in EEPROM.
;
; =====  BEGIN  =====
;
HKR,settings\OEMSettings,Optimization    ,0x00010001,1  ; 1=ISO, 2=Bulk
HKR,settings\OEMSettings,FixUpOWC        ,0x00010001,12 ;
HKR,settings\OEMSettings,FixUpATI        ,0x00010001,0  ; 1=enabled for multiple root hubs    
HKR,settings\OEMSettings,EnablePAL640x576,0x00010001,0  ; For 2820/2840
HKR,settings\OEMSettings,XceiveMTS       ,0x00010001,0  ; XC3028 Baseband Audio
;;;HKR,settings\OEMSettings,OemID        ,0x00010001,0  ;
;;;HKR,settings\OEMSettings,BufferCount     ,0x00010001,16 ; for CAP/VBI
;;;HKR,settings\OEMSettings,BufferCountTS   ,0x00010001,16 ; for TS
;;;HKR,settings\OEMSettings,StrictHeader    ,0x00010001,0  ;
;;;HKR,settings\OEMSettings,PowerControl    ,0x00010001,0  ;

; =====   END   =====


; The following configurations are only needed if EEPROM is not present.
;
; =====  BEGIN  =====
;
;        -----  Board Configurations   -----
HKR,settings\OEMSettings,Composite        ,0x00010001,1  ; Composite Input
HKR,settings\OEMSettings,SVideo           ,0x00010001,1  ; S-Video Input
HKR,settings\OEMSettings,SonyOnBoard      ,0x00010001,0  ; Sony Modules    

;        -----  Driver Configurations  -----
HKR,settings\OEMSettings,StrictI2cAccess,  0x00010001,0  ; 0=Normal, 1=Strict
HKR,settings\OEMSettings,VideoSwitchMode,  0x00010001,1  ; 0=Freeze, 1=Blackout
HKR,settings\OEMSettings,EnableSquarePixel,0x00010001,1  ; 1=enabled
HKR,settings\OEMSettings,Enable704,        0x00010001,0  ; 1=enabled
HKR,settings\OEMSettings,DSFineTune,       0x00010001,1  ; 1=enabled
HKR,settings\OEMSettings,GPIObyAP,         0x00010001,0  ;
HKR,settings\OEMSettings,TVTuneByAP,       0x00010001,0  ;
HKR,settings\OEMSettings,PowerOffIfIdle,   0x00010001,0  ; for TV tuner

;        ----- OEM Devices Accessed from Applications Directly  -----
HKR,settings\OEMSettings,Oem0I2C          ,0x00010001,0x60
HKR,settings\OEMSettings,Oem0Type         ,0x00010001,2
HKR,settings\OEMSettings,Oem1I2C          ,0x00010001,0x60
HKR,settings\OEMSettings,Oem1Type         ,0x00010001,2
HKR,settings\OEMSettings,Oem2I2C          ,0x00010001,0x60
HKR,settings\OEMSettings,Oem2Type         ,0x00010001,2
HKR,settings\OEMSettings,Oem3I2C          ,0x00010001,0x60
HKR,settings\OEMSettings,Oem3Type         ,0x00010001,2

;        ----- Tuner CFG & Overrides  -----
;;;HKR,settings\OEMSettings,TunerIDBase   ,0x00010001,0
;;;HKR,settings\OEMSettings,TunerID7      ,0x00010001,21  ;CFG7 = SAM9082

;       ----- USB/Ext Audio Mux for 2820/2840 Only  -----
;;;HKR,settings\OEMSettings,USBAudioMux   ,0x00010001,1
;;;HKR,settings\OEMSettings,ExtAudioMux   ,0x00010001,2

; =====   END   =====


; This section provides property defaults for the BDA driver.
;
; If EEPROM is on board, some of these property defaults are provided
; by EEPROM. The remaining perperty defaults are specified here.
;
; A property default is only meaningful if the corresponding property
; is not yet defined in the system registry.
;
[OEM.Defaults.AddReg]
HKR,settings\PropDefaults,Brightness      ,0x00010001,128  ;
HKR,settings\PropDefaults,Contrast        ,0x00010001,32   ;
HKR,settings\PropDefaults,Hue             ,0x00010001,64   ;
HKR,settings\PropDefaults,Saturation      ,0x00010001,32   ;
HKR,settings\PropDefaults,Sharpness       ,0x00010001,2    ;
HKR,settings\PropDefaults,Gamma           ,0x00010001,50   ;

HKR,settings\PropDefaults,Mirror          ,0x00010001,0    ; 0=OFF, 1=ON
HKR,settings\PropDefaults,Flip            ,0x00010001,0    ; 0=OFF, 1=ON
HKR,settings\PropDefaults,AutoExposure    ,0x00010001,1    ; 0=OFF, 1=ON
HKR,settings\PropDefaults,AEMode          ,0x00010001,1    ; 0=Dark, 1=Normal
HKR,settings\PropDefaults,AE_Level        ,0x00010001,3    ; Target AE (0-6)        
HKR,settings\PropDefaults,Exposure        ,0x00010001,4    ;
HKR,settings\PropDefaults,LightTemperature,0x00010001,0    ;
HKR,settings\PropDefaults,LightFreq       ,0x00010001,0    ; 0=60Hz, 1=50Hz
HKR,settings\PropDefaults,AutoWhiteBalance,0x00010001,1    ; 0=OFF , 1=ON
HKR,settings\PropDefaults,AWB_R           ,0x00010001,32   ;
HKR,settings\PropDefaults,AWB_B           ,0x00010001,32   ;
HKR,settings\PropDefaults,WindowSize      ,0x00010001,0    ; 0=640x480, 1=320x240, 2=1280x960
HKR,settings\PropDefaults,MonitorType     ,0x00010001,0    ; 0=CRT,  1=LCD
HKR,settings\PropDefaults,Volume          ,0x00010001,8    ; 

HKR,settings\PropDefaults,VideoStandard   ,0x00010001,0x10 ; 1=NTSC, 0x10=PAL_B, 0x40000=SECAM_L
HKR,settings\PropDefaults,Deinterlace     ,0x00010001,1    ; 1=Weave, 2=Bob
HKR,settings\PropDefaults,VCRMask         ,0x00010001,0    ; # of lines masked out
HKR,settings\PropDefaults,MaskColor       ,0x00010001,1    ; 0=Gray, 1=Black



;--------------------- S T R I N G S -----------------------

[Strings]
;---------------------------------------------------------------
; Non-Localizable (Windows)
;---------------------------------------------------------------
REG_DWORD              = 0x00010001
REG_EXPAND_SZ          = 0x00020000

KSCATEGORY_VIDEO        = "{6994AD05-93EF-11D0-A3CC-00A0C9223196}"
KSCATEGORY_CAPTURE      = "{65E8773D-8F56-11D0-A3B9-00A0C9223196}"
KSCATEGORY_TVTUNER      = "{a799a800-a46d-11d0-a18c-00a02401dcd4}"
KSCATEGORY_TVAUDIO      = "{a799a802-a46d-11d0-a18c-00a02401dcd4}"
KSCATEGORY_XBAR         = "{a799a801-a46d-11d0-a18c-00a02401dcd4}"
KSCATEGORY_BDA_RECEIVER = "{FD0A5AF4-B41D-11d2-9C95-00C04F7971E0}"
KSCATEGORY_BDA_TUNER    = "{71985F48-1CA1-11d3-9CC8-00C04F7971E0}"

ProxyVCap.CLSID         = "{17CCA71B-ECD7-11D0-B908-00A0C9223196}"
ProxyTVTuner.CLSID      = "{266EEE40-6C63-11cf-8A03-00AA006ECB65}"
ProxyTVAudio.CLSID      = "{71F96462-78F3-11d0-A18C-00A0C9118956}"
ProxyXbar.CLSID         = "{71F96460-78F3-11d0-A18C-00A0C9118956}"

;---------------------------------------------------------------
; Non-Localizable (this driver)
;---------------------------------------------------------------
WDMCapFilter            = "{54353D15-E717-4d94-B574-685CE1A209E9}"
WDMTunerFilter          = "{12AF27FC-0911-461f-B190-D31117E603D0}"
WDMTVAudFilter          = "{08D111EA-EE84-4ddc-99B5-8885C6C64FCB}"
WDMXbarFilter           = "{C2C9FB1B-795C-4b12-ADBE-D87C6A1D08FC}"
BDACapFilter            = "{BC102ACB-6095-451d-8ED6-16CF3C832EBC}"
BDATunerFilter          = "{7C8095AB-C110-40e5-9F4D-310858BBBF64}"

Name.Key                = "Software\USB2800\BDA"
CustomPlugIn            = "emPRP Custom Interface"
CustomPropPage          = "emPRP Custom Property Page"



;---------------------------------------------------------------
; Localizable
;---------------------------------------------------------------
Vendor             = "TerraTec Electronic GmbH"
DiskLabel          = "TerraTec Driver CD"

OEM.DeviceDesc     = "Cinergy T USB XS Custom Filter"   ; OEM Service description

USB2870.DeviceDesc = "Cinergy T USB XS"                 ; Device manager
BDACap.2870.Name   = "Cinergy T USB XS Receiver"        ; DS: KSCATEGORY_BDA_RECEIVER(BDA Receiver Component)
BDATuner.2870.Name = "Cinergy T USB XS Tuner"           ; DS: KSCATEGORY_BDA_TUNER   (BDA Source Filters)

USB2881.DeviceDesc = "Cinergy Hybrid T USB XS"          ; Device manager & DS capture driver name
Capture.2881.Name  = "Cinergy Hybrid T USB XS (Analog)"  ; DS: analog capture
TVTuner.2881.Name  = "Cinergy Hybrid T USB XS TVTuner"  ; DS
TVAudio.2881.Name  = "Cinergy Hybrid T USB XS TVAudio"  ; DS
Xbar.2881.Name     = "Cinergy Hybrid T USB XS Crossbar" ; DS
BDACap.2881.Name   = "Cinergy Hybrid T USB XS (Digital)"; DS: KSCATEGORY_BDA_RECEIVER(BDA Receiver Component)
BDATuner.2881.Name = "Cinergy Hybrid T USB XS Tuner"    ; DS: KSCATEGORY_BDA_TUNER   (BDA Source Filters)

