; MSMOUSE.INF
; - Installs core mouse support files, etc.
; - Includes drivers for detected & PnP devices

; Copyright (c) 1993,1996 Microsoft Corporation

[Version]
Signature="$Windows NT$"
Class=Mouse
ClassGUID={4D36E96F-E325-11CE-BFC1-08002BE10318}
Provider=%Provider%
LayoutFile=layout.inf
DriverVer=07/01/2001,5.1.2600.0

[ClassInstall32.NT]
AddReg=mouse_class_addreg

[mouse_class_addreg]
HKR,,,,%MouseClassName%
HKR,,Icon,,"-2"
HKR,,Installer32,,"SysSetup.Dll,MouseClassInstaller"
HKR,,NoInstallClass,,"1"
HKR,,TroubleShooter-0,,"hcp://help/tshoot/hdw_mouse.htm"

[DestinationDirs]
DefaultDestDir = 12 ; DIRID_DRIVERS
TrackPoint_UsrCopy = 11

[ControlFlags]
; Exclude all bus mice and InPort mice for RISC platforms.
ExcludeFromSelect.NTAlpha = *PNP0F0D,*PNP0F11,*PNP0F00,*PNP0F02,*PNP0F15

;
; Mark any install sections for drivers that also control the i8042 keyboard port,
; so that we can warn the user that they may also be affecting their keyboard with
; a mouse driver change.
;
SharedDriver=PS2_Inst,%PS2_Inst.SharedDriverMsg%
SharedDriver=TrackPoint_Inst,%PS2_Inst.SharedDriverMsg%


; Manufacturer Sections
; ---------------------------------------------------------
[Manufacturer]
%StdMfg%  =StdMfg               ; (Standard types)
%MSMfg%   =MSMfg                ; Microsoft
%LogiMfg% =LogiMfg              ; Logitech
%IbmMfg%=IbmMfg                 ; IBM
%CypressMfg% =CypressMfg        ; Cypress
%TIMfg%   =TIMfg                ; Texas Instruments
%ToshMfg% =ToshMfg              ; Toshiba
%ELOMfg%  =ELOMfg               ; ELO Touchsystems
%ChiconyMfg% =ChiconyMfg        ; Chicony
%NMBMfg%  =NMBMfg               ; NMB
%STSLMfg%  =STSLMfg             ; STSL
%SUPERGATEMfg%  =SUPERGATEMfg   ; SUPGERGATE
%BTCMfg%  =BTCMfg
%FOCUSMfg%=FOCUSMfg
%JINGMOLDMfg%=JINGMOLDMfg
%MAXISWITCHMfg%=MAXISWITCHMfg
%MONTEREYMfg%=MONTEREYMfg
%ORTEKMfg%=ORTEKMfg
%KeytronicMfg%=KEYTRONICMfg
%GeniusMfg%=GeniusMfg
%ItacMfg% =ItacMfg              ; Itac Systems
%SamsungMfg%=SamsungMfg         ; Samsung
%ForwardMfg%=ForwardMfg         ; Forward
%SUHMfg%=SUHMfg                 ; SUH DART
%PhilipsMfg%=PhilipsMfg         ; Philips
%AnchorMfg%=AnchorMfg           ; Anchor
%SOLIDYEARMfg%=SOLIDYEARMfg     ; Solid Year
%NEC%=NECMfg                    ; NEC
%FUJITSUMfg%=FUJITSUMfg         ; Fujitsu
%SEJINMfg%=SEJINMfg             ; Sejin
%DexinMfg%=DexinMfg             ; Dexin
%AcerMfg%=AcerMfg               ; Acer
%SilitekMfg%=SilitekMfg         ; Silitek
%QtronixMfg%=QtronixMfg         ; Qtronix

; Microsoft

[StdMfg]
%*pnp0f0c.DeviceDesc%      = Ser_Inst,*PNP0F0C,SERENUM\PNP0F0C,SERIAL_MOUSE ; Std serial mouse
%*pnp0f0d.DeviceDesc%      = Inp_Inst,*PNP0F0D                 ; Std InPort mouse
%*pnp0f0e.DeviceDesc%      = PS2_Inst,*PNP0F0E,PS2_MOUSE       ; Std PS/2 mouse
%*AUI0200.DeviceDesc%      = PS2_Inst,*AUI0200                 ; Replace ALPS driver
; %*pnp0f11.DeviceDesc%      = Bus_Inst,*PNP0F11                 ; Std bus mouse

[LogiMfg]
%*pnp0f08.DeviceDesc%=Ser_Inst,*PNP0F08, SERENUM\PNP0F08 ; Logi serial mouse
%*pnp0f12.DeviceDesc%=PS2_Inst,*PNP0F12                      ; Logi PS/2 mouse
; %*pnp0f15.DeviceDesc%=Bus_Inst,*PNP0F15,*PNP0F11           ; Logi bus mouse

