¿Tienes un Atari ST ?, entonces tienes un Mac.

¿Tienes un Atari ST ?, entonces tienes un Mac.
 


Probablemente a estas alturas en donde la emulación con un mac o un pc está más que conseguida, haremos un guiño a la historia comentando grandes cosas que pudimos ver y que aún a día de hoy se pueden seguir disfrutando.


En este caso nuestro protagonista de hoy es el gran Atari ST. No será muy necesario recordaros las características de este pedazo de sistema. El Atari ST fue presentado en la feria de electrónica de consumo de Las Vegas en 1985. Fue la gran sorpresa de la feria ya que hacía solo seis meses que Jack Tramiel (fundador de Commodore ) había comprado Atari Inc. (a la que más tarde, el cambiaría el nombre por Atari Corp. ).

También fue diseñado para ser un "asesino de Macintosh", y fue llamado el "Jackintosh" ya que eran una seria alternativa a los Mac (en el terreno musical y autoedición) por mucho menos dinero. De hecho Atari lanzo esta serie bajo el lema "Power without price".

Ofrecía características nunca antes encontradas en los ordenadores personales: microprocesador de 16 bits, varios puertos, interfaz MIDI de serie, alta resolución gráfica, cantidad de colores, GUI realzado (Interfase gráfico de usuario). Era mucho más barato y expandible que el Macintosh (MIDI, gráficos, colores, etc) y los competidores no eran muy numerosos (el Commodore 128, PC AT, y compatibles, y el viejo CP/M). Esto explica porqué más de 6 millones de Atari ST fueron vendidos en todo el mundo.

Uno de los nichos del ST aunque no es realmente uno, ya que me he puesto va, es la finalidad con la que muchos usuarios veían sus ST, la emulación. El Atari ST es capaz de ejecutar muchos emuladores de distintos sistemas de 8, 16, 24 y 32 bit. Desde el Sinclair ZX81, pasando por el Spectrum, el Commodore 64 y el Oric 1/Atmos, así como la gama de sistemas 8 bit de Atari y el mismísimo Sinclair QL. MSX, CPC, Acorn y otros tantos que gozan de unos excelentes emuladores, pero volviendo al tema principal es el Mac el que se lleva el gato al agua, aun siendo los emuladores de PC por Hard y Soft una importante baza. Su gran competidor en este aspecto no era otro que el Amiga de Commodore que hacía incluso tanto o más, pero como hablaba anteriormente las cuestiones de precio lo hacían muy atractivo sin tener que pagar un Amiga o la barbaridad del Mac. En algúnos casos solo el Amiga salía claramente beneficiado en lo concerniente a la velocidad al disponer de una plataforma de hardware superior.

El Atari ST recibió el sobre nombre mundial del ordenador "Camaleón" y con una buena razón.

En abril de 1988 Avant Garde Systems lanza PC-DITTO para el Atari ST, el primer emulador de ordenador "REAL" que permite correr aplicaciones x86 para DOS . Pero esto solo era el principio.

Varios factores se juntan, por un lado Apple y sus 128, 512 y Plus con sus estratosféricos precios y por otro lado un ordenador muy bueno y asequible hasta con una arquitectura similar que precisamente mediante la emulación permite que el Macintosh de Apple sea totalmente usable desde el Atari ST.



También en abril de 1988 la compañía Gadgets-by-Small saca al mercado Aladdin para el Atari ST, el primer emulador de mundo de Macintosh. Tanto el Aladdin como el PC-Ditto fueron presentados el mismo día en el World of Atari Show que tuvo lugar en el hotel Anaherim en Disneyworld, casi nada.

En 1989 una versión hackeada de A-MAX (Amiga) sale a la escena como el primer emulador que con tan solo tener un volcado de la ROM original de mac podía funcionar perfectamente.

La amplia vision legal de Apple contra Readysoft y su emulador A-Max nunca se llegó a materializar. Como resultado el nuevo termino "A-Max affair" (el asunto A-Max) legitimó el uso masivo de la emulación sin licencia en ordenadores, generando una explosión en lo que a tecnologías de emulación como un hito en la época dorada.

Aprovechando el boom, Aladdin se sitúa como una alternativa realmente economica para ejecutar todas la aplicaciones Macintosh sobre el ST. En un breve periodo de tiempo aparece el Magic, y el Magic Sac. El Atari ST pasó a llamarse JACKintosh debído a los sendos hackeos realizados sobre Aladdin y Magic. Ya no era necesario adquirir las ROM's y la interfaz para emular legalmente Mac. Tal y como sucedió con el A-Max con un simple dump de cualquiera de las roms de Mac el problema estaba resuelto.

