Cartuchos Timex TS2068 / TC2068




Introducción

    Los ordenadores Timex Sinclair TS2068 y TC2068 disponen de un puerto de expansión para introducir cartuchos. Estos cartuchos, muy diferentes a los utilizados en el Spectrum, pueden tener una capacidad máxima de 64K y estar compuesto tanto por módulos ROM como por RAM.

Existen 3 tipos de cartuchos:

Cartuchos HOME: El código se encuentra a partir de la posición 0000H y sustituye a la ROM de 16K interna  del 2068.
Cartuchos EXROM. Sustituyen a la ROM extendida de 8K que tiene el 2068 en su interior
Cartuchos LROS/AROSLROS ( Language ROM Oriented software), AROS (Application ROM Oritened software).

    Estos cartuchos tienen una cabecera que empieza en el byte 0 ( LROS) o byte 8000H (AROS). El cartucho LROS se puede utilizar para poner otro interprete del sistema y permite el control por hardware del 2068 mientras que el AROS suele ser un programa que se apoya en la ROM del sistema para funcionar.

   En este artículo construiremos un lector que solo podrá leer módulos ROM.


   Existen emuladores que soportan el 2068 y que permiten cargar cartuchos. Estos emuladores son FUSE (Linux), Warajero y EightOne (Windows). Para cargar los cartuchos, se debe extraer los datos del cartucho real y añadir una cabecera de 9 bytes que indican al emulador que tipo de cartucho es. Estos 9 bytes están estandarizados y los ficheros modificados se salvan con la extensión .dck


Construcción lector cartucho timex tipo HOME o AROS/LROS

    Para leer el contenido de un cartucho sin tener que abrirlo, diseñamos un conversor cartucho <-->EPROM 27C512 para que el cartucho pudiese ser leído como una EPROM. El motivo de escoger esta EPROM es que los cartuchos del Timex pueden tener una capacidad máxima de 64K (misma capacidad que la 27c512) y resulta vital saber donde se encuentran los datos para luego poder manipular el fichero obtenido.

    Los detalles del cartucho, que se pueden ver el manual, son los siguientes:

    A continuación, las señales del cartucho y una comparativa con la EPROM 27C512


   El esquema de conversor es sencillo aunque la placa se complica al no coincidir las señales. En el programa Eagle queda de la siguiente manera:

Esquema

Placa


   El conversor, una vez construido, tiene el siguiente aspecto:


   Como se puede observar, a la placa se le ha hecho una muesca similar a la que llevan las EPROM con el fin de identificar el pin 1. En cuanto al tope que separa los contactos 3,4 de los 5,6, un alfiler cortado a medida puede servir.


Ejemplo: Cartucho AROS, juego Crazy bugs (TS2068)


   Este cartucho contiene un programa comercial. En este caso es un juego llamado Crazy Bugs.                                                                                                                                                            

   Al leer el cartucho, vemos que los datos están a partir de los primeros 32K y que posee 8 bytes de cabecera que indican el tipo de cartucho que es. Se lee de la siguiente manera.




02: indica que es el programa está sólo en código máquina.
02: indica que es un cartucho de tipo AROS.
28,92: Dirección de comienzo 9228h.
EF: 11101111, el programa solo ocupa 8K ( banco 4).
01: El cartucho es autoarrancable.
C0,17: Reserva 17C0h bytes de RAM para el programa

   Con estos datos, ya podemos separar los 8K donde se encuentra el programa y añadir los 9 bytes para convertirlo en un fichero dck.


00: Dock Bank.
00,00,00,00 Los primeros 4 bancos de memoria están libres.
02:indica que el siguiente bloque de 8K estará ocupado por el cartucho
00,00,00: El resto de bloques estarán ocupados por los bancos originales del Timex


Ejemplo: Cartucho HOME, emulador spectrum 48K ( TC2068)


   Este cartucho convierte al TC2068/TS2068 en un Spectrum 48K. Con ello se lograba obtener mejor compatibilidad con el software existente. Al encender el Timex con este cartucho, arranca automáticamente con el clásico mensaje " 1982 Sinclair Research Ltd ""

   Al leer el cartucho, vemos que los datos están en los primeros 16K y que no hay ningún tipo de códigos al principio del fichero lo que indica que es un cartucho de tipo HOME.




   Con estos datos, ya podemos separar los primeros 16K del fichero obtenido y añadir los 9 bytes para convertirlo en un fichero dck.


FF: indica que es un cartucho HOME
02,02:indica que los 2 primeros bloques de 8K estarán ocupados por el cartucho
00,00,00,00,00,00: El resto de bloques estarán ocupados por los bancos originales del Timex


Bibliografía

Cartuchos

   Para finalizar, ponemos a continuación 5 cartuchos, cada fichero que se adjunta, contiene la foto del cartucho, el fichero de 64K extraido con el lector, el fichero en formato .dck para utilizar el cartucho en un emulador y un fichero de texto con la explicación de la cabecera del fichero .dck