%SERENUM\LGI8001.DeviceDesc%=Ser_Inst,,SERENUM\LGI8001
%SERENUM\LGI8002.DeviceDesc%=Ser_Inst,,SERENUM\LGI8002
%SERENUM\LGI8003.DeviceDesc%=Ser_Inst,,SERENUM\LGI8003
%SERENUM\LGI8005.DeviceDesc%=Ser_Inst,,SERENUM\LGI8005
%SERENUM\LGI8006.DeviceDesc%=Ser_Inst,,SERENUM\LGI8006
%SERENUM\LGI8007.DeviceDesc%=Ser_Inst,,SERENUM\LGI8007
%SERENUM\LGI8008.DeviceDesc%=Ser_Inst,,SERENUM\LGI8008
%SERENUM\LGI8009.DeviceDesc%=Ser_Inst,,SERENUM\LGI8009
%SERENUM\LGI800A.DeviceDesc%=Ser_Inst,,SERENUM\LGI800A
%SERENUM\LGI800B.DeviceDesc%=Ser_Inst,,SERENUM\LGI800B
%SERENUM\LGI800C.DeviceDesc%=Ser_Inst,,SERENUM\LGI800C
%SERENUM\LGI8011.DeviceDesc%=Ser_Inst,,SERENUM\LGI8011
%SERENUM\LGI8012.DeviceDesc%=Ser_Inst,,SERENUM\LGI8012
%SERENUM\LGI8013.DeviceDesc%=Ser_Inst,,SERENUM\LGI8013
%SERENUM\LGI8032.DeviceDesc%=Ser_Inst,,SERENUM\LGI8032
%SERENUM\LGI8033.DeviceDesc%=Ser_Inst,,SERENUM\LGI8033
%SERENUM\LGI8048.DeviceDesc%=Ser_Inst,,SERENUM\LGI8048
%SERENUM\LGI8049.DeviceDesc%=Ser_Inst,,SERENUM\LGI8049
%SERENUM\LGI804B.DeviceDesc%=Ser_Inst,,SERENUM\LGI804B
%SERENUM\LGI8050.DeviceDesc%=Ser_Inst,,SERENUM\LGI8050
%SERENUM\LGI8051.DeviceDesc%=Ser_Inst,,SERENUM\LGI8051

%HID\VID_046D&PID_C000.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C000
%HID\VID_046D&PID_C001.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C001
%HID\VID_046D&PID_C002.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C002
%HID\VID_046D&PID_C003.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C003
%HID\VID_046D&PID_C004.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C004
%HID\VID_046D&PID_C005.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C005
%HID\VID_046D&PID_C00B.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C00B
%HID\VID_046D&PID_C00C.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C00C
%HID\VID_046D&PID_C00D.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C00D
%HID\VID_046D&PID_C00E.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C00E
%HID\VID_046D&PID_C030.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C030
%HID\VID_046D&PID_C031.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C031
%HID\VID_046D&PID_C032.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C032
%HID\VID_046D&PID_C033.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C033
%HID\VID_046D&PID_C401.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C401
%HID\VID_046D&PID_C402.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C402
%HID\VID_046D&PID_C403.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C403
%HID\VID_046D&PID_C404.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C404
%HID\VID_046D&PID_C501.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C501
%HID\VID_046D&PID_C502&MI_01&Col01.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C502&MI_01&Col01
%HID\VID_046D&PID_C502&MI_01&Col04.DeviceDesc%=HID_Mouse_Inst, HID\VID_046D&PID_C502&MI_01&Col04

[IbmMfg]
%*IBM3780.DeviceDesc%=TrackPoint_Inst,, *IBM3780,*IBM3781

[CypressMfg]
%HID\VID_04B4&PID_0001.DeviceDesc%=HID_Mouse_Inst,, HID\VID_04B4&PID_0001

[ELOMfg]
%HID\VID_04E7&PID_0001.DeviceDesc%=HID_Mouse_Absolute_Inst,, HID\VID_04E7&PID_0001

[ChiconyMfg]
%HID\VID_04F2&PID_0001&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_04F2&PID_0001&MI_01

[NMBMfg]
%HID\VID_0446&PID_6781&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_0446&PID_6781&MI_01

[STSLMfg]
%HID\VID_05FA&PID_3301&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_05FA&PID_3301&MI_01
%HID\VID_05FA&PID_3303&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_05FA&PID_3303&MI_01

[SUPERGATEMfg]
%HID\VID_05d5&PID_6782&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_05d5&PID_6782&MI_01

[KEYTRONICMfg]
%HID\VID_03F9&PID_0102&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_03F9&PID_0102&MI_01

[GeniusMfg]
%HID\VID_0458&PID_0001.DeviceDesc%=HID_Mouse_Inst,, HID\VID_0458&PID_0001
%HID\VID_0458&PID_0002.DeviceDesc%=HID_Mouse_Inst,, HID\VID_0458&PID_0002
%HID\VID_0458&PID_0003.DeviceDesc%=HID_Mouse_Inst,, HID\VID_0458&PID_0003

[ItacMfg]
%HID\VID_0431&PID_0100.DeviceDesc%=HID_Mouse_Inst,, HID\VID_0431&PID_0100

[SamsungMfg]
%HID\VID_055D&PID_6781&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_055D&PID_6781&MI_01

[ForwardMfg]
%HID\VID_05BC&PID_0001&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_05BC&PID_0001&MI_01

[SUHMfg]
%HID\VID_0500&PID_0001&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_0500&PID_0001&MI_01

[BTCMfg]
%HID\VID_046E&PID_6782&MI_01&Col01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_046E&PID_6782&MI_01&Col01

[FOCUSMfg]
%HID\VID_05B2&PID_7200&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_05B2&PID_7200&MI_01

[JINGMOLDMfg]
%HID\VID_05AF&PID_9267&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_05AF&PID_9267&MI_01

[MAXISWITCHMfg]
%HID\VID_04C3&PID_1102&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_04C3&PID_1102&MI_01
%HID\VID_04C3&PID_2102&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_04C3&PID_2102&MI_01

