Das MIST Board: Klassische Computer per FPGA neu implementiert (Teil 4)

Seit meinem letzten Beitrag über das MIST Projekt sind nun drei Monate vergangen. Das ist Grund genug, um einmal nachzusehen, was sich in dem Projekt getan hat.

Zunächst einmal gibt es eine aktualisierte Firmware firmware_150715_r1207, mit der man das MIST Board updaten sollte. Die neue Firmware ist dringend notwendig für den ebenfalls aktualisierten C64 Core fpga64_c1541_150722_r1216. Die „1541“ im Dateinamen bedeutet nicht, dass eine 1541 am MIST betrieben werden kann, sondern dass der Core endlich in der Lage ist D64 Images zu laden. Hierzu wird das Image im MIST Menü ausgewählt und anschießend kann man mit den üblichen Kommandos auf die Diskette zugreifen. Im Core wurden auch einige Video-Timings angepasst. War es vor drei Monaten noch schwierig ein stabiles Bild angezeigt zu bekommen, klappt das jetzt auf Anhieb.

Weiterhin gibt es Core Updates für den Amstrad CPC, Atari ST und Atari 800:

  • amstrad_150729_r003.10
  • core_150708_r1202
  • atari800_core20150517

Hier gibt es aber keine größeren Neuerungen. Beim Amstrad Core kann nun zwischen Schneider oder Amstrad gewählt werden, beim Atari ST wurden die Audio- und Video-Implementierungen verbessert und beim Atari 800 Core wurde der VGA Modus verbessert.

Die ersten drei Teile sind hier zu finden: Teil 1, Teil 2, Teil 3

Multidevice Adapter für Gamepads und Joysticks

Auf Kickstarter läuft noch bis zum 16. Juni eine Kampagne, die für den einen oder anderen Retro-Gamer interessant sein dürfte.

KADE miniConsole+Mit dem KADE miniConsole+ Adapter soll es möglich sein, die verschiedensten Eingabegeräte (Joysticks, Gamepads, Controller) an vielen Konsolen und Computern (z.B. Windows PC, Apple Macintosh, Sony Playstation, Nintendo Konsolen, Sinclair ZX Spectrum uvm.) zu betreiben. So kann z.B. ein NES Gamepad an einer Sony Playstation verwendet werden.

Günstig ist der Spaß jedoch nicht: Knapp 90 EUR soll das Gerät mit fünf Adaptern für Eingabegeräte kosten.

Bilder: KADE, Kickstarter

Das MIST Board: Klassische Computer per FPGA neu implementiert (Teil 3)

Im dritten Teil (Teil 1 hier und Teil 2 hier) möchte ich noch kurz über meine Erfahrungen mit der Implementierung des ZX Spectrums, Apple II und Colecovision berichten.

ZX Spectrum

MIST ZX SpectrumFür kaum einen anderen Rechner gibt es so viele Emulatoren wie für den ZX Spectrum. Damit ist es eigentlich schon logisch, dass es auch einen ZX Spectrum Core gibt. Ich benutze den Core spectrum_150319_r894.rbf – ein ZX Spectrum ROM wird nicht benötigt, dieses ist bereits integriert.

Wird der Core gestartet, muss als nächstes ein Reset oder NMI über das MIST Menü ausgelöst werden, damit sich der ZX Spectrum wie gewohnt meldet. Anschließend kann der Tape Loader angewählt werden, das zu ladende Tape wird danach im MIST Menü ausgewählt. Anschließend heißt es geduldig warten bis das Programm im Originaltempo geladen wurde. Leider akzeptiert der Core nur Tapes im *.csw Format. Die verbreiteten Formate wie TAP, Z80 oder TZX werden nicht unterstützt. Vorhandene TAP-Dateien müssen mit einem Tool erst konvertiert werden, was leider unnötig umständlich ist.

