Revistas en Papel
Anterior
Menú
Logotipo

Número 4 · Julio-Septiembre 1995

SPECTRUM, El pequeño de 8 Bits
 
EMULADORES DE 8 BITS
 

NOTA: Pulsando sobre las fotos con borde azul ampliarás la imagen.

Emulando a un Amigo...

66 Kb Hubo un tiempo en el que la decisión de adquirir un ordenador personal suponía pensar en un Spectrum. Esta máquina arrasó en la década de los 80, cuando empezó la revolución de lo que se llamó "home computers". Todos los que vivimos aquella época dorada, cuando las máquinas de 8 bits reinaban en el mundo de la informática personal, guardamos un entrañable recuerdo de este ordenador. El Sinclair ZX Spectrum marcó un antes y un después y, sin duda alguna, merece un lugar de honor en nuestra sección de emuladores.
Por Daniel Simó

Fue concebido por el excéntrico personaje Sir Clive Sinclair y supuso su mejor y más aclamada creación. Clive Sinclair marcó, con su inconfundible forma de entender la realidad, los primeros diseños del Spectrum, dotándolo de características comunes a otros de sus proyectos. Una particular visión del mundo que más tarde supondría su propia ruina, pero eso es otra historia...

   Ante todo, decir que, hasta el momento de la redacción de este artículo, el único modelo de Spectrum que ha sido emulado en un ordenador Amiga es el ZX Spectrum 48K. Este fue el más popular de todos los Spectrum, y el que económicamente suposo más beneficios a su fabricante. Para informaros de las características básicas de éste y el resto de componentes de la familia Spectrum, podéis consultar el cuadro titulado "modelos de Spectrum".


  Emuladores  

   Todos recordamos los primeros emuladores de Spectrum realizados en Amiga: lentos, sin sonido... El viejo K.G.B. Emulator, por ejemplo, hoy en día se encuentra totalmente desfasado y ni tan siquiera es posible utilizarlo con el disco duro. No digamos con AGA, Workbench 2.0, etc. Por lo tanto, nos ocuparemos de los emuladores disponibles que presenten un mínimo de calidad.

   Actualmente, en un Amiga, podemos correr tres emuladores de ZX Spectrum 48K. Sus nombres y autores correspondientes son: Spectrum Emulator (Peter McGavin), ZX-Spectrum Emulator (Jeroen J. Kwast), ZXAM Spectrum Emulator (Antonio J. Pomar Rosselló). Estos emuladores presentan muchas características no comunes entre sí y se encuentran en un estado de desarrollo diferente, por lo que será necesario comentarlos por separado. En general, se pueden dar algunos consejos que ayudarán a hacer nuestra emulación más fluida:

  • Disponer de un mínimo de memoria fast. Esto que es recomendable en un A1000, 500, 2000, se hace imprescindible si queremos aprovechar de verdad la velocidad que nos aportan los procesadores de 32 bits incorporados en Amiga superiores.

  • Para alcanzar la velocidad de un Spectrum real será necesario disponer, en la mayor parte de ocasiones, de un procesador funcionando a un mínimo de 25 a 33 MHz, aunque la velocidad dependerá mucho del programa emulado en cuestión. Como ejemplo diremos que el clásico de plataformas Manic Miner corre excelentemente a 14MHz y vuela en procesadores superiores. Sin embargo, jugando al fútbol con Match Day, podemos tardar días para marcar un gol a 14Mhz, y necesitaremos todo un 68030 a 50MHz para poder jugar bien.

  • Es recomendable utilizar el método de carga mediante cinta sólo para pasar nuestra colección de programas, a no ser que disfrutemos esperando mientras se cargan los programas recordando épocas pasadas. Por lo tanto, es preferible grabar los programas, una vez cargados, en "snapshots" y, siempre que sea posible, es mucho mejor intercambiar los programas de esta forma con otra persona.

Antonio Pomar (derecha) junto a Alberto Orante (izquierda) - 60 Kb

Foto realizada a Antonio Pomar (situado a la derecha) y Alberto Orante (situado a la izquierda), en la Amiga Posadas Party 95, celebrada en Córdoba.

Entrevista a Antonio
Javier Pomar Rosselló

AI: Preséntate tú mismo a todos los lectores amantes de Spectrum.

¡Hola!. Me llamo Antonio Javier Pomar Rosselló, tengo 24 años y vivo en Palma de Mallorca.

AI: ¿Cómo fueron tus inicios en la informática?

Empecé a aprender a programar tecleando listados BASIC de revistas en unos ordenadores. MSX espuestos en unos grandes almacenes de Palma, porque el bolsillo no llegaba para comprarme mi propio ordenador. Al cabo de unos años, pude comprarme un Spectrum 48k usado (en 1988) y me metí a saco en el ensamblador Z80. Desde entonces, he pasado por el Spectrum 48k, Spectrum +3, Amiga 500 1.3, Amiga 500Plus y, ahora, el Amiga 1200.