[MONTEREYMfg]
%HID\VID_0566&PID_2801&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_0566&PID_2801&MI_01

[ORTEKMfg]
%HID\VID_05A4&PID_9720&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_05A4&PID_9720&MI_01

[PhilipsMfg]
%HID\VID_0471&PID_0601&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_0471&PID_0601&MI_01
%HID\VID_0471&PID_0402&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_0471&PID_0402&MI_01

[AnchorMfg]
%HID\VID_0605&PID_0001.DeviceDesc%=HID_Mouse_Inst,, HID\VID_0605&PID_0001

[NECMfg]
%HID\VID_0409&PID_0014&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_0409&PID_0014&MI_01
%HID\VID_0409&PID_0011&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_0409&PID_0011&MI_01

[SOLIDYEARMfg]
%HID\VID_060B&PID_2101&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_060B&PID_2101&MI_01

[FUJITSUMfg]
%HID\VID_0430&PID_0002&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_0430&PID_0002&MI_01

[SEJINMfg]
%HID\VID_0510&PID_E001.DeviceDesc%=HID_Mouse_Inst,, HID\VID_0510&PID_E001
%HID\VID_0510&PID_1000&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_0510&PID_1000&MI_01

[DexinMfg]
%HID\VID_05F2&PID_0010.DeviceDesc%=HID_Mouse_Inst,, HID\VID_05F2&PID_0010

[AcerMfg]
%HID\VID_04A5&PID_0003&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_04A5&PID_0003&MI_01

[SilitekMfg]
%HID\VID_047B&PID_0002&MI_01.DeviceDesc%=HID_Mouse_Inst,, HID\VID_047B&PID_0002&MI_01

[QtronixMfg]
%HID\VID_05C7&PID_1001.DeviceDesc%=HID_Mouse_Inst,, HID\VID_05C7&PID_1001

[MSMfg]
; %*pnp0f00.DeviceDesc%=Bus_Inst,*PNP0F00                  ; MS bus mouse
%*pnp0f02.DeviceDesc%=Inp_Inst,*PNP0F02                  ; MS InPort mouse
%*pnp0f03.DeviceDesc%=PS2_Inst,*PNP0F03                  ; MS PS/2 mouse
%*pnp0f0b.DeviceDesc%=PS2_Inst,*PNP0F0B                  ; MS PS/2 mouse
%*pnp0f13.DeviceDesc%=PS2_Inst,*PNP0F13                  ; MS PS/2 mouse
%*pnp0f01.DeviceDesc%=Ser_Inst,*PNP0F01,SERENUM\PNP0F01  ; MS serial mouse
%*pnp0f09.DeviceDesc%=Ser_Inst,*PNP0F09,SERENUM\PNP0F09  ; MS serial BallPoint
%*pnp0f0f.DeviceDesc%=Ser_Inst,*PNP0F0F,SERENUM\PNP0F0F  ; MS serial BallPoint
%*pnp0f0a.DeviceDesc%=Ser_Inst,*PNP0F0A                  ; MS serial wheel mouse
%*pnp0f1e.DeviceDesc%=Ser_Inst,,*PNP0F1E,SERENUM\PNP0F1E ; MS serial EasyBall
%*SERENUM\MSH0001.DeviceDesc%=Ser_Inst,,SERENUM\MSH0001, MSH0001  ; MS serial wheelmouse
%*SERENUM\MSH0004.DeviceDesc%=Ser_Inst,,SERENUM\MSH0004, MSH0004  ; MS serial track ball mouse

%HID\Vid_045E&Pid_0009.DeviceDesc%=HID_Mouse_Inst,, HID\Vid_045E&Pid_0009
%HID\Vid_045E&Pid_001E.DeviceDesc%=HID_Mouse_Inst,, HID\Vid_045E&Pid_001E
%HID\Vid_045E&Pid_0023.DeviceDesc%=HID_Mouse_Inst,, HID\Vid_045E&Pid_0023
%HID\Vid_045E&Pid_0024.DeviceDesc%=HID_Mouse_Inst,, HID\Vid_045E&Pid_0024
%HID\Vid_045E&Pid_0025.DeviceDesc%=HID_Mouse_Inst,, HID\Vid_045E&Pid_0025
%HID\Vid_045E&Pid_0029.DeviceDesc%=HID_Mouse_Inst,, HID\Vid_045E&Pid_0029
%HID\Vid_045E&Pid_0039.DeviceDesc%=HID_Mouse_Inst,, HID\Vid_045E&Pid_0039
%HID\Vid_045E&Pid_0040.DeviceDesc%=HID_Mouse_Inst,, HID\Vid_045E&Pid_0040
%HID\Vid_045E&Pid_0047.DeviceDesc%=HID_Mouse_Inst,, HID\Vid_045E&Pid_0047

; Generic Mouse
%HID.MouseDevice%=HID_Mouse_Inst,,HID_DEVICE_SYSTEM_MOUSE

; Install Sections
; ---------------------------------------------------------

; -------------- Mouse Class Driver install sections
[mouclass_CopyFiles]
mouclass.sys

[mouclass_Service_Inst]
DisplayName    = %mouclass.SvcDesc%
ServiceType    = 1                  ; SERVICE_KERNEL_DRIVER
StartType      = 1                  ; SERVICE_SYSTEM_START
ErrorControl   = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary  = %12%\mouclass.sys
LoadOrderGroup = Pointer Class

[mouclass_EventLog_Inst]
AddReg = mouclass_EventLog_AddReg

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


