Ищу "BEEP", да будет звук!!!

Тема в разделе "WASM.BEGINNERS", создана пользователем Dimidroll, 18 окт 2006.

  1. Dimidroll

    Dimidroll New Member

    Публикаций:
    0
    Регистрация:
    18 окт 2006
    Сообщения:
    1
    Уважаемые WASMовцы, помоготите решить одну маленькую проблему. Очень надо чтобы компутер издавал один звук из своего системного динамика.

    узнал что можно вызвать звук 2-ой функцией 21-ого прерывания, но для этого надо загнать значение в dl. мои поиски не увенчались успехом. подскажите какое значение надо заталкать в dl или предложите альтернативу.

    Заранее благодарю.
     
  2. ProgramMan

    ProgramMan New Member

    Публикаций:
    0
    Регистрация:
    13 янв 2004
    Сообщения:
    263
    Код (Text):
    1. ;*************
    2. proc PlayBeep,TKT,GZ
    3. pushad
    4. cli
    5. mov al, 10110110b
    6. out 43h, al
    7. mov eax, [GZ]
    8. out 42h, al
    9. mov al, ah
    10. out 42h, al
    11. ; включить динамик
    12. in al, 61h
    13. or  al, 11b
    14. out 61h, al
    15.  
    16. mov     eax,[TKT];1800000h
    17. delay_loop:
    18. dec     eax
    19. or      eax,eax
    20. jnz     delay_loop
    21. cli
    22. ; выключить динамик
    23. in al, 61h
    24. and al, 11111100b
    25. out 61h, al
    26. sti
    27. popad
    28. return
    29. endp
    30. ;*************
     
  3. cppasm

    cppasm New Member

    Публикаций:
    0
    Регистрация:
    18 июл 2006
    Сообщения:
    923