mumpitz

Ein C64-Emulator für's SNES

Im Nintendo Entertainment System arbeitete eine Variante des 6502-Prozessors. Das Super-Nintendo wurde mit der 16Bit-Weiterentwicklung dieser CPU bestückt; die Ingenieure von Nintendo waren jedoch nicht in der Lage, die geforderte Kompatiblität zum NES mit vertretbaren Kosten herzustellen. - Das Super-CPU-Modul für den C64 benutzt den im SNES verwendeten Prozessor. (Hintergrundinformationen, die das Verständnis des folgenden erleichtern. )

Auf einem Flohmarkt bot ein Händler Import-Spiele für verschiedene Spielkonsolen an. Mein Blick blieb an einem amerikanischen SNES-Modul mit Zusatz-Hardware hängen, das als C64-Emulator bezeichnet wurde.
100 Mark wollte der Händler dafür haben, worauf ich ihm vorhielt, dass man einen gebrauchten C64 schon für ein Fünftel dieser Summe bekäme. Schließlich siegte aber meine Neugier, und für 80 Mark wechselte das Paket seinen Besitzer.

Ein dünnes Heftchen enthält eine englische Anleitung und Dokumentation. Der Emulator wurde von John Dewey (Hardware) und Willard Quine (Programmierung) aus Huntington/Wichita entwickelt. Nintendo of America beantwortete mehrere Anfragen zu einem Verkauf von Sicherheitschips nicht, so dass der Bastler billige Original-Module ausschlachten musste.

So steckt das Modul auch in einem umetikettierten Nintendo-Gehäuse. An den Kontroller-Anschluss 1 kommt eine auf ein Brett geklebte Folientastatur. Die Logik zum Scannen der Tasten (ein Schieberegister und einen Parallel-Seriell-Wandler) findet man ohne Abdeckung auf der Unterseite des Bretts. Zwei Winkel dienen als Seitenstützen; im rechten sind zwei neunpolige Sub-D-Buchsen zum Anschluss von Joysticks oder eines Lichtgriffels eingelassen. Paddles und Analog-Maus werden nicht unterstützt.

Für den zweiten Kontroller-Anschluss gibt es ein Adapter-Kabel für Geräte mit seriellem IEC-Bus (Commodore-Floppy, Drucker).

Auf der Modul-Platine findet man ein 4 Megabit-Eprom, das neben dem Emulator-Kode auch den Inhalt der C64-Roms enthält.

Ein schmales 64KB-SRAM (Cache-Speicher) soll wohl als C64-Arbeitsspeicher dienen; ein batteriegepuffertes 8KB-SRAM speichert die Einstellungen der acht wählbaren Konfigurationen; ein Teil dient als C64-Farbspeicher (Low- und High-Nibble). Ein programmierter Logikchip (GAL) regelt den Zugriff auf die zuvor beschriebenen Chips; der Original-Sicherheitschip (CIC) sorgt dafür, dass die Konsole das Modul akzeptiert. (In europäischen Geräten funktioniert es nur mit Adapter!) Nach dem Einschalten erscheint ein Startbildschirm mit C64-Zeichensatz, wo man den Emulator starten, eine andere Konfiguration wählen oder editieren kann oder die Namen der Entwickler erfährt. Zur Auswahl dienen die Funktionstasten der Folientastatur. In den Konfigurationen läßt sich die Genauigkeit (und damit Schnelligkeit) der Emulation einstellen. In der gröbsten Stufe schafft der Emulator die Schleife

     FOR A=0 TO 999: PRINT A:NEXT
  

in 25 Sekunden (Original:45).

Bei Grafik-Demos empfiehlt es sich, die Tonausgabe zu unterbinden, damit der Emulator die fingierten Raster-Interrupts korrekt bedienen kann. Glücklicherweise gibt es keine Probleme wegen Differenzen von NTSC- und PAL-Timing: Alle getesteten Schnellader funktionierten; sogar GEOS ließ sich starten (mit Joystick-Maus)- ohne Speichererweiterung ist die Arbeit damit jedoch trotz des schnelleren Prozessors nur etwas für Masochisten.