; -------------- Serial Mouse
[Ser_Inst]
CopyFiles = Ser_CopyFiles, mouclass_CopyFiles

[Ser_Inst.MigrateToDevnode]
sermouse=NumberOfButtons,SampleRate

[Ser_Inst.HW]
AddReg = Ser_Inst.HW.AddReg

[Ser_Inst.HW.AddReg]
HKR,,"NumberOfButtons",0x00010003,2
HKR,,"SampleRate",0x00010003,40
; To turn off mouse removal detection, uncomment the following line
; HKR,,"WaitEventMask",0x00010001,0xFFFFFFFF

[Ser_Inst.Services]
AddService = sermouse, 0x00000002, sermouse_Service_Inst, sermouse_EventLog_Inst ; Port Driver
AddService = mouclass,, mouclass_Service_Inst, mouclass_EventLog_Inst            ; Class Driver

[Ser_CopyFiles]
sermouse.sys

[sermouse_Service_Inst]
DisplayName    = %sermouse.SvcDesc%
ServiceType    = 1                  ; SERVICE_KERNEL_DRIVER
StartType      = 3                  ; SERVICE_SYSTEM_MANUAL
ErrorControl   = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary  = %12%\sermouse.sys
LoadOrderGroup = Pointer Port

[sermouse_EventLog_Inst]
AddReg = sermouse_EventLog_AddReg

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

; -------------- InPort Mouse
[Inp_Inst]
CopyFiles = Inp_CopyFiles, mouclass_CopyFiles

[Inp_Inst.Services]
AddService = inport, 0x00000002, inport_Service_Inst, inport_EventLog_Inst ; Port Driver
AddService = mouclass,, mouclass_Service_Inst, mouclass_EventLog_Inst      ; Class Driver

[Inp_CopyFiles]
inport.sys

[inport_Service_Inst]
DisplayName    = %inport.SvcDesc%
ServiceType    = 1                  ; SERVICE_KERNEL_DRIVER
StartType      = 1                  ; SERVICE_SYSTEM_START
ErrorControl   = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary  = %12%\inport.sys
LoadOrderGroup = Pointer Port

[inport_EventLog_Inst]
AddReg = inport_EventLog_AddReg

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

; -------------- PS/2 Mouse
[PS2_Inst]
CopyFiles = PS2_CopyFiles, mouclass_CopyFiles
AddReg = PS2_Inst.AddReg

[PS2_Inst.AddReg]
HKR,,EnumPropPages32,,"syssetup.dll,PS2MousePropPageProvider"
HKR,,LocationInformationOverride,,%LocationOverride%

[PS2_Inst.MigrateToDevnode]
i8042prt=EnableWheelDetection,MouseDataQueueSize,MouseResolution,MouseSynchIn100ns,NumberOfButtons,SampleRate

[PS2_Inst.HW]
AddReg = PS2_Inst.HW.AddReg

[PS2_Inst.HW.AddReg]
HKR,,"EnableWheelDetection",0x00010003,2
HKR,,"MouseDataQueueSize",0x00010003,100
HKR,,"MouseResolution",0x00010003,3
HKR,,"MouseSynchIn100ns",0x00010003,20000000
; HKR,,"NumberOfButtons",0x00010003,2
HKR,,"SampleRate",0x00010003,100
HKR,,"WheelDetectionTimeout",0x00010003,1500
; If your mouse can't support init through the interrupt (ie it is too fast),
; uncomment the 2 lines below and comment out the MouseInitializedPolled set to 0 line
; HKR,,"DisableInitializePolledUI",0x00010001,1
; HKR,,"MouseInitializePolled",0x00010001,1
HKR,,"MouseInitializePolled",0x00010003,0

; global to i8042prt.sys (affects both keyboard and mouse)
HKLM,"SYSTEM\CurrentControlSet\Services\i8042prt\Parameters","PollingIterations",0x00010003,12000
HKLM,"SYSTEM\CurrentControlSet\Services\i8042prt\Parameters","PollingIterationsMaximum",0x00010003,12000
HKLM,"SYSTEM\CurrentControlSet\Services\i8042prt\Parameters","ResendIterations",0x00010003,3

[PS2_Inst.Services]
AddService = i8042prt, 0x00000002, i8042prt_Service_Inst, i8042prt_EventLog_Inst ; Port Driver
AddService = mouclass,, mouclass_Service_Inst, mouclass_EventLog_Inst            ; Class Driver

[PS2_CopyFiles]
i8042prt.sys

[PS2_Inst.NoInterruptInit]
AddReg = PS2_Inst.NoInterruptInit.AddReg

[PS2_Inst.NoInterruptInit.AddReg]
HKR,,"DisableInitializePolledUI",0x00010001,1
HKR,,"MouseInitializePolled",0x00010001,1

[PS2_Inst.NoInterruptInit.Bioses]
Disable=HINOTE ULTRA II

[i8042prt_Service_Inst]
DisplayName    = %i8042prt.SvcDesc%
ServiceType    = 1                  ; SERVICE_KERNEL_DRIVER
StartType      = 1                  ; SERVICE_SYSTEM_START
ErrorControl   = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary  = %12%\i8042prt.sys
LoadOrderGroup = Keyboard Port

[i8042prt_EventLog_Inst]
AddReg = i8042prt_EventLog_AddReg

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

