1. DESCRIPCIÓN:
TZXPod es un servidor de audio para carga en sistemas retro (de momento, Amstrad CPC y Spectrum). Se basa en pipod de itcarsales, y en la rutina de descompresion de cintas de Jesús B.L. en malagaoriginal.blogspot.com.
Su uso es bastante simple, consiste en un botón y un led (opcional). Conectando además la raspberry a la red y usando un cliente MPD en el móvil (por ejemplo, M.A.L.P. en Android) podremos prescindir de ello.
Al meter un pendrive (renombrado a MEDIA) todo su contenido (CDT, TAP, TZX y ZIP) se convierte a WAV (22050hz) y se almacena en la tarjeta SD. Al sacar el pendrive quedará listo para empezar a reproducir. Cada vez que añadimos juegos se borrará todo lo anterior, para facilitar el uso sin pantalla con un número reducido de archivos. Aun así, no hay un límite de capacidad (la que tenga la SD)
2. REQUISITOS:
Quemar la imagen adjunta a una SD con Win32DiskImager (windows), ApplePiBaker (mac). Durante el primer inició se expandirá para aprovechar la máxima capacidad de la tarjeta (mínimo 2 gb).
MODO STANDARD:
* CONEXIÓN AUDIO (SALIDA MINIJACK)
Pues aparte de la Raspberry PI 3B/3B+ (no he probado la imagen en otro modelo), necesitamos la conexión pertinente de audio a nuestro Amstrad (a través de adaptador cassete o din 5 con los pines de motor) o Spectrum (en éste último caso hará falta amplificación externa).
* SWITCH MOMENTÁNEO (CONECTADO AL GPIO 4)
Para este proyecto se puede usar cualquier switch momentáneo que tengamos. Yo he usado un botón de reset del frontal de un PC que tenía guardado (la misma conexión que trae funciona). El switch se usa como botón de play/pause (pulsado rápido), avanzar pista (pulsando +0.7s) o retroceder pista (pulsando +1.5s).
* (OPCIONAL) LED + RESISTENCIA DE 330 (CONECTADO AL GPIO 3)
La función del led es informar del estado. El sistema estará totalmente iniciado cuando parpadee 5 veces largas. Durante la reproducción el led estará encendido, y parpadeará dos veces cuando avancemos de pista, tres cuando retrocedamos. Si se introduce un pendrive con alguno de los formatos, la reproduccion se detendrá, se borrarán todos los archivos internos y el led parpadeará rápidamente un momento, empezando después la transferencia. Cuando los archivos se hayan convertido y copiado a la tarjeta el led parpadeará hasta que retiremos la memoria usb.
MUY IMPORTANTE: Para el led se debe usar una resistencia de 330, yo me he cargado un GPIO por ponérselo directamente

MODO AUTOMÁTICO CON CONTROL DE MOTOR (CONECTAR RELÉ AL GPIO 27)
En el script extendido se puede conectar un interruptor o el pin de relé motor de nuestro ordenador al GPIO 27. Para que se ejecute al inicio debemos hacer ‘sudo crontab -e’ y cambiar la línea @reboot sudo python pipod_no_motor.py por @reboot sudo python pipod.py
En caso de que instalemos el pin de relé y usemos el script extendido, la funcion de play/pause desde el switch está deshabilitada y la transferencia de datos sólo puede hacerse cuando el reproductor está en “pausa por motor” (o el cable DIN desconectado).
3. CONEXIÓN A LA RED.
La imagen SD se puede usar tal cual sin necesidad de configurar nada. Si queremos usar el servidor MPD desde nuestro móvil sólo hay que enchufarla por ethernet a nuestro router, pero para mayor comodidad podemos conectar la raspberry a la red wifi. La clave de acceso es USUARIO pi y CLAVE raspberry y accedemos a la configuración wifi habitual con ‘sudo raspi-config’.
Una vez conectados será mucho más facil manejar la raspberry desde el móvil, con la aplicación M.A.L.P. Creamos un perfil con la dirección de nuestra PI, sin tocar nada más y al poco debe aparecer la lista de nuestros juegos en pantalla.
4. POSIBLES MEJORAS.
Este programa hace un uso intensivo de la tarjeta SD durante la conversión, así que me he planteado el uso de un disco RAM en futuras versiones.
Unidades compartidas SAMBA. Para extraer/añadir los archivos de nuestro reproductor.
La señal de la raspberry no es suficiente para el Spectrum. Implementar el trick de inversión de fase a ver si tira.
5. CRÉDITOS.
En este proyecto se ha usado Music Player Daemon, Detox y Fuse-emulator-tools.
6. DESCARGA.
https://mega.nz/#!CH5kjI4Q!FR4bA0PbtDf5 ... r4xwhq5-dU
NOTA DE DESCARGA DE RESPONSABILIDAD: No me hago cargo de los perjuicios que pudiera ocasionar el uso de este software o indicaciones de hardware. Todo ha sido testeado y no debe haber problema, pero nunca se sabe !