MIST ZX SpectrumEs gibt aber eine Möglichkeit auch andere Formate zu laden. Hierzu müssen jedoch einige Vorbereitungen getroffen werden. Zunächst wird wieder der Core auf die SD-Karte kopiert. Danach benötigt man ESXDOS, welches von dieser Website heruntergeladen werden kann. Aus dem Archiv benennt man die Datei ESXMMC.BIN in spectrum.rom um und kopiert sie zusammen mit der ESXMMC.TAP in das Hauptverzeichnis der SD-Karte. Weiterhin müssen die kompletten Ordner BIN und SYS auf die SD-Karte kopiert werden. Nachdem der MIST gestartet wurde, kann durch Auslösen eines NMI über das MIST Menü (oder F11) das ESXDOS Menü aufgerufen werden. Lohn der Mühe: Es ist nun möglich Z80-, SNA-, TRD-, SCR- und TAP-Dateien direkt zu lesen. CSW-Dateien werden jetzt nicht mehr erkannt. Möchte man diese wieder laden, muss die Datei spectrum.rom umbenannt werden.

Weiter >

Das MIST Board: Klassische Computer per FPGA neu implementiert (Teil 2)

In diesem Beitrag hatte ich über das MIST Board und dessen Implementierung des C64 berichtet. Das MIST Board kann aber auch noch zahlreiche weitere Systeme implementieren, wie z.B. den Atari ST, Atari 2600, Atari 5200 oder Atari 800 (XL/XE).

Atari ST

MIST Atari ST DesktopDie Konfiguration des Atari ST ist einfach: Den gewünschten Core von der Projektseite herunterladen und ihn zusammen mit einem Image des TOS Betriebssystems auf einer SD-Karte ablegen. Für meinen Test verwendete ich den Core core_150413_r1017.rbf und ein amerikanisches TOS 2.06. Damit das System direkt startet wurde der Core in core.rbf umbenannt, das TOS muss als tos.img auf der SD-Karte gespeichert werden. Damit der Systemstart nicht ewig dauert, sollte zudem auch das Diskettenimage disk_a.st und (optional) das Harddiskimage harddisk.hd vorhanden sein. Vorbereitete Images bekommt man ebenfalls von der Projektseite. Sinnvoll ist auch noch die Datei system.fnt, damit der originale Atari ST Zeichensatz angezeigt wird.

MIST Atari ST LemmingeDer Atari Core kann Programme nicht direkt von der SD-Karte laden, sondern nur aus Disketten- oder Harddiskimages. Man muss also vorher seine Software entsprechend in einem solchen Image speichern. Mit dem Atari Emulator „Hatari“ ist das recht leicht möglich. Mit diesem legt man zunächst ein leeres Image an, mountet dann ein Windows-Verzeichnis als zweites Laufwerk und kopiert die gewünschten Dateien auf das Image. Das ist unnötig umständlich, aber derzeit leider nicht anders möglich.

Der Core bildet den ST sehr gut nach. Sowohl die Monochrom-Auflösung als auch die beiden Farbauflösungen funktionieren wie erwartet. Anwenderprogramme, wie 1st Wordplus oder Calamus, liefen problemlos. Auch Spiele (inklusive Sound) funktionieren fehlerfrei und verwenden die angeschlossene USB-Tastatur bzw. USB-Maus als Eingabegeräte. Eine Atari-Maus kann am MIST nicht verwendet werden. Hat man das MIST Board um MIDI-Anschlüsse erweitert, sollen diese ebenfalls unterstützt werden, austesten konnte ich dieses Feature nicht. Weiter >

Das MIST Board: Klassische Computer per FPGA neu implementiert

Vor einiger Zeit besorgte ich mir einen Raspberry Pi und experimentierte mit verschiedenen Emulatoren herum. Daraus wurde eine kleine Bastelei: Der Raspberry Pi wurde zusammen mit einem Tastatur-Interface (Keyrah V2 von Individual Computers) in ein C64 Gehäuse eingebaut und der Emulator VICE sorgte für die Nachbildung des C64. Die Vor- und Nachteile diese Lösung können hier nachgelesen werden.

Jetzt konnte ich ausprobieren, wie gut eine Re-Implementierung des C64 auf einem FPGA funktioniert. Es wird dabei der C64 nicht in Software nachgebildet, sondern die Funktion des gesamten Rechners wird auf einem FPGA neu implementiert. Es gibt verschiedene Projekte, die Rechner per FPGA nachbilden, wie z.B. C-One, Turbo Chameleon 64, FPGA-64, MEGA65, Commodore 64 on FPGA und ein paar weitere. Einige davon sind auf den C64 fixiert, andere erlauben es auch andere Rechner nachzubilden.

