; enecir.inf
;
; Copyright (C) 2012, ENE TECHNOLOGY INC. 

[Version]
Signature   = "$WINDOWS NT$"
Class       = HIDClass
ClassGuid   = {745a17a0-74d3-11d0-b6fe-00a0c90f57da}
Provider    = %ENE%
CatalogFile = enecir.cat
DriverVer=08/29/2012,4.1.0.0

[DestinationDirs]
DefaultDestDir = 12
DllCopyFiles   = 11

[SourceDisksNames]
99 = %DISK_NAME%

[SourceDisksFiles]
enecir.sys              = 99
enecirhid.sys           = 99

[Manufacturer]
%ENE%=ENE,NTx86.6.2

[ENE.NTx86.6.2]
; ---- ENE CIR port ----
;
%enecir.DeviceDesc%     = enecir_inst,           *ENE0100                 ; standard
%enecir.DeviceDesc%     = enecir0200_inst,       *ENE0200                 ; ir hid tsb nec
%enecir.DeviceDesc%     = enecir0201_inst,       *ENE0201                 ; ir hid lenovo rc6
%enecir.DeviceDesc%     = enecir0202_inst,       *ENE0202                 ; ir hid msi nec

; ---- ENE CIR HID miniport ----
;
%enecirhid.DeviceDesc%  = enecirhid0100_inst,    ENECIR\ENE0100
%enecirhid.DeviceDesc%  = enecirhid0200_inst,    ENECIR\ENE0200
%enecirhid.DeviceDesc%  = enecirhid0201_inst,    ENECIR\ENE0201
%enecirhid.DeviceDesc%  = enecirhid0202_inst,    ENECIR\ENE0202
%customCollection%      = customCollection.Inst, HID_DEVICE_UP:FF00_U:0001

; ================================= ENE CIR port =====================================

; ---- install sections ----
;
[enecir_inst.NT]
CopyFiles = CirCopyFiles

[enecir0200_inst.NT]
CopyFiles = CirCopyFiles

[enecir0201_inst.NT]
CopyFiles = CirCopyFiles

[enecir0202_inst.NT]
CopyFiles = CirCopyFiles

; ---- hw sections ----
;
[enecir_inst.NT.HW]
AddReg = enecir_inst.NT.AddReg
DelReg = enecir_DelReg

[enecir0200_inst.NT.HW]
AddReg = enecir0200_inst.NT.AddReg
DelReg = enecir_DelReg

[enecir0201_inst.NT.HW]
AddReg = enecir0201_inst.NT.AddReg
DelReg = enecir_DelReg

[enecir0202_inst.NT.HW]
AddReg = enecir0202_inst.NT.AddReg
DelReg = enecir_DelReg

; ---- services sections ----
;
[enecir_inst.NT.Services]
AddService = enecir,0x00000002,enecir_Service_Inst

[enecir0200_inst.NT.Services]
AddService = enecir,0x00000002,enecir_Service_Inst

[enecir0201_inst.NT.Services]
AddService = enecir,0x00000002,enecir_Service_Inst

[enecir0202_inst.NT.Services]
AddService = enecir,0x00000002,enecir_Service_Inst

; ---- co-installers sections ----
;
[enecir_inst.NT.CoInstallers]
CopyFiles = DllCopyFiles
AddReg    = CoInstaller_AddReg

[enecir0200_inst.NT.CoInstallers]
CopyFiles = DllCopyFiles
AddReg    = CoInstaller_AddReg

[enecir0201_inst.NT.CoInstallers]
CopyFiles = DllCopyFiles
AddReg    = CoInstaller_AddReg

[enecir0202_inst.NT.CoInstallers]
CopyFiles = DllCopyFiles
AddReg    = CoInstaller_AddReg

; ---- wdf sections ----
;
[enecir_inst.NT.Wdf]
KmdfService = enecir, enecir_inst_WdfSection

[enecir0200_inst.NT.Wdf]
KmdfService = enecir, enecir_inst_WdfSection

[enecir0201_inst.NT.Wdf]
KmdfService = enecir, enecir_inst_WdfSection

[enecir0202_inst.NT.Wdf]
KmdfService = enecir, enecir_inst_WdfSection

[enecir_inst_WdfSection]
KmdfLibraryVersion = 1.11

; ---- add reg sections ----
;
[enecir_inst.NT.AddReg]                            
HKR,,DeviceCharacteristics,0x10001,0x0100         ; Use same security checks on relative opens
HKR,,Security,,"D:P(A;;GA;;;BA)(A;;GA;;;SY)"      ; Allow generic-all access to Built-in administrators and Local system 
;HKR,,"IrHidRc6",0x00000001,\                      ; Manually add it(REG_BINARY) in acpi\ene0100\...\parameters key to test mapping MCE rc6.
;    0x0F, 0x04, 0x00     \ ; CustomerCodeLo, CustomerCodeHi, CodeCount

