PROYECTO: Carga de programas en Atari desde DVD

Para comentar los proyectos de hardware presentados en la web.
Avatar de Usuario
vitoco
expert
expert
Mensajes: 869
Registrado: Mié Nov 08, 2006 7:25 pm
Reputación: 5
Contactar:

PROYECTO: Carga de programas en Atari desde DVD

Mensaje por vitoco »

Este proyecto nace a partir de lo descubierto por el proyecto "Deconstrucción del Video Cartridge de Turbo Soft".

Objetivo: Construir un pequeño dispositivo que permita a un Atari XL/XE estándar cargar programas (¡juegos!) almacenados en un DVD, tomando un loader a partir del audio y la data a cargar directamente de la imagen de video.

Imagen

Este dispositivo sólo convertirá señales de audio y video en señales legibles a través del puerto SIO de los computadores ATARI. No será un emulador de diskettera ( D: ) al estilo SIO2PC.

En este post iré actualizando los avances... espero sus comentarios y sugerencias.

++Vitoco
Avatar de Usuario
AsCrNet
hard player
hard player
Mensajes: 472
Registrado: Mar Nov 07, 2006 2:45 pm
Reputación: 0
Ubicación: PHO
Contactar:

Re: PROYECTO: Carga de programas en Atari desde DVD

Mensaje por AsCrNet »

ummm, supongo que tu idea es cargar el loader como si fuera una casetera y despues este se encarga de cargar el juego desde la imagen que se muestra en pantalla. pero los loader de caseteras siempre tenian problemas con algunos juegos que usaban zonas de memoria ya ocupadas por el mismo loader o realmente eran incompatibles. :s

Saludos
Avatar de Usuario
ZZT
Site Admin
Site Admin
Mensajes: 10907
Registrado: Mar Nov 07, 2006 2:45 pm
Reputación: 10
Ubicación: La Florida-Santiago-Chile
Contactar:

Re: PROYECTO: Carga de programas en Atari desde DVD

Mensaje por ZZT »

¿Para "digitalizar" la señal de video bastaría con copiar esa etapa del video cartridge? Si así fuera ya nos ahorramos un buen resto de pega. :-°
AsCrNet escribió:ummm, supongo que tu idea es cargar el loader como si fuera una casetera y despues este se encarga de cargar el juego desde la imagen que se muestra en pantalla. pero los loader de caseteras siempre tenian problemas con algunos juegos que usaban zonas de memoria ya ocupadas por el mismo loader o realmente eran incompatibles.
No creo que el vitoco tenga en mente eso, sería más al estilo de las .atr con auto-boot. ¿onofre? Y haciendo que agarre la máxima cantidad de baudios posible. XD
Avatar de Usuario
vitoco
expert
expert
Mensajes: 869
Registrado: Mié Nov 08, 2006 7:25 pm
Reputación: 5
Contactar:

Re: PROYECTO: Carga de programas en Atari desde DVD

Mensaje por vitoco »

AsCrNet escribió:ummm, supongo que tu idea es cargar el loader como si fuera una casetera y despues este se encarga de cargar el juego desde la imagen que se muestra en pantalla. pero los loader de caseteras siempre tenian problemas con algunos juegos que usaban zonas de memoria ya ocupadas por el mismo loader o realmente eran incompatibles. :s
Exacto, como dije en el post donde surgió el proyecto, la idea es hacer eso. De acuerdo a las restricciones que vemos del Video Cart, sólo se eximirían aquellos juegos que usen memoria bajo la ROM ($C000-$FFFF). Esto sería porque:

- Se requiere espacio para el loader que no choque con los binarios.

- Se requiere un buen buffer para cargar muchas pantallas simultáneamente con alta tasa de transferencia, para luego re-ubicar en memoria de acuerdo a lo que diga el binario cargado.

