Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

PC Speaker [D6, Win95/98, WinME, NT4, Win2k, WinXP]


Seldon ©   (2002-08-24 21:25:00) 

Как пропищать звук заданнной частоты? В Turbo Pascal была функция Sound, а в Delphi её нет :(


Igor__   (2002-08-27 04:50:00) [1]

У меня WinMe и у меня работает.
Точно знаю что работает и под Win98.

procedure sound(Hz:word);
begin
asm
MOV BX,Hz
MOV AX,34DCh
MOV DX,0012h
CMP DX,BX
JAE @SoundExit
DIV BX
MOV BX,AX
IN AL,61h
TEST AL,00000011b
JNZ @SetCount
{turn on speaker}
OR AL,00000011b
OUT 61h,AL
MOV AL,182
OUT 43h,AL
@SetCount:
MOV AL,BL
OUT 42h,AL
MOV AL,BH
OUT 42h,AL
@SoundExit:
end;
end;
procedure nosound;
begin
asm
IN AL,61h
AND AL,11111100b
OUT 61h,AL
end;
end;


Serg123   (2002-08-26 15:29:00) [2]

Да, кк сожалению вариант под НТ: увытираешь sysutils из заголовка, а дальше beep(<длительность в милисекундах>,<частота в Гц>);


ValWhite   (2002-08-26 07:05:00) [3]

Посмотри тут:
http://www.sources.ru/delphi/system/speaker_control.shtml
и тут:
http://delphibase.endimus.com/?action=viewfunc&topic=mediasound&id=10124


Anatoly Podgoretsky   (2002-08-25 10:13:00) [4]

Это только для платформы НТ, надо брать пример их FAQ


MBo   (2002-08-25 08:55:00) [5]

Windows.Beep


Anatoly Podgoretsky   (2002-08-24 21:35:00) [6]

Смотри в FAQ там есть код


Наверх

Титульная страница Поиск, карта сайта Написать письмо