Interface MIDI para la GBA (III) 
Ya he conseguido conectar al puerto game link un circuito formado por dos diodos led y controlarlos desde un programa ecribiendo en el registro REG_R. En la sección GBA se pueden ver un resumen de lo que he hecho. El siguiente paso será instalar un conector DIN-5 hembra con dos resistencias de 150 (aprox) para hacer el conector MIDI estándar. A ver si mañana puedo pasar por la tienda de electrónica y pillar el conector para hacer las pruebas lo antes posible. Estoy que no cago con esto, jejeje :-).

[ añadir comentario ] ( 1821 visualizaciones )   |  [ 0 trackbacks ]   |  enlace permanente  |   ( 3 / 2044 )
Interface MIDI para la GBA (II) 
Ayer me compré en Centro Mail un cable link de Gameboy Advance para dos jugadores. Mi idea inicial era cortarlo por la mitad para sacar directamente las señales del conector, sin embargo he optado por intentar una solución menos destructiva utilizando una placa de baquelita. Me he dado cuenta, además, de que el cable link que comercializa Centro Mail no posee el terminal que conecta con los 3.3 voltios en el conector por lo que voy a tener que emular los 3.3 voltios con un 1 lógico en otro pin (a priori no parece crítico ya que el bucle de corriente MIDI es de sólo 5 mA). Además de lo anterior, me he dado cuenta de que no son utilizables todos los pines del conector. Como se puede ver aquí al conectar el MIDI al extremo slave tendré que utilizar los pines SI, SD y SC, ya que SO no está conectado al extremo master (la GBA).

Con ayuda de Toli, un compañero de trabajo, me he dado cuenta de que una placa de baquelita de doble cara puede hacer de conector hembra ya que los pines en un conector de cable link tienen una distancia muy parecida a la distancia de pistas normalizada en una pista de baquelita de las que se compran en tiendas de electrónica y el grosor de una de estas placas es perfecto para hacer presión en los pines metálicos del conector. Dicho de otra forma: el conector EXT de una Gameboy Advance es casi idéntico a una sección de placa de baquelita de doble cara :-).

Hoy no, porque tengo ensayo, pero a ver si mañana puedo intentar hacer bien el invento.

[ 1 comentario ] ( 1687 visualizaciones )   |  [ 0 trackbacks ]   |  enlace permanente  |   ( 3 / 1957 )
Interface MIDI para la GBA 
Desde hace algunos días llevo dándole vueltas a la cabeza sobre lo de hacerle una interface de salida MIDI a la Gameboy Advance. Ya hay algunas aproximaciones al problema (como el interface MIDI para el sintetizador Little Sound DJ o para el sintetizador NanoLoop), pero tienen muchas limitaciones ya que sólo funcionan para syncronización (mensajes MIDI Sync) y sólo son interfaces de entrada. El objetivo final sería hacer una pequeña librería de transmisión de mensajes MIDI que permitiera la implementación de software de secuenciación en la GBA. He estado echandole un vistazo al modo general purpose del puerto serie de la GBA y, a priori, parece posible implementar la transmisión MIDI, que es a 31250 bps, mediante interrupciones.

En esta página explican muy bien cómo implementar a bajo nivel la comunicación MIDI así como las caracteristicas eléctricas del protocolo.

El único problema que tengo es que el conector game-link es un tipo de conector no estándar de Nintendo y voy a tener que comprarme un cable game-link para poder conectarme al puerto de la GBA y hacer pruebas. Deséenme suerte :-)

[ 1 comentario ] ( 1822 visualizaciones )   |  [ 0 trackbacks ]   |  enlace permanente  |   ( 3 / 2033 )
Algunas librerías útiles para la consola en Linux 
En la sección soft he puesto, en la subsección otros un archivo tar.gz con dos librerías C de bastante utilidad para hacer programas en modo consola:

vt.h - Permite posicionar el cursor, borrar la pantalla, cambiar el color del texto, etc, sin necesidad de utilizar la librería curses ya que envía directamente los comandos VT100 via printf. Mas sencillo imposible.

raw_keyboard.h - Permite acceder a bajo nivel y de forma no bloqueante al teclado. De esta forma podemos también leer las teclas no ASCII y, además, hacerlo de forma no bloqueante. La función raw_keyboard_read() devuelve -1 si no hay ninguna tecla pulsada y, en caso de que haya alguna pulsada, el código ASCII o, en su defecto, alguna de las constantes KEY_XXXXXX.

Junto a esta dos pequeñas librerías, he puesto un prqueño programa llamado setled.c que permite controlar los leds del teclado mediante ioctls. Para más info sobre la programación de la consola:

http://www.w00w00.org/files/articles/conioctls.txt

[ añadir comentario ] ( 1839 visualizaciones )   |  [ 0 trackbacks ]   |  enlace permanente  |   ( 3 / 2153 )
TR-626: Mi primer contacto con una máquina mítica 
¡Quién lo iba a decir! :-). David, el guitarra el grupo tiene, ni más ni menos, que una mítica TR-626: Una caja de ritmos que comercializó Roland en 1987 y la primera basada totalmente en instrumentos muestreados a 12 bits (toda una revolución para la época). Esta máquina hizo las delicias de los grandes clásicos de la música de baile de aquella época.



Todo un lujo vintage :-). Los sonidos son ochenteros total pero suena muy bien. El mecanismo de edición de patrones y pistas es bastante arcaico lógicamente y se basa en combinaciones de teclas, el uso de la tecla "shift", pulsar algunas teclas simultáneamente, etc. De todas formas, una vez le coges el tranquillo haces patrones de ritmo como churros, sobre todo gracias a la función step write. El manual sólo está disponible gratuitamente de la web de Roland Bélgica (http://manuals.roland.be) en francés y holandés. Afortunadamente se trata básicamente de una TR-505 con mejores sonidos y de esta última si que hay manuales y tutoriales en inglés por un tubo y en un montón de webs. Lo dicho, un lujo para los nostálgicos.

Más info sobre la TR-626 aquí.

[ 1 comentario ] ( 1665 visualizaciones )   |  [ 0 trackbacks ]   |  enlace permanente  |   ( 3 / 2205 )

<< <Anterior | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | Siguiente> >>