AI: ¿Qué sueles hacer con el Amiga?

Programar como un poseso y chafardear por las redes AmigaNet y FidoNet (hace poco me he enganchado también a Internet, pero aún no lo domino :-).

AI: ¿Qué otros trabajos has hecho, con Amiga claro?

Un Pacman muy sencillote (el SimplePACMAN) y un prorgama para intercambiar samples con sintetizadores MIDI (el MIDI Packet Master, prorgamado para un amigo, Javi Cocaña, que tiene un Yamaha SY85 y quería usar samples de Amiga con él). El ZXAM es mi tercer "proyecto".

AI: ¿Qué proyectos futuros tienes?

Mejorar en lo posible el ZXAM e implementar la emulación 128k. También me interesa hacer alguna incursión en el tema de las demos, y emular el entrañable y jurásico Sinclair ZX81.

AI: ¿Qué te ha motivado a hacer este emulador?

Cuando me decidí a empezarlo (en 1993) el emulador que tenía (el Spectrum Emulator 1.4, de Peter McGavin) era un poco limitado y, como necesitaba programar algo para seguir aprendiendo a programar en Amiga, me decidí a embarcarme en este proyecto. Realmente, nunca me planteé seriamente hasta dónde quería llegar ni lo complicado que podía llegar a ser, pero no me arrepiento en absoluto de haberlo empezado.

AI: ¿Cuánto has tardado en hacerlo?

Llevo 2 años exactos, aunque el pobre emulador ha criado telarañas durante algunas temporadas.

AI: ¿Crees que te embarcarás en hacer algún otro emulador?

No, de momento.

AI: ¿Piensas dedicarte profesionalmente a la programación?

¡Ojalá! Pero lo veo un poco chungo, sobre todo por mi falta de titulación universitaria. Eso de ser autodidacta no queda muy "profesional" sobre un currículum, aparte de que ahora me dedico exclusivamente al ensamblador y no es lo que suelen usar los 'profesionales' (por suerte, mis tiempos de C quedaron atrás).

AI: ¿Han colaborado otras personas en la elaboración del emulador, o lo has programado enteramente tú solo?

El emulador lo he programado yo solo, pero indirectamente me ha ayudado mucha gente avisándome de bugs e incompatibilidades, y enviándome información, juegos de Spectrum y cartas de ánimo.

AI: ¿Qué equipo has utilizado para programarlo?

Lo empecé en un 500Plus con 2 megas y 3 disqueteras. Ahora tengo un 1200 con 6 megas, disco duro y aceleradora 030/28MHz.

AI: ¿Qué has aprendido haciendo el emulador?

Varias cosas:

  1. Los procesadores Motorola son una maravilla.
  2. El Z80 del Spectrum corría como un cohete.
  3. La multitarea del Amiga es algo excepcional (lo de la ventanita fue muchísimo mejor de lo que me imaginaba).
  4. Los programadores de Spectrum eran unos chapuceros.

AI: ¿Qué lenguaje/s has utilizado?

Sólo ensamblador.

AI: ¿Qué herramientas de programación utilizas?

El Gadtoolsbox para el diseño del interfaz de usuario (aunque tiene tal cantidad de bugs en el código generado, que buena parte ha sido modificado a mano) y el Devpac 3.0 para desarrollar/ensamblar el código.

AI: ¿Qué técnica utilizas para emular el Z-80?

Para cada instrucción Z80 hay una rutina 68020 que la emula y los registros del Z80 están en registros del 68020. Parece fácil ¿eh? ;-)

AI: ¿Tuviste algún problema al emular al Spectrum?

Sobre todo los referentes a la velocidad y a las prácticas habituales en Spectrum que eran el uso de instrucciones no documentadas y algunos trucos poco conocidos. Los programadores de Spectrum podían llegar a ser bastante chapuceros, y esto suele causar incompatibilidades y problemas en la emulación. Además, el Z80 y el 68020 son completamente diferentes, y por eso, emular el Z80 a una velocidad razonable ha sido realmente complicado, ya que algunas instrucciones Z80 necesitan rutinas realmente largas para ser emuladas.

AI: ¿Te ha sido muy difícil emular el chip gráfico y de sonido?

El sonido 48k es muy simple de emular, pero el sonido 128k ha sido bastante más complejo. La parte más difícil del chip de sonido fue el canal de ruido, ya que comprarte dinámicamente el canal de audio (del Amiga) con el sonido 48k, y además no tenía ningún sample de ruido blanco para utilizar. Al final usé mi lista de juegos de Spectrum comprimida con LZX como sample de ruido blanco y quedó bastante bien.