; -------------------- TrackPoint PS/2 Mouse
[TrackPoint_Inst]
Needs=PS2_Inst
AddReg = TrackPoint_AddReg,TrackPoint_AddTp4Mon
CopyFiles  = TrackPoint_CopyFiles,TrackPoint_UsrCopy

[TrackPoint_AddReg]
HKCR,"CLSID\{A8BD5E40-B686-11D0-BD54-0004AC25B162}","",0x00000002,"Mouse CPL TrackPoint Extension"
HKCR,"CLSID\{A8BD5E40-B686-11D0-BD54-0004AC25B162}\InProcServer32","",0x00000002,"tp4.dll"
HKCR,"CLSID\{A8BD5E40-B686-11D0-BD54-0004AC25B162}\InProcServer32","ThreadingModel",0x00000002,"Apartment"
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Controls Folder\Mouse\shellex\PropertySheetHandlers\Mouse CPL TrackPoint Extension","",0x00000002,"{A8BD5E40-B686-11D0-BD54-0004AC25B162}"

[TrackPoint_AddTp4Mon]
HKLM,Software\Microsoft\Windows\CurrentVersion\Run,TrackPointSrv,0,"tp4mon.exe"

[TrackPoint_Inst.MigrateToDevnode]
i8042prt=EnableWheelDetection,MouseDataQueueSize,MouseResolution,MouseSynchIn100ns,NumberOfButtons,SampleRate

[TrackPoint_Inst.HW]
Needs=PS2_Inst.HW
AddReg=TrackPoint_AddReg.HW

[TrackPoint_AddReg.HW]
HKR,,"UpperFilters",0x00010000,"TwoTrack"

[TrackPoint_CopyFiles]
TwoTrack.sys

[TrackPoint_UsrCopy]
tp4mon.exe
tp4.dll
tp4.hlp
tp4res.dll

[TrackPoint_Inst.Services]
Needs=PS2_Inst.Services
AddService = TwoTrack, , TwoTrack_Service_Inst

[TwoTrack_Service_Inst]
DisplayName    = %TwoTrack.SvcDesc%
ServiceType    = 1                  ; SERVICE_KERNEL_DRIVER
StartType      = 3                  ; SERVICE_DEMAND_START
ErrorControl   = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary  = %12%\TwoTrack.sys
LoadOrderGroup = PNP Filter
Tag            = 1

; -------------- Bus Mouse
; Bus mice are not supported in NT 5.0
; [Bus_Inst]
; CopyFiles = Bus_CopyFiles, mouclass_CopyFiles

; [Bus_Inst.Services]
; AddService = busmouse, 0x00000002, busmouse_Service_Inst, busmouse_EventLog_Inst ; Port Driver
; AddService = mouclass,, mouclass_Service_Inst, mouclass_EventLog_Inst            ; Class Driver

; [Bus_CopyFiles]
; busmouse.sys

; [busmouse_Service_Inst]
; DisplayName    = %busmouse.SvcDesc%
; ServiceType    = 1                  ; SERVICE_KERNEL_DRIVER
; StartType      = 1                  ; SERVICE_SYSTEM_START
; ErrorControl   = 1                  ; SERVICE_ERROR_NORMAL
; ServiceBinary  = %12%\busmouse.sys
; LoadOrderGroup = Pointer Port

; [busmouse_EventLog_Inst]
; AddReg = busmouse_EventLog_AddReg

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

;
; This section is used during startup by the Windows NT Plug&Play Manager
; to simulate enumeration of the mouse based on information retrieved from
; ARC firmware/NTDETECT.
;
[LegacyXlate.DevId]
PS2_MOUSE                        = *PNP0F0E    ; Std PS/2 mouse      i8042prt
SERIAL_MOUSE                     = *PNP0F0C    ; Std serial mouse    sermouse
MICROSOFT_PS2_MOUSE              = *PNP0F03    ; MS PS/2 mouse       i8042prt
LOGITECH_PS2_MOUSE               = *PNP0F12    ; Logi PS/2 mouse     i8042prt
MICROSOFT_INPORT_MOUSE           = *PNP0F02    ; MS InPort mouse     inport
MICROSOFT_SERIAL_MOUSE           = *PNP0F01    ; MS serial mouse     sermouse
MICROSOFT_BALLPOINT_SERIAL_MOUSE = *PNP0F09    ; MS serial BallPoint sermouse
LOGITECH_SERIAL_MOUSE            = *PNP0F08    ; Logi serial mouse   sermouse
MICROSOFT_BUS_MOUSE              = *PNP0F00    ; MS bus mouse        busmouse

;
; This section is used during fresh install/upgrade to determine what Win95-style
; INF install section to associate with the currently installed mouse driver.
;
[LegacyXlate.Driver]
i8042prt = PS2_Inst
inport   = Inp_Inst
sermouse = Ser_Inst
; busmouse = Bus_Inst

;=====================================================================

[HID_Mouse_Inst.NT]
Copyfiles = HID_Mouse_Inst.CopyFiles.NT

[HID_Mouse_Inst.NT.HW]
AddReg = HID_Mouse_Inst.AddReg.NT

[HID_Mouse_Inst.AddReg.NT]
HKR,,"FlipFlopWheel",0x00010001,0
HKR,,"ForceAbsolute",0x00010001,0

[HID_Mouse_Inst.CopyFiles.NT]
mouhid.sys
mouclass.sys

[HID_Mouse_Inst.NT.Services]
AddService = mouhid,%SPSVCINST_ASSOCSERVICE%,MouHid_Service_Inst,MouHid_EventLog_Inst ; Port Driver
AddService = mouclass,, mouclass_Service_Inst, mouclass_EventLog_Inst            ; Class Driver

