kolibrios-fun/contrib/sdk/sources/sound/src/sndgetsize.asm
Sergey Semyonov (Serge) d22ed6d387 sdk: update Makefiles && libsound
git-svn-id: svn://kolibrios.org@5022 a494cfbc-eb01-0410-851d-a64ba20cac60
2014-08-07 11:48:01 +00:00

64 lines
1.5 KiB
NASM

format MS COFF
include "snd.inc"
include "proc32.inc"
section '.text' align 16 code readable executable
public _GetBufferSize@8
public _GetBufferFree@8
extrn hSound
align 4
_GetBufferSize@8: ;str:dword, p_size:dword
push ebx
push ecx
lea eax, [esp+16]
lea ebx, [esp+12] ;[stream]
push 4 ;.out_size
push eax ;.output
push 4 ;.inp_size
push ebx ;.input
push SND_GETBUFFSIZE;.code
push dword [hSound] ;.handle
mov eax, 68
mov ebx, 17
mov ecx, esp
int 0x40
add esp, 24
pop ecx
pop ebx
ret 8
align 4
_GetBufferFree@8: ;str:dword, p_free:dword
push ebx
push ecx
lea ebx, [esp+12] ;[stream]
push 0 ;storage for free_space
mov eax, esp
push 4 ;.out_size
push eax ;.output
push 4 ;.inp_size
push ebx ;.input
push SND_GETFREESPACE ;.code
push dword [hSound] ;.handle
mov eax, 68
mov ebx, 17
mov ecx, esp
int 0x40
add esp, 24
mov ecx, [esp+20] ; p_free
pop dword [ecx]
pop ecx
pop ebx
ret 8