Mac-Bongo es el nombre de un emulador Mac de dominio público. Fue publicado en una biblioteca PD alemana y se rumorea que es una copia pirata del emulador comercial Aladin . De todos modos, es demasiado viejo para ejecutar aplicaciones de Mac moderno.

El Aladdin solo se comercializaba en Europa mientras que el Magic se vendía en el resto de territorios. Al poco tiempo sale a la venta una nueva revolución el Spectre 128. El interés despertado hace crecer la demanda y se ven obligados a comercializar una nueva versión llamada Spectre 512. Comienzan las novedades y con un Megafile ST se puede usar el disco duro con una partición de Mac, la cosa se pone muy interesante.

Cartucho Magic Sac
 

Magic Sac fué diseñado por David Small. El Magic fué quizas uno de los productos más famosos en cuanto a emulación de la época. Se trata de un cartucho que inyecta la rom de 64 kb del Mac en el ST. Ha sufrido cambios en cuanto a sus versiones, mejorando con cada entrega.

Sobre todo se fué depurando en gran medida los fallos y cuelgues inesperados de muchas apliaciones, llegó a tener un nivel altísimo de compatibilidad valorado en un 98% hasta la apación del Spectre.

David Small, pionero de la emulación Mac en ST


Y a los pocos meses una nueva versión de Spectre llamada GCR revoluciona totalmente la escena de la emulación. Spectre se sitúa como la mejor opción, la más rápida y compatible funcionando con todas las configuraciones de RAM posibles.

Obviamente tardó muy poco tiempo en ser hackeado de nuevo como sus antecesores aunque este mismo se comenzara a comercializar con una expansión que tal y como hacían sus hermanos permitía acceder a las ROMS originales del Mac que era en aquel momento la única manera legal de comercializarlo.

Magic Sac fué diseñado por David Small. El Magic fué quizas uno de los productos más famosos en cuanto a emulación de la época. Se trata de un cartucho que inyecta la rom de 64 kb del Mac en el ST. Ha sufrido cambios en cuanto a sus versiones, mejorando con cada entrega.Cartucho de Spectre 128

El nivel de compatibilidad es tan perfecto que un Atari ST con 4 Mb de RAM y funcionando con el Spectre GCR es más rápido que el propio Macintosh PLUS real.

Los unicos problemas encontrados inicialmente en la emulacion de Macintosh en ST se debían a que los discos de Mac no podian ser leidos por la diskettera del ST, con lo que se comenzaron a experimentar con FileSystems híbridos legibles por ambos mundos. Era un poco engorroso pero con la practica necesaria dejaba de ser un problema.

La versión de System / finder de Mac que iba bien era la 6.0.7. El system 6.0.8 funcionaba pero ya no tan bien y el system 7 no era compatible.



Los kits se podían encontrar de la siguiente forma:

Spectre 128 by “Gadgets by Small, Inc.” – Cartridge Port Cart Macintosh Emulator with ROMs & Original Software V 1.9

Spectre GCR by “Gadgets by Small, Inc.” – Cartridge Port Cart Macintosh Emulator with ROMs & Original Software V 2.3

External Mac Floppy Drive for use with the above Spectre GCR Includes both cables 1 from Spectre GCR to ST
Other from Spectre GCR to External Mac Floppy.


Una de las grandes ventajas de la emulación clásica de Macintosh en Atari ST es que el ST al tener un sistema de video rápido en modo monocromo y mayor resolución que los Mac " cabezones " quedaba claro que 512*384 frente a 640*400 marcaba y mucho la diferencia

A través de un transverter y una unidad de floppy externa, así como MIDI y Apple Talk se conseguía hacer la transferencia Mac <-> ST, tema que como os he contado es engorroso y largo de explicar, no tendré inconveniente en futuras entradas.


La última versión de Spectre GCR fué la 3.1 y también estaba disponible para Falcon 030. No os creais que hay demasiada información en la red, pero buscando sale lo necesario.

Enlace al manual del Spectre GCR

El software citado podeis encontrarlo en PlanetEmu. Tambien en este otro enlace.

 
 

Su creador es David Small, tenía 27 años cuando empezó, un genio de la época. Pero debemos saber que el ST es una máquina que se diseñó para competir con el Macintosh de Apple, al cual superó con creces en prestaciones, librería y precio.