En cuanto al sistema gráfico, el Spectrum no incorporaba refinamientos gráficos, pero sí usaba una estructura de pantalla bastante compleja, aparte de trabajar siempre en modo gráfico. No ha sido fácil conseguir una conversión rápida y eficiente de la psicodélica estructura de pantalla del Spectrum a los bitplanos de Amiga.

AI: ¿Se puede aprovechar el software original en cinta del Spectrum?

Sí, a menos que esté protegido por sistemas 'turbo' o similares. El tema de los 'turbos' está aún pendiente de solucionar.

AI: ¿Es lo mismo programar un emulador que otro programa distinto?

Rotundamente, no. Programar un emulador te exige un conocimiento muy profundo de dos máquinas, en este caso el Spectrum y el Amiga, y una cantidad de información considerable. Aparte de esto, la complejidad de emular un hardware tan diferente del Amiga complica tremendamente el programa (la versión AGA genera 160.000 líneas de código al ensamblarse).

   Con la denominación "snapshot" se conoce a aquellos ficheros que contienen toda la RAM del Spectrum (las 48K en este caso) justo después de haber cargado un programa determinado. Por lo tanto, estos ficheros suelen ocupar un espacio poco superior a las 48KB, cuando no se encuentra comprimido. Pese a que existieron periféricos para el Spectrum que ya usaban semejante método de almacenamiento de programas, ha sido actualmente, con la creciente aparición de emuladores, cuando más se ha extendido su utilización. Existen diversos formatos, más o menos estándares, de snapshots. Para más información, consultad el cuadro de compatibilidad adjunto.

   Los programas de demostración que acompañan al emulador, y algunos que finalmente pudimos convertir, nos dejaron una impresión aceptable del emulador, aunque en ningún caso compensa a las rarezas del mismo en otros aspectos. En definitiva, podemos decir que será mejor esperar nuevas versiones de este ZX-Spectrum Emulator (la más reciente es la 4.7) antes de liarse a convertir todos nuestros snapshots.

Alien 8 - 20 Kb
La pantalla de Spectrum Emulator presenta este aspecto. Las obras maestras de Ultimate cobran vida de nuevo gracias a los emuladores de 8 bits:"Ultimate play the game!!!".


  Spectrum Emulator  

   Este es el emulador más veterano de los tres. Su última versión oficial es la 1.7. Este puede haber sorprendido a las personas que hayan visto la versión 2.0 funcionando en un Amiga, o a aquellos que hayan podido ver anuncios de casas de software P.D. inglesas afirmando disponer de esa versión. Hay que aclarar que la versión 2.0 no existe, por ahora, y que, tal como afirma su autor, estas versiones son un "fake" de la 1.7. Los ejecutables de ambos programas ocupan exactamente lo mismo y el malhechor en cuestión únicamente se ha limitado a cambiar el número de la barra de título.

   Al parecer, algunos distribuidores de dominio público ingleses, aprovechan esta situación para hacer su agosto, e incluso se podría sospechar de la autoría de los mismos en la realización de éste y otros "fakes" en software de dominio público. A pesar de todo, Peter McGavin se encuentra trabajando todavía en el emulador, reformando su interfaz de usuario, por lo que no sería de extrañar que finalmente pudiéramos disfrutar de una versión 2.0 verdadera.

   Lo más importante que puede decirse del Spectrum Emulator es que funciona en todos los Amigas y con cualquier versión de sistema operativo (incluso con el arcaico 1.2). en este sentido, es el más recomendable para los usuarios que tengan un A500 ó A2000 sin acelerar. El programa se presenta en cuatro ficheros, correspondientes a diferentes tipos de procesador e incluye una versión rápida para el M68000, aunque igualmente la emulación resultará muy lenta en este procesador. Además, es necesario disponer de un fichero que contenga la ROM de 16KB del Spectrum. Al parecer, Amstrad, propietario actual de Sinclair, dio permiso especial para utilizar ésta en los emuladores de Spectrum. A partir de la versión 1.7, el Spectrum Emulator ya viene con el fichero de la ROM incorporado, por lo que no será necesario perder tiempo buscándola, como sucedía antes.

   Spectrum Emulator corre en una pantalla del sistema y es multitarea, o sea, que podemos utilizar a la vez que otros programas. su interfaz gráfica se concentra en la barra de menús disponible en la misma pantalla del Spectrum, donde figuran algunas opciones que podemos configurar a nuestro gusto. Las más importantes son las que hacen referencia a la fuente de carga/grabación de los programas.

   Seleccionaremos un tipo de digitalizador de sonido o sampler si queremos leer programas desde cassette. El digitalizador es imprescindible para utilizar nuestra antigua colección de cintas en este emulador. Se puede elegir entre tres tipos de digitalizador (ProSound, Rombo, Generic), aunque no todos están testeados por el autor. También es posible utilizar el cassette para grabar nuestros propios programas, seleccionando la opción "Audio" del submenú de grabación. Para realizar esta operación, será necesario conectar una de las salidas de audio del Amiga a la toma correspondiente del cassette (MIC/IN).

   Por otro lado, es posible redireccionar estas operaciones a un dispositivo propio del Amiga. La rutinade lectura/escritura del Spectrum 48k estaba pensada, en principio, para ser aplicada únicamente a un periférico como el cassette. De esta forma, la información se transfería normalmente en dos partes: la cabecera seguida de un bloque de datos. Para adaptar este método, Spectrum Emulator también graba la información es dos ficheros. El primero con la extensión ".header" y el segundo con la extensión ".bytes". De esta forma, según comenta el autor, se proporciona compatibilidad con aquellos programas que carecían de cabecera, leyendo solamente el fichero ".bytes". Si optamos por este método, cada vez que el Spectrum necesite cargar o salvar algún tipo de dato, aparecerá un requester para que podamos seleccionar los ficheros correspondientes.

   Nada de lo anteriormente comentado debe confundirse con los snapshots. Precisamente, en este tema es donde el emulador se encuentra menos desarrollado. Spectrum Emulator v1.7 no es capaz de utilizar más de un tipo de snapshot. El llamado ".SNA" en PC, o ".snapshot"/".mirage" en Amiga. Además, este fichero no puede encontrarse comprimido, limitando las posibilidades de intercambio directo de programas. Afortunadamente, podemos optar por utilizar algún programa conversor como SpecConvert para pasar a este formato de fichero.

   Otro aspecto negativo del emulador es que no dispone de un regulador efectivo para CPUs rápidas. De esta manera, probando el emulador en un 68030 a 50MHz, algunos programas resultaban inutilizables debido a su excesiva velocidad. En este caso Manic Miner ya no volaba... hacia saltos al hiperespacio ;-)


  ZX-Spectrum Emulator  

   Este emulador se encuentra todavía en fase un poco "atrasada" respecto a sus inmediatos competidores. La única ventaja que presenta frente a ellos es la supuesta emulación del conocido Interface I de Sinclair. Este interfaz dotaba al Spectrum con diversas salidas para conectar hardware adicional, además de una serie de comandos que permitían una mayor facilidad de manejo en las operaciones de acceso a ficheros, como las realizadas, por ejemplo, en los microdrives.

