Commodore manía

Commodore 64 => Problemas Hardware y Software => Disketeras - Datasettes - Cintas - Discos => Mensaje iniciado por: antoniovillena en Septiembre 13, 2013, 19:05:09

Título: Cable emulador datassette, todavía no funciona
Publicado por: antoniovillena en Septiembre 13, 2013, 19:05:09
Estoy intentando hacer un cable amplificador para prescindir totalmente del datassette y poder cargar directamente desde la tarjeta de sonido de mi portátil (o cualquier mp3). He utilizado el circuito de Superfo, pero sin la resistencia de 10K final que va a Vcc, puesto que internamente el C64 tiene una de 3K3 conectada a Vcc.

En lugar de conectarlo por el puerto de datassette lo he conectado al puerto serie, puesto que el conector del cassette es bastante raro. En un primer momento no hacía nada y pensé que había un fallo eléctrico. Lo pruebo con el osciloscopio y todo funcionaba bien en teoría. En realidad lo que pasaba era que había que engañar al C64 haciéndole creer que hemos pulsado la tecla PLAY, y esto se hace cortocircuitando (poniendo SENSE a GND) los pines 1 y 6 del puerto de datassette.

El caso es que solo carga el primer bloque, es decir la cabecera. Luego deja de cargar. La cabecera la carga siempre bien y en un rango bastante ancho de amplitudes, pero tiene que haber algún problema que desconozco que no consigo cargar más bloques.
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: marcos64 en Septiembre 13, 2013, 21:53:09
Es relativamente normal que se pueda cargar la cabecera (el FOUND "nombre") y que luego no cargue nada mas. Si fuera un Datassette real casi seguro que seria un problema de azimuth, cosa que evidentemente no es el caso.

Los problemas que yo he encontrado, con mi interface basado en el 7404, es que la señal no es lo suficientemente fuerte, al C64 le gusta la señal bastante saturada. Quizas puedas hacer algo por ese camino.
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: GorGo en Septiembre 15, 2013, 22:35:08
Una pregunta, el audio que le estás metiendo tiene la onda invertida? Al principio obviaba eso y me pasaba justo lo mismo, cargaba la cabecera y luego nada más.
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: antoniovillena en Septiembre 15, 2013, 23:40:42
Sí. He probado tanto con onda invertida como sin invertir. Sólo funciona (carga el primer bloque) con onda invertida. Cuando no hay señal (pausas entre bloques) la salida es siempre de 5V (esto es tanto con onda invertida como sin invertir), puede que ahí esté el problema. Lo digo porque la señal es perfecta: onda cuadrada que es 0V ó 5V que satura desde niveles muy bajos de volumen. Este mismo circuito ha funcionado a la perfección en clones de spectrum.
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: marcos64 en Septiembre 16, 2013, 10:32:36
Este mismo circuito ha funcionado a la perfección en clones de spectrum.

Recuerda que el casete del C64 funciona de forma diferente a como lo hacen en la mayoria de otros ordenadores, asi que algo que ha funcionado en el Spectrum no tiene porque funcionar en el C64.
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: marcos64 en Septiembre 16, 2013, 11:09:17
Se me olvidaba. Dices que es un cable 'amplificador'. Si lo unico que haces es amplificar la señal no te va a funcionar nunca. La señal hay que convertirla a 'digital'. Al menos es lo que yo recuerdo.
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: antoniovillena en Septiembre 16, 2013, 13:17:48
Lo que se hace es amplificar con una ganancia suficientemente grande de tal forma que el transistor está entre corte y saturación. Sería más bien un amplificador/rectificador. La idea es que si le metes una señal sinusoidal de por ejemplo 100mV, tengas a la salida una señal cuadrada con valor inferior cercano a 0V y valor superior cercano a 5V. Este circuito hace lo mismo:

http://www.zimmers.net/anonftp/pub/cbm/documents/projects/interfaces/soundcard2tape.html (http://www.zimmers.net/anonftp/pub/cbm/documents/projects/interfaces/soundcard2tape.html)
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: marcos64 en Septiembre 16, 2013, 14:54:12
Ok, tu sabes mucho mas que yo del tema :D  Y lo poco que aprendi lo he olvidado  ::)