[MouHid_EventLog_Inst]
AddReg = MouHid_EventLog_AddReg

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

;=====================================================================

[HID_Mouse_Inst_WhFlip.NT]
Copyfiles = HID_Mouse_Inst.CopyFiles.NT

[HID_Mouse_Inst_WhFlip.NT.HW]
AddReg = HID_Mouse_Inst_WhFlip.AddReg.NT

[HID_Mouse_Inst_WhFlip.AddReg.NT]
HKR,,"FlipFlopWheel",0x00010001,1
HKR,,"ForceAbsolute",0x00010001,0

[HID_Mouse_Inst_WhFlip.NT.Services]
AddService = mouhid,%SPSVCINST_ASSOCSERVICE%,MouHid_Service_Inst

;=====================================================================

[HID_Mouse_Absolute_Inst.NT]
Copyfiles = HID_Mouse_Inst.CopyFiles.NT

[HID_Mouse_Absolute_Inst.NT.HW]
AddReg = HID_Mouse_Inst.AddReg.NT

[HID_Mouse_Absolute_Inst.AddReg.NT]
HKR,,"FlipFlopWheel",0x00010001,0
HKR,,"ForceAbsolute",0x00010001,1

[HID_Mouse_Absolute_Inst.CopyFiles.NT]
mouhid.sys
mouclass.sys

[HID_Mouse_Absolute_Inst.NT.Services]
AddService = mouhid,%SPSVCINST_ASSOCSERVICE%,MouHid_Service_Inst

;=================================================================================

[MouHid_Service_Inst]
DisplayName    = %MOUHID.SvcDesc%
ServiceType    = %SERVICE_KERNEL_DRIVER%
StartType      = 3; %SERVICE_SYSTEM_START%
ErrorControl   = %SERVICE_ERROR_IGNORE%
ServiceBinary  = %12%\mouhid.sys
LoadOrderGroup = Pointer Port
AddReg = MouHid_Service_Inst_AddReg

[MouHid_Service_Inst_AddReg]
HKR,"Parameters","UseOnlyMice",0x00010001,0
HKR,"Parameters","TreatAbsoluteAsRelative",0x00010001,0
HKR,"Parameters","TreatAbsolutePointerAsAbsolute",0x00010001,0

; Included by OEM / 3rd party INFs to install mouclass
[MouClass.Services]
AddService = mouclass,, mouclass_Service_Inst, mouclass_EventLog_Inst            ; Class Driver
















































[Strings]








i8042prt.SvcDesc = "i8042 鍵盤及 PS/2 滑鼠連接埠驅動程式"












Provider = "Microsoft"
MouseClassName = "滑鼠及其他指標裝置"
LocationOverride = "plugged into PS/2 mouse port"

; Mfg names

StdMfg  ="(標準滑鼠類型)"
MSMfg   ="Microsoft"
LogiMfg ="Logitech"
IbmMfg ="IBM Corporation"
CypressMfg ="Cypress"
TIMfg   ="Texas Instruments"
ToshMfg ="Toshiba"
ELOMfg  ="ELO TouchSystems"
ChiconyMfg ="Chicony"
NMBMfg  = "NMB"
STSLMfg  = "STSL"
SUPERGATEMfg  = "SUPGERGATE"
BTCMfg  = "BTC"
FOCUSMfg = "Focus"
JINGMOLDMfg = "Jing Mold"
MAXISWITCHMfg = "Maxi Switch, Inc."
MONTEREYMfg = "Monterey"
ORTEKMfg = "Ortek"
KEYTRONICMfg = "Key Tronic"
GeniusMfg = "Genius"
ItacMfg = "ITAC Systems"
SamsungMfg = "Samsung"
ForwardMfg = "Forward"
SUHMfg = "SUH DART"
PhilipsMfg = "Philips"
AnchorMfg="Anchor"
SOLIDYEARMfg="Solid Year"
NEC="NEC"
FUJITSUMfg="Fujitsu"
SEJINMfg="Sejin"
DexinMfg="Dexin"
AcerMfg="Acer"
SilitekMfg="Silitek"
QtronixMfg="Qtronix"

; Device Names

*pnp0f00.DeviceDesc      = "Microsoft Bus Adapter Mouse"
*pnp0f01.DeviceDesc      = "Microsoft Serial Mouse"
*pnp0f02.DeviceDesc      = "Microsoft InPort Adapter Mouse"
*pnp0f03.DeviceDesc      = "Microsoft PS/2 Mouse"
*pnp0f09.DeviceDesc      = "Microsoft Serial BallPoint"
*pnp0f0a.DeviceDesc      = "Microsoft Serial IntelliMouse"
*pnp0f0b.DeviceDesc      = "Microsoft PS/2 Mouse"
*pnp0f0c.DeviceDesc      = "標準序列滑鼠"
*pnp0f0d.DeviceDesc      = "InPort 介面卡滑鼠"
*pnp0f0e.DeviceDesc      = "標準 PS/2 連接埠滑鼠"
*AUI0200.DeviceDesc      = "標準 PS/2 連接埠滑鼠"
*pnp0f0f.DeviceDesc      = "Microsoft Serial BallPoint"
*pnp0f11.DeviceDesc      = "標準匯流排介面卡滑鼠"
*pnp0f13.DeviceDesc      = "PS/2 相容滑鼠"
*pnp0f1e.DeviceDesc      = "Microsoft Serial EasyBall"
*SERENUM\MSH0001.DeviceDesc = "Microsoft Serial IntelliMouse"
*SERENUM\MSH0004.DeviceDesc = "Microsoft Serial IntelliMouse Trackball"
SERIAL_MOUSE.DeviceDesc      = "標準序列滑鼠"

