
[Version]
CatalogFile=als007.cat
Signature="$CHICAGO$"
Class=MEDIA
ClassGUID={4d36e96c-e325-11ce-bfc1-08002be10318}
provider=%ALI%
LayoutFile=layout.inf, layout1.inf, layout2.inf

[Manufacturer]
%ALIMfgName%=AvanceLogicInc


;;---------------------------------------------------------------;
;;
;; D E V I C E  C A L L O U T  S E C T I O N
;;

;; WDM_ALS007 miniport
[AvanceLogicInc]
%WDM_ALS007.DeviceDesc% =WDM_ALS007, ISAPNP\ALS0007_DEV0000
%ALS_FMSYN.DeviceDesc%  =ALS_FMSYN,  ISAPNP\ALS0007_DEV0001
%ALS_GAME.DeviceDesc%   =ALS_GAME,   ISAPNP\ALS0007_DEV0002
%MS_MPU401.DeviceDesc%  =MS_MPU401,  ISAPNP\ALS0007_DEV0003


;;---------------------------------------------------------------;
;;
;; D I R E C T O R Y  S E C T I O N
;;
[DestinationDirs]
WDM_ALS007.CopyList  = 10,system32\drivers ; %SystemRoot%\system32\drivers
ALS_FMSYN.CopyList   = 10,system32\drivers ; %SystemRoot%\system32\drivers
MS_MPU401.CopyList   = 10,system32\drivers ; %SystemRoot%\system32\drivers

[PreCopySection]
HKR,,NoSetupUI,,1

;;---------------------------------------------------------------;
;;
;; D R I V E R  C A L L O U T  S E C T I O N
;;


;; ALS007 PnP IDs
[WDM_ALS007]
Include=ks.inf, wdmaudio.inf
Needs=KS.Registration, WDMAUDIO.Registration
CopyFiles=WDM_ALS007.CopyList
AddReg=WDM_ALS007.AddReg

