Proyecto O.T.L.A.







Descargar: otla1.0.zip . .

Descargar fuentes: source.otla1.0.zip .



Otla es una herramienta que sirve para cargar programas en computadoras ZX Spectrum, CPC Amstrad y MSX por la entrada de cassette tal y como se hacía en la década de los 80 pero a una velocidad considerabelmente mayor aprovechando la tecnología moderna de los sitemas de audio digital. (los tiempos de carga se reducen a menos de 30 segundos)



otlaBuilder.exe .

Es un programa para converitir ficheros propios (.tap, .tzx, .bin ,... ) de cada sistema a un formato .sbb (stream of binary blocks)

otlaPlayer.exe .

Convierte los ficheros .sbb a una señal de audio (especificación.) que cargará el programa en la maquina real.



Cable de conexión

Cada maquina utiliza un cable diferente para conectar el cassette. Actualmente puede ser complicado encontrar el cable original pero construirse uno es sencillo

ZX

CPC

MSX

Un cable simple con dos jack macho a cada extremo

Conector canon

concertas pines 2 GND ,4 input

Conector canon

concertas pines 2 GND ,5 input

Truco: Se puede aprovechar un cable de teclado de PC antiguo para hacer cable que sirva para CPC y MSX a la vez



Comando de carga

Una vez conectada la computadora al dispositivo reproductor de audio y antes de empezar a reproducir la señal audio hay que teclear el correspondiente comando de carga.

ZX

CPC

MSX











Probar en emuladores

Para probar que la conversion de los ficheros para la carga rápida es correcta (las protecciones anticopia pueden complicar la conversión) es muy recomendable usar un emulador sencillo, gratuito y que permita abrir y cargar ficheros wav. Y a ser posible que incluya un debuger integrado.

ZX

CPC

MSX

Spin

WinApe

openMsx

Nota: desactivar load tapes automatically,Start/stop tapes automatically Acceleration =None





Ficheros de ejemplo para hacer pruebas

Programas que sean de libre disribución o al menos de libre distribución con fines didácticos. Programas que sean referencia de cada máquina y que sirvan hacer test fiables. Formatos admisibles en los que están estos programas

ZX

CPC

MSX

Manic Miner (.TAP), Space Raiders (.TZX),

Manic Miner (.BIN) , WestBank (.SNA)

Tennis (.BIN) Manic Miner (.SBB)

.TAP .TZX .SNA .Z80 .SBB .dsk

.BIN .SNA .SBB .cdt .dsk

.BIN .SBB .cas .rom .dsk





Código para el muestreo de la entrada de cassette.

La rutina de carga funciona utilizando la instrucción no documentada del Z80 IN F,(C). El puerto de entrada del cassette y el bit que representa la señal de audio de entrada difiere en cada sistema.

ZX

CPC

MSX









Color del borde.

Los usarios de Spectrum la carga desde el cassette sea hace mientras en el borde de pantalla aparecen rayas de colores.

ZX

CPC

MSX










Rutinas de carga velozloader

Asi quedan las rutinas de carga

ZX

CPC

MSX

Ubicacion $ff58 velozloader_zx

Ubicacion $ff10 (memoria de video) velozloader_cpc

Ubicacion $f440 (buffer teclado) velozloader_msx



Prueba y ajuste de la rutina de carga. Pantallas de test

Para ajustar las Rutina de carga es muy útil visualizar que es lo que está llegando por la entrada de cassete. O por mejor decir nosotros sabemos que es lo que está entrando con una serie de partrones de prueba y hay que ver que es lo que realmete la rutina de carga interpreta. Las pantalla de prueba están en ficheros HST (Hexadeciimal Screen Text) que se pueden editar facilmento con el notepad.

Por ejemplo el fichero “screen_a.hst” representa tonos de 4 frecuencias que escritos directamente sobre la memoria de video del Spectrum se ven así: