Emulador de Commodore 128 con HamGeek MiSTer

En este artículo vamos a emular el ultimo ordenador de 8 bits de Commodore sobre un sistema MiSTer de HamGeek.

Sobre Commodore 128

En 1985, Commodore decide lanzar un sucesor del exitoso C64 al que, además de más memoria, le añade soporte para CP/M. Así, incluye un modo de funcionamiento C128, otro compatible con C64 y otro con CP/M.

Su arquitectura se basa en un procesador principal MOS 8502 a 2 MHz y un Zilog Z80A secundario encargado del arranque de CP/M. Asimismo, implementa un MOS 8722 MU para la gestión de memoria, MOS 8721 PLA para la gestión de señales del sistema, MOS 8564 VIC-IIe para gráficos, MOS 8563 VDC para alta resolución, MOS 6581 SID para el sonido, 2 MOS 6521 CIA para puertos de comunicación y MOS 8701 para generación de reloj. Venía con 128 KB de RAM y 16 KB de vídeo.

Entorno e instalación del emulador

Elementos

Vamos a necesitar los siguientes elementos:

  • HamGeek MiSTer.
  • Monitor con entrada HDMI.
  • Teclado USB.

Instalación

Este emulador viene incluido en el core C128, que seleccionaremos dentro del menú Computer.

Bastará con seleccionar el core.

Emulación

Una vez realizados los pasos anteriores, dispondremos de la pantalla de inicio del C128.

Podemos escribir nuestros códigos en su BASIC.

Para pasar el modo de compatibilidad con C64 escribimos «GO 64».

El sistema pedirá confirmación, a lo que responderemos «YES».

Vemos que arranca como si se tratase de un C64, incluyendo la versión de BASIC, que baja de la V7.0 a la V2.

Finalmente, para pasar a modo CP/M tendremos que conseguir una imagen de CP/M para C128.

$ wget https://github.com/csoren/c128cpm/raw/refs/heads/develop/releases/cpm+128.d71

Conectaremos a nuestro HamGeek MiSTer vía FTP y subimos el archivo a /media/fat/games/C128.

El siguiente paso será pulsar [F12] y montar el archivo recién descargado.

Seleccionamos el archivo para que sea montado.

Mediante el comando BOOT forzamos el arranque de CP/M.

Veremos en pantalla el progreso de la carga del sistema operativo.

Finalmente, aparecerá el prompt.

Podemos ver el contenido del disco con dir.

Y, como siempre, escribir con echo.

#1985 #Commodore #HamGeekMiSTer #MOS6521CIA #MOS6581SID #MOS8502 #MOS8563VDC #MOS8564VICIIe #MOS8701 #MOS8721PLA #ZilogZ80A

@mos_8502

#MOS8502 is an awesome handle!

!Fantastic!

I think I found my #c128d error that haunts me for more than a year now!
It looks like the bloody #MOS8502 is faulty when it gets warm! Or one of the solder points in the near vicinity is bad.
Anyway, I can remove the fault with some ice spray on the 8502!
Why would that not happen in #C64 mode? Oo

Fire and brimstone coming down from the skies… Rivers and seas boiling… MOS and Zilog living together...Mass hysteria!

🤣

#Commodore #C128 #MOS8502 #Zilog #Z80 https://t.co/Uc4HdYuK3i

DevZine 🇵🇱🤝🇺🇦 on Twitter

“Fire and brimstone coming down from the skies… Rivers and seas boiling… MOS and Zilog living together...Mass hysteria! 🤣 #Commodore #C128 #MOS8502 #Zilog #Z80”

Twitter
And that, ladies and gentlemen, is how the #commode #c128 shares it's bus between the #Z80 (above), and the #MOS8502 (below).
Ignore the bad signal of the z80, that's the probe :->