[enecir0200_inst.NT.AddReg]                            
HKR,,DeviceCharacteristics,0x10001,0x0100         ; Use same security checks on relative opens
HKR,,Security,,"D:P(A;;GA;;;BA)(A;;GA;;;SY)"      ; Allow generic-all access to Built-in administrators and Local system 
HKR,,"IrHid",0x00010001,1                         ; ir hid non RC6

[enecir0201_inst.NT.AddReg]                            
HKR,,DeviceCharacteristics,0x10001,0x0100         ; Use same security checks on relative opens
HKR,,Security,,"D:P(A;;GA;;;BA)(A;;GA;;;SY)"      ; Allow generic-all access to Built-in administrators and Local system 
HKR,,"IrHidRc6",0x00000001,\                      ; some ir hid rc6
    0x0F, 0x04, 0x00,    \ ; CustomerCodeLo, CustomerCodeHi, CodeCount (Map&discard MCE rc6 for 0201)
    0x45, 0x04, 0x00,    \ ; CustomerCodeLo, CustomerCodeHi, CodeCount (Map lenovo rc6 for 0201)
    0x34, 0x04, 0x00     \ ; CustomerCodeLo, CustomerCodeHi, CodeCount (Map lenovo rc6 for 0201)

[enecir0202_inst.NT.AddReg]                            
HKR,,DeviceCharacteristics,0x10001,0x0100         ; Use same security checks on relative opens
HKR,,Security,,"D:P(A;;GA;;;BA)(A;;GA;;;SY)"      ; Allow generic-all access to Built-in administrators and Local system 
HKR,,"IrHid",0x00010001,1                         ; ir hid non RC6

; ---- sections common to all CIR port devices ----
;
[CirCopyFiles]
enecir.sys

[DllCopyFiles]

[enecir_Service_Inst]
DisplayName    = %enecir.SVCDESC%
ServiceType    = 1               ; SERVICE_KERNEL_DRIVER
StartType      = 3               ; SERVICE_DEMAND_START 
ErrorControl   = 1               ; SERVICE_ERROR_NORMAL
ServiceBinary  = %12%\enecir.sys
LoadOrderGroup = Extended Base

[CoInstaller_AddReg]
HKR,,CoInstallers32,0x00010000,"CIRCoInst.dll,IRCoInstaller"

[enecir_DelReg]
HKR,,"IrHid"
HKR,,"IrHidRc6"

; ================================ ENE CIR HID miniport ==================================

; ---- install sections ----
;
[enecirhid0100_inst.NT]
CopyFiles = HidCopyFiles

[enecirhid0200_inst.NT]
CopyFiles = HidCopyFiles

[enecirhid0201_inst.NT]
CopyFiles = HidCopyFiles

[enecirhid0202_inst.NT]
CopyFiles = HidCopyFiles

; ---- hw sections ----
;
[enecirhid0100_inst.NT.HW]
AddReg = enecirhid0100_Parameters.AddReg
DelReg = enecirhid_DelReg

[enecirhid0200_inst.NT.HW]
AddReg = enecirhid0200_Parameters.AddReg
DelReg = enecirhid_DelReg

[enecirhid0201_inst.NT.HW]
AddReg = enecirhid0201_Parameters.AddReg
DelReg = enecirhid_DelReg

[enecirhid0202_inst.NT.HW]
AddReg = enecirhid0202_Parameters.AddReg
DelReg = enecirhid_DelReg

; ---- services sections ----
;
[enecirhid0100_inst.NT.Services]
AddService = enecirhid,,enecirhid_Service_Inst
AddService = mshidkmdf, 0x000001fa, mshidkmdf_Service_Inst

[enecirhid0200_inst.NT.Services]
AddService = enecirhid,,enecirhid_Service_Inst
AddService = mshidkmdf, 0x000001fa, mshidkmdf_Service_Inst

[enecirhid0201_inst.NT.Services]
AddService = enecirhid,,enecirhid_Service_Inst
AddService = mshidkmdf, 0x000001fa, mshidkmdf_Service_Inst

[enecirhid0202_inst.NT.Services]
AddService = enecirhid,,enecirhid_Service_Inst
AddService = mshidkmdf, 0x000001fa, mshidkmdf_Service_Inst