Pero esto no es problema, pues hay técnicas para acomodar los binarios en memoria durante la carga y luego moverlos a su posición definitiva, justo antes de pasarles el control. En todo caso, es posible que igual se deje disponible memoria entre ($C000 y $D800).

De todos modos, la idea es pasar por audio el loader para ser reconocido como boot de cassette (o sea, prender el Atari con OPTION y START), pero aumentando los baudios al máximo tolerable por un Atari sin modificaciones para acelerar la carga. Luego el loader se reubica en memoria alta y hace la pega de captura de los frames de video para extraer los binarios, tal como el Video Cart.

Los problemas a resolver en este proyecto son:

1.- Determinar lo mínimo de hardware necesario para pasar la señal de audio RCA a lo que entienda el bus SIO para el controlador de la cassettera.

2.- Determinar lo mínimo de hardware necesario para pasar la señal de video RCA a lo que entienda el bus SIO, o que al menos el loader pueda reconocer y sincronizarse.

3.- Determinar cómo evitar la colisión del flujo de datos para audio y para video en el bus SIO. Para esto simplemente se me ocurre que si se detecta señal de audio, se bloquea la de video (que por lo demás sólo estará mostrando una imagen de presentación del programa a cargar).
ZZT escribió:¿Para "digitalizar" la señal de video bastaría con copiar esa etapa del video cartridge? Si así fuera ya nos ahorramos un buen resto de pega. :-°
En parte eso resuelve el problema 2, pero hasta donde entiendo, lleva el byte en forma paralela al loader, mientras que por el SIO, sigue siendo serial.

++V

PD: Una duda rápida: ¿los 600XL tienen RAM bajo la ROM del OS?
Avatar de Usuario
ZZT
Site Admin
Site Admin
Mensajes: 10907
Registrado: Mar Nov 07, 2006 2:45 pm
Reputación: 10
Ubicación: La Florida-Santiago-Chile
Contactar:

Re: PROYECTO: Carga de programas en Atari desde DVD

Mensaje por ZZT »

vitoco escribió:
ZZT escribió:¿Para "digitalizar" la señal de video bastaría con copiar esa etapa del video cartridge? Si así fuera ya nos ahorramos un buen resto de pega. :-°
En parte eso resuelve el problema 2, pero hasta donde entiendo, lleva el byte en forma paralela al loader, mientras que por el SIO, sigue siendo serial.
No no, solo me refiero a la red de resistencias y condensadores y un transistor que procesan la señal de video y la dejan pura, para meterla a una compuerta NAND, de esta manera que quede "digital" lista pa meterla al SIO, hasta aquí sigue siendo serial. :wink:
xt5
expert
expert
Mensajes: 512
Registrado: Mar Sep 18, 2007 1:16 am
Reputación: 0
Contactar:

Re: PROYECTO: Carga de programas en Atari desde DVD

Mensaje por xt5 »

buena idea!

yo lo queria hacer en un cart nuevo, y las pruebas cargando en loader desde un diskette virtual y que usara un DVD con menus para seleccionar los juegos, pero tal vez tenga menos componentes una version para el SIO???
vitoco escribió:Los problemas a resolver en este proyecto son:

1.- Determinar lo mínimo de hardware necesario para pasar la señal de audio RCA a lo que entienda el bus SIO para el controlador de la cassettera.

2.- Determinar lo mínimo de hardware necesario para pasar la señal de video RCA a lo que entienda el bus SIO, o que al menos el loader pueda reconocer y sincronizarse.

3.- Determinar cómo evitar la colisión del flujo de datos para audio y para video en el bus SIO. Para esto simplemente se me ocurre que si se detecta señal de audio, se bloquea la de video (que por lo demás sólo estará mostrando una imagen de presentación del programa a cargar).
creo que el aparato no tendra tan pocos componentes a final de cuentas (lo mismo que con el cartridge que quiero hacer yo), en este caso tienes que tener componentes para conmutar entre la señal ya normalizada de audio y video, y hacer un switch de estado solido de la entrada de video, porque lo simpatico seria poder usar el sistema con 1 solo televisor y no andar cambiando cables ya que pierde toda la portabilidad.
ZZT escribió:¿Para "digitalizar" la señal de video bastaría con copiar esa etapa del video cartridge? Si así fuera ya nos ahorramos un buen resto de pega. :-°
te sale mas papa usar un LM339 que es un comparador ya hecho (eso es lo que hace esa etapa del cart), y tiene 4 comparadores donde puedes usar uno para los datos del cassette tambien (si es que aplicara para este sistema).


