TAP player

Todo sobre la creación, diseño y programación de nuevo software para
nuestro Spectrum

Moderador: Sir Cilve Sinclair

TAP player

Notapor Kyp el Vie Ene 03, 2014 2:36 pm

Hace poco reviví mi Spectrum y como mi colección de cintas de bastante limitada cargo los juegos desde el PC. Navegando por WOS he visto que la mayoría del soft para estos menesteres está un tanto anticuado ( :oops: sin ánimo de ofender ). Lo que mejor me ha funcionado es el plugin de TAP para el WinAMP pero es un poco incómodo de usar porque, por ejemplo, no puedes rebobinar hasta un punto concreto fácilmente.

Como lo mío es la programación me me puesto a escribir un TAP player que funcione sin problemas en equipos modernos pero no me acaba de funcionar bien. Trasteando con el plugin del WinAMP me he encontrado la agradable sorpresa de que lo ha escrito mcleod_ideafix así que me voy a atrever a pedirte ayuda :)

Como sabrás, el problema es que los tiempos de las rutinas de carga están definidos en estados del procesador y no encajan muy bien que digamos con la frecuencia de reproducción de las tarjetas de sonido. Por ejemplo, cada pulso del tono guía son 2168 estados y, si no estoy equivocado, 2168(estados)*44100(frecuencia de muestreo)/3500000(frecuencia de reloj del Spectrum) = 27,316799 muestras. Al principio la onda que genera mi programa coincide con la que genera el plugin pero poco a poco va generando muestras de menos por pulso y al final no se parece en nada.

Lo que hago es que llevo un contador de muestras y cada vez que es mayor que el nº de pulso actual por el nº de muestras por pulso cambio de polaridad:

si (i) mayor que (p*s) cambiar polaridad, donde
i = índice en el array de muestras
p = nº de pulso
s = muestras por pulso = 27,316799 en el caso del tono piloto

He visto que el plugin, como debe ser, unas veces mete 27 y otras 28 pero no acabo de encontrar la fórmula correcta.

¿Alguna sugerencia?
Avatar de Usuario
Kyp
Sabreman
 
Mensajes: 319
Registrado: Lun Dic 16, 2013 7:16 pm

Re: TAP player

Notapor mcleod_ideafix el Sab Ene 11, 2014 12:12 am

Mira el código fuente del programa PLAYTAP que liberé hace ya bastante tiempo. La rutina central de ese programa es la misma que usé para el plugin de WinAMP, a ver si te vale de inspiración :)
viewtopic.php?f=6&t=1348&p=16475
Web: ZX Projects | Twitter: @zxprojects
Avatar de Usuario
mcleod_ideafix
Johnny Jones
 
Mensajes: 3982
Registrado: Vie Sep 21, 2007 1:26 am
Ubicación: Jerez de la Frontera

Re: TAP player

Notapor Kyp el Dom Ene 12, 2014 12:38 am

¡Muchas gracias! Le echaré un vistazo y te cuento aunque igual tardo un poco porque he vuelto a retomar el remake del Sabrewulf y tengo que aprovechar los momentos de inspiración :)
Avatar de Usuario
Kyp
Sabreman
 
Mensajes: 319
Registrado: Lun Dic 16, 2013 7:16 pm


Volver a Programación y nuevos desarrollos

¿Quién está conectado?

Usuarios navegando este Foro: No hay usuarios registrados visitando el Foro y 1 invitado

cron