Compatibilidad de formatos snapshot

Emuladores Lee Salva
K.G.B. Spectrum Emulator v1.2 .ZX .ZX
Spectrum Emulator v1.7 .SNA .SNA
ZX-Spectrum Emulator v4.7 Propio Propio
ZXAM Spectrum Emulator v2.0 .SNA-.SP-.Z80-.ZX .SNA-.SP

Notas:
Las extensiones .snapshot, .mirage o .SNA hacen referencia al mismo formato de fichero. ".SNA" suele utilizarse en los emuladores para PC, mientras que, ".snapshot", se emplea en Spectrum Emulator v1.7 y ".mirage" en el ZXAM.
Los ficheros ".Z80" que necesiten un Spectrum 128k o emulación del Interface I, no pueden ser cargados en ZXAM.

   El emulador se distribuye en cuatro ficheros ejecutables. Dos realizan el cálculo de refresco de pantalla mediante el blitter, mientras que los otros, realizan esta misma operación a través del procesador (recomendado para Amiga con procesador potente). Por otra parte, también se diferencian los que realizan la emulación del Interface I del Spectrum y los que no la realizan. Para empezar, diremos que en el Amiga AGA es necesario poner el boot-menú en forma ECS o bien utilizar un programa del tipo NoAGA que no parchee la rutina de abertura de pantallas puesto que, al parecer, su autor no ha testeado el emulador en estas máquinas.

   El interfaz de usuario es bastante rudimentario. En cierta forma, recuerda al de los emuladores de Spectrum para PC. Es decir, no se utiliza el ratón para nada, sino que realizamos las acciones mediante teclas.

   Los programas pueden ser cargados a través de un digitalizador, sin embargo, no se especifican las características que debe tener éste para poder ser utilizado. Posteriormente, y conmutando la opción correspondiente del menú de preferencias, podemos grabar los programas en el directorio "ZX-Spectrum:Progs/", que el emulador interpreta como si de una unidad de disco del Spectrum se tratara. Leemos y salvamos los programas mediante las órdenes propias del Spectrum y podremos ver el catálogo de programas mediante el comando CAT.

   En lo que respecta a los snapshots, el emulador utiliza un formato propio. Se incluyen dos conversores que transforman los ficheros ".SP" y ".snapshot" al formato especial utilizado por el emulador. Pero estos conversores no se encuentran demasiado evolucionados ya que, la mayoría de snapshots que convertimos, no acabaron de funcionar del todo bien. El emulador almacena estos ficheros en el mismo directorio que los programas grabados de forma normal, y los cargamos también mediante la orden "LOAD" del Spectrum. Sin embargo, para grabar en forma de snapshot, habrá que pulsar la tecla F1. Esta extraña forma de mezclar conceptos distintos desorienta un poco al principio.


  ZXAM Spectrum Emulator  

   Sin lugar a dudas, ZXAM v2.0 es el mejor y más completo emulador de Spectrum que ha existido en Amiga hasta al fecha. Además, si unimos a esto la proximidad geográfica de su autor, Toni Pomar, podemos sentirnos doblemente felicitados todos los fans del Spectrum y actuales usuarios de Amiga.

