; Copyright 2010 Trident Microelectronics, Ltd.

[Version]
signature           = "$CHICAGO$" ;all windows os
Class               = MEDIA
ClassGUID           = {4d36e96c-e325-11ce-bfc1-08002be10318}
Provider            = %PROVIDER%
DriverVer           = 12/29/2010,1.0.6.3
CatalogFile.NTX86   = TrdHCap.cat
CatalogFile.NTAMD64 = TrdHCap64.cat

[Manufacturer]
%PROVIDER% = SupportedBoards, NTx86, NTamd64

;---> 32 BIT SUPPORT <---
[SupportedBoards.NTx86]
%60Hybrid.DeviceDesc% = TrdHCap,PCI\VEN_1131&DEV_7160
%61Hybrid.DeviceDesc% = TrdHCap,PCI\VEN_1131&DEV_7161
%62Hybrid.DeviceDesc% = TrdHCap,PCI\VEN_1131&DEV_7162
%31Hybrid.DeviceDesc% = TrdHCap,PCI\VEN_1131&DEV_7231

;---> 64 BIT SUPPORT <---
[SupportedBoards.NTAMD64]
%60Hybrid.DeviceDesc% = TrdHCap,PCI\VEN_1131&DEV_7160
%61Hybrid.DeviceDesc% = TrdHCap,PCI\VEN_1131&DEV_7161
%62Hybrid.DeviceDesc% = TrdHCap,PCI\VEN_1131&DEV_7162
%31Hybrid.DeviceDesc% = TrdHCap,PCI\VEN_1131&DEV_7231

[SourceDisksNames]
1 = %AVSTRM_INSTALLATION_DISK%,,

[SourceDisksFiles]
716xCoInstaller.dll = 1
NXPMV32.dll         = 1
NXPMV64.dll         = 1
TrdHCap.sys          = 1
TrdHCap64.sys        = 1

[DestinationDirs]
TrdHCap.CopyCoInst.NTx86   = 11
TrdHCap.CopyDll.NTx86      = 11
TrdHCap.CopyFiles.NTx86    = 10,system32\drivers
TrdHCap.CopyFiles.NTAMD64  = 10,system32\drivers
TrdHCap.CopyDll.NTAMD64    = 11

[TrdHCap.CopyCoInst.NTx86]
716xCoInstaller.dll

[TrdHCap.CopyFiles.NTx86]
TrdHCap.sys

[TrdHCap.CopyFiles.NTAMD64]
TrdHCap64.sys

[TrdHCap.CopyDll.NTx86]
NXPMV32.dll

[TrdHCap.CopyDll.NTAMD64]
NXPMV64.dll
;
;*** initialization and registry entries
;

[TrdHCap.ntx86.CoInstallers]
CopyFiles = TrdHCap.CopyCoInst.NTx86
AddReg    = TrdHCap.CoInstaller_AddReg.NTx86

[TrdHCap.CoInstaller_AddReg.NTx86]
HKR,,CoInstallers32,0x00010000,"716xCoInstaller.dll, CoInstallerEntry"

[TrdHCap.NTx86]
Include       = ks.inf, wdmaudio.inf, kscaptur.inf, bda.inf, machine.inf
Needs         = KS.Registration, WDMAUDIO.Registration.NT, KSCAPTUR.Registration.NT, BDA.Installation.NT, PciASPMOptOut
CopyFiles     = TrdHCap.CopyFiles.NTx86, TrdHCap.CopyDll.NTx86
AddReg        = TrdHCap.AddReg.NTx86
RegisterDlls  = TrdHCap.Register.NTx86

[TrdHCap.NTAMD64]
Include       = ks.inf, wdmaudio.inf, kscaptur.inf, bda.inf, machine.inf
Needs         = KS.Registration, WDMAUDIO.Registration.NT, KSCAPTUR.Registration.NT, BDA.Installation.NT, PciASPMOptOut
CopyFiles     = TrdHCap.CopyFiles.NTAMD64, TrdHCap.CopyDll.NTAMD64
AddReg        = TrdHCap.AddReg.NTAMD64
RegisterDlls  = TrdHCap.Register.NTAMD64