Lo que describes parece ser lo que hace falta, es solo que tu forma de hacerlo no la habia visto nunca. El Datassette y todos los esquemas que busque en su dia eran parecidos al que enlazas, siempre con esos A1 y A2, que ni me acuerdo que eran  ;D , aunque suele ser un 7414 (y yo use en su lugar el 7404).
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: GorGo en Septiembre 16, 2013, 15:10:06
Una pregunta, qué tipo de audios utilizas para ejecutar?

Ah y otra cosa, hace tiempo compré un lote en el que me venía un adaptador casero para justo lo que estás haciendo tú. Lo he probado y funciona perfectamente, conectándolo al PC o a un móvil. Si crees que te puede venir bien lo abro y te paso fotos y detalles de su funcionamiento.
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: antoniovillena en Septiembre 16, 2013, 18:13:22
Ok, tu sabes mucho mas que yo del tema :D  Y lo poco que aprendi lo he olvidado  ::)

Lo que describes parece ser lo que hace falta, es solo que tu forma de hacerlo no la habia visto nunca. El Datassette y todos los esquemas que busque en su dia eran parecidos al que enlazas, siempre con esos A1 y A2, que ni me acuerdo que eran  ;D , aunque suele ser un 7414 (y yo use en su lugar el 7404).

El circuito hace uso del transistor en emisor común, en esta configuración hay una ganancia de signo negativo mayor que la unidad. Aquí lo que interesa es que la ganancia sea alta para que entre rápido en corte o saturación pasándo el mínimo tiempo por tensiones intermedias. De la rectificación o protección de sobretensiones se encarga el diodo y la unión PN del emisor (que actúa como diodo). Los pasivos son para eliminar corriente continua (condensador), hacer un filtrado (circuito RC) y configurar la ganancia del transistor (resistencia).

Lo del A1, A2 y A3 es simplemente la numeración del inversor dentro del integrado (el integrado tiene 6 inversores). El 7414 es un inversor con histéresis ó Smith Trigger, lo que significa que tiene cierta inercia a conservar el último valor. Esto era necesario con las señales ruidosas que daba el cassette, con las señales actuales de audio con un inversor normal (7404) es suficiente.
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: antoniovillena en Septiembre 16, 2013, 18:32:24
Una pregunta, qué tipo de audios utilizas para ejecutar?

Ah y otra cosa, hace tiempo compré un lote en el que me venía un adaptador casero para justo lo que estás haciendo tú. Lo he probado y funciona perfectamente, conectándolo al PC o a un móvil. Si crees que te puede venir bien lo abro y te paso fotos y detalles de su funcionamiento.

Uso el Audiotap con un par de ficheros .TAP distintos (que me han cargado en emulador) y también he probado a pasar un archivo .T64 a WAV con el programa WAV-PRG (ambos bajados del mismo paquete). En ambas situaciones he probado con la señal invertida y sin invertir.

Pues si le puedes hacer un par de fotos me vendría bien. Una pregunta, ¿tienes polímetro o algo para medir tensiones?
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: marcos64 en Septiembre 16, 2013, 21:49:28
Esas diferencias entre el 7404 y el 7414 quizas podrian explicar algunos de los problemas que he experimentado con mi interface. Tengo preparado las piezas para otro, esta vez con un 7414, a ver si funciona mejor. Por desgracia al anterior le quite el zocalo del integrado para poder meterlo en el conector del Datassette, asi que no puedo probarlo con el 7414.
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: GorGo en Septiembre 16, 2013, 23:11:26
A ver si estas fotillos sirven de algo. Tengo un polímetro por aquí por si quieres que mida algo, pero tendrá que ser mañana porque tengo que montar un C64.

