Interface MIDI para la GBA (y IV) 
¡¡¡ LO CONSEGUÍ !!!

:-D. Estoy que no quepo: Ya conseguí montarle un puerto MIDI de salida a la Gameboy Advance. He hecho una pequeña aplicación que envía un mensaje note on cuando pulsas el boton A y otro note off cuando pulsas en boton B. Lo he probado con el sintetizador Chameleon que tengo y los resultados son increibles. ¡¡La GBA ya tiene puerto MIDI de salida!! :-D

En breve pondré los esquemas (que son muy sencillos) y todo el código fuente del software. Ahora no hay nada que impida utilizar la Gameboy Advance como secuenciador MIDI ;-)

[ añadir comentario ] ( 928 visualizaciones )   |  [ 0 trackbacks ]   |  enlace permanente
  |    |    |    |   ( 3 / 855 )
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 ] ( 480 visualizaciones )   |  [ 0 trackbacks ]   |  enlace permanente
  |    |    |    |   ( 3 / 877 )
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 ] ( 893 visualizaciones )   |  [ 0 trackbacks ]   |  enlace permanente
  |    |    |    |   ( 3 / 862 )
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 ] ( 1035 visualizaciones )   |  [ 0 trackbacks ]   |  enlace permanente
  |    |    |    |   ( 3 / 880 )
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 ] ( 977 visualizaciones )   |  [ 0 trackbacks ]   |  enlace permanente
  |    |    |    |   ( 3 / 1033 )

<< <Anterior | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | Siguiente> >>