la verdad creo que faltan bastante mas cosas por hacer de las que pone vitoco, por ejemplo como: convertir el audio a algo que entienda el SIO.

la verdad no tengo NPI del tema de los cassettes, pero el sistema del Apple II era bastante mejor que el de Atari (http://www.pagetable.com/?p=32), pero no hay como llevar eso de manera facil al SIO, no se cual seria el sistema del C64 y otras maquinas habria que revisarlos.

me da la impresion de haber visto hace algun tiempo alguien que metia una "onda normalizada por un comparador" desde un cassette a una maquina de 8bits, pero nunca mas pude encontrar el link (tal vez hasta solo fue mi imaginacion).
Avatar de Usuario
vitoco
expert
expert
Mensajes: 869
Registrado: Mié Nov 08, 2006 7:25 pm
Reputación: 5
Contactar:

Re: PROYECTO: Carga de programas en Atari desde DVD

Mensaje por vitoco »

xt5 escribió:yo lo queria hacer en un cart nuevo, y las pruebas cargando en loader desde un diskette virtual y que usara un DVD con menus para seleccionar los juegos, pero tal vez tenga menos componentes una version para el SIO???
Estaba pensando en lo mismo para el producto final, pero por ahora me basta que ande con un video, usando como base la prueba de smartfinder para la etapa de datos. Pero para el loader, se me ocurrió lo de la cassetera ya que eso existe en el Atari... pero falta la emulación de la señal en el puerto SIO. Sigo sin encontrar info de eso... tampoco encuentro info técnica que diga cómo llega la data al cassette cuando uno graba. Sólo tengo la teoría y los resultados de mis (viejas) pruebas durante el desarrollo de SITRE. En resumen, siempre pensé que al grabar sólo llegaba un canal de audio mono al cassette (¿por qué pin SIO?) y que al cargar, se decodificaba el mismo audio en el Atari. ¿Recuerdan que alguna vez transmitieron juegos por la radio? Sólo había que grabar los pitos en un cassette directamente en el equipo de música. Lo que dijo 133MHz es lo que me confunde. Tengo que mirar un poco más la rutina CASENT en la ROM.
xt5 escribió:creo que el aparato no tendra tan pocos componentes a final de cuentas (lo mismo que con el cartridge que quiero hacer yo), en este caso tienes que tener componentes para conmutar entre la señal ya normalizada de audio y video, y hacer un switch de estado solido de la entrada de video, porque lo simpatico seria poder usar el sistema con 1 solo televisor y no andar cambiando cables ya que pierde toda la portabilidad.
Con VHS era más simple, el RCA Video-OUT iba directo al cartucho y el coaxial de 75 Ohm podía ir al switch-box del Atari, donde también llegaba la señal RF del Atari (uno de los 2 con conversor 75-300) y de ahí a la tele CRT.

Ahora las teles LCD tienen más de una fuente de entrada, y los DVD no tiene coaxial de salida. Entonces la cajita negra debiera tener al menos:

1) RCA para Audio-IN y Video-IN desde DVD
2) RCA para Audio-OUT y Video-OUT hacia TV (bypass desde 1)
3) SIO hacia el Atari

