Files
lba1-classic/LIB386/LIB_MIX/MIXER_I.ASM
Gwen Gourevich c5f4f6ba25 Initial commit
2021-10-27 10:34:18 +02:00

84 lines
1.7 KiB
NASM

;*ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ*
; MIXER_I.ASM 386
; (c) Adeline 1993
;*ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ*
;*--------------------------------------------------------------------------*
.386
jumps
.model SMALL, SYSCALL
.DATA
PUBLIC NoLanguage Mixer_listfcts
PUBLIC NoLanguage Mixer_Driver_Enable
Mixer_listfcts dd 0
Mixer_Driver_Enable dd 0
.CODE
PUBLIC NoLanguage MixerAskVars
PUBLIC NoLanguage MixerChangeVolume
PUBLIC NoLanguage MixerGetVolume
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
MixerCallFuncs PROC
cmp byte ptr[Mixer_Driver_Enable], 0
je return
shl eax, 2
add eax, dword ptr[Mixer_listfcts]
jmp dword ptr[eax]
return:
ret
MixerCallFuncs ENDP
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
MixerAskVars PROC
mov eax, 0
jmp MixerCallFuncs
MixerAskVars ENDP
;----------------------------------------------------------------------------
MixerChangeVolume PROC
mov eax, 1
jmp MixerCallFuncs
MixerChangeVolume ENDP
;----------------------------------------------------------------------------
MixerGetVolume PROC
mov eax, 2
jmp MixerCallFuncs
MixerGetVolume ENDP
;----------------------------------------------------------------------------
MixerGetInfo PROC
mov eax, 3
jmp MixerCallFuncs
MixerGetInfo ENDP
;----------------------------------------------------------------------------
END