AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Assembler 16Bit Sound

Ein Thema von neolithos · begonnen am 4. Dez 2003 · letzter Beitrag vom 7. Dez 2003
 
neolithos

Registriert seit: 31. Jul 2003
Ort: Dresden
1.386 Beiträge
 
Delphi 7 Architect
 
#1

Assembler 16Bit Sound

  Alt 4. Dez 2003, 21:25
Code:
Sound:
   ;
   ; Stellt Speaker auf eine Frequenz ein
   ; Eingabe:
   ;  - BX = Frequenz in Hz
   ;
   push ax
   push bx
   push dx
   
   mov ax, 34DDh
   mov dx, 0012h
   cmp dx, bx
   jnc Sound_End      ; klammer nicht hörbare töne aus und div durch 0
   div bx            ; 1193180 div Hz
   
   out 42h, al         ; Setze Tone
   mov al, ah
   out 42h, al
   
   in al, 61h
   test al, 3         ; ist Speaker schon an ?
   jnz Sound_End
   
   or al, 3
   out 61h, al         ; Speaker an
   
   mov al, 0B6h      ; Set up square wave
   out 43h, al
     
Sound_End:
   pop dx
   pop bx
   pop ax
   ret
Diese kleine Function wirft den Sound-Speaker an. Ich konnte einige Werte ermitteln, was sie bedeuten. Leider fehlt mir eine Gesamt-Übersicht über die Speaker-Funktion. Habe zwar schon gegoogelt konnte aber noch nix brachbares finden.

Hat jemand einen Link oder eine Erklärung, was mit welcher Port-Adresse machbar ist?
- ciao neo -
Es gibt niemals dumme Fragen, sondern nur dumme Antworten!
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz