Logo
 
BARE METAL ZX SPECTRUM EMULATOR FOR THE RASPBERRY PI

ZXBaremulator es el primer emulador bare-metal completo de los ZX Spectrum 48K/128K/+2A para la Raspberry PI.

Descripción

Un programa bare-metal es aquel que no necesita cargar primero un sistema operativo para funcionar. La carga es instantánea y tiene todos los recursos de la máquina a su disposición. Pero, como casi todo en la vida, esto tiene una cara B. El programador no tiene nada en lo que apoyarse para programar, hay que desarrollarlo todo desde cero y sin poder utilizar cómodos depuradores o librerías sofisticadas. Aún así, éste emulador no hubiera sido posible sin una librería en particular, la Circle de Rene Stange. De modo que, si encuentras algo que no te gusta o te parece espartano, ten en cuenta las limitaciones a las que me enfrento al desarrollar algo como ZXBaremulator.

Características principales

  • Soporte para los modelos de Raspberry PI-2, PI-3 en todas sus variantes.
  • Emulación Z80 precisa (instrucciones indocumentadas, registro escondido WZ, bits 3 y 5 del registro 'F').
  • Emulación precisa del Spectrum 48k/128k/+2a (borde completo, redibujado de la pantalla en tiempo real, memoria en contienda, bus flotante, efectos de color de alta resolución).
  • Emulación de joystick Kempston/Sinclair 1-2/Cursor-AGP-Protek/Fuller/QAOPSpaceM usando un mando de PS3/PS4 DualShock o compatible, XBox360, XBox One o Nintento Switch Pro Controller en modo USB (no soporta Bluetooth).
  • Emulación de Kempston Mouse utilizando un ratón USB estándar.
  • Carga acelerada de cintas virtuales TZX. Se muestra la carga original completa (siempre que ha sido posible).
  • Emulación del beeper/AY-3-8912 el sonido sale por el conector HDMI o por el jack de 3.5mm cuando se usa la salida de vídeo compuesto.
  • Soporte de interfaz Multiface One/128/+3. Ya puedes trucar el Abu Simbel Profanation.
  • Los juegos ya no van embebidos, ¡tú escoges cuales son tus preferidos!, hasta un límite de 1100.
  • ¡No necesita Linux!. Carga instantánea desde la µSD.

Novedades de la versión 3.1

  • Por fin hay un navegador de ficheros, sin límite (teórico) de archivos. Pon tus TAP/TZX donde quieras y como quieras y navega entre directorios.
  • Soporte del teclado Recreated ZX, gracias al usuario Hikoki que, generosamente, me donó uno. El teclado debe estar en modo Layer A.
  • Se ha añadido soporte para los gamepads originales de PS4, XBox360, XBox One y Nintendo Switch Pro Controller.
  • El stick analógico izquierdo puede usarse ahora también como teclas de dirección, pero ten en cuenta que ciertos juegos no funcionan bien con él, depende de como traten el teclado.
  • Gracias, una vez más, a Jorge Castillo (pastbytes), la pantalla de ayuda de teclado está actualizada y se ha añadido la pantalla de ayuda específica del teclado Recreated ZX.

Descargas

Como usarlo

  • Partiendo de una SD/µSD preinstalada con Linux, renombra el kernel.img o kernel7.img para no perderlo, y luego copia la imagen que corresponda a tu modelo de PI. O partiendo de una tarjeta SD/µSD nueva y formateada con FAT32 extrae todos los archivos del ZIP y copialos en la tarjeta.
  • Copia tus juegos favoritos a la tarjeta SD/µSD, organizados como tú quieras.
  • Necesitas conectar un teclado USB a la PI antes de arrancarla, no soporta conexión en caliente. También puedes conectar un teclado Recreated ZX solo o junto a un teclado USB estándar y un gamepad original de PS3, PS4, XBOX360, XBox One o Nintendo Switch Pro Controller. Ten en cuenta que es muy posible que necesites una fuente de alimentación de, como mínimo 2A, y he comprobado que incluso una de 2,5A cuando conectas varios de ellos a la vez, ya que especialmente en el arranque, pueden pedir mucha corriente. Si conectas un ratón USB podrás emular el Kempston Mouse cuando no esté seleccionado el joystick Kempston.
  • Escoge una cinta virtual entrando en la ayuda con F1 y usando el selector de cintas y luego LOAD "" + [ENTER]
  • Tecla F1: Ayuda.
  • Alt Izq. + 'K': Ayuda de teclado
  • Pulsando repetidamente la tecla [Select / SHARE / View / Capture] del joystick se cambia el modelo emulado siguiendo el ciclo:
    Modelo Equis (X) ó A Círculo (O) ó B Cuadrado ó X Triángulo ó Y L1 - R1 L2 - R2
    None------------------
    KempstonDisparoDisparo 2Disparo 2DisparoDisparoDisparo 2
    Sinclair 1DisparoTecla 'x'Tecla 'x'DisparoDisparoTecla 'x'
    Sinclair 2DisparoTecla 'z'Tecla 'z'DisparoDisparoTecla 'z'
    Cursor/AGF/ProtekDisparoTecla '9'Tecla '9'DisparoDisparoTecla '9'
    FullerDisparoDisparo 2Disparo 2DisparoDisparoDisparo 2
    QAOPSpaceMDisparo (Space)Disparo 2 (Tecla 'm')Disparo 2 (Tecla 'm')DisparoDisparoDisparo 2 (Tecla 'm')

Como usar el teclado Recreated ZX

  • El teclado debe ser conectado antes de encender la Raspberry PI y el interruptor de selección de modo debe estar posicionado en Layer A. Puede estar conectado como único teclado o como un segundo teclado, a la vez que un teclado USB estándar. Ambos teclados funcionan sin interferirse. En cualquier caso, y especialmente si está como teclado único, el teclado Recreated ZX tiene dos modos de funcionamiento:
    • Modo normal: es el modo en que se puede teclear como si de un "gomas" se tratara.
    • Modo alternativo: se entra a este modo con la combinación de teclas Caps-Shift + Symbol-Shift + ENTER. En el momento de teclear la combinación, se muestra un mensaje de aviso y se imprime un icono indicador en la parte inferior derecha de la pantalla. En ese modo, las teclas '1' a '0' se comportan como las teclas F1 a F10 de un teclado USB normal. La tecla Symbol-Shift hace las veces de tecla 'Alt', por tanto, con Symbol-Shift+K aparecerá la ayuda del teclado donde se muestran todas las combinaciones de teclas aplicables al teclado Recreated ZX. Se sale de este modo usando la misma combinación de teclas que para entrar.
  • Para que todo funcione bien, debes usar una fuente de alimentación que proporcione suficiente corriente a la PI. Si en algún momento ves que en pantalla te sale el icono de un rayo, es que no le está llegando suficiente voltaje a la raspberry. Puedes consultar los iconos que puede mostrar el firmware de la PI aquí. No te fíes de las fuentes de alimentación de "los chinos", raramente sacan la mitad de la corriente que anuncian en su placa de características y, además, esa corriente suele ser de muy mala calidad. Cuando conecto un teclado USB normal, el Recreated ZX y un gamepad de Xbox One S a mi Pi-2, tengo que usar la fuente de alimentación de mi PI-3, que es de 2.5A en lugar de la recomendada para la PI-2 que es de solo 2A.

© 2017-2019 José Luis Sánchez (jspeccy at gmail dot com) - All rights reserved (2019/01/13)