MIST Board Projekt

Ich habe mich für das MIST Board entschieden, das vollständig aufgebaut bei der polnischen Firma Lotharek gekauft werden kann (siehe auch hier). Mit 199 EUR ist es zwar nicht ganz günstig, bietet aber eine Unterstützung für mehrere Systeme, die über sogenannte FPGA-Cores nachgebildet werden:

Computer: Acorn Archimedes (in Arbeit), Amiga (AGA in Beta-Status), Amstrad CPC, Apple II+, Atari ST, Atari 800, Commodore 64, Commodore VIC-20, MSX, ZX Spectrum, ZX81

Konsolen: Atari 2600, Atari 5200, Bally Astrocade, Chip8, Colecovision, Sega Master System, NES, PC Engine, VideoPac

Arcades: Galaxian, Moon Patrol, Pacman, Pengo, Space Invaders

Der MIST wird von Lotharek in einem kleinen Metallgehäuse geliefert, welches über zahlreiche Anschlüsse verfügt: Micro USB-Anschluss (für die Stromversorgung und zum Flashen per USB-Kabel), VGA-Monitoranschluss, drei Signal-LEDs, drei Taster, 3,5 mm Stereo-Klinkenstecker (Audio-Out), Ein-/Ausschalter, SD-Karten Anschluss, zwei DB9-Stecker (für Joysticks) und vier USB-Anschlüsse (für Tastatur, Maus, Joysticks und Gamepads).

Wer noch etwas basteln möchte, der kann sich das Platinenlayout von der Projektseite besorgen, die Platine selbst ätzen und anschließend bestücken. Diese Arbeit habe ich mir diesmal erspart. Weiter >

MEGA65 als Nachfolger des C64

Heute kündigte das Museum of Electronic Games & Art (MEGA) an, dass mit dem MEGA65 ein neu entworfener C65-ähnlicher Computer erscheinen soll. Das gesamte Hardwaredesign und die zugehörige Software sollen unter der LGPL als Open-Source bzw. Open-Hardware veröffentlicht werden. Es soll möglich sein, den Rechner zu Hause selbst aufzubauen, alternativ soll später auch ein Bausatz verfügbar sein.

Der Rechner basiert auf einem FPGA Design, dessen Core vom MEGA-Mitglied Paul Gardner-Stephen programmiert wird und auf dem C65GS basiert. Aktuell ist der Core noch als „experimentell“ eingestuft, ein Kennwort zum Download kann aber schon jetzt über die Projektseite gegen eine kleine Spende angefordert werden.

Der Rechner ist ein vollwertiger 8-Bit Computer, der ungefähr 50mal schneller wie ein klassischer C64 und trotzdem weiterhin voll kompatibel sein soll. Weitere Features umfassen die HD-Ausgabe per VGA, die Unterstützung von SD-Karten, ein eingebautes Diskettenlaufwerk und einen erweiterten Arbeitsspeicher. Auch soll der Rechner über USB-Buchsen verfügen und per Ethernet die Verbindung zur Außenwelt suchen. Die Vorabversionen des Gehäuses deuten auch auf zwei DB9-Joystickports hin.

Bild: mega65.org

Retro-Konsole Vega: Neuauflage des ZX Spectrums

Nach 32 Jahren kündigt Sir Clive Sinclair nun einen Nachfolger zu seinem erfolgreichen Heimcomputer ZX Spectrum als Retro-Konsole unter dem Namen Sinclair Spectrum Vega an. Seit heute sammelt Sir Clive über die Crowdfunding-Plattform Indiegogo 100.000 Pfund, die für die Entwicklung und Produktion der ersten 1000 Stück notwendig sind. Bis zum 30. Januar soll die Sammlung abgeschlossen sein und die Geräte Anfang April von dem Startup Retro Computers Ltd., an dem Sir Clive beteiligt ist, ausgeliefert werden. Der ersten Produktion sollen 3.000 weitere Geräte folgen, anschließend jeweils weitere in 10.000er Stückzahlen.