*pnp0f12.DeviceDesc      = "Logitech PS/2 Port Mouse"
*pnp0f15.DeviceDesc      = "Logitech Bus Adapter Mouse"

*pnp0f08.DeviceDesc      = "Logitech Serial Mouse"
SERENUM\LGI8001.DeviceDesc= "Logitech First/Pilot Mouse Serial (M34,M35,C43)"
SERENUM\LGI8002.DeviceDesc= "Other Logitech Mouse Serial"
SERENUM\LGI8003.DeviceDesc= "Logitech TrackMan Portable Serial"
SERENUM\LGI8005.DeviceDesc= "Logitech MouseMan Serial"
SERENUM\LGI8006.DeviceDesc= "Logitech MouseMan Serial"
SERENUM\LGI8007.DeviceDesc= "Other Logitech Mouse Serial"
SERENUM\LGI8008.DeviceDesc= "Logitech TrackMan Portable Serial"
SERENUM\LGI8009.DeviceDesc= "Other Logitech Mouse Serial"
SERENUM\LGI800A.DeviceDesc= "Logitech TrackMan Vista Serial"
SERENUM\LGI800B.DeviceDesc= "Logitech MouseMan Serial"
SERENUM\LGI800C.DeviceDesc= "Logitech MouseMan Serial"
SERENUM\LGI8011.DeviceDesc= "Other Logitech Mouse Serial"
SERENUM\LGI8012.DeviceDesc= "Logitech TrackMan Live! Serial"
SERENUM\LGI8013.DeviceDesc= "Logitech Cordless Mouse+ Serial"
SERENUM\LGI8032.DeviceDesc= "Logitech Cordless Desktop Serial"
SERENUM\LGI8033.DeviceDesc= "Logitech Cordless MouseMan Pro Serial"
SERENUM\LGI8048.DeviceDesc= "Logitech TrackMan Marble Serial"
SERENUM\LGI8049.DeviceDesc= "Logitech TrackMan Marble FX Serial"
SERENUM\LGI804B.DeviceDesc= "Logitech TrackMan Marble+ Serial"
SERENUM\LGI8050.DeviceDesc= "Logitech MouseMan+ Serial"
SERENUM\LGI8051.DeviceDesc= "Logitech First/Pilot Mouse+ Serial (C48)"

*IBM3780.DeviceDesc="IBM PS/2 TrackPoint"

; Description of device also controlled by a shared driver

PS2_Inst.SharedDriverMsg = "keyboard port"

; Service Names

busmouse.SvcDesc = "匯流排介面卡滑鼠驅動程式"
inport.SvcDesc   = "InPort 介面卡滑鼠驅動程式"
sermouse.SvcDesc = "序列滑鼠驅動程式"
mouclass.SvcDesc = "滑鼠類別驅動程式"
MOUHID.SvcDesc = "滑鼠 HID 驅動程式"
TwoTrack.SvcDesc = "IBM PS/2 TrackPoint Filter Driver"