[WDM_ALS007.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave%,WDM_ALS.Interface.Wave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave%,WDM_ALS.Interface.Wave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave%,WDM_ALS.Interface.Wave
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topology%,WDM_ALS.Interface.Topology

[WDM_ALS.Interface.Wave]
AddReg=WDM_ALS.Interface.Wave.AddReg

[WDM_ALS.Interface.Wave.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM_ALS.Wave.szPname%

[WDM_ALS.Interface.Topology]
AddReg=WDM_ALS.Interface.Topo.AddReg

;; warning!! must be "Topo" because "Topology" is too long
[WDM_ALS.Interface.Topo.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%WDM_ALS.Topology.szPname%

;;ALS FMSYNTH
[ALS_FMSYN]
Include=ks.inf, wdmaudio.inf
Needs=KS.Registration, WDMAUDIO.Registration
CopyFiles=ALS_FMSYN.CopyList
AddReg=ALS_FMSYN.AddReg

[ALS_FMSYN.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_FMSynth%,WDM.Interface.FMSynth
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_FMSynth%,WDM.Interface.FMSynth

;;Mpu401
[MS_MPU401]
Include=ks.inf, wdmaudio.inf
Needs=KS.Registration, WDMAUDIO.Registration, WDMAUDIO.MPU401

[MS_MPU401.Interfaces]
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.FMSynth]
AddReg=WDM.Interface.FMSynth.AddReg

[WDM.Interface.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%

[ALS_GAME]
CopyFiles=JoyStick.CopyList
DelFiles=JoyStick.DeleteList
AddReg=JOYSTICK.AddReg,STICK_Dev.AddReg,PreCopySection,STICK.AddReg


;;---------------------------------------------------------------;
;;
;; U P D A T E  R E G I S T R Y  S E C T I O N
;;

[WDM_ALS007.AddReg]
HKR,,AssociatedFilters,,"wdmaud,swmidi,redbook"
HKR,,Driver,,als007.sys
HKR,,NTMPDriver,,"als007.sys,sbemul.sys"

HKR,Drivers,SubClasses,,"wave,midi,mixer,aux"

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\aux\wdmaud.drv,Driver,,wdmaud.drv

HKR,Drivers\wave\wdmaud.drv,Description,,%ALS007.DeviceDesc%
HKR,Drivers\midi\wdmaud.drv,Description,,%ALS007.DeviceDesc%
HKR,Drivers\mixer\wdmaud.drv,Description,,%ALS007.DeviceDesc%
HKR,Drivers\aux\wdmaud.drv,Description,,%ALS007.DeviceDesc%

[ALS_FMSYN.AddReg]
HKR,,AssociatedFilters,,"wdmaud"
HKR,,Driver,,alsfm.sys
HKR,,NTMPDriver,,alsfm.sys

HKR,Drivers,SubClasses,,"midi"
HKR,Drivers\midi\wdmaud.drv, Driver,,wdmaud.drv
HKR,Drivers\midi\wdmaud.drv,Description,,%ALS_FMSYNTH%

[JOYSTICK.AddReg]
HKR,,Devloader,0,mmdevldr.vxd
HKR,Drivers,MIGRATED,0,0
HKR,Drivers\joystick,,0,

[STICK_Dev.AddReg]
HKR,Drivers\joystick\msjstick.drv,Description,0,%ALS_GAME.DeviceDesc%

[STICK.AddReg]
HKR,,Driver,0,vjoyd.vxd
HKR,Drivers\joystick\msjstick.drv,Driver,0,msjstick.drv
HKR,Drivers,SubClasses,0,joystick

;;---------------------------------------------------------------;
;;
;; F I L E  C O P Y  S E C T I O N
;;

;; copy these files into the
;; system32\drivers directory
[WDM_ALS007.CopyList]
als007.sys

[ALS_FMSYN.CopyList]
alsfm.sys

[MS_MPU401.CopyList]
msmpu401.sys

[JoyStick.CopyList]
msjstick.drv
vjoyd.vxd

[JoyStick.DeleteList]
msjstick.drv
vjoyd.vxd

;;**************** NT Install ****************

[ALS_GAME.NT]
[ALS_GAME.NT.SERVICES]
AddService=,0x2

[WDM_ALS007.NT]
Include=ks.inf, wdmaudio.inf
Needs=KS.Registration, WDMAUDIO.Registration.NT
CopyFiles=WDM_ALS007.CopyList
AddReg=WDM_ALS007.AddReg

[ALS_FMSYN.NT]
Include=ks.inf, wdmaudio.inf
Needs=KS.Registration, WDMAUDIO.Registration.NT
CopyFiles=ALS_FMSYN.CopyList
AddReg=ALS_FMSYN.AddReg

[MS_MPU401.NT]
Include=ks.inf, wdmaudio.inf
Needs=KS.Registration, WDMAUDIO.Registration.NT, WDMAUDIO.MPU401.NT

[WDM_ALS007.NT.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave%,WDM_ALS.Interface.Wave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave%,WDM_ALS.Interface.Wave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave%,WDM_ALS.Interface.Wave
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topology%,WDM_ALS.Interface.Topology

[ALS_FMSYN.NT.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_FMSynth%,WDM.Interface.FMSynth
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_FMSynth%,WDM.Interface.FMSynth

[MS_MPU401.NT.Interfaces]
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_ALS007.NT.Services]
AddService = wdmaud,  0x00000000, wdmaud_Service_Inst
AddService = wdmals,  0x00000002, wdmals_Service_Inst

[ALS_FMSYN.NT.Services]
AddService = wdmaud,  0x00000000, wdmaud_Service_Inst
AddService = als_fm,  0x00000002, als_fm_Service_Inst

[MS_MPU401.NT.Services]
AddService = wdmaud,   0x00000000, wdmaud_Service_Inst
AddService = ms_mpu401,0x00000002, ms_mpu401_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

[wdmals_Service_Inst]
DisplayName    = %ALS007.SvcDesc%
ServiceType    = 1                  ; SERVICE_KERNEL_DRIVER
StartType      = 3                  ; SERVICE_DEMAND_START
ErrorControl   = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary  = %10%\system32\drivers\als007.sys

[als_fm_Service_Inst]
DisplayName    = %als_fm.SvcDesc%
ServiceType    = 1                  ; SERVICE_KERNEL_DRIVER
StartType      = 3                  ; SERVICE_DEMAND_START
ErrorControl   = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary  = %10%\system32\drivers\alsfm.sys

[ms_mpu401_Service_Inst]
DisplayName    = %ms_mpu401.SvcDesc%
ServiceType    = 1                  ; SERVICE_KERNEL_DRIVER
StartType      = 3                  ; SERVICE_DEMAND_START
ErrorControl   = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary  = %10%\system32\drivers\msmpu401.sys

;;---------------------------------------------------------------;
;;
;; S T R I N G S
;;

[Strings]
ALI="Avance Logic, Inc."
SW_SYNTH="Software Wave-Table MIDI Synthesizer"
MS_MPU401="Microsoft Generic MPU401 (WDM)"
ALS_FMSYNTH="Avance FM Synthesis"
ALIMfgName="Avance Logic, Inc."

ALS007.DeviceDesc="Avance Audio Device (WDM)"
WDM_ALS007.DeviceDesc="Avance Wave Audio Device (WDM)"
ALS_FMSYN.DeviceDesc="Avance FM Synthesis (WDM)"
ALS_GAME.DeviceDesc="Avance Game port"
MS_MPU401.DeviceDesc="Avance MPU401 Device (WDM)"

WDM_ALS.Wave.szPname="Avance Sound"
WDM_ALS.Topology.szPname="Avance Mixer"
WDM.UART.szPname="Avance MPU-401"
WDM.FMSynth.szPname="Avance FM Synth"

MediaCategories="SYSTEM\CurrentControlSet\Control\MediaCategories"

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_UART="UART"
KSNAME_FMSynth="FMSynth"
KSNAME_Topology="Topology"

wdmaud.SvcDesc = "Microsoft WDM Virtual Wave Driver (WDM)"
swmidi.SvcDesc = "Microsoft Software Synthesizer (WDM)"
ALS007.SvcDesc = "Avance Wave Audio Miniport Driver (WDM)"
als_fm.SvcDesc = "Avance FM Synthesis Miniport Driver (WDM)"
ms_mpu401.SvcDesc = "Microsoft MPU-401 MIDI UART Driver (WDM)"

Proxy.CLSID = "{17CCA71B-ECD7-11D0-B908-00A0C9223196}"