Die Limited Edition Spectrum Vega der ersten Produktionsserie kostet 100 Pfund (ca. 125 EUR, zzgl. 25 EUR Versand). Sie soll mit 1000 vorinstallierten Spielen ausgeliefert werden. Weitere Spiele können per SD-Karte nachgeladen werden.

Sinclair Spectrum Vega Werbespot, YouTube, Retro Computers

Mit von der Partie sind: Chris Smith (ehemaliger ZX Spectrum Spieleentwickler und bekannt durch sein Buch „The ZX Spectrum ULA: How to design a microcomputer“), Dr David Levy (Buchautor, britischer Schachmeister und Präsident der International Computer Games Association) und Paul Andrews (beschäftigt sich seit Jahren geschäftlich u.a. mit Retro-Computerspielen).

Bild: 3D Prototyp des nicht finalen Models, Retro Computers Ltd., Indiegogo

Kommentar:

Clive, mal ehrlich… Was soll das? Mock-ups des Speccy gibt es bereits etliche. Für das letzte Projekt, dem BT Spectrum, wurde im Januar noch auf Kickstarter gesammelt. Und jetzt soll eine Spectrum-Spielkonsole für 125 EUR entwickelt werden?

Wir brauchen keinen ZX Spectrum als Konsole. Definitiv nicht! Als Konsole waren schon damals andere Systeme besser geeignet, ohne 1-Bit Gepiepse und Attribute Clash. Wer sich heute einen ZX Spectrum kauft, der möchte diesen aufgrund des Retro-Feelings besitzen.

Sicherlich wird heute keiner mehr einen Z80A mit ULA, etlichen DRAMs und grottigen TV-Modulator bauen. Aber das original Gehäuse muss es sein, dazu eine vernünftige Tastatur unter der Gummimatte und als Innenleben einen ARM SOC (zumindest das macht ihr richtig). Der ZX Spectrum kann so leicht per Software emuliert werden. Ist diese gut gemacht, merkt man keinen Unterschied zum Original und Fehler können leicht beseitigt werden. Zudem können so auch andere Modelle emuliert werden, wenn auch aktuell z.B. ZX80 oder SAM Coupé noch fehlen.

Als Anschlüsse würde ich mir MIC/EAR (wie beim Original), FBAS, HDMI und den Kempston-Joystick Port wünschen. Der User-Port und TV-Anschluss dürfen gerne entfallen… und bitte auch kein FBAS, wie es beim Vega vorgesehen ist. Anstelle des User-Ports würde ich mir einen SD-Kartenleser wünschen. Und das alles für höchstens 79 EUR.

So sollte ein heutiger ZX Spectrum ausfallen, Clive!

PS: Warum bringt ihr nicht ein passendes Speccy Gehäuse für einen Raspberry Pi heraus (die Anschlüsse werden nach hinten heraus gelegt und die Tastaturmatrix über die GPIO angesteuert)? Mit im Lieferumfang befindet sich der Emulator und passende Spiele auf einer SD-Karte. Der Anwender baut nur noch seinen RPI ein und fertig ist der bessere Vega. Die Kosten dürften bei unter 50 EUR liegen.

Apple II Mainboard Replikat erhältlich

Mike Willegal ist seit 2009 bekannt für seinen Apple I Nachbau. Jetzt hat er seit ein paar Tagen den Prototypen seines Apple II Nachbaus fertig gestellt (das Bild oben zeigt die original Apple II Platine links und Mikes Nachbau rechts).

In seinem Blog und Forum gibt er regelmäßig Auskunft über den Projektstatus. Die nackte Platine soll 150 US$ (ohne Versand) kosten. Da die Bauteile heute teilweise nicht mehr leicht zu bekommen sind, gab es bereits für den Mimeo 1 über Unicorn Electronics Bauteilsätze, die mit 666,66 US$ (der Originalpreis des Apple I) aber recht teuer sind. Für den Apple II soll es ebenfalls wieder einen Bauteilsatz geben. Ebenfalls angekündigt ist der Nachbau der SWYFT Card für den Apple II.

Bild: Mike Willegal