[TrdHCap.NTx86.Services]
AddService = TrdHCap, 0x00000002, TrdHCap.ServiceInstall.NTx86, TrdHCap.EventInstall.NTx86

[TrdHCap.NTAMD64.Services]
AddService = TrdHCap64, 0x00000002, TrdHCap.ServiceInstall.NTAMD64, TrdHCap.EventInstall.NTAMD64

[TrdHCap.ServiceInstall.NTx86]
DisplayName   = %DISPLAY_NAME%
Description   = %SERVICE_DESCRIPTION%
ServiceType   = %SERVICE_KERNEL_DRIVER%
StartType     = %SERVICE_DEMAND_START%
ErrorControl  = %SERVICE_ERROR_IGNORE%
ServiceBinary = %12%\TrdHCap.sys

[TrdHCap.ServiceInstall.NTAMD64]
DisplayName   = %DISPLAY_NAME%
Description   = %SERVICE_DESCRIPTION%
ServiceType   = %SERVICE_KERNEL_DRIVER%
StartType     = %SERVICE_DEMAND_START%
ErrorControl  = %SERVICE_ERROR_IGNORE%
ServiceBinary = %12%\TrdHCap64.sys

[TrdHCap.Register.NTx86]
11,,NXPMV32.dll,1 ;FLG_REGSVR_DLLREGISTER

[TrdHCap.Register.NTAMD64]
11,,NXPMV64.dll,1 ;FLG_REGSVR_DLLREGISTER

[TrdHCap.AddReg.NTx86]
HKR,,DevLoader,,*NTKERN
HKR,,NTMPDriver,,TrdHCap.sys
HKR,,CoInstallers32,0x00010008, "CIRCoInst.dll,IRCoInstaller"
HKR, "Parameters", "APVenderCode", 0x00010001, 0x1131

; Audio capture registry entries
HKR,,AssociatedFilters,,"wdmaud,swmidi,redbook"
HKR,,Driver,,TrdHCap.SYS

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

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

HKR,Drivers\wave\wdmaud.drv,Description,, "Trident audio capture device"
HKR,Drivers\mixer\wdmaud.drv,Description,,"Trident audio capture device"

; add audio input and output pinnames
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%AVSTREAM_ANLG_AUDIO_IN_PIN%, "Name",,"Analog Audio Input"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%AVSTREAM_ANLG_AUDIO_OUT_PIN%,"Name",,"Audio"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%AVSTREAM_ANLG_VIDEO_ITU_PIN%,"Name",,"Analog ITU Video"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%AVSTREAM_ANLG_AUDIO_I2S_PIN%,"Name",,"I2S Audio"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%AVSTREAM_ANLG_AUDIO_PIN%,    "Name",,"~Audio"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%AVSTREAM_ANLG_VIDEO_PIN%,    "Name",,"~Capture"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%AVSTREAM_MPEG_PS_PIN%,       "Name",,"MPEG2 Program"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%AVSTREAM_ANLG_RDS_PIN%,      "Name",,"RDS"

[TrdHCap.AddReg.NTAMD64]
HKR,,DevLoader,,*NTKERN
HKR,,NTMPDriver,,TrdHCap64.sys
HKR,,CoInstallers32,0x00010008, "CIRCoInst.dll,IRCoInstaller"
HKR, "Parameters", "APVenderCode", 0x00010001, 0x1131

; Audio capture registry entries
HKR,,Driver,,TrdHCap64.SYS
HKR,,AssociatedFilters,,"wdmaud,swmidi,redbook"

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

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

HKR,Drivers\wave\wdmaud.drv,Description,, "Trident Audio Capture Device"
HKR,Drivers\mixer\wdmaud.drv,Description,,"Trident Audio Capture Device"