; ---- add reg sections ----
;
[enecirhid0100_Parameters.AddReg]
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center\Remote Controls","HID\ENE0100&Col05",0x00000000,""
HKLM,"SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Media Center\Remote Controls","HID\ENE0100&Col05",0x00000000,""
HKR,,"LowerFilters",0x00010000,"enecirhid"
HKR,,"IrCodeTable",0x00000001,\
    3,                   \ ; VendorRepeatType(no repeat)
    1,                   \ ; CustomerCount
    0x0F, 0x04,          \ ; 1st CustomerCodeLo/CustomerCodeHi (MCE rc6)
    0x3E,                \ ; ReportCount
    \ ; IrCode, Repeat, ReportId, HIDBtn0, HIDBtn1
    0x1E, 2, 1, 0x00, 0x52, \ ; "Up"
    0x20, 2, 1, 0x00, 0x50, \ ; "Left"
    0x22, 2, 1, 0x00, 0x28, \ ; "OK",
    0x21, 2, 1, 0x00, 0x4F, \ ; "Right"
    0x1F, 2, 1, 0x00, 0x51, \ ; "Down"
    0x01, 2, 1, 0x00, 0x1E, \ ; "1"
    0x02, 2, 1, 0x00, 0x1F, \ ; "2"
    0x03, 2, 1, 0x00, 0x20, \ ; "3"
    0x04, 2, 1, 0x00, 0x21, \ ; "4"
    0x05, 2, 1, 0x00, 0x22, \ ; "5"
    0x06, 2, 1, 0x00, 0x23, \ ; "6"
    0x07, 0, 1, 0x00, 0x24, \ ; "7" no repeat by fake up
    0x08, 1, 1, 0x00, 0x25, \ ; "8" repeat
    0x09, 3, 1, 0x00, 0x26, \ ; "9" no repeat
    0x1D, 2, 1, 0xE1, 0x25, \ ; "*"
    0x00, 2, 1, 0x00, 0x27, \ ; "0"
    0x1C, 2, 1, 0xE1, 0x20, \ ; "#"
    0x0A, 2, 1, 0x00, 0x29, \ ; "Clear"
    0x0B, 2, 1, 0x00, 0x28, \ ; "Enter"
    \ 
    0x0C, 2, 2, 0x82, 0x00, \ ; "Standby"
    0x17, 2, 2, 0x81, 0x00, \ ; "Record" as "Off"
    0x48, 2, 2, 0x83, 0x00, \ ; "Recorded TV" as "On"
    \ 
    0x26, 2, 3, 0x8D, 0x00, \ ; "Guide"  
    0x23, 2, 3, 0x24, 0x02, \ ; "Back"    
    0x0F, 2, 3, 0x09, 0x02, \ ; "More"   
    0x1B, 2, 3, 0xB6, 0x00, \ ; "Backward(Replay)"
    0x1A, 2, 3, 0xB5, 0x00, \ ; "Forward(Skip)" 
    0x15, 2, 3, 0xB4, 0x00, \ ; "Rewind"    
    0x16, 2, 3, 0xB0, 0x00, \ ; "Play"
    0x14, 2, 3, 0xB3, 0x00, \ ; "Fast Forward"
    \ ; 0x18, 2, 3, 0xB1, 0x00, \ ; "Pause" as vendor-button
    0x19, 2, 3, 0xB7, 0x00, \ ; "Stop"
    0x12, 2, 3, 0x9C, 0x00, \ ; "Channel Up"
    0x13, 2, 3, 0x9D, 0x00, \ ; "Channel Down"
    0x10, 2, 3, 0xE9, 0x00, \ ; "Volume Up"
    0x11, 2, 3, 0xEA, 0x00, \ ; "Volume Down"
    0x0E, 2, 3, 0xE2, 0x00, \ ; "Mute"
    0x50, 2, 3, 0x93, 0x00, \ ; "Radio"
    0x4E, 2, 3, 0x08, 0x02, \ ; "Print"
    0x6E, 2, 3, 0xCD, 0x00, \ ; Play/pause
    \ 
    0x28, 2, 4, 0x28, 0x00, \ ; "Eject"
    0x0D, 2, 4, 0x0D, 0x00, \ ; "Green Start Button"           
    0x46, 2, 4, 0x46, 0x00, \ ; "My TV"
    0x47, 2, 4, 0x47, 0x00, \ ; "My Music"
    0x49, 2, 4, 0x49, 0x00, \ ; "My Pictures"
    0x4A, 2, 4, 0x4A, 0x00, \ ; "My Videos"
    0x24, 2, 4, 0x24, 0x00, \ ; "DVD Menu"
    0x4B, 2, 4, 0x4B, 0x00, \ ; "DVD Angle"
    0x4C, 2, 4, 0x4C, 0x00, \ ; "DVD Audio"
    0x4D, 2, 4, 0x4D, 0x00, \ ; "DVD Subtitle"
    0x4F, 2, 4, 0x4F, 0x00, \ ; "Display"
    0x25, 2, 4, 0x25, 0x00, \ ; "Live TV"
    0x80, 2, 4, 0x80, 0x00, \ ; "OEM1"
    0x81, 2, 4, 0x81, 0x00, \ ; "OEM2"
    0x27, 2, 4, 0x27, 0x00, \ ; "Aspect(ZOOM)"
    0x5B, 2, 4, 0x5B, 0x00, \ ; "Red"
    0x5C, 2, 4, 0x5C, 0x00, \ ; "Green"
    0x5D, 2, 4, 0x5D, 0x00, \ ; "Yellow"
    0x5E, 2, 4, 0x5E, 0x00, \ ; "Blue"
    0x60, 2, 4, 0x60, 0x00, \ ; "Orange"
    0x5A, 2, 4, 0x5A, 0x00, \ ; "Teletext On/Off or ISDB Data"
    0x5F, 2, 4, 0x5F, 0x00, \ ; "Teletext index"
    0x32, 2, 4, 0x32, 0x00  \ ; Ext0

