El ejemplo sigue siendo el mismo, pero en lugar de reservar un buffer DMA del tamaño del sample completo, lo reserva siempre de un mismo tamaño, pequeño y potencia de dos. Controlando el desbordamiento de cada una de las mitades del buffer podemos reproducir de forma continuada o, lo que es lo mismo, reproducir muestras de longitud arbitraria.
Sección "gameboy advance" del menú de la izquierda.
[ 1 comentario ] ( 1900 visualizaciones ) | [ 0 trackbacks ] | enlace permanente | ( 3 / 2048 )
Hoy desde la madrugada se ha puesto a llover que da gusto (con aparato eléctrico y todo) y, para colmo de males, la solana de casa no es tan impermeable al agua como el obrero que vino nos hizo hacer creer. Suerte que por estos lares el régimen de lluvias no es muy alto que si no... :-)
Anoche me terminé de leer "Todos los nombres" de José Saramago. El libro promete más de lo que resulta ser al final, pero vale la pena leerlo. Antes de irme a la cama también estuve programando un poco para la Gameboy Advance, probando una modificación que hice del código que posteé ayer para utilizar la técnica del doble buffer para reproducir muestras de cualquier tamaño y no limitadas a 65535 bytes. Por lo pronto la cosa no rula y pega unos chasquidos la consola que dan gusto :-D. Todo se andará.
A la espera que mi querido amigo anónimo "Mel Lamam.es" escriba algún comentario jocoso acerca de mis gustos literarios, me despido :-)
[ 1 comentario ] ( 1865 visualizaciones ) | [ 0 trackbacks ] | enlace permanente | ( 3 / 2001 )
En la sección "gameboy advance" he añadido algunas cosillas nuevas:
bin2o.cpp - Una pequeña utilidad que permite convertir cualquier fichero binario en formato ELF object file de tal manera que, enlazándolo con la aplicación principal podemos acceder a los datos de ese fichero mediante una variable extern. La utilidad es de DarkFader y le he cambiado algunas líneas de código para que compile perfectamente en Linux.
directsound.tar.gz - Una pequeña aplicación hecha en C que reproduce una muestra en la Gameboy Advance tanto en modo DMA como en modo interrupción. Es de cosecha propia, aunque está basada en el tutorial de Belogic para programar el chip de sonido de la GBA. El tar.gz incluye ya una imagen ROM directsound.gba del programa compilado para que la puedas ejecutar directamente en un emulador (i.e. VisualBoyAdvance).
Pues eso, que ya estás tardando en bajarte los ficheros y ponerte a practicar :-)
[ 2 comentarios ] ( 2555 visualizaciones ) | [ 0 trackbacks ] | enlace permanente | ( 3 / 2034 )
¡A que está guapa la camiseta que me hice ayer con el logo del MSX! 8-) jejeje, ahora si que soy un auténtico retro-man... xD
[ 3 comentarios ] ( 2147 visualizaciones ) | [ 0 trackbacks ] | enlace permanente | ( 3 / 1889 )
No, no se me han trabado los dedos en el teclado :-D. Es que hace poco descubrí las hojas de estilo para transformación de XML (también conocidas como XSLT) y todo el potencial que tienen. Se pueden utilizar para implementar pequeñas rutinas que se ejecutan en el navegador y que permiten realizar cálculos e interpretar la propia estructura XML del documento raiz para convertirlo en un fichero de texto, en una página web o lo que te venga en gana (en Gallery of Stupid XSL and XSLT Tricks hay un buen popurrí de ejemplos).
En la sección "soft" he añadido algunos enlaces interesantes y dos ejemplillos hechos por mi y que funcionan directamente en el navegador.
Me encanta este lenguaje 8-)
[ añadir comentario ] ( 1381 visualizaciones ) | [ 0 trackbacks ] | enlace permanente | ( 3 / 1999 )