Das Heftchen sagt nichts über die Menge der produzierten Pakete; die Platine von meinem trug die Seriennummer 0104. Ein gutes Stück Arbeit, das wohl (leider) für die Katz' war! (Fotos im Ostermond-Heft von MUMPITZ.)


sanity

SNES-Spiele kosteten meist um die hundert Mark, doch bei einigen war der Preis gerechtfertigt, enthielten sie doch halbe Computer. Hier die Platine von Yoshi's Island. Links unten der Sicherheitschip, in der SMD-Version 18polig. Darüber das ROM. Der achtpolige Chip neben der Lithium-Batterie ist ein Spannungswächter,der beim Abschalten der Konsole das 32KB-SRAM(rechts davon) auf Standby-Betrieb schaltet.
In der Mitte der GSU-2-SP1, ein RISC-Prozessor zur Grafik-Berechnung, für den der 21MHz-Takt durch mehrere 74HC04-Gatter in Kombination mit dem Quarz (weiß) am rechten Bildrand erzeugt wird. Das SRAM dient ihm auch als Arbeitsspeicher.


Regionalismus

Ein Mumpitz-Leser schenkte mir die Platine eines Super-Nintendo-Spiels, das nicht startete. Die Beschaltung des 16poligen Chips am linken Rand erinnerte mich stark an den Sicherheitschip der NES-Konsole (siehe Mumpitz 44). Ich vertauschte ihn mit dem eines NES-Moduls, doch erwartungsgemäß konnten beide Chips nicht mit ihren Pendants in der Konsole kommunizieren.
Also öffnete ich ein anderes SNES-Modul. Dort trug der Chip die Aufschrift D413 (statt D411, was, wie ich später herausfand, die Kennung der US-Version ist). Mit diesem bestückt funktionierte das Modul.

Amerikanische Spiele passen schon wegen der anderen Gehäuseform nicht in die PAL-Konsolen. Mit einem Adapter kann man sie jedoch benutzen: In dessen A-Slot kommt ein europäisches Modul, das den Region Lockout Chip überlistet, in den B-Slot das Import-Modul.


7800-ROMs auslesen

Typenbezeichnung läßt auf Kapazität schließen - aber nicht immer

Bei der Analyse diverser Spielmodule für das Atari 7800 stellte ich bald eine Korrelation zwischen den Typenbezeichnungen und der Größe der Roms fest:

C300709 = 16KB,
C300710 = 32KB,
C300711 = 64KB,
C300712 = 128KB.
schaltbild Als ich das Etikett mit der Aufschrift C300711-011A vom Speicherchip des Moduls Desert Falcon gepult hatte, wurde darunter ein OTP-EPROM vom Typ 27512 erkennbar. Doch Vorsicht! Das Modul Crossbow ist mit zwei C300709-Chips bestückt, von denen das mit dem Banking-Register verbundene 128KB Kode und Grafik enthält.

Rechts das Schaltbild der 128KB-Platine. Recht raffiniert wird der ROM-Inhalt auf einen Adressbereich von 48KB verteilt. Segment 7 erscheint stets im Bereich $C000-$FFFF; auf Segment 6 kann auch im Bereich $4000-$7FFF zugegriffen werden. Das Bankauswahlregister kann im Bereich von $8000-$BFFF beschrieben werden; in diesem Bereich sind alle acht Segmente (0-7) lesbar.