; HID device IDs
HID\VID_045E&PID_0009.DeviceDesc="Microsoft USB IntelliMouse"
HID\VID_045E&PID_001E.DeviceDesc="Microsoft USB IntelliMouse Explorer"
HID\VID_045E&PID_0023.DeviceDesc="Microsoft USB Trackball Optical"
HID\VID_045E&PID_0024.DeviceDesc="Microsoft USB Trackball Explorer"
HID\VID_045E&PID_0025.DeviceDesc="Microsoft USB IntelliMouse with IntelliEye"
HID\VID_045E&PID_0029.DeviceDesc="Microsoft USB IntelliMouse Web"
HID\VID_045E&PID_0039.DeviceDesc="Microsoft USB IntelliMouse Optical"
HID\VID_045E&PID_0040.DeviceDesc="Microsoft USB Wheel Mouse Optical"
HID\VID_045E&PID_0047.DeviceDesc="Microsoft USB IntelliMouse Explorer 3.0"
HID\VID_046D&PID_C000.DeviceDesc="Logitech USB First/Pilot Mouse"
HID\VID_046D&PID_C001.DeviceDesc="Logitech USB First/Pilot Mouse+"
HID\VID_046D&PID_C002.DeviceDesc="Logitech USB MouseMan Wheel"
HID\VID_046D&PID_C003.DeviceDesc="Logitech USB MouseMan"
HID\VID_046D&PID_C004.DeviceDesc="Logitech USB WingMan Gaming Mouse"
HID\VID_046D&PID_C005.DeviceDesc="Logitech USB WingMan Gaming Wheel Mouse"
HID\VID_046D&PID_C00B.DeviceDesc="Logitech USB MouseMan Wheel+"
HID\VID_046D&PID_C00C.DeviceDesc="Logitech USB WheelMouse"
HID\VID_046D&PID_C00D.DeviceDesc="Logitech USB MouseMan Wheel+"
HID\VID_046D&PID_C00E.DeviceDesc="Logitech USB Wheel Mouse"
HID\VID_046D&PID_C030.DeviceDesc="Logitech USB iFeel Mouse"
HID\VID_046D&PID_C031.DeviceDesc="Logitech USB iFeel Mouse+"
HID\VID_046D&PID_C032.DeviceDesc="Logitech USB iFeel MouseMan"
HID\VID_046D&PID_C033.DeviceDesc="Logitech USB iFeel MouseMan+"
HID\VID_046D&PID_C401.DeviceDesc="Logitech USB TrackMan Marble Wheel"
HID\VID_046D&PID_C402.DeviceDesc="Logitech USB Marble Mouse"
HID\VID_046D&PID_C403.DeviceDesc="Logitech USB Turbo TrackMan Marble FX"
HID\VID_046D&PID_C404.DeviceDesc="Logitech USB TrackMan Wheel"
HID\VID_046D&PID_C501.DeviceDesc="Logitech USB Cordless Mouse"
HID\VID_046D&PID_C502&MI_01&Col01.DeviceDesc="Logitech HID Cordless Mouse+"
HID\VID_046D&PID_C502&MI_01&Col04.DeviceDesc="Logitech HID Cordless Mouse+"
HID\VID_04B4&PID_0001.DeviceDesc="Cypress USB Mouse"
HID\VID_04E7&PID_0001.DeviceDesc="ELO TouchSystems USB Touchscreen"
HID\VID_0458&PID_0001.DeviceDesc="Genius USB Mouse"
HID\VID_0458&PID_0002.DeviceDesc="Genius USB Net Mouse Pro"
HID\VID_0458&PID_0003.DeviceDesc="Genius USB Wheel Mouse"
HID\VID_0446&PID_6781&MI_01.DeviceDesc="NMB USB Keyboard Mouse"
HID\VID_05FA&PID_3301&MI_01.DeviceDesc="STSL USB Keyboard Mouse"
HID\VID_05FA&PID_3303&MI_01.DeviceDesc="STSL USB Keyboard Mouse"
HID\VID_05d5&PID_6782&MI_01.DeviceDesc="SUPGERGATE USB Keyboard Mouse"
HID\VID_04F2&PID_0001&MI_01.DeviceDesc="Chicony USB Keyboard Mouse"
HID\VID_03F9&PID_0102&MI_01.DeviceDesc="Key Tronic USB Keyboard Mouse"
HID\VID_046E&PID_6782&MI_01&Col01.DeviceDesc="BTC USB Keyboard Mouse"
HID\VID_05B2&PID_7200&MI_01.DeviceDesc="Focus USB Keyboard Mouse"
HID\VID_05AF&PID_9267&MI_01.DeviceDesc="KB 9251B - 678 Mouse"
HID\VID_04C3&PID_1102&MI_01.DeviceDesc="Maxi Switch, Inc. #1102 Mouse"
HID\VID_04C3&PID_2102&MI_01.DeviceDesc="Maxi Switch, Inc. #2102 Mouse"
HID\VID_0566&PID_2801&MI_01.DeviceDesc="MIC USB K/B Mouse"
HID\VID_05A4&PID_9720&MI_01.DeviceDesc="Ortek USB Keyboard Mouse"
HID\VID_0431&PID_0100.DeviceDesc="Evolution USB Mouse-Trak by ITAC"
HID\VID_055D&PID_6781&MI_01.DeviceDesc="Samsung USB Keyboard Mouse"
HID\VID_05BC&PID_0001&MI_01.DeviceDesc="Forward USB K/B Mouse"
HID\VID_0500&PID_0001&MI_01.DeviceDesc="SUH DART USB Keyboard Mouse"
HID\VID_0471&PID_0601&MI_01.DeviceDesc="Philips USB Wireless Keyboard Mouse"
HID\VID_0471&PID_0402&MI_01.DeviceDesc="PS/2 Mouse on Philips Semiconductors CICT USB Keyboard"
HID\VID_0605&PID_0001.DeviceDesc="Anchor USB Mouse"
HID\VID_0409&PID_0014&MI_01.DeviceDesc="NEC 109 Japanese USB Keyboard Mouse"
HID\VID_0409&PID_0011&MI_01.DeviceDesc="NEC PC98 Series Layout USB Keyboard Mouse"
HID\VID_060B&PID_2101&MI_01.DeviceDesc="Solid Year USB Keyboard Mouse"
HID\VID_0430&PID_0002&MI_01.DeviceDesc="Fujitsu USB Composite Keyboard Mouse"
HID\VID_0510&PID_E001.DeviceDesc="Sejin USB Mouse"
HID\VID_0510&PID_1000&MI_01.DeviceDesc="Sejin USB Keyboard Mouse"
HID\VID_05F2&PID_0010.DeviceDesc="Dexin USB AQ Mouse"
HID\VID_04A5&PID_0003&MI_01.DeviceDesc= "API Generic USB K/B Mouse"
HID\VID_047B&PID_0002&MI_01.DeviceDesc="Silitek USB Keyboard Mouse"
HID\VID_05C7&PID_1001.DeviceDesc="Qtronix USB Mouse"
HID.MouseDevice       = "HID-compliant mouse"

; Standard defs

SPSVCINST_TAGTOFRONT  = 0x00000001
SPSVCINST_ASSOCSERVICE= 0x00000002
SERVICE_KERNEL_DRIVER = 1
SERVICE_BOOT_START    = 0
SERVICE_SYSTEM_START  = 1
SERVICE_AUTO_START    = 2
SERVICE_ERROR_NORMAL  = 1
SERVICE_ERROR_IGNORE  = 0
REG_EXPAND_SZ         = 0x00020000
REG_DWORD             = 0x00010001
REG_SZ                = 0x00000000