David Small comenzó utilizando un Mac 128K en 1984 al que luego amplió a 512. En octubre de 1984 se hizo en el Comdex con un kit de desarrollo de ST, que aún carecía de sistema operativo, así que se encontró con una placa con dos roms y cuatro zócalos vacíos. En realidad un Macintosh y un ST se parecen mucho más de lo que se pudiera pensar, nada que ver con el Amiga.

Así que comenzó a estudiar las ROMS originales del Macintosh, que son de 64K y empezó a ver de que forma podía hacer que el hardware del ST fuera capaz de ejecutar esas bios. Comenzó a escribir unas rutinas que le permitieran la reubicación del runtime y del material estándar, para que le permitiera ejecutar esas ROMS, con lo que terminó escribiendo una nueva BIOS para el Macintosh - teclado, ratón, disco I / O, finalmente sonido, puerto serie y muchas otras cosas.

Pasado un prudencial tiempo, como por octubre de 1985 ya tenía un depurador desarrollado y en diciembre comenzó a ensamblar todas las partes que había ido desarrollando. Un buen día de enero de 1986, ¡ un rectángulo redondeado apareció en la pantalla !, empezaba a funcionar.

David Small había conseguido que el código de visualización empezara a funcionar y a pintar. Poco a poco fue implementando funciones hasta conseguir que las cosas empezasen a funcionar y así sucesivamente ... El Atari ST con tan solo las ROMS del Macintosh ya era capaz de funcionar como tal. En realidad tan solo hace que un pequeño programa en RAM permita que las ROMS del Macintosh ( Toolbox ) llamen directamente al hardware del ST. Usa el mismo microprocesador y en general, la idea es fabulosa. No emula nada, tan solo interpreta las llamadas a HW de las roms del Mac. Así que se centró en enseñar al 68000 a ignorar el error de bus que sucede cuando los programas de Macintosh cometen errores con el puntero de memoria y terminan pisando la posición 0. En el Mac, 0 es la memoria RAM, no había problema ( bueno, por el momento no era un problema ). En el ST, 0 es ROM, y los errores del bus. Así que para que no le volviera tarumba, decidió ir parcheando los programas sobre la marcha pero de igual forma era algo muy tedioso. Hasta que un día, tirando de depurador dio con lo que le estaba generando la mayor parte de problemas.

En palabras del propio Small:

I was looking at the stack one day after a bus error and found that the stack had the instruction word (IW); e.g., the 68000 opcode that had crashed it. Soooo, I thought, if you took the present program counter, backed it up, oh, 6 or 8 bytes (to fix prefetch), and scanned for that IW opcode, then, wrote a disassembler for that opcode that figured out how long the opcode ran in bytes, and set the PC to the beginning of the _next_ opcode (thus "skipping over" the crashing opcode), then treat the whole mess as an interrupt that we were returning from (setup the stack etc) ... it worked just fine.
And that paragraph is the secret to what made it all really fly. It just quit crashing. Eventually I caught *all sorts* of bus errors. People writing to the serial port. People trying to read the ROMs directly, or JMP to them.
Of course, the little part of the sentence that reads "write a disassembler" meant a whole world of pain, but it was finally worth it.


Hay una anécdota de David Small en la que en una feria InfoWorld le dijo al mismo Steve Jobs lo que había hecho, y Jobs se echó a reír aunque en realidad se molestó, por lo que termino publicando un artículo sobre esto mismo. Para entonces el desarrollo de David Small ya estaba ejecutando MacPaint... y un montón de cosas ya estaban corriendo.

En la West Coast Computer Faire de 1986 David Small presentó como prueba de concepto su software, y bueno, funcionó. Ese mismo día los abogados de Apple fueron a hablar con David Small, amenazándolo con una demanda y preguntándole donde estaban las copias de las ROMS del Apple Macintosh.

- "¿Qué copias? Estas son las originales, chicos" - les respondió. Así que les enseño su prototipo en donde estaban las ROMS originales. Los abogados quedaron bastante aturdidos ya que no habían previsto esta idea. De hecho para Apple el Atari ST no existía, ya lo comenté en muchos otros posts, directamente era ignorado y Jack Tramiel sabía que a río revuelto....

Así que se montó un buen espectáculo y un circo con los derechos de autor, entre Apple y los demás, Atari, Digital Research y en general los de Apple se mosquearon bastante. Pasó la primavera y el verano de 1986 y teniendo ya todo en estado de producción, en septiembre se puso a la venta.

Las versiones que corren ahora por internet funcionan si el adaptador de ROMS por Hardware que va conectado al puerto de cartucho del ST, ya que las versiones que hay por ahí ya están hackeadas y tienen la ROM en fichero por lo cual no necesita las originales.