Im ROM von Planet Smashers fand ich die Androhung einer Fortsetzung. Der Autor verlegte sich dann aber offenbar auf's Drehbuchschreiben für Fernsehserien, die die populäre Paranaoia der Amis bezüglich einer Unterwanderung durch finstere Mächte bedienen. (Gegen Schreibfehler gibt es ja Programme.)

                                       PLAN B

         **** Congratulations Star Warrior! ***
  You have succeeded in repelling the alien war machine and have destroyed
  their ultimate weapon.  Due to your fighting skills and bravery, the Earth
  withstood the invaders and the nations of the planet, united by war, set forth
  to end the chaos the aliens had created. As the signals began to fade from the
  alien's home world, however, a strange pod floated into the Earth's atmosphere.
  Unknown to the Earth Defense League, the aliens had deposited many of these pods
  before exploding on the powerful shields that circled the planet.
  These devices slowly floated towards the Earth before depositing their
  contents on the surface of the planet. Each pod contained the contents of the
  alien's second plan of attack...
  Out of the pods came the alien warriors themselves -hideous creatures that
  quickly found human host bodies and melded with them, disappearing into our
  society and secretly taking important positions within the Earth military.
  Using special devices from their home world, the aliens set out to brainwash
  the human population into subservience. If they could not destroy this planet
  with their warships, they would eliminate it from within!
  With the alien-infested humans hiding throughout the world, increasing the
  numbers of their brainwashed slaves, the military will call on you once again
  to save humanity and destroy the space creatures once and for all...
  COMING SOON FOR YOUR ATARI 7800
  PLANET SMASHERS.....
  Programmed by:James V. Zalewski
  DATAFAST COMPUTER SERVICES 1989
  Because you were unable to stop the invading alien hordes, the Earth has
  been subjected to total annihilation.
  


Multi-Prozessor-System

Ein Asozialer hatte seinen Laserjet am Straßenrand entsorgt; mit einem Kreuzschlitzschraubendreher und einigen Handgriffen sicherte ich mir die Steuerelektronik und die Bedien-Einheit. Auf den Platinen entdeckte ich mind. fünf Microcomputer und -prozessoren, so auch einen 16MHz-MC68000. Interessant war die Beschaltung der alphanumerischen Flüssigkristall-Anzeige.
In deren Datenblättern heißt es, dass man vor einem Schreibzugriff stets das Busy-Flag des Status-Registers testen solle. Die Schreib-/Leseleitung des Moduls war jedoch auf Masse gelegt und wegen vorgeschalteter invertierender Schmitt-Trigger (zur Aufbereitung der über lange Kabel geführten Signale) ließen sich die Register des LCD-Kontrollers nur beschreiben. Bei ausreichend großen Wartezeiten kann man also offenbar auf die Bereitschafts-Überprüfung verzichten. (Mit entsprechendem Interface lassen sich solche Module auch unter BASIC auf Heimrechnern ansteuern.)


Augen auf!

Super-Nintendo wird verramscht

Nintendo hat offenbar seine Lager ausgemistet. Bei Karstadt wurde das More Fun Set 2 (SNES mit Super-Gameboy) jetzt für 69,95 DM angeboten; billiger kriegt man die Sachen wohl nur beim Hehler.


Back to the Roots

Nach einjähriger Pause erschien am 20.2.2000 die KILLER-DRIVE 64 #10, diesmal nur einseitig. In einem Beitrag für dieses C64-Diskmag plädiert Ex-Mumpitz-Leser Mathes Alberto für eine Rückkehr zum Magnetband als Speichermedium.
Die KD gibt's bei [auf Wunsch nachträglich entfernt, 15.2.2009].


Schneller Pfusch

Ein Erfolgstip für die Internet-Wirtschaft

Die große historische Stärke der Deutschen ist auch ihre Schwäche: Genauigkeit bis zur Perfektion. Nicht Qualität zählt vorrangig, Geschwindigkeit ist es. Die Gleichung sieht etwa so aus: 20 Prozent weniger Pedanterie, 5 Prozent weniger Qualität, dafür 25 Prozent mehr Geschwindigkeit - dann werde ich die Internet-Wirtschaft hier nächstes Jahr um diese Zeit nicht mehr wiedererkennen.

Jason McCabe Calcanis,
Herausgeber des New Yorker
Silicon Alley Report
in einem Interview

Die Papierausgabe von Mumpitz gibt es bei Hans-Christof Tuchen, Lotzestr. 10, 12205 Berlin.

Mumpitz-Homepage:
www.schaffi.de/mumpitz

Zurück