MODELOS DE SPECTRUM

ZX Spectrum 16K/48K - 8 KbZX Spectrum 16K/48K

Vieron la luz en el año 1982 y la única diferencia entre estos dos modelos era la cantidad de memoria RAM que incorporaban. Sus características básicas eran las siguientes:

  • Procesador Z80 a 3,5MHz, una potencia considerable para ese tiempo.
  • 15 colores (8 colores con dos niveles de brillo).
  • Resolución permanente de 256x192 pixels. No tenía modos de texto.
  • Resolución de color en una matriz de 32x24 celdas. Cada una de estas celdas, llamadas atributos, abarcaba una región de 8x8 pixels en la pantalla, y tenía asignada un color de fondo y un color de pixel, con el mismo nivel de brillo ambos, y un modo de parpadeo.
  • Altavoz integrado para sonido de 1 bit generado por procesador.
  • Un intérprete BASIC (en ROM de 16KB) bastante completo.
  • Conexión de un cassette, para cargar/grabar ficheros en cinta de audio.
  • Teclado de teclas separadas (no como su antecesor el ZX81) a las que se llamaba cariñosamente "teclas de chicle".

En sus tiempos, costaba unas 65.000 pesetas el modelo 48K, pero era el más barato del mercado y se vendieron varios millones de estos aparatos, aparte de clones fabricados en Brasil, EE.UU., Polonia y varios países más.

ZX Spectrum + - 10 Kb
ZX Spectrum 128K - 10 Kb

ZX Spectrum +

Aparecido en 1984. Era básicamente un Spectrum 48K, de hecho la placa era exactamente la misma. Sin embargo, estaba colocada en un teclado bastante mejor (de plástico duro), e incorporaba un botón de RESET.

ZX Spectrum 128K

El último modelo creado por la casa Sinclair original. Externamente era idéntico al Spectrum+, con la salvedad de un disipador de aluminio negro que asomaba por el lado derecho de la carcasa. Incorporaba:

  • 128 KB de RAM, 32KB de ROM.
  • Dos páginas de pantalla conmutables, o sea, posibilidad de hacer doble buffer.
  • Un chip de sonido de 3 canales. Concretamente, el AY-3-8912, prácticamente idéntico al incorporado por los ordenadores MSX y Amstrad CPC. Su sonido se oía por el altavoz del televisor a través de la salida de radiofrecuencia.
  • Editor de BASIC 'letra a letra' bastante bueno.
  • Puerto serie RS-232C.
  • Teclado numérico separado. Se conectaba al ordenador mediante un cable en espiral, parecido al que llevan los teléfonos.

ZX Spectrum +2

Con la caída de Sinclair y la compra de ésta por parte de Alan Michael Shugart trading (Amstrad), aparecieron nuevos modelos de Spectrum. El primero fue el Spectrum +2, muy parecido externamente a su homólogo CPC 464 de Amstrad. Las características eran las mismas que las del Spectrum 128K, pero con algunos mejoras:

  • Teclado de una calidad muy superior a los anteriores.
  • Grabador/reproductor de cassette incorporado en la carcasa del ordenador.
  • Salida RGB para monitores de 15Khz.
  • Modulador de televisión de buena calidad compradado con los de modelos posteriores.

ZX Spectrum +3 - 9 KbZX Spectrum +3

Este modelo era una derivación más sofisticada del +2. Como novedades destacaban:

  • 64KB de ROM que incluían el BASIC, el editor y el DOS.
  • Nuevas posibilidades de paginación de memoria para mantener compatibilidad con los dos anteriores modelos. En su tiempo, casi no se usaron.
  • Chip controlador de disquetera PD765A, igual al del Amstrad 664/6128.
  • Integración de una disquetera de 3" y 180KB por cada cara.
  • Puerto paralelo Centronics.
  • Puerto adicional para conectar otra disquetera.
  • Posibilidad de utilizar otros sistemas operativos como, por ejemplo, el CP/M 80 adaptado por la cada Locomotive, y utilizar los programas escritos para ese sistema.