(http://www.subeimagenes.com/img/2013-09-16-23-08-19-745364.jpg)

(http://www.subeimagenes.com/img/2013-09-16-23-08-58-745365.jpg)
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: antoniovillena en Septiembre 17, 2013, 10:51:31
Muchas gracias GorGo. Parece un circuito basado en inversores (7404 ó 7414). Lo que me gustaría medir es el voltaje que da a la salida cuando en la entrada hay cero voltios (no se está reproduciendo nada a la entrada). Puedes medir a la salida de esta plaquita o a la entrada del conector de cinta, que sería entre los pines A1 y D4.

http://old.pinouts.ru/Storage/CassetteC64_pinout.shtml (http://old.pinouts.ru/Storage/CassetteC64_pinout.shtml)
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: GorGo en Septiembre 17, 2013, 23:52:07
Vale, en cuanto pueda lo haré, se me ha presentado mucho lío para esta semana (y menos mal). El sistema es, enciendo el c64, conecto el chisme, y te mido el voltaje de salida cuando no se está reproduciendo nada, sin poner load"" ni nada, no?
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: antoniovillena en Septiembre 18, 2013, 00:04:44
Exacto. Muchas gracias por tu ayuda
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: marcos64 en Septiembre 19, 2013, 15:09:25
He probado a hacer la medicion en el mio.

Conectando tierra a tierra me da unos 1,7V y comienza a descender lentamente. Al reves da unos 80mV y aumenta lentamente.

Al rato volvi a probarlo y daba unos 0,3V y tambien comenzo a descender.
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: antoniovillena en Septiembre 19, 2013, 16:42:17
Que raro, o sea que va bajando. En el amplificador de Superfo (el que he probado) se tiene un voltaje cercano a 5V. Es posible que la rutina de la ROM espere al estado de reposo, que parece ser cercano a 0V.

Probaré a meterle un segundo transistor a mi circuito para que el valor de reposo sea también cercano a 0.
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: marcos64 en Septiembre 19, 2013, 21:37:18
Disculpa, creo que he metido la pata :(  He hecho la prueba con un Kernal que no tiene rutinas de casete, aunque a nivel hardware 'supongo' que no deberia haber diferencias si quieres las mediciones solo con el ordenador recien encendido.
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: marcos64 en Septiembre 20, 2013, 21:32:19
He hecho la medicion de nuevo con la ROM original. Recien encendido me da 1,17V y desciende uniformemente. He pulsado SHIFT+RUN/STOP para comenzar a cargar y ningun cambio, sigue descendiendo. Luego he pulsado RUN/STOP para parar la carga y tampoco hay cambio.

Mi interface tiene un condensador en serie, por si pudiera ser la causa.

Despues, y para probarlo, he cargado un TAP al azar (el Renegade) y ha cargado a la primera  :D
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: antoniovillena en Septiembre 21, 2013, 10:20:02
Gracias de nuevo marcos, definitivamente tengo que probar a invertir la salida de mi circuito. Ya os contaré.
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: Jeff en Septiembre 21, 2013, 14:57:49
R Tape Loading error
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: marcos64 en Septiembre 21, 2013, 20:33:58
Jeff, gracias por tu aporte. El caso es que yo tambien le estoy dando vueltas al tema nuevamente.

En el circuito original, sacado de un libro, indica que se use el 74LS14. En mi esquema lo sustitui por un 74LS04 aunque no recuerdo porque. Al final use un 7404.

El condensador, que esta justo detras de la clavija, es un 10uF electrolitico.

Con mi portatil me funciona muy bien pero no con otro que he probado. Los TAPs originales (que tienen proteccioes anticopia) cargan el 50% y los TAPs creados con formato TurboTape practicamente el 99%.

Mi duda es si con un 74LS14 en lugar del 7404 funcionaria mejor con los TAPs originales y con otros reproductores de audio. Estoy haciendo un MOD de un 64 especial para TAPs con un interface incorporado y la ROM de Enthusi, en el que espero usar un 74LS14 y una resistencia variable en el divisor de tensiones, a ver que tal funciona. Pero la cosa va leeeeeennnnnttttaaaaaa  ;D
Título: Re:Cable emulador datassette, todavía no funciona
Publicado por: antoniovillena en Septiembre 22, 2013, 21:53:08
Gracias a ambos por los consejos. Mañana voy a intentar la modificación del circuito (tengo uno sin usar en placa de prototipos) y si puedo cuelgo las fotos.