;Copyright (c) 2001 HWASS Corporation All rights Reserved
;
;Module Name:
;   qs3a_wdm.INF
;
;Abstract:
;    INF file for installing QS3000a WDM Driver

[Version]
Signature="$CHICAGO$"
Class=MEDIA
ClassGUID={4d36e96c-e325-11ce-bfc1-08002be10318}
provider=%HWASSINC%
LayoutFile=layout.inf, layout1.inf, layout2.inf
DriverVer=01/30/2001,6.10.0000.1

[SourceDisksNames]
222=%DiskDescription%,,,

[SourceDisksFiles]
qs3a_wdm.sys=222
hwajoy.sys=222

[DestinationDirs]
QS3000A_AA.CopyList=10,system32\drivers 		; %SystemRoot%\system32\drivers
QS3000A_GG.CopyList=10,system32\drivers		;

[Manufacturer]
%HWASSMfg%=HWASS

[HWASS]
%QS3000A_AA.DeviceDesc%=QS3000A_A, PCI\VEN_1319&DEV_0801&SUBSYS_13191319
%QS3000A_AG.DeviceDesc%=QS3000A_G, PCI\VEN_1319&DEV_0802&SUBSYS_13191319

[QS3000A_A]
Include=ks.inf,wdmaudio.inf
Needs=KS.Registration,WDMAUDIO.Registration
CopyFiles=QS3000A_AA.CopyList
AddReg = QS3000A_AA.AddReg , QS3000A_AA_OEM.AddReg 
KnownRegEntries=AC97.KnownRegEntries

[QS3000A_G]
CopyFiles=QS3000A_GG.CopyList
AddReg=QS3000A_GG.AddReg

[QS3000A_AA.CopyList]
qs3a_wdm.sys

[QS3000A_GG.CopyList]
hwajoy.sys,hwajoy.sys,,6
 
[QS3000A_A.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave%,WDM.Interface.Wave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave%,WDM.Interface.Wave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave%,WDM.Interface.Wave
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topology%,WDM.Interface.Topology
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_FMSynth%,WDM.Interface.FMSynth
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_FMSynth%,WDM.Interface.FMSynth
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_UART%,WDM.Interface.UART
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_UART%,WDM.Interface.UART
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_UART%,WDM.Interface.UART

[WDM.Interface.Wave]
AddReg=WDM.I.Wave.AddReg
[WDM.I.Wave.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM.Wave.szPname%

[WDM.Interface.Topology]
AddReg=WDM.I.Topo.AddReg
[WDM.I.Topo.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM.Topology.szPname%

[WDM.Interface.FMSynth]
AddReg=WDM.I.FMSynth.AddReg
[WDM.I.FMSynth.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM.FMSynth.szPname%

[WDM.Interface.UART]
AddReg=WDM.Interface.UART.AddReg
[WDM.Interface.UART.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM.UART.szPname%

[QS3000A_AA.AddReg]
HKR,,AssociatedFilters,,"wdmaud,swmidi,redbook"
HKR,,Driver,,qs3a_wdm.sys
HKR,,NTMPDriver,,"qs3a_wdm.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,,%QS3000A_WAVE%
HKR,Drivers\midi\wdmaud.drv, Description,,%QS3000A_MIDI%
HKR,Drivers\mixer\wdmaud.drv,Description,,%QS3000A_MIXER%

;; ************************

[QS3000A_A.Services]
AddService = QS3000A_A, 0x00000002, QS3000A_A_Service_Inst

[QS3000A_G.Services]
AddService = gameport, 0x00000002, QS3000A_G_Service_Inst

[QS3000A_A_Service_Inst]
DisplayName   = %QS3000A_A.SvcDesc%
ServiceType   = 1                  ; SERVICE_KERNEL_DRIVER
StartType     = 3                  ; SERVICE_DEMAND_START
ErrorControl  = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary = %10%\system32\drivers\qs3a_wdm.sys

[QS3000A_G_Service_Inst]
DisplayName    = %gameport.SvcDesc%
ServiceType    = 1
StartType      = 3
ErrorControl   = 0
ServiceBinary  = %10%\system32\drivers\hwajoy.sys
LoadOrderGroup = Extended Base

HKLM,%MediaCategories%\%ICHGUID.PhoneVolume%,Name,,%ICHNode.PhoneVolume%
HKLM,%MediaCategories%\%ICHGUID.PhoneVolume%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%ICHGUID.PhoneMute%,Name,,%ICHNode.PhoneMute%
HKLM,%MediaCategories%\%ICHGUID.PhoneMute%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%ICHGUID.LineInMute%,Name,,%ICHNode.LineInMute%
HKLM,%MediaCategories%\%ICHGUID.LineInMute%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%ICHGUID.MainMix%,Name,,%ICHNode.MainMix%
HKLM,%MediaCategories%\%ICHGUID.MainMix%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%ICHGUID.3DBypass%,Name,,%ICHNode.3DBypass%
HKLM,%MediaCategories%\%ICHGUID.3DBypass%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%ICHGUID.3DEnable%,Name,,%ICHNode.3DEnable%
HKLM,%MediaCategories%\%ICHGUID.3DEnable%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%ICHGUID.BeepMix%,Name,,%ICHNode.BeepMix%
HKLM,%MediaCategories%\%ICHGUID.BeepMix%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%ICHGUID.HPVolume%,Name,,%ICHNode.HPVolume%
HKLM,%MediaCategories%\%ICHGUID.HPVolume%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%ICHGUID.HPMute%,Name,,%ICHNode.HPMute%
HKLM,%MediaCategories%\%ICHGUID.HPMute%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%ICHGUID.MonoOutSelect%,Name,,%ICHNode.MonoOutSelect%
HKLM,%MediaCategories%\%ICHGUID.MonoOutSelect%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%ICHGUID.WaveInSelect%,Name,,%ICHNode.WaveInSelect%
HKLM,%MediaCategories%\%ICHGUID.WaveInSelect%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%ICHGUID.MasterInVolume%,Name,,%ICHNode.MasterInVolume%
HKLM,%MediaCategories%\%ICHGUID.MasterInVolume%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%ICHGUID.MasterInMute%,Name,,%ICHNode.MasterInMute%
HKLM,%MediaCategories%\%ICHGUID.MasterInMute%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%ICHGUID.MicInVolume%,Name,,%ICHNode.MicInVolume%
HKLM,%MediaCategories%\%ICHGUID.MicInVolume%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%ICHGUID.MicInMute%,Name,,%ICHNode.MicInMute%
HKLM,%MediaCategories%\%ICHGUID.MicInMute%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%ICHGUID.SimulStereo%,Name,,%ICHNode.SimulStereo%
HKLM,%MediaCategories%\%ICHGUID.SimulStereo%,Display,1,00,00,00,00

[QS3000A_AA_OEM.AddReg]
HKR,Settings,DisableMicIn,1,1

[AC97.KnownRegEntries]
IsWin98Gold=keep

[IsWin98Gold]
1=HKLM,Software\Microsoft\Windows\CurrentVersion,VersionNumber,0,4.10.1998

[Strings]
HWASSINC="HWASS"
HWASSMfg="HWA SOUND SOURCE CO.,LTD."
DiskDescription="QS3000A WDM Driver Disk"
QS3000A_AA.DeviceDesc="QS3000A Audio PCI Sound Card"
QS3000A_AG.DeviceDesc="QS3000A GamePort JoyStick"
;QS3000A_GamePortEmu.DeviceDesc="QS3000A Legacy Joystick"
QS3000A_WAVE="QS3000A Wave Device"
QS3000A_MIDI="QS3000A Midi Device"
QS3000A_MIXER="QS3000A Mixer"

WDM.Wave.szPname="QS3000A Sound Card"
WDM.Topology.szPname="QS3000A Mixer"
WDM.FMSynth.szPname="QS3000A FM Synth"
WDM.UART.szPname="QS3000A UART"

MediaCategories="SYSTEM\CurrentControlSet\Control\MediaCategories"

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}"
KSNAME_Wave="Wave"
KSNAME_Topology="Topology"
KSNAME_FMSynth="FMSynth"
KSNAME_UART="UART"

QS3000A_A.SvcDesc = "QS3000A PCI AUDIO(WDM)"
gameport.SvcDesc = "QS3000A PCI Joystick"

;; Nodes (non-localizeable)
ICHGUID.PhoneVolume     ="{0A8C1A87-42B0-11D2-95D2-00C04FB925D3}"
ICHGUID.PhoneMute       ="{0A8C1A88-42B0-11D2-95D2-00C04FB925D3}"
ICHGUID.LineInMute      ="{0A8C1A91-42B0-11D2-95D2-00C04FB925D3}"
ICHGUID.MainMix         ="{0A8C1A9B-42B0-11D2-95D2-00C04FB925D3}"
ICHGUID.3DBypass        ="{0A8C1A9E-42B0-11D2-95D2-00C04FB925D3}"
ICHGUID.3DEnable        ="{766DB5A4-6E94-11D2-9ADE-00C04F8EFB68}"
ICHGUID.BeepMix         ="{0A8C1A9F-42B0-11D2-95D2-00C04FB925D3}"
ICHGUID.HPVolume        ="{0A8C1AA5-42B0-11D2-95D2-00C04FB925D3}"
ICHGUID.HPMute          ="{0A8C1AA6-42B0-11D2-95D2-00C04FB925D3}"
ICHGUID.MonoOutSelect   ="{0A8C1AA9-42B0-11D2-95D2-00C04FB925D3}"
ICHGUID.WaveInSelect    ="{0A8C1AAE-42B0-11D2-95D2-00C04FB925D3}"
ICHGUID.MasterInVolume  ="{0A8C1AAF-42B0-11D2-95D2-00C04FB925D3}"
ICHGUID.MasterInMute    ="{0A8C1AB0-42B0-11D2-95D2-00C04FB925D3}"
ICHGUID.MicInVolume     ="{0A8C1AB2-42B0-11D2-95D2-00C04FB925D3}"
ICHGUID.MicInMute       ="{0A8C1AB3-42B0-11D2-95D2-00C04FB925D3}"
ICHGUID.SimulStereo     ="{B3AD50B5-3849-4983-ADD7-25E6268F912D}"

;; Nodes (localizeable)
ICHNode.PhoneVolume     ="Phone Volume"
ICHNode.PhoneMute       ="Phone Mute"
ICHNode.LineInMute      ="Line In Mute"
ICHNode.MainMix         ="Main Mix"
ICHNode.3DBypass        ="3D Bypass"
ICHNode.3DEnable        ="3D Enable"
ICHNode.BeepMix         ="Beep Mix"
ICHNode.HPVolume        ="Headphone Volume"
ICHNode.HPMute          ="Headphone Mute"
ICHNode.MonoOutSelect   ="Mono Out Select"
ICHNode.WaveInSelect    ="Wave In Select"
ICHNode.MasterInVolume  ="Wave In Volume"
ICHNode.MasterInMute    ="Wave In Mute"
ICHNode.MicInVolume     ="Mic In Volume"
ICHNode.MicInMute       ="Mic In Mute"
ICHNode.SimulStereo     ="Simulated Stereo"

Key_Joy=System\CurrentControlSet\control\MediaProperties\PrivateProperties\Joystick\OEM