ZX Spectrum +2A

Versión 'recortada' del +3. Simplemente se le había quitado el chip controlador de disqueteras y se había substituido la unidad de disco de 3" por un grabador/reproductor de cassette.

Hemos dejado de comentar la elevada cantidad de peri´fericos que aparecieron para los Spectrun, que incluía desde interfaces de joystick, series, paralelos, pasando por teclados mejorados, disqueteras de 3,5 pulgadas, unidades de cinta "rápida" (como los microdrives, wafadrives, etc...) e incluso módulos que incorporaban el chip de sonido AY-3-8912 para poder usar juegos con música 128K sobre Spectrum 48K.

SAM Coupé - 7 KbSAM Coupé

Pese a que la producción oficial de Spectrums finalizó con los últimos modelos de Amstrad, algunas empresas intentaron dar nueva fuerza a esta máquina lanzando ordenadores compatibles con él. El denominado SAM Coupé fue uno de los últimos ordenadores de 8 bits que aparecieron en pleno apogeo de la era 16 bits. Aquí van sus características:

  • Microprocesador Z80B a 6MHz.
  • 256KB RAM ampliables a 512. ROM de 32KB conteniendo Basic SAM y la BIOS.
  • Chip de vídeo Motorola MC 1377P. Cuatro modos gráficos. Modo 1: 32x24 caracteres por pantalla, cada carácter con capacidad para 2 colores; 16 colores a elegir entre 128; compatible con los atributos del Spectrum. Modo 2: igual que modo 1, pero con 32x192 celdas. Modo 3: display de texto de 80 columnas; pantalla de 512x192 pixels; cada pixel podía llevar un color; 4 colores por línea a elegir de 128.
  • Sintetizador Philips SAA 1099; 6 canales, 8 octavas, estéreo con control de amplitud y envolvente mas elección de forma de onda. Conector de audio.
  • Salida de radiofrecuencia, vídeo compuesto, RGB digital y lineal.
  • Joystick estándar Atari, ratón estándar Coupé.
  • Entrada/salida MIDI.
  • 1 ó 2 unidades de disco extraíbles de 3 1/2", 780 KB formateados.
  • Conexión para cassette.
  • Teclado de 72 teclas, 10 teclas de función.

Gracias a Toni Pomar por haber aportado el 90% de la información.

79 Kb
La documentación que acompaña a ZXAM es completísima. Se incluyen gráficos para fabricar el interfaz de cassette. Además, cada script ARexx de ejemplo, se comenta detalladamente.

   Si algunos le reprochaban en las anteriores versiones que su emulador no fuese multitarea, Toni, en esta última versión, ha logrado mucho más que eso, y ha conseguido 'emular el Spectrum en una ventana del Workbench! Cuando recibí el disco carta con la primera copia de la versión 2.0 "recién salida del horno" debo confesar que me impresionó la velocidad con que esta emulación se llevaba a cabo, aun probándolo en un A1200 sin acelerar. Algunos de los que seguíamos los progresos del emulador, nos mostrábamos escépticos ante la posibilidad de ver al ZXAM corriendo en una ventana del Workbench (al estilo PC Task) a una velocidad aceptable. Pero, contrariamente a nuestras previsiones, ZXAM 2.0 corre en el Workbench perfectamente con una velocidad escasamente inferior a cuando lo hace en una pantalla individual.

   El la versión 2.0 también se ha incorporado la emulación del chip de sonido AY-3-8912, que utilizaba el Spectrum 128K. Conviene no entrar en confusiones, el emulador sigue siendo de Spectrum 48K, sin embargo puede utilizar los programas aparecidos para el Spectrum 128K que sólo usaban de éste su chip de sonido. Al parecer, existía un número considerable de estos programas ya que aparecieron interfaces que dotaban con tal chip al Spectrum 48K. En la copia que recibí se incluía el juego Plotting utilizando el AY. De nuevo me quedé sorprendido ante la calidad de tal emulación.

   Aparte de estas impresionantes mejoras, existen otras, como por ejemplo, la posibilidad de emular más tipos de joystick aparte del archiconocido Kempston. El emulador ajusta automáticamente la velocidad en CPUs rápidas si nosotros lo deseamos. Probando el Knight Lore en el 030 a 50MHz, rápidamente apreciamos la utilidad de este ajustador. Sin él, Sabreman realizaba las transformaciones de lobo a hombre más rápido que Superman cambia de traje.

   Si a todo esto le sumamos las ya de por sí excelentes cualidades que incorporaba el emulador en sus anteriores versiones (ARexx, múltiples formatos de fichero, económico interfaz de cassette propio), nos encontramos, como decía al principio frente al mejor emulador. Pero como no quiero olvidarme ningún dato importante, dejemos que sea el mismo Toni Pomar quien nos detalle sus características en la Tabla de Características del ZXAM.