[enecirhid0200_Parameters.AddReg]
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center\Remote Controls","HID\ENE0200&Col05",0x00000000,""
HKLM,"SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Media Center\Remote Controls","HID\ENE0200&Col05",0x00000000,""
HKR,,"LowerFilters",0x00010000,"enecirhid"
HKR,,"IrCodeTable",0x00000001,\
    0,                   \ ; VendorRepeatType(no repeat by fake-up)
    1,                   \ ; CustomerCount
    0xE3, 0x19,          \ ; 1st CustomerCodeLo/CustomerCodeHi (tsb nec)
    0x3F,                \ ; ReportCount
    \ ; IrCode, Repeat, ReportId, HIDBtn0, HIDBtn1
    0x45, 1, 1, 0x00, 0x52, \ ; Up
    0x47, 1, 1, 0x00, 0x50, \ ; Left
    0x48, 1, 1, 0x00, 0x28, \ ; OK
    0x49, 1, 1, 0x00, 0x4F, \ ; Right
    0x4B, 1, 1, 0x00, 0x51, \ ; Down
    0x56, 1, 1, 0x00, 0x1E, \ ; 1
    0x57, 1, 1, 0x00, 0x1F, \ ; 2
    0x58, 1, 1, 0x00, 0x20, \ ; 3
    0x5A, 1, 1, 0x00, 0x21, \ ; 4
    0x5B, 1, 1, 0x00, 0x22, \ ; 5
    0x5C, 1, 1, 0x00, 0x23, \ ; 6
    0x5E, 1, 1, 0x00, 0x24, \ ; 7
    0x5F, 1, 1, 0x00, 0x25, \ ; 8
    0x60, 1, 1, 0x00, 0x26, \ ; 9
    0xED, 0, 1, 0xE1, 0x25, \ ; *
    0x61, 1, 1, 0x00, 0x27, \ ; 0
    0xEC, 0, 1, 0xE1, 0x20, \ ; #
    0xEA, 0, 1, 0x00, 0x29, \ ; Clear
    0xEB, 0, 1, 0x00, 0x28, \ ; Enter
    \
    0x40, 0, 2, 0x82, 0x00, \ ; Standby(sleep toggle)
    \
    0x6E, 1, 3, 0x24, 0x02, \ ; Back       
    0x8F, 0, 3, 0x09, 0x02, \ ; More       
    0x50, 1, 3, 0xB6, 0x00, \ ; Backward   
    0x53, 1, 3, 0xB5, 0x00, \ ; Forward        
    0x51, 1, 3, 0xB4, 0x00, \ ; Rewind     
    0x7C, 0, 3, 0xB0, 0x00, \ ; Play       
    0x52, 1, 3, 0xB3, 0x00, \ ; Fast Forward
    0x7D, 0, 3, 0xB1, 0x00, \ ; Pause      
    0x63, 0, 3, 0xB2, 0x00, \ ; Record     
    0x4F, 0, 3, 0xB7, 0x00, \ ; Stop       
    0x6F, 0, 3, 0x9C, 0x00, \ ; Channel Up 
    0x70, 0, 3, 0x9D, 0x00, \ ; Channel Down
    0x44, 1, 3, 0xE9, 0x00, \ ; Volume Up  
    0x46, 1, 3, 0xEA, 0x00, \ ; Volume Down    
    0x54, 0, 3, 0xE2, 0x00, \ ; Mute       
    \
    0x83, 0, 4, 0x28, 0x00, \ ; Eject                      
    0x7E, 0, 4, 0x0D, 0x00, \ ; Green Start Button         
    0x4C, 0, 4, 0x43, 0x00, \ ; DVD Top Menu               
    0x84, 0, 4, 0x24, 0x00, \ ; DVD Menu                   
    0x8B, 0, 4, 0x41, 0x00, \ ; Channnel Infomation            
    0x97, 0, 4, 0x27, 0x00, \ ; ZOOM                       
    0x77, 1, 4, 0x3E, 0x00, \ ; 10                         
    0x71, 1, 4, 0x3F, 0x00, \ ; 11                         
    0x72, 1, 4, 0x40, 0x00, \ ; 12                         
    0xF2, 1, 4, 0x56, 0x00, \ ; HD DVD Left Up             
    0xF3, 1, 4, 0x57, 0x00, \ ; HD DVD Right Up                
    0xF4, 1, 4, 0x58, 0x00, \ ; HD DVD Left Down           
    0xF5, 1, 4, 0x59, 0x00, \ ; HD DVD Right Down          
    0xEE, 0, 4, 0x52, 0x00, \ ; HD DVD A                   
    0x99, 0, 4, 0x44, 0x00, \ ; HD DVD Return              
    0xEF, 0, 4, 0x53, 0x00, \ ; HD DVD B                   
    0xF0, 0, 4, 0x54, 0x00, \ ; HD DVD C                   
    0xF1, 0, 4, 0x55, 0x00, \ ; HD DVD D                   
    0xF6, 1, 4, 0x5E, 0x00, \ ; Blue                       
    0x74, 0, 4, 0x4B, 0x00, \ ; DVD Angle                  
    0xF7, 1, 4, 0x5B, 0x00, \ ; Red                            
    0x75, 0, 4, 0x4D, 0x00, \ ; DVD Subtitle               
    0xF8, 1, 4, 0x5C, 0x00, \ ; Green                      
    0x9C, 0, 4, 0x4C, 0x00, \ ; DVD Audio                  
    0xF9, 1, 4, 0x5D, 0x00, \ ; Yellow                     
    0xE3, 0, 4, 0x42, 0x00, \ ; Channel Input (3 digits input)
    0xE2, 0, 4, 0x5A, 0x00, \ ; Teletext On/Off or ISDB Data
    0x91, 0, 4, 0x81, 0x00  \ ; LED ON/OFF

