[Version]
Signature="$CHICAGO$"
Class=MEDIA
ClassGUID={4d36e96c-e325-11ce-bfc1-08002be10318}
provider=%VLSI%
DriverVer=07/23/1999,5.00.1984.1
[SourceDisksNames]
222="Xwave Thunder 3D Driver Disk","",1
[SourceDisksFiles]
tb128.sys=222
tb128game.sys=222
[ControlFlags]
ExcludeFromSelect = GamePort\VID_045E&PID_0102
ExcludeFromSelect = GamePort\VID_045E&PID_0103
ExcludeFromSelect = GamePort\VID_045E&PID_0104
ExcludeFromSelect = GamePort\VID_045E&PID_0105
ExcludeFromSelect = GamePort\VID_045E&PID_0106
ExcludeFromSelect = GamePort\VID_045E&PID_0107
ExcludeFromSelect = GamePort\VID_045E&PID_0108
ExcludeFromSelect = GamePort\VID_045E&PID_0109
ExcludeFromSelect = GamePort\VID_045E&PID_010A
ExcludeFromSelect = GamePort\VID_045E&PID_010B
ExcludeFromSelect = GamePort\VID_045E&PID_010C
;ExcludeFromSelect = GamePort\SideWinder3DPro
[Manufacturer]
%MfgName%=VLSI
;; ThunderBird 128 miniport
[VLSI]
; Multimedia Device
%WDM_TB128.DeviceDesc%=WDM_TB128,, PCI\VEN_1004&DEV_0304&SUBSYS_50201483&REV_19
; PCI Input Controller
%WDM_TB128JS.DeviceDesc%=WDM_JS128,, PCI\VEN_1004&DEV_0305&SUBSYS_50211483&REV_19
; PCI Serial Controller
%WDM_TB128SR.DeviceDesc%=WDM_SR128,, PCI\VEN_1004&DEV_0306&SUBSYS_50221483&REV_19
;
; These are the 201 devices
;
; a standard joystick hid dev:
%HidGame.DeviceDesc% = HidGame_Device, GamePort\AnalogJoystick
%HidGame.DeviceDesc% = HidGame_Device, GamePort\GameDevice
; built in specific analog hid devices:
%HidGame.Generic2A2B% = HidGame_Device, GamePort\VID_045E&PID_0102
%HidGame.Generic2A4B% = HidGame_Device, GamePort\VID_045E&PID_0103
%HidGame.Gamepad2B% = HidGame_Device, GamePort\VID_045E&PID_0104
%HidGame.FlightYoke2B% = HidGame_Device, GamePort\VID_045E&PID_0105
%HidGame.FlightYokeThrottle2B% = HidGame_Device, GamePort\VID_045E&PID_0106
%HidGame.Generic3A2B% = HidGame_Device, GamePort\VID_045E&PID_0107
%HidGame.Generic3A4B% = HidGame_Device, GamePort\VID_045E&PID_0108
%HidGame.Gamepad4B% = HidGame_Device, GamePort\VID_045E&PID_0109
%HidGame.FlightYoke4B% = HidGame_Device, GamePort\VID_045E&PID_010A
%HidGame.FlightYokeThrottle4B% = HidGame_Device, GamePort\VID_045E&PID_010B
%HidGame.YConnectTwo2A2B% = HidGame_Device, GamePort\VID_045E&PID_010C
;%HidGame.SW3dPro% = HidGame_Device, GamePort\SideWinder3DPro
[*PNPB003.Det]
AddReg=PreCopySection
[PreCopySection]
HKR,,NoSetupUI,,1
[STUB_DEVICE]
[WDM_JS128]
CopyFiles=WDM_JS1.CopyList
AddReg=WDM_JS.AddReg, TBirdJoy.AddReg
Uninstall=WDM_JS_Uninst
[WDM_JS128.HW]
AddReg=WDM_JS_HW.AddReg
[WDM_JS_Uninst]
DelFiles=WDM_JS1.CopyList
[WDM_JS1.CopyList]
tbirdjoy.vxd,,
[WDM_JS_HW.AddReg]
HKR,,ConfigFlags,1,08,00,00,00
[WDM_JS.AddReg]
; Relocate to 0x200-0x207
; Set CONFIGFLAG_IGNORE_BOOT_LC - force to use override section
HKR,,ConfigFlags,1,08,00,00,00
HKR,,DevLoader,,mmdevldr.vxd
HKR,Drivers,MIGRATED,,0
HKR,Drivers\joystick,,,
HKR,,Driver,,vjoyd.vxd
HKR,Drivers\joystick\msjstick.drv,Description,,%Joystick.DeviceDesc%
HKR,Drivers\joystick\msjstick.drv,Driver,,msjstick.drv
HKR,Drivers,SubClasses,,"joystick"
;
HKR,Override,0000,1, \
;
; CONFIGMG_VERSION
;
00,04,00,00, \
;
; PRIORITY
;
00,00,00,00, \ ; LCPRI_FORCECONFIG
;
; OVERRIDE FOR GAME PORT
;
20,00,00,00, \ ; Total length of I/O Resource Descriptor
02,00,00,00, \ ; ResType_IO = 0x00000002
01,00, \ ; IOD_Count - we have 1 I/O descriptor
0C,00, \ ; IOD_Type - IOType_Range = 0x000C
00,00, \ ; IOD_Alloc_Base
00,00, \ ; IOD_Alloc_End
00,00, \ ; IOD_DesFlags
FF, \ ; IOD_Alloc_Alias
00, \ ; IOD_Alloc_Decode
;
; First (and only) IO_Range_s
;
F8,FF, \ ; IOR_Align - 8 byte alignment
08,00, \ ; IOR_nPorts - 8 I/O Addresses
00,02, \ ; IOR_Min - start 0x200
07,02, \ ; IOR_Max - end 0x207
00,00, \ ; IOR_RangeFlags
00, \ ; IOR_Alias
00, \ ; IOR_Decode
;
; Terminator
;
00,00,00,00
[TBirdJoy.AddReg]
; We need to add OEMData, OEMName and OEMCallout as a minimum
; OEMData describes the driver,
; the first DWORD is a combination of JOY_HWS_* flags
; the second DWORD is the number of buttons supported
; Since this device supports a gameport, not a joystick, the description of
; the axes and buttons are irrelevant.
;
; JOY_HWS_ISGAMEPORTDRIVER 0x04000000l
; JOY_HWS_ISANALOGPORTDRIVER 0x08000000l
; -----------
; Combined value 0x0c000000l
HKLM,%KEY_OEM%,OEMData,1,00,00,00,0c,00,00,00,00
; The name the user will see in the advanced page of the control panel
HKLM,%KEY_OEM%,OEMName,0,%TBirdJoy.DeviceDesc%
; The mini-driver used to drive this card.
HKLM,%KEY_OEM%,OEMCallout,0,tbirdjoy.vxd
; A value that the mini-driver uses for something
HKLM,%KEY_OEM%,"Magic PollFlags",1,78,56,34,12
; None of the default property sheet customization strings are
; relevant as the CPL will use the strings for the joystick that
; is plugged into the device, not this device.
; Likewise none of the DirectInput settings are needed.
[WDM_SR128]
CopyFiles=WDM_SR.CopyList
AddReg=WDM_SR.AddReg
Uninstall=WDM_SR_Uninst
[WDM_SR_Uninst]
[WDM_SR.CopyList]
[WDM_SR.AddReg]
[WDM_TB128]
AlsoInstall=ks.registration(ks.inf),wdmaudio.registration(wdmaudio.inf)
CopyFiles=WDM_VLSI.CopyList, WDM_VLSI_SYS32.CopyList, WDM_VLSI_SYS.CopyList
Uninstall=WDM_TB128_Uninst
AddReg=WDM_TB128.AddReg, WDM_TB128_GUID.AddReg
[WDM_TB128_Uninst]
DelFiles=WDM_VLSI.CopyList, WDM_VLSI_SYS32.CopyList, WDM_VLSI_SYS.CopyList
[WDM_TB128.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave%,WDM_TB128.Interface.Wave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave%,WDM_TB128.Interface.Wave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave%,WDM_TB128.Interface.Wave
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topology%,WDM_TB128.Interface.Topology
AddInterface=%KSCATEGORY_TOPOLOGY%,%KSNAME_Topology%,WDM_TB128.Interface.Topology
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_UART%,WDM.Interface.UART
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_UART%,WDM.Interface.UART
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_UART%,WDM.Interface.UART
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_WTSynth%,WDM.Interface.WTSynth
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_WTSynth%,WDM.Interface.WTSynth
[WDM_TB128.Interface.Wave]
AddReg=WDM_TB128.Interface.Wave.AddReg
[WDM_TB128.Interface.Wave.AddReg]
HKR,,FriendlyName,,%WDM_TB128.Wave.szPname%
HKR,,CLSID,,%Proxy.CLSID%
[WDM_TB128.Interface.Topology]
AddReg=WDM_TB128.Interface.Topo.AddReg
;; warning!! must be "Topo" because "Topology" is too long
[WDM_TB128.Interface.Topo.AddReg]
HKR,,FriendlyName,,%WDM_TB128.Topology.szPname%
[WDM.Interface.UART]
AddReg=WDM.Interface.UART.AddReg
[WDM.Interface.UART.AddReg]
HKR,,FriendlyName,,%WDM.UART.szPname%
HKR,,CLSID,,%Proxy.CLSID%
[WDM.Interface.WTSynth]
AddReg=WDM.Interface.WTSynth.AddReg
[WDM.Interface.WTSynth.AddReg]
HKR,,FriendlyName,,%WDM.WTSynth.szPname%
HKR,,CLSID,,%Proxy.CLSID%
[WDM_TB128.AddReg]
; VSG: Swap next two lines to enable SW Synth mixer control
;HKR,,AssociatedFilters,,"wdmaud,swmidi,redbook"
HKR,,AssociatedFilters,,"wdmaud,redbook"
HKR,,Driver,,TB128.SYS
HKR,,NTMPDriver,,"tb128.sys,sbemul.sys"
HKR,Drivers,SubClasses,,"wave,midi,mixer"
HKR,Drivers\wave\wdmaud.drv, Driver,,wdmaud.drv
HKR,Drivers\midi\wdmaud.drv, Driver,,wdmaud.drv
HKR,Drivers\mixer\wdmaud.drv,Driver,,wdmaud.drv
HKR,Drivers\wave\wdmaud.drv,Description,,%WDM_TB128.DeviceDesc%
HKR,Drivers\midi\wdmaud.drv,Description,,%WDM_MIDI%
HKR,Drivers\mixer\wdmaud.drv,Description,,%WDM_TB128.Topology.szPname%
; DWORDs
HKLM,%VLSI_Hardware%,%LoadCodeFile%,0x00010001,0x00000000
HKLM,%VLSI_Hardware%,%LoadPatchFile%,0x00010001,0x00000001
HKLM,%VLSI_Hardware%,%PLLSpeed%,0x00010001,0x00000030
HKLM,%VLSI_Hardware%,%UseAsymClock%,0x00010001,0x00000000
HKLM,%VLSI_Hardware%,%NeedTray%,0x00010001,0x00000000
HKLM,Software\Microsoft\Windows\CurrentVersion\Run,TBTray,,"TBTRAY.EXE"
; Should match ControlValueCache[] in driver
; Default mixer settings
; Volume panel - sliders at 50%
; Record panel - sliders at 0
HKR,Settings,WAVEOUT_DAC, 0x00000001, 00,00,00,00, 00,00,00,00
HKR,Settings,WAVEOUT_VOLUME, 0x00000001, 00,01,80,00, 00,01,80,00
HKR,Settings,WAVEOUT_MUTE, 0x00000001, 00,00,00,00, 00,00,00,00
HKR,Settings,MICIN_20DB_GAIN, 0x00000001, 00,00,00,00, 00,00,00,00
HKR,Settings,MICIN_VOLUME, 0x00000001, DC,BC,05,00, 00,00,00,00
HKR,Settings,MICIN_WIN_VOLUME, 0x00000001, 00,00,00,00, 00,00,00,00
HKR,Settings,MICIN_MUTE, 0x00000001, 01,00,00,00, 00,00,00,00
HKR,Settings,LINEIN_VOLUME, 0x00000001, DC,BC,05,00, DC,BC,05,00
HKR,Settings,LINEIN_WIN_VOLUME, 0x00000001, 00,00,00,00, 00,00,00,00
HKR,Settings,LINEIN_MUTE, 0x00000001, 01,00,00,00, 00,00,00,00
HKR,Settings,CD_VOLUME, 0x00000001, DC,BC,05,00, DC,BC,05,00
HKR,Settings,CD_WIN_VOLUME, 0x00000001, 00,00,00,00, 00,00,00,00
HKR,Settings,CD_MUTE, 0x00000001, 00,00,00,00, 00,00,00,00
HKR,Settings,VIDEO_VOLUME, 0x00000001, DC,BC,05,00, DC,BC,05,00
HKR,Settings,VIDEO_WIN_VOLUME, 0x00000001, 00,00,00,00, 00,00,00,00
HKR,Settings,VIDEO_MUTE, 0x00000001, 01,00,00,00, 00,00,00,00
HKR,Settings,AUX_VOLUME, 0x00000001, DC,BC,05,00, DC,BC,05,00
HKR,Settings,AUX_WIN_VOLUME, 0x00000001, 00,00,00,00, 00,00,00,00
HKR,Settings,AUX_MUTE, 0x00000001, 01,00,00,00, 00,00,00,00
HKR,Settings,WT_VOLUME, 0x00000001, C2,14,FA,FF, C2,14,FA,FF
HKR,Settings,WT_MUTE, 0x00000001, 00,00,00,00, 00,00,00,00
HKR,Settings,LINEOUT_MAIN_MIX, 0x00000001, 00,00,00,00, 00,00,00,00
HKR,Settings,LINEOUT_MASTER_VOLUME, 0x00000001, 03,F2,F9,FF, 03,F2,F9,FF
HKR,Settings,STEREOMIX_WIN_VOLUME, 0x00000001, 00,00,00,00, 00,00,00,00
HKR,Settings,LINEOUT_MASTER_MUTE, 0x00000001, 00,00,00,00, 00,00,00,00
HKR,Settings,WAVEIN_MUX, 0x00000001, 01,00,00,00, 01,00,00,00
HKR,Settings,WAVEIN_ADC, 0x00000001, 00,00,00,00, 00,00,00,00
; Strings
HKLM,%VLSI_Drv_Version%,%tb128.SvcDesc%,0x00000000,"1.00.000"
HKLM,%VLSI_Hardware%,%DLSPath%,0x00000000,"\systemroot\system32\Tbird128.dls"
; Params
HKLM,%VLSI_Hardware%,%SETTING_PARAM09%,1,0
HKLM,%VLSI_Hardware%,%SETTING_PARAM10%,1,1
HKLM,%VLSI_Hardware%,%SETTING_PARAM11%,1,1
HKLM,%VLSI_Hardware%,%SETTING_PARAM12%,0x00010001,0x00000000
HKLM,%VLSI_Hardware%,%SETTING_PARAM13%,0x00010001,0x00000000
HKLM,%VLSI_Hardware%,%SETTING_PARAM14%,0x00010001,0x00000000
HKLM,%VLSI_Hardware%,%SETTING_PARAM15%,1,0
HKLM,%VLSI_Hardware%,%SETTING_PARAM19%,1,0
HKLM,%VLSI_Hardware%,%SETTING_PARAM30%,1,0
HKLM,%VLSI_Hardware%,%SETTING_PARAM99%,1,01,02,03,04,05,06,07,08,09,0a,0b,0c,0d,0e,0f,10,11,12
[WDM_TB128_GUID.AddReg]
HKLM,%MediaCategories%\%TB128GUID.Phone%,Name,,%TB128in.Phone%
HKLM,%MediaCategories%\%TB128GUID.Phone%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%TB128GUID.Mic1%,Name,,%TB128in.Mic1%
HKLM,%MediaCategories%\%TB128GUID.Mic1%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%TB128GUID.Mic2%,Name,,%TB128in.Mic2%
HKLM,%MediaCategories%\%TB128GUID.Mic2%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%TB128GUID.Video%,Name,,%TB128in.Video%
HKLM,%MediaCategories%\%TB128GUID.Video%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%TB128GUID.Hpout%,Name,,%TB128in.Hpout%
HKLM,%MediaCategories%\%TB128GUID.Hpout%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%TB128GUID.MonoOut%,Name,,%TB128in.MonoOut%
HKLM,%MediaCategories%\%TB128GUID.MonoOut%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%TB128GUID.LineOutMix%,Name,,%TB128in.LineOutMix%
HKLM,%MediaCategories%\%TB128GUID.LineOutMix%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%TB128GUID.Mic20dB%,Name,,%TB128in.Mic20dB%
HKLM,%MediaCategories%\%TB128GUID.Mic20dB%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%TB128GUID.WT%,Name,,%TB128in.WT%
HKLM,%MediaCategories%\%TB128GUID.WT%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%TB128GUID.WTVol%,Name,,%TB128in.WTVol%
HKLM,%MediaCategories%\%TB128GUID.WTVol%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%TB128GUID.WTMute%,Name,,%TB128in.WTMute%
HKLM,%MediaCategories%\%TB128GUID.WTMute%,Display,1,00,00,00,00
[WIN2K.AddReg]
HKLM,%TBIRD_HWKEY%,Win2K,0x00010001,0x00000000
[DestinationDirs]
WDM_VLSI.CopyList = 10,system32\drivers ; %SystemRoot%\system32\drivers
WDM_VLSI_SYS32.CopyList = 10,system32 ; %SystemRoot%\system32
WDM_VLSI_SYS.CopyList = 10,system ; %SystemRoot%\system
WDM_VLSI_SYS.NT.CopyList = 10,system32 ; %SystemRoot%\system32
WDM_JS1.CopyList = 10,system
DefaultDestDir = 12
HidGame_Device.CopyFilesDLL.NT = 11
[WDM_VLSI.CopyList]
tb128.sys
[WDM_VLSI_SYS32.CopyList]
tbird128.cod ; DSP code
tbird128.pch ; patch
tbird128.dls ; downloadable sounds
[WDM_VLSI_SYS.CopyList]
; system directory in Win 98
tbcpl.cpl ; control panel
drvtb32.dll ; CPL driver interface
tbtray.exe ; tray executable
; VSG: DOME: replace with final name
vtbpmd.dll ; CPL support dll
[WDM_VLSI_SYS.NT.CopyList]
; system32 directory in Win 2000
tbcpl.cpl ; control panel
drvtb32.dll ; CPL driver interface
tbtray.exe ; tray executable
;;**************** Win 2K Install ****************
[STUB_DEVICE.NT]
[STUB_DEVICE.NT.SERVICES]
AddService=,0x2
[WDM_SR128.NT]
CopyFiles=WDM_SR.NTCopyList
[WDM_SR.NTCopyList]
serregs.sys,,,2
;[WDM_SR128.NT.Interfaces]
[WDM_SR128.NT.Services]
AddService=SERREGS,2,WDM_SR128.Service
[WDM_SR128.Service]
ServiceType=1
StartType=3
ErrorControl=1
ServiceBinary=%10%\system32\drivers\serregs.sys
[[WDM_SR128.NT.HW]
AddReg=WDM_SR128.HwAddReg
[WDM_SR128.HwAddReg]
HKR,,FriendlyName,,%WDM_TB128SR.DeviceDesc%
[WDM_TB128.NT]
Include=ks.inf, wdmaudio.inf
Needs=KS.Registration, WDMAUDIO.Registration
;CopyFiles=WDM_TB128.CopyList
CopyFiles=WDM_VLSI.CopyList, WDM_VLSI_SYS32.CopyList, WDM_VLSI_SYS.NT.CopyList
Uninstall=WDM_TB128_NT_Uninst
AddReg=WDM_TB128.AddReg, WDM_TB128_GUID.AddReg, WIN2K.AddReg
[WDM_TB128_NT_Uninst]
DelFiles=WDM_VLSI.CopyList, WDM_VLSI_SYS32.CopyList, WDM_VLSI_SYS.NT.CopyList
[WDM_TB128.NT.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave%,WDM_TB128.Interface.Wave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave%,WDM_TB128.Interface.Wave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave%,WDM_TB128.Interface.Wave
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topology%,WDM_TB128.Interface.Topology
AddInterface=%KSCATEGORY_TOPOLOGY%,%KSNAME_Topology%,WDM_TB128.Interface.Topology
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_UART%,WDM.Interface.UART
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_UART%,WDM.Interface.UART
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_UART%,WDM.Interface.UART
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_WTSynth%,WDM.Interface.WTSynth
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_WTSynth%,WDM.Interface.WTSynth
[WDM_TB128.NT.Services]
AddService = wdmaud, 0x00000000, wdmaud_Service_Inst
AddService = swmidi, 0x00000000, swmidi_Service_Inst
AddService = tb128, 0x00000002, tb128_Service_Inst
[wdmaud_Service_Inst]
DisplayName = %wdmaud.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 1 ; SERVICE_SYSTEM_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %10%\system32\drivers\wdmaud.sys
[swmidi_Service_Inst]
DisplayName = %swmidi.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 1 ; SERVICE_SYSTEM_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %10%\system32\drivers\swmidi.sys
[tb128_Service_Inst]
DisplayName = %tb128.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %10%\system32\drivers\tb128.sys
[WDM_JS128.NT]
CopyFiles=WDM_JS128.CopyFiles.NT
Uninstall=WDM_JS128_NT_Uninst
LogConfig=BasicJoyStick.LC0, BasicJoystick.LC1
[WDM_JS128_NT_Uninst]
DelFiles=WDM_JS128.CopyFiles.NT
[WDM_JS128.CopyFiles.NT]
TB128gp.sys
[WDM_JS128.NT.Services]
AddService = TB128game,%SPSVCINST_ASSOCSERVICE%,GamePort_Service_Inst
[HidGame_Device.NT]
CopyFiles=HidGame_Device.CopyFiles.NT, HidGame_Device.CopyFilesDLL.NT
[HidGame_Device.CopyFiles.NT]
hidgame.sys
hidclass.sys
hidparse.sys
[HidGame_Device.CopyFilesDLL.NT]
hid.dll
[HidGame_Device.NT.Services]
AddService = hidgame,%SPSVCINST_ASSOCSERVICE%,HidGame_Service_Inst
[WDM_JS128.NT.FactDef]
ConfigPriority=HARDWIRED
IOConfig=201-201(3ff::)
[BasicJoyStick.LC0]
ConfigPriority=HARDWIRED
IOConfig=201-201(3ff::)
[BasicJoyStick.LC1]
ConfigPriority=HARDRECONFIG
IOConfig=1@100-3ff(3ff::)
[GamePort_Service_Inst]
DisplayName = %gameport.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\TB128gp.sys
LoadOrderGroup = Extended Base
[HidGame_Service_Inst]
DisplayName = %hidgame.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\hidgame.sys
LoadOrderGroup = Extended Base
[Strings]
VLSI="Xwave"
MfgName="Labway, Inc."
Joystick.DeviceDesc="Gameport Joystick"
KEY_OEM="System\CurrentControlSet\Control\MediaProperties\PrivateProperties\Joystick\OEM\Xwave Thunder 3D_PCI_Audio_GamePort"
TBirdJoy.DeviceDesc="Xwave Thunder 3D PCI Audio GamePort Driver"
WDM_TB128.DeviceDesc="Xwave Thunder 3D (WDM)"
WDM_TB128JS.DeviceDesc="Xwave Thunder 3D Game Port Enumerator"
WDM_TB128SR.DeviceDesc="Xwave Thunder 3D PCI Audio Support Registers"
WDM_TB128.Wave.szPname="Xwave Thunder 3D (WDM)"
WDM_TB128.Topology.szPname="Xwave Thunder 3D"
MediaCategories="SYSTEM\CurrentControlSet\Control\MediaCategories"
VLSI_Hardware="System\CurrentControlSet\Services\tb128\Thunderbird"
TBIRD_HWKEY="System\CurrentControlSet\Services\tb128"
VLSI_Drv_Version="Software\VLSI Inc./Qsound Inc."
WDM_MIDI="WDM-based Device"
TB128GUID.Phone ="{57C435D0-BF5A-11D2-AC00-00A0D2F07870}"
TB128GUID.Mic1 ="{57C435D1-BF5A-11D2-AC00-00A0D2F07870}"
TB128GUID.Mic2 ="{57C435D2-BF5A-11D2-AC00-00A0D2F07870}"
TB128GUID.Video ="{57C435D3-BF5A-11D2-AC00-00A0D2F07870}"
TB128GUID.Hpout ="{57C435D4-BF5A-11D2-AC00-00A0D2F07870}"
TB128GUID.MonoOut ="{57C435D5-BF5A-11D2-AC00-00A0D2F07870}"
TB128GUID.LineOutMix="{57C435D6-BF5A-11D2-AC00-00A0D2F07870}"
TB128GUID.Mic20dB ="{57C435D7-BF5A-11D2-AC00-00A0D2F07870}"
TB128GUID.WT ="{57C435D8-BF5A-11D2-AC00-00A0D2F07870}"
TB128GUID.WTVol ="{57C435D9-BF5A-11D2-AC00-00A0D2F07870}"
TB128GUID.WTMute ="{57C435DA-BF5A-11D2-AC00-00A0D2F07870}"
;; TB128 friendly names (localizeable)
;Sources
TB128in.Phone ="Phone"
TB128in.Mic1 ="Microphone"
TB128in.Mic2 ="Mic 2"
TB128in.Video ="Video"
TB128in.Hpout ="Headphones"
TB128in.MonoOut ="Mono Out"
TB128in.LineOutMix ="Stereo Mix"
TB128in.Mic20dB ="20dB Gain"
TB128in.WT ="Wavetable"
TB128in.WTVol ="WT Vol"
TB128in.WTMute ="WT Mute"
LoadCodeFile ="Load Code File"
LoadPatchFile ="Load Patch File"
PLLSpeed ="PLL Speed"
UseAsymClock ="Use Asymmetric Clock"
DLSPath ="DLS Path"
DDMABase ="DDMA BASE"
NeedTray ="Tray Need"
SETTING_PARAM30 ="PARAM30"
SETTING_PARAM09 ="PARAM09"
SETTING_PARAM10 ="PARAM10"
SETTING_PARAM11 ="PARAM11"
SETTING_PARAM12 ="PARAM12"
SETTING_PARAM13 ="PARAM13"
SETTING_PARAM14 ="PARAM14"
SETTING_PARAM15 ="PARAM15"
SETTING_PARAM19 ="PARAM19"
SETTING_PARAM99 ="PARAM99"
Proxy.CLSID="{17CCA71B-ECD7-11D0-B908-00A0C9223196}"
KSCATEGORY_AUDIO="{6994AD04-93EF-11D0-A3CC-00A0C9223196}"
KSCATEGORY_RENDER="{65E8773E-8F56-11D0-A3B9-00A0C9223196}"
KSCATEGORY_CAPTURE="{65E8773D-8F56-11D0-A3B9-00A0C9223196}"
KSCATEGORY_TOPOLOGY="{DDA54A40-1E4C-11D1-A050-405705C10000}"
KSNAME_Wave="Wave"
KSNAME_UART="UART"
KSNAME_WTSynth="WTSynth"
KSNAME_Topology="Topology"
KSNAME_Wavetable="Wavetable"
WDM.UART.szPname="Xwave Thunder 3D MPU-401"
WDM.WTSynth.szPname="Xwave Tbird Wavetable Synth"
wdmaud.SvcDesc = "Microsoft WDM Virtual Wave Driver (WDM)"
swmidi.SvcDesc = "Microsoft Software Synthesizer (WDM)"
tb128.SvcDesc = "Xwave Thunder 3D WDM Driver"
;Gameport
SPSVCINST_ASSOCSERVICE= 0x00000002
HidGame.DeviceDesc = "Microsoft Hid to Joystick Port Enabler"
gameport.SvcDesc = "Xwave Thunder 3D Game Port Enumerator"
hidgame.SvcDesc = "Microsoft Hid to Joystick Port Enabler"
HidGame.Generic2A2B = "2-axis, 2-button joystick"
HidGame.Generic2A4B = "2-axis, 4-button joystick"
HidGame.Gamepad2B = "2-button gamepad"
HidGame.FlightYoke2B = "2-button flight yoke"
HidGame.FlightYokeThrottle2B = "2-button flight yoke w/throttle"
HidGame.Generic3A2B = "3-axis, 2-button joystick"
HidGame.Generic3A4B = "3-axis, 4-button joystick"
HidGame.Gamepad4B = "4-button gamepad"
HidGame.FlightYoke4B = "4-button flight yoke"
HidGame.FlightYokeThrottle4B = "4-button flight yoke w/throttle"
HidGame.YConnectTwo2A2B = "Two 2-axis, 2-button joysticks on Y-connector"
;HidGame.SW3dPro = "Microsoft SideWinder 3D Pro"
Download Driver Pack
After your driver has been downloaded, follow these simple steps to install it.
Expand the archive file (if the download file is in zip or rar format).
If the expanded file has an .exe extension, double click it and follow the installation instructions.
Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.
Find the device and model you want to update in the device list.
Double-click on it to open the Properties dialog box.
From the Properties dialog box, select the Driver tab.
Click the Update Driver button, then follow the instructions.
Very important: You must reboot your system to ensure that any driver updates have taken effect.
For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.