97 Kb
Después de semejante prueba, nadie dudará de la multitarea de ZXAM. Las imágenes hablan por sí solas...

   Una de las principales diferencias que siempre ha caracterizado el ZXAM frente a otros emuladores, ha sido su particular interfaz de cassette. ZXAM utiliza un interfaz diseñado específicamente para él. Se conecta directamente al puerto del joystick del Amiga y puede fabricarlo cualquier persona con un mínimo de esfuerzo. Bastará con adquirir los componentes que se nos indican en la documentación, disponer de un soldador y un poco de habilidad. Podrán encontrarse detractores y defensores de tal interfaz frente al tradicionalmente usado digitalizador de sonido. Pero, lo que no admite discusión, es que el interfaz de ZXAM es muchísimo más barato que un sampler y, sobre todo, para aquellas personas que únicamente deseen utilizarlo para cargar sus antiguas cintas. Ni que decir tiene que podemos configurar también ZXAM para grabar los datos a disco en forma de ".header" y ".bytes", ficheros compatibles con el Spectrum Emulator. Incluso desconponer formatos como el ".TAP" a ficheros de este tipo.

   Por otro lado, ZXAM también se ha distinguido siempre por su capacidad de leer múltiples formatos de fichero snapshot, lo que facilita enormemente la engorrosa tarea de tener que convertirlos. Las personas que puedan disponer de colecciones de snapshots de PC en formato ".SP", o el más nuevo ".Z80", se darán cuenta de lo cómodo que es cargar estos programas directamente. Convertir unos cuantos ficheros no supone ninguna molestia, pero si tenemos que realizar conversiones masivas de programas (varios cientos) rápidamente apreciaremos la versatilidad del ZXAM.

25 Kb
Ahora, cientos de programas pueden ser almacenados sin problemas y cargados en décimas de segundo. Quién lo hubiera dicho en la era "Computone"...

   La posibilidad de utilizar ARexx con el emulador abre un sinfín de nuevas opciones. Junto al emulador se incluyen unos scripts de ejemplo que muestran algunas de las posibilidades que ofrece el puerto ARexx. Las imágenes de Spectrum que podéis ver, están capturadas utilizando el script que graba la pantalla del Spectrum en forma de fichero ILBM.

   Recientemente ha aparecido una guía que contiene más de 300 pokes de juegos para Spectrum. Esta guía utiliza el ARexx para introducir los pokes automáticamente en el ZXAM. Su nombre es ZXAM Poke Guide, está realizada por Richard Körber y podéis encontrarla, al igual que el resto de programas, en cualquier lugar donde se distribuya software de dominio público o shareware.

26 Kb
Utilizando el puerto ARexx mediante la guía de pokes especial para ZXAM. Delante, el minimonitor de código máquina incluido en el emulador.

   También hemos probado el puerto ARexx automatizando procesos de conversión de ficheros. Una posibilidad muy útil cuando necesitamos convertir un gran número de ficheros a un determinado formato. De esta forma, nos ahorramos la molestía de tener que convertir los ficheros "uno a uno", con la consiguiente pérdida de tiempo.

   Aunque el puerto ARexx del ZXAM es mucho más que eso. En total, incorpora 93 funciones, con las que se pueden realizar "casi todo" lo que nos propongamos, siempre que dispongamos de cierta habilidad en el manejo de ARexx.

   Como era de esperar, la excelente emulación, el buen rendimiento, la elevada cantidad de opciones... cobran una tarifa, aunque baja en es te caso: el emulador necesita como mínimo un 68020 ó superior para funcionar. Por supuesto que además es necesario disponer del Workbench 2.04 para poder utilizar el ZXAM.

   Evidentemente, en los A1200 y A4000 no hay ningún tipo de problema, e incluso se proporciona una versión especial que aprovecha las mejoras de los chips AGA. Por otra parte, en los Amiga antiguos podremos utilizar la versión genérica del emulador siempre que dispongamos de una aceleradora y del kickstart 2.0, como mínimo. Sin embargo, constituye una mejora importante el hecho de que se hayan reducido considerablemente los requisitos necesarios para utilizar el emulador. Recordemos que en anteriores versiones era necesario disponer del Workbench 3.0 y un Amiga ECS o AGA como mínimo.

Configurar el tipo de joystick, la pantalla, el sonido... no hay problemas con ZXAM v2.0.

45 Kb
47 Kb