; add audio input and output pinnames
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%AVSTREAM_ANLG_AUDIO_IN_PIN%, "Name",,"Analog Audio In"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%AVSTREAM_ANLG_AUDIO_OUT_PIN%,"Name",,"Audio"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%AVSTREAM_ANLG_VIDEO_ITU_PIN%,"Name",,"Analog ITU Video"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%AVSTREAM_ANLG_AUDIO_I2S_PIN%,"Name",,"I2S Audio"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%AVSTREAM_ANLG_VIDEO_PIN%,    "Name",,"Capture"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%AVSTREAM_ANLG_AUDIO_PIN%,    "Name",,"~Audio"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%AVSTREAM_ANLG_VIDEO_PIN%,    "Name",,"~Capture"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%AVSTREAM_MPEG_PS_PIN%,       "Name",,"MPEG2 Program"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%AVSTREAM_ANLG_RDS_PIN%,      "Name",,"RDS"

[TrdHCap.EventInstall.NTx86]
AddReg = TrdHCapEvent_AddReg.NTx86

[TrdHCap.EventInstall.NTAMD64]
AddReg = TrdHCapEvent_AddReg.NTAMD64

[TrdHCapEvent_AddReg.NTx86]
HKR,,EventMessageFile,0x00020000,"%%SystemRoot%%\System32\IoLogMsg.dll;%%SystemRoot%%\System32\drivers\TrdHCap.sys"
HKR,,TypesSupported,0x00010001,7

[TrdHCapEvent_AddReg.NTAMD64]
HKR,,EventMessageFile,0x00020000,"%%SystemRoot%%\System32\IoLogMsg.dll;%%SystemRoot%%\System32\drivers\TrdHCap64.sys"
HKR,,TypesSupported,0x00010001,7

;
;*** strings, GUIDs and names
;

[Strings]
; Our Pin Name GUIDs

AVSTREAM_ANLG_AUDIO_IN_PIN   = "{7BB284B9-714D-493d-A101-B1B028E782BD}"
AVSTREAM_ANLG_AUDIO_OUT_PIN  = "{5582E657-E596-42b5-9DB3-541B27A2355F}"
AVSTREAM_ANLG_VIDEO_ITU_PIN  = "{82631A2E-403C-4581-A4B0-EC173D004410}"
AVSTREAM_ANLG_AUDIO_I2S_PIN  = "{C2E46358-F032-4d88-B802-06B59D162730}"
AVSTREAM_ANLG_VIDEO_PIN      = "{16FFBD0A-F770-4692-A2FF-DD394DFE9564}"
AVSTREAM_ANLG_AUDIO_PIN      = "{BA9E27B1-CF44-490e-8EAB-5F662E5FFE74}"
AVSTREAM_MPEG_PS_PIN         = "{DDA87B83-65DB-4aec-82D0-79FBE67D2BB6}"
AVSTREAM_ANLG_RDS_PIN        = "{900337FB-8ED4-4d4e-B056-318DA76C72FF}"

; system defines

SERVICE_BOOT_START     = 0x0 
SERVICE_SYSTEM_START   = 0x1 
SERVICE_AUTO_START     = 0x2 
SERVICE_DEMAND_START   = 0x3 
SERVICE_DISABLED       = 0x4 

SERVICE_KERNEL_DRIVER  = 0x1 
SERVICE_ERROR_IGNORE   = 0x0 
SERVICE_ERROR_NORMAL   = 0x1 
SERVICE_ERROR_SEVERE   = 0x2
SERVICE_ERROR_CRITICAL = 0x3 

FLG_REGSVR_DLLREGISTER = 0x00000001

;Our strings

PROVIDER                 = "Trident Microelectronics, Ltd."
60Hybrid.DeviceDesc      = "Trident SAA7160 Hybrid Capture Device"
61Hybrid.DeviceDesc      = "Trident SAA7161 Hybrid Capture Device"
62Hybrid.DeviceDesc      = "Trident SAA7162 Hybrid Capture Device"
31Hybrid.DeviceDesc      = "Trident SAA7231 Hybrid Capture Device"
AVSTRM_INSTALLATION_DISK = "Trident installation disk"
DISPLAY_NAME             = "Trident HDMI capture service"
SERVICE_DESCRIPTION      = "The Trident PCIe HDMI capture driver"
