Programación General > ASM (Ensamblador)
Altavoz Del Pc
(1/1)
Cobo:
Hola a todos:
Estoy intentando generar una melodia por el altavoz del pc, programado en asm, pero no me suena nada.
Tengo un athlon 1200 y WinXP (no se si esto tiene algo q ver) pero es que no escucho nada.
El programa que estoy usando activa el altovoz de la siguiente manera
--- Código: Text --- InicAltavoz: push ax in al,61h or al,03 out 61h,al pop ax ret
lo cierra asi:
--- Código: Text --- CerrarAltavoz: push ax in al,61h and al,11111100b out 61h,al pop ax ret
y la frequencia se la paso directamente al timmer.. pero mi problema es q no oigo nada.. me podrias exhar una mano?? como me podria asegurar que mi pc realmente emite sonidos generados con programas de este tipo??
muchas gracias.
vandyke:
Saludos,
Creo que el problemilla que tienes es quizas que estas activando la bocina y la estas desactivando al instante. Prueba activarla por un ratito y luego desactivarla a ver si escuchas algo. Esta rutina que te muestro a continuacion la utilize para elaborar un piano, espero que te funcione:
mov al, 182 ; Prepare the speaker for the
out 43h, al ; note.
mov ax,di ; Frequency number (in decimal)
; for middle C.
out 42h, al ; Output low byte.
mov al, ah ; Output high byte.
out 42h, al
in al, 61h ; Turn on note (get value from
; port 61h).
or al, 00000011b ; Set bits 1 and 0.
out 61h, al ; Send new value.
mov bx, 25 ; Pause for duration of note.
pause1:
mov cx, 65535
pause2:
dec cx
jne pause2
dec bx
jne pause1
in al, 61h ; Turn off note (get value from
; port 61h).
and al, 11111100b ; Reset bits 1 and 0.
out 61h, al ; Send new value.
Navegación
Ir a la versión completa