Los mejores juegos de todos los tiempos renacen gracias a los emuladores de Spectrum. En las pantallas podemos ver algunos de las obras maestras que han marcado el mundo de los videojuegos desde su aparición.

   Finalmente me gustaría comentar los objetivos futuros que se ha marcado Toni Pomar en la emulación. Actualmente Toni está enfrascado de lleno en la tarea de emular al Spectrum 128, en una nueva versión que pretende tener lista para otoño de este mismo año.

CARACTERÍSTICAS del
ZXAM Spectrum
Emulator

- Emulación de un Spectrum 48K.
- Carga/grabación directamente a cinta, o desviada hacia disco o hacia scripts ARexx especializados para gestionar formatos como el .TAP.
- Puerto ARexx con 93 funciones.
- Multitarea completa.
- Ajuste automático de velocidad.
- Consumo optimizado de CPU. La potencia no necesaria se deja disponible para otras tareas (en un 1200/030/28MHz se pueden ejecutar dos Manic Miner en multitarea a velocidad real, y aún sobra un 10% de CPU).
- Emulación del chip de sonido del Spectrum 128K (AT-3-8912), incluyendo el canal de ruido blanco, las envolventes de volumen y los samples de 4 bits.
- El estéreo sigue las distribuciones de canales ABC y ACB usadas en los interfaces AY para Spectrum 48K (el canal izquierdo d e Amiga es usado para el canal A y el sonido 48K, y el derecho para los canales B y C).
- Asignación dinámica del canal de ruido del chip AY para sonido 128K ó 48K.
- Inclusión de la pantalla del spectrum emulado en una ventana sobre el Workbench o cualquier otra pantalla pública. Esto incluye emulaciones de Workbench con tarjetas RTG, como la Retina. El emulador se adapta a los colores de la pantalla para reasignar los colores de la ventana del Spectrum y conseguir el mayor parecido posible.
- Posibilidad de abrir pantallas legales con el sistema, incluso al desactivar la multitarea, para monitores que no soporten PAL.
- Emulación de joysticks tipo Kempston, SInclair (Interface II) y Cursor (AGF/ProteK).
- Incluye un transfer para pasar a cinta los juegos de Spectrum.
- Border real, aunque no está sincronizado con el barrido de la pantalla.
- FLASH emulado (sólo versión AGA).
- Versión FASTER para máxima velocidad a costa de una emulación menos completa.
- El emulador se adapta al hardware disponible. En el caso de no disponer de los canales de sonido o de las CIAs para temporizar, el emulador desactivará automáticamente las opciones que usan dicho hardware.
- El hardware necesario para la emulación (canales de sonido, CIA, etc...) se aloja sólo en el momento de arrancar la emulación, y es devuelta al sistema cuando ésta es detenida. Sólo se aloja el hardware necesario para las opciones seleccionadas en el menú 'Options'.
- Las ventanas del emulador son appwindows (tanto la de control como la de emulación), o sea, permiten que se les 'tiren' iconos dentro, para cargar los snapshots.
- Interface de cassette propio, mucho más barato y fiable que un sampler.
- Posibilidad de ejecutar tantos Spectrum en multitarea como se quiera. El único limite para el número de copias simultáneas del ZXAM que pueden correr lo ponen la memoria y la potencia del procesador (o la paciencia del usuario ;-).
- Ejecución de código Z80 paso a paso, desensamblador Z80 y breakpoints.

49 Kb
En el Spectrum no sólo se jugaba. Existieron decenas de programas de utilidades: procesadores de texto, bases de datos, dibujo, música...

   Aunque a largo plazo tiene previsto llegar a emular el Spectrum +3 completo. El mismo afirma que probablemente podrá incluso conectar las mismas disqueteras de 3" utilizadas en ese ordenador. De momento, la mayoría de nosotros nos conformaremos esperando mientras disfrutamos con la versión 2.0 de este excelente emulador.


  SpecConvert  

   Este programa es un conversor de formatos de ficheros snapshot para emuladores de Spectrum. La versión de Amiga de este conversor procede de una versión disponible en MS-DOS. Por lo tanto, se trata simplemente de un comando, sin interfaz gráfica, que admite dos parámetros.

   En concreto, bastará con especificar el fichero de entrada y el de salida adjuntando la extensión que identificará el formato en que se encuentra actualmente el fichero y el formato hacia el cual queremos convertirlo.

   La versión 1.06 del programa admite todas estas extensiones: .snapshot, .SNA, .Z80, .PRG, .SP, .ACH, .ZX. Además de un formato RAW especial que obtenemos comunicándonos a través del puerto serie (vía Interfaz I) con el Spectrum.


Envía esta página web a un amigo:
Esta opción está desactivada temporalmente, rogamos disculpen las molestias

Volver a la página anterior

Al menú principal