![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
MessageBeep [D6, Win2k]
Manulo © (2002-09-29 15:56:00)Теоретически, эта процедура включает системный динамик... А вот практически как то не получаиться... может быть, кто нибудь заставил её работать? Или как ещё можно из под делфи включить динамик?
Evgeny (2002-10-04 05:28:00) [1]Если касаться только MessageBeep, то как сказано в хелпе:
0xFFFFFFFF Standard beep using the computer speaker
Sharik_212 (2002-10-03 20:34:00) [2]Попробуй еще так
procedure sound(frequency:word);
label stop,j1;
begin
asm
mov bx, frequency
mov ax, 34DDh
mov dx, 0012h
cmp dx, bx
jnb stop
div bx
mov bx, ax
in al, 61h
test al, 3
jne j1
or al, 3
out 61h, al
mov al, 0B6h
out 43h, al
j1: mov al, bl
out 42h, al
mov al, bh
out 42h, al
stop:
end;//asm
end;
procedure nosound;
begin
asm in al,61H
and al, 0fcH
out 61H, al
end;
end;
Manulo (2002-10-03 19:12:00) [3]Блин! Вот пасибки!!! Вот это круто!
Dot (2002-09-29 19:13:00) [4]procedure BPSnd(Frequency, Duration: Integer);
asm
cmp Win32Platform, VER_PLATFORM_WIN32_NT
jne @@9X
push edx
push eax
call Windows.Beep
ret
@@9X:
push ebx
push edx
mov bx, ax
mov ax, 34DDh
mov dx, 0012h
cmp dx, bx
jnc @@2
div bx
mov bx, ax
in al, 61h
test al, 3
jnz @@1
or al, 3
out 61h, al
mov al, 0B6h
out 43h, al
@@1:
mov al, bl
out 42h, al
mov al, bh
out 42h, al
call Windows.Sleep
in al, 61h
and al, 0FCh
out 61h, al
@@2:
pop ebx
end;
PaRL (2002-09-29 18:31:00) [5]Попробуй Beep;