[enecirhid0201_Parameters.AddReg]
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center\Remote Controls","HID\ENE0201&Col05",0x00000000,""
HKLM,"SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Media Center\Remote Controls","HID\ENE0201&Col05",0x00000000,""
HKR,,"LowerFilters",0x00010000,"enecirhid"
HKR,,"IrCodeTable",0x00000001,\
    3,                   \ ; VendorRepeatType(no repeat)
    2,                   \ ; CustomerCount
    0x45, 0x04,          \ ; 1st CustomerCodeLo/CustomerCodeHi (lenovo rc6)
    0x34, 0x04,          \ ; 2nd CustomerCodeLo/CustomerCodeHi (lenovo rc6)
    0x62,                \ ; ReportCount
    \ ; IrCode, Repeat, ReportId, HIDBtn0, HIDBtn1
    0x58, 2, 1, 0x00, 0x52, \ ; Up
    0x5A, 2, 1, 0x00, 0x50, \ ; Left
    0x5C, 2, 1, 0x00, 0x28, \ ; OK
    0x5B, 2, 1, 0x00, 0x4F, \ ; Right
    0x59, 2, 1, 0x00, 0x51, \ ; Down
    0x01, 2, 1, 0x00, 0x1E, \ ; 1
    0x02, 2, 1, 0x00, 0x1F, \ ; 2
    0x03, 2, 1, 0x00, 0x20, \ ; 3
    0x04, 2, 1, 0x00, 0x21, \ ; 4
    0x05, 2, 1, 0x00, 0x22, \ ; 5
    0x06, 2, 1, 0x00, 0x23, \ ; 6
    0x07, 2, 1, 0x00, 0x24, \ ; 7
    0x08, 2, 1, 0x00, 0x25, \ ; 8
    0x09, 2, 1, 0x00, 0x26, \ ; 9
    0x33, 2, 1, 0xE1, 0x25, \ ; *
    0x00, 2, 1, 0x00, 0x27, \ ; 0
    0x32, 2, 1, 0xE1, 0x20, \ ; #
    0x3A, 2, 1, 0x00, 0x29, \ ; Clear
    0x34, 2, 1, 0x00, 0x28, \ ; Enter
    \
    0x8E, 2, 2, 0x83, 0x00, \ ; On
    0x0C, 2, 2, 0x82, 0x00, \ ; Standby(sleep toggle)
    0x3D, 2, 2, 0x82, 0x00, \ ; Off    (map to Standby, too)
    \
    0x3E, 2, 3, 0x8D, 0x00, \ ; Guide      
    0x83, 2, 3, 0x24, 0x02, \ ; Back       
    0xCB, 2, 3, 0x09, 0x02, \ ; More       
    0x21, 2, 3, 0xB6, 0x00, \ ; Backward   
    0x20, 2, 3, 0xB5, 0x00, \ ; Forward        
    0x29, 2, 3, 0xB4, 0x00, \ ; Rewind     
    0x2C, 2, 3, 0xB0, 0x00, \ ; Play       
    0x28, 2, 3, 0xB3, 0x00, \ ; Fast Forward
    0x30, 2, 3, 0xB1, 0x00, \ ; Pause      
    0x37, 2, 3, 0xB2, 0x00, \ ; Record     
    0x31, 2, 3, 0xB7, 0x00, \ ; Stop       
    0x1E, 2, 3, 0x9C, 0x00, \ ; Channel Up 
    0x1F, 2, 3, 0x9D, 0x00, \ ; Channel Down
    0x10, 2, 3, 0xE9, 0x00, \ ; Volume Up  
    0x11, 2, 3, 0xEA, 0x00, \ ; Volume Down    
    0x0D, 2, 3, 0xE2, 0x00, \ ; Mute       
    0x93, 2, 3, 0xCD, 0x00, \ ; Play/pause
    0x84, 2, 3, 0x08, 0x02, \ ; Print 
    \
    0xF7, 2, 4, 0x27, 0x00, \ ; ZOOM(Aspect)
    0x42, 2, 4, 0x28, 0x00, \ ; Eject
    0x4A, 2, 4, 0x2B, 0x00, \ ; Closed captioning                   
    0x5D, 2, 4, 0x0D, 0x00, \ ; Green Start Button         
    0x9F, 2, 4, 0x43, 0x00, \ ; DVD Top Menu               
    0x54, 2, 4, 0x24, 0x00, \ ; DVD Menu                   
    0x2E, 2, 4, 0x25, 0x00, \ ; Live TV  
    0x87, 2, 4, 0x47, 0x00, \ ; My Music                      
    0x9B, 2, 4, 0x48, 0x00, \ ; Recorded TV
    0x0F, 2, 4, 0x4F, 0x00, \ ; Display(OEM2)
    0x78, 2, 4, 0x3E, 0x00, \ ; 10                         
    0x79, 2, 4, 0x3F, 0x00, \ ; 11                         
    0x7A, 2, 4, 0x40, 0x00, \ ; 12  
    0x8D, 2, 4, 0x6A, 0x00, \ ; KIOSK
    0x8F, 2, 4, 0x2C, 0x00, \ ; Network selection
    0x50, 2, 4, 0x2D, 0x00, \ ; Sub audio
    0xB3, 2, 4, 0x52, 0x00, \ ; HD DVD A  
    0xB4, 2, 4, 0x53, 0x00, \ ; HD DVD B                   
    0xB5, 2, 4, 0x54, 0x00, \ ; HD DVD C                   
    0xB6, 2, 4, 0x55, 0x00, \ ; HD DVD D  
    0xC0, 2, 4, 0x56, 0x00, \ ; HD DVD Left Up             
    0xC2, 2, 4, 0x57, 0x00, \ ; HD DVD Right Up                
    0xC1, 2, 4, 0x58, 0x00, \ ; HD DVD Left Down           
    0xC3, 2, 4, 0x59, 0x00, \ ; HD DVD Right Down
    0x40, 2, 4, 0x2E, 0x00, \ ; HD DVD Subtitle change track
    0xEF, 2, 4, 0x2F, 0x00, \ ; HD DVD Audio track
    0xCD, 2, 4, 0x30, 0x00, \ ; HD DVD Top menu
    0x80, 2, 4, 0x31, 0x00, \ ; HD DVD Resume
    0x90, 2, 4, 0x44, 0x00, \ ; HD DVD Return
    0xF8, 2, 4, 0x78, 0x00, \ ; BD tool
    0x0E, 2, 4, 0x41, 0x00, \ ; Channnel Infomation            
    0x0B, 2, 4, 0x42, 0x00, \ ; Channel input(3 digit input)               
    0x89, 2, 4, 0x49, 0x00, \ ; My Pictures
    0x9C, 2, 4, 0x4A, 0x00, \ ; My Videos
    0x4F, 2, 4, 0x50, 0x00, \ ; FM Radio                                                           
    0x85, 2, 4, 0x4B, 0x00, \ ; DVD Angle                  
    0x6D, 2, 4, 0x5B, 0x00, \ ; Red                            
    0x4B, 2, 4, 0x4D, 0x00, \ ; DVD Subtitle
    0xC9, 2, 4, 0x51, 0x00, \ ; DVD Title               
    0x6E, 2, 4, 0x5C, 0x00, \ ; Green                      
    0x4E, 2, 4, 0x4C, 0x00, \ ; DVD Audio                  
    0x6F, 2, 4, 0x5D, 0x00, \ ; Yellow
    0x70, 2, 4, 0x5E, 0x00, \ ; Blue
    0x2F, 2, 4, 0x5A, 0x00, \ ; Teletext On/Off or ISDB Data
    0x9D, 2, 4, 0x3C, 0x00, \ ; Online spotlight
    0x9E, 2, 4, 0x3D, 0x00, \ ; Online spotlight app
    0xA8, 2, 4, 0x32, 0x00, \ ; Ext0
    0xA9, 2, 4, 0x33, 0x00, \ ; Ext1
    0xAA, 2, 4, 0x34, 0x00, \ ; Ext2
    0xAB, 2, 4, 0x35, 0x00, \ ; Ext3
    0xAC, 2, 4, 0x36, 0x00, \ ; Ext4
    0xAD, 2, 4, 0x37, 0x00, \ ; Ext5
    0xAE, 2, 4, 0x38, 0x00, \ ; Ext6
    0xAF, 2, 4, 0x39, 0x00, \ ; Ext7
    0xB1, 2, 4, 0x3A, 0x00, \ ; Ext8
    0xB2, 2, 4, 0x80, 0x00, \ ; Ext9
    0x94, 2, 4, 0x81, 0x00, \ ; Ext10
    0x95, 2, 4, 0x6F, 0x00  \ ; Ext11