Si quieres complicar la cosa y no tener que cambiar de fuente en la TV, sería válido agregar unos RCA para Video-IN y Audio-IN (mono x 2) para tomar la señal desde el DIN del Atari, y poner un triple switch RCA que te permita seleccionar entre esto y la entrada 1, pero para eso existen game switchs listos. Si prefieres, se podría intentar meter todo este proyecto dentro de uno de esos!!! :wink:
xt5 escribió:
ZZT escribió:¿Para "digitalizar" la señal de video bastaría con copiar esa etapa del video cartridge? Si así fuera ya nos ahorramos un buen resto de pega. :-°
te sale mas papa usar un LM339 que es un comparador ya hecho (eso es lo que hace esa etapa del cart), y tiene 4 comparadores donde puedes usar uno para los datos del cassette tambien (si es que aplicara para este sistema).
¿Tienes esquemas para esto? Así vamos avanzando por este lado también.
xt5 escribió:la verdad creo que faltan bastante mas cosas por hacer de las que pone vitoco, por ejemplo como: convertir el audio a algo que entienda el SIO.
En otro foro:
xt5 escribió:
vitoco escribió: ¿Sin hw adicional? ¿Y por dónde meter la señal? ¿Por el joystick o el SIO? Éstos tienen velocidades máximas no muy altas... :s
el cart tiene un modo donde la señal de video pasa directamente a la puerta del conector (ya viene normalizada).
ademas de eso quiero probar por la puerta del joystick y un integrao (comparador), y por el pin RX del SIO, que se puede poner en modo poll.

me las juego a que el atari no se atora, por el SIO en modo sincrono se puede llegar a mas de 100Kbps, con el cart estamos como en los 80Kbps.
¿Tienes más info de como hacer eso?

Gracias, tu experiencia en otros proyectos es de gran ayuda acá. Yo sólo tengo nociones de electrónica y puedo entender lo que se discute en estos foros, pero de ahí a armarme por mi cuenta un circuitito sin manual de instrucciones o servilleta de papel con monito, uffff!!! :8-
xt5
expert
expert
Mensajes: 512
Registrado: Mar Sep 18, 2007 1:16 am
Reputación: 0
Contactar:

Re: PROYECTO: Carga de programas en Atari desde DVD

Mensaje por xt5 »

el asunto de los limites reales de las velocidades del SIO con pruebas y analisis lo tengo para otro post, tambien del PIA y los infames condensadores!!

que bueno que el asunto del "onda normalizada por un comparador" no me lo estaba imaginando... aca esta la pagina y esta muy bueno, de hecho el circuito se parece al que hay que hacer para el video http://sites.google.com/site/ataripal/megacd

Imagen

seria bueno que hicieramos una tablita de los sistemas de carga y que tecnologia usan, estan los sistemas chilensis (al parecer todos usan FSK), el turbo 2000, turbo 6000, stac?, el megaCD y quien sabe cual mas
Avatar de Usuario
vitoco
expert
expert
Mensajes: 869
Registrado: Mié Nov 08, 2006 7:25 pm
Reputación: 5
Contactar:

Re: PROYECTO: Carga de programas en Atari desde DVD

Mensaje por vitoco »

Ja, ja, ja... a eso me refería con lo de "servilleta con monito".

Sería super útil mirar el contenido del cartucho del Mega CD. No lo conocía, pero encontré una ROM por ahí que pareciera ser eso. Cuando la analice, veré qué es rescatable de ahí.

Tampoco conocía el Turbo 2000... en un video se ve una carga (no exitosa) con ese sistema, y se parece mucho a la del ZX-81, pues tira rayas irregulares en la pantalla. ¿Qué tiene que ver eso con la cassetera? ¿O sólo era a modo de debug?

Voy a revisar otros esquemas, pero en lo poco que he visto, no encontré nada parecido a este proyecto en particular (usar audio y video).

++V
Avatar de Usuario
AsCrNet
hard player
hard player
Mensajes: 472
Registrado: Mar Nov 07, 2006 2:45 pm
Reputación: 0
Ubicación: PHO
Contactar:

Re: PROYECTO: Carga de programas en Atari desde DVD

Mensaje por AsCrNet »

xt5 escribió:seria bueno que hicieramos una tablita de los sistemas de carga y que tecnologia usan, estan los sistemas chilensis (al parecer todos usan FSK), el turbo 2000, turbo 6000, stac?, el megaCD y quien sabe cual mas
ummm, te falto el sistema injektor que parece que es a 1300baudios ?@ (onda turbo 1300) :-X
vitoco escribió:Tampoco conocía el Turbo 2000... en un video se ve una carga (no exitosa) con ese sistema, y se parece mucho a la del ZX-81, pues tira rayas irregulares en la pantalla. ¿Qué tiene que ver eso con la cassetera? ¿O sólo era a modo de debug?
ummm, segun lo que entiendo esas lineas en la pantalla reprecentan el audio de la carga en el turbo 2000. ademas te adjunto un rar con el emulador que soporta turbo 2000. pasos para la ejecucion:

1. ejecutar desde el acceso directo "Ejecuta emulador"
2. preciona F1 para el menu del emulador.
3. en TAPE IMAGE selecciona el archivo "b_t2000.wav"
4. en Run execute selecciona el archivo "turbo2000.xex"
5. reinicia el atari
6. veras el loader de turbo 2000 en la pantalla preciona la tecla space y empieza a carga el .wav en turbo 2000.

cuidado con el juego que carga, te puede doler los ojos :-X :-X :-X :-X

Saludos
xt5
expert
expert
Mensajes: 512
Registrado: Mar Sep 18, 2007 1:16 am
Reputación: 0
Contactar:

Re: PROYECTO: Carga de programas en Atari desde DVD

Mensaje por xt5 »

AsCrNet escribió:3. en TAPE IMAGE selecciona el archivo "b_t2000.wav"
4. en Run execute selecciona el archivo "turbo2000.xex"
ya agregue el injektor :)

esta buenisimo el cargador, 300 bytes es facil de revisar.

Código: Seleccionar todo