[enecirhid0202_Parameters.AddReg]
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center\Remote Controls","HID\ENE0202&Col05",0x00000000,""
HKLM,"SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Media Center\Remote Controls","HID\ENE0202&Col05",0x00000000,""
HKR,,"LowerFilters",0x00010000,"enecirhid"
HKR,,"IrCodeTable",0x00000001,\
    3,                   \ ; VendorRepeatType(no repeat)
    1,                   \ ; CustomerCount
    0x00, 0xFF,          \ ; 1st CustomerCodeLo/CustomerCodeHi (msi nec)
    0x59,                \ ; ReportCount
    \ ; IrCode, Repeat, ReportId, HIDBtn0, HIDBtn1
    0x1A, 2, 1, 0x00, 0x52, \ ; Up
    0x9A, 2, 1, 0x00, 0x52, \ ; Up
    0x1D, 2, 1, 0x00, 0x50, \ ; Left
    0x9D, 2, 1, 0x00, 0x50, \ ; Left
    0x1E, 2, 1, 0x00, 0x28, \ ; OK
    0x9E, 2, 1, 0x00, 0x28, \ ; OK
    0x1F, 2, 1, 0x00, 0x4F, \ ; Right
    0x9F, 2, 1, 0x00, 0x4F, \ ; Right
    0x22, 2, 1, 0x00, 0x51, \ ; Down
    0xA2, 2, 1, 0x00, 0x51, \ ; Down
    0x0D, 2, 1, 0x00, 0x1E, \ ; 1
    0x8D, 2, 1, 0x00, 0x1E, \ ; 1
    0x0E, 2, 1, 0x00, 0x1F, \ ; 2
    0x8E, 2, 1, 0x00, 0x1F, \ ; 2
    0x0F, 2, 1, 0x00, 0x20, \ ; 3
    0x8F, 2, 1, 0x00, 0x20, \ ; 3
    0x10, 2, 1, 0x00, 0x21, \ ; 4
    0x90, 2, 1, 0x00, 0x21, \ ; 4
    0x11, 2, 1, 0x00, 0x22, \ ; 5
    0x91, 2, 1, 0x00, 0x22, \ ; 5
    0x12, 2, 1, 0x00, 0x23, \ ; 6
    0x92, 2, 1, 0x00, 0x23, \ ; 6
    0x13, 2, 1, 0x00, 0x24, \ ; 7
    0x93, 2, 1, 0x00, 0x24, \ ; 7
    0x14, 2, 1, 0x00, 0x25, \ ; 8
    0x94, 2, 1, 0x00, 0x25, \ ; 8
    0x15, 2, 1, 0x00, 0x26, \ ; 9
    0x95, 2, 1, 0x00, 0x26, \ ; 9
    0x37, 2, 1, 0xE1, 0x25, \ ; *
    0xB7, 2, 1, 0xE1, 0x25, \ ; *
    0x17, 2, 1, 0x00, 0x27, \ ; 0
    0x97, 2, 1, 0x00, 0x27, \ ; 0
    0x38, 2, 1, 0xE1, 0x20, \ ; #
    0xB8, 2, 1, 0xE1, 0x20, \ ; #
    0x30, 2, 1, 0x00, 0x29, \ ; Clear
    0xB0, 2, 1, 0x00, 0x29, \ ; Clear
    0x36, 2, 1, 0x00, 0x28, \ ; Enter
    0xB6, 2, 1, 0x00, 0x28, \ ; Enter
    \
    0x02, 2, 2, 0x82, 0x00, \ ; Standby(sleep toggle)
    \
    0x31, 2, 3, 0x8D, 0x00, \ ; Guide      
    0xB1, 2, 3, 0x8D, 0x00, \ ; Guide
    0x20, 2, 3, 0x24, 0x02, \ ; Back       
    0xA0, 2, 3, 0x24, 0x02, \ ; Back
    0x2F, 2, 3, 0x09, 0x02, \ ; More       
    0xAF, 2, 3, 0x09, 0x02, \ ; More
    0x21, 2, 3, 0xB6, 0x00, \ ; Backward   
    0xA1, 2, 3, 0xB6, 0x00, \ ; Backward
    0x23, 2, 3, 0xB5, 0x00, \ ; Forward        
    0xA3, 2, 3, 0xB5, 0x00, \ ; Forward
    0x24, 2, 3, 0xB4, 0x00, \ ; Rewind     
    0xA4, 2, 3, 0xB4, 0x00, \ ; Rewind
    0x25, 2, 3, 0xB0, 0x00, \ ; Play       
    0xA5, 2, 3, 0xB0, 0x00, \ ; Play
    0x26, 2, 3, 0xB3, 0x00, \ ; Fast Forward
    0xA6, 2, 3, 0xB3, 0x00, \ ; Fast Forward
    0x29, 2, 3, 0xB1, 0x00, \ ; Pause      
    0xA9, 2, 3, 0xB1, 0x00, \ ; Pause
    0x27, 2, 3, 0xB2, 0x00, \ ; Record    
    0xA7, 2, 3, 0xB2, 0x00, \ ; Record 
    0x28, 2, 3, 0xB7, 0x00, \ ; Stop       
    0xA8, 2, 3, 0xB7, 0x00, \ ; Stop
    0x0B, 2, 3, 0x9C, 0x00, \ ; Channel Up 
    0x8B, 2, 3, 0x9C, 0x00, \ ; Channel Up
    0x0C, 2, 3, 0x9D, 0x00, \ ; Channel Down
    0x8C, 2, 3, 0x9D, 0x00, \ ; Channel Down
    0x09, 2, 3, 0xE9, 0x00, \ ; Volume Up  
    0x89, 2, 3, 0xE9, 0x00, \ ; Volume Up
    0x08, 2, 3, 0xEA, 0x00, \ ; Volume Down    
    0x88, 2, 3, 0xEA, 0x00, \ ; Volume Down
    0x00, 2, 3, 0xE2, 0x00, \ ; Mute       
    0x80, 2, 3, 0xE2, 0x00, \ ; Mute
    \                
    0x1B, 2, 4, 0x0D, 0x00, \ ; Green Start Button                       
    0x9B, 2, 4, 0x0D, 0x00, \ ; Green Start Button
    0x04, 2, 4, 0x24, 0x00, \ ; DVD Menu                   
    0x84, 2, 4, 0x24, 0x00, \ ; DVD Menu
    0x1C, 2, 4, 0x25, 0x00, \ ; Live TV                        
    0x9C, 2, 4, 0x25, 0x00, \ ; Live TV
    0x18, 2, 4, 0x48, 0x00, \ ; Recorded TV                                                    
    0x98, 2, 4, 0x48, 0x00, \ ; Recorded TV
    0x16, 2, 4, 0x5A, 0x00, \ ; Teletext On/Off or ISDB Data
    0x96, 2, 4, 0x5A, 0x00, \ ; Teletext On/Off or ISDB Data
    0x32, 2, 4, 0x5B, 0x00, \ ; Red    
    0xB2, 2, 4, 0x5B, 0x00, \ ; Red 
    0x33, 2, 4, 0x5C, 0x00, \ ; Green  
    0xB3, 2, 4, 0x5C, 0x00, \ ; Green   
    0x34, 2, 4, 0x5D, 0x00, \ ; Yellow
    0xB4, 2, 4, 0x5D, 0x00, \ ; Yellow
    0x35, 2, 4, 0x5E, 0x00, \ ; Blue
    0xB5, 2, 4, 0x5E, 0x00  \ ; Blue    
	
; ---- sections common to all CIR HID miniport devices ----
;
[HidCopyFiles]
enecirhid.sys

[enecirhid_Service_Inst]
DisplayName    = %enecirhid.SVDESC%
ServiceType    = 1               ; SERVICE_KERNEL_DRIVER
StartType      = 3               ; SERVICE_DEMAND_START
ErrorControl   = 0               ; SERVICE_ERROR_IGNORE 
ServiceBinary  = %12%\enecirhid.sys 

[mshidkmdf_Service_Inst]
ServiceType    = 1               ; SERVICE_KERNEL_DRIVER
StartType      = 3               ; SERVICE_DEMAND_START 
ErrorControl   = 1               ; SERVICE_ERROR_NORMAL
ServiceBinary  = %12%\mshidkmdf.sys

[enecirhid_DelReg]
HKR,,"IrCodeTable"

; ---- custom collection install section ----
;      only a null service is installed
[customCollection.Inst.NT]

[customCollection.Inst.NT.Services]
AddService = ,0x00000002,   ; NULL Service

[Strings]
DISK_NAME              = "ENE CIR Driver Installation Disk"
ENE                    = "ENE"
enecir.DeviceDesc      = "ENE CIR Receiver"
enecirhid.DeviceDesc   = "ENE CIR HID Receiver" 
enecir.SVCDESC         = "ENE CIR Receiver"
enecirhid.SVDESC       = "ENE CIR HID Receiver"
customCollection       = "HID-compliant device"