nombre                 computador           modulaciodispositivo               bps (c/overhea origen                autor
.                      Apple I              PWM      addon                     ~1336          .                     Apple
.                      Atari 8bits          FSK      datassette original       600            .                     Atari
KSO Turbo 2000         Atari 8bits          PWM      datassette (XC12) modific ~2261          Republica Checa (1987 Kasetowy Operacyjny
Blizzard Turbo         Atari 8bits          PWM      datassette (XC12) modific .              Polonia               Atares
Chaos System (Turbo 600Atari 8bits          .        datassette (XC12) modific .              RDA (1988)            .
MegaCD                 Atari 8bits          PWM      CD player + dispositivo   .              Republica Checa       Jiri Richter
Injektor               Atari 8bits          PWM      datassette (XC12) modific ~2672          Chile (1998)          Pedro Carabal/Turbo Softw
.                      Commodore VIC/64/PET PWM      datassette original       .              .                     .
revise varios sistemas y en realidad PWM como modulacion para las cintas es lejos lo mejor (solo superado por un sistema de Spectrum), para este proyecto el cargador inicial no tiene que tener modulacion, pero no se si eso pase por los filtros que elimininan DC, se le puede poner scrambling para que el DSV llegue cercano a cero, pero me imagino que las pruebas que se desprenden de esto son demasiadas... me gusta mas la idea de un cart!!
Avatar de Usuario
Chalo_mhz
expert
expert
Mensajes: 1107
Registrado: Dom Feb 18, 2007 6:42 pm
Reputación: 0
Ubicación: Maipu, Santiago
Contactar:

Re: PROYECTO: Carga de programas en Atari desde DVD

Mensaje por Chalo_mhz »

El sistema injektor es chileno y del año 1998??? 8-|
Avatar de Usuario
ZZT
Site Admin
Site Admin
Mensajes: 10907
Registrado: Mar Nov 07, 2006 2:45 pm
Reputación: 10
Ubicación: La Florida-Santiago-Chile
Contactar:

Re: PROYECTO: Carga de programas en Atari desde DVD

Mensaje por ZZT »

Chalo_mhz escribió:El sistema injektor es chileno y del año 1998??? 8-|
Pucha que estas desinformado chalito. Hace como 3 atariadas asistió el programador, Pedro Caraball. Y hace poco Marcelo Waldbaum, otro de los participantes en el proyecto puso el medio post en el foro. Vas a tener que venir a reforzamiento, clases de lectura (del foro). :-D

Imagen
De izquierda a derecha: Parche, Willy, Pedro Caraball. Lo que Willy tiene en sus manos y Pedro le explica es el listado original en asembler del sistema Injektor de Turbosoft. Yo lo tuve para escanearlo, pero nunca me conseguí un ORC y al dejarlo como imagenes era pesadisimo, por lo que no hice nada y se lo devolví al neutra.
Avatar de Usuario
AsCrNet
hard player
hard player
Mensajes: 472
Registrado: Mar Nov 07, 2006 2:45 pm
Reputación: 0
Ubicación: PHO
Contactar:

Re: PROYECTO: Carga de programas en Atari desde DVD

Mensaje por AsCrNet »

ZZT escribió:......pero nunca me conseguí un ORC y al dejarlo como imagenes era pesadisimo, por lo que no hice nada y se lo devolví al neutra.
o sea p...... :-X :-X :-X :-X :-X :-X
Avatar de Usuario
vitoco
expert
expert
Mensajes: 869
Registrado: Mié Nov 08, 2006 7:25 pm
Reputación: 5
Contactar:

Re: PROYECTO: Carga de programas en Atari desde DVD

Mensaje por vitoco »

Estuve revisando los fuentes de mi grabador y cargador SITRE, y no encontré nada fuera de lo común. Se basa simplemente en las rutinas SIO de la ROM, aunque para grabar modifica unos parámetros de la rutina (copiando la ROM a RAM) para aumentar los baudios, pero para leer no hace nada especial y deja que el Atari normal se ajuste a los baudios entrantes, pero es capaz de monitorear el tráfico de datos para saber donde comenzar a leer un nuevo bloque después de haber rebobinado un par de vueltas en caso de error. Lo que no logré recordar es de dónde obtuve los parámetros que había que tocar en la ROM, pero lo más probable es que haya sido ingeniería inversa de algo que funcionaba a medias. Los valores usados en los parámetros son el resultado de prueba y error.

Por lo tanto, SITRE es FSK con unos BPS que no sé cómo medir, pero mayor a 600.

Ahora tengo una nueva duda: si los sistemas como el Injector requieren una modificación en hardware de la cassetera para trabajar en PWM, ¿eso quiere decir que un cassette normal de Atari no cargaría en una XC12 modificada? Que yo recuerde eso no pasaba. ¿Cómo lo hace entonces? ¿Son compatibles?

Volviendo a este proyecto, lo que habría que lograr es meter un canal de audio del DVD en el puerto serial (usando cualquiera de los filtros: FSK ó PWM), usando el protocolo que maneja SIO para cassette, y por lo que cacho no es complicado por que no es tan "protocolo" (de partida sería unidireccional en la carga).

Otro tema: estaba pensando que en la etapa de carga del juego estamos hablando de 30fps * 192bpf = 5760bps, es decir, si en un segundo y medio entran 8K, ¿por qué no "pre-armar" la memoria completa del juego tal como quedaría en la RAM y grabar eso al video? Así se ahorra tiempo para el manejo de los bloques durante la carga porque no se usaría buffer intermedio ni se interpretaría la información de la estructura binaria de los archivos. En el peor de los casos, un programa de 48K entraría en menos de 9 segundos... bueno, eso sin contar el tiempo fijo que tome la carga inicial del loader.

++V
Responder
  • Similar Topics
    Respuestas
    Vistas
    Último mensaje