Sega Genesis und Sega CD Interaktion

Aug 15 2020

Sega muss vor der Veröffentlichung von Genesis über die Aktualisierbarkeit nachgedacht haben, da sich rechts von der Einheit ein Erweiterungssteckplatz befindet, wenn man ihn von vorne betrachtet. Ist dies der einzige Erweiterungssteckplatz? Ist es Teil einer Standard- oder einer maßgeschneiderten Sega-Implementierung?

Hier ist eine Vermutung, wie die Spiele geladen werden. Für die Genesis startet der 68000 an der Adresse 0h, an der ein ROM vorhanden ist, der ihn initiiert und dann das Kassettenspiel startet. Wenn die Sega-CD verwendet wird, startet ihre 68000 bei Adresse 0h, dies ist jedoch ein ROM innerhalb der Sega-CD, und dann wird ein CD-Spiel gestartet. Wenn Sie also die Sega-CD verwenden, kann keine Kassette vorhanden sein, sonst lädt die Genesis diese automatisch?

Tut der Genesis 68000 etwas, wenn die Sega-CD ein Spiel spielt? Wenn ja, ist eine Synchronisation erforderlich, und wenn ja, wie wird dies durchgeführt? Welche Genesis-Ressourcen nutzt die Sega-CD im weiteren Sinne?

Eine geschichtliche Antwort darauf, wie die Sega-CD beim Booten funktioniert, erleichtert möglicherweise das Verständnis.

Antworten

7 knol Aug 16 2020 at 09:51

So beantworten Sie die erste Hälfte Ihrer Fragen:

Der 60-polige Erweiterungssteckplatz auf der rechten Seite ist maßgeschneidert und nur für Mega Drive / Genesis 1 und 2 verfügbar. Es ist in Genesis 3 oder Nomad nicht vorhanden.

Es legt die Adress- und Datenbusse und viele andere Signale frei. In dieser Hinsicht ist es dem 86-poligen Erweiterungssteckplatz auf der linken Seite eines Amiga 500 (und der 56-poligen Falltür) sehr ähnlich, aber nicht kompatibel.

Es gibt einen zweiten Erweiterungssteckplatz mit der Bezeichnung EXT, der nur bei frühen Mega Drive 1s zu finden ist. Es handelt sich um eine DE-9-Buchse, die den Front-Controller-Anschlüssen ähnelt. ist programmierbar und kann als serielle Schnittstelle fungieren. Es gibt nur sehr wenige Peripheriegeräte, die für diesen Port entwickelt wurden. Das wichtigste ist das Mega-Modem , das exklusiv in Japan erhältlich ist.

Auf dem Sega Multi-Mega sind die beiden 68000 diskret, wie auf diesem Foto aus Wikipedia gezeigt .

- -

Ihre Annahme über das Booten ist falsch. Wenn eine Sega-CD installiert ist, ändert sich die Speicherzuordnung. Die Sega-CD übernimmt das Eigentum an$000000-$3FFFFF bewirkt, dass das System beim Einschalten in das Sega CD-BIOS bootet und der Adressraum des 4-Megabyte-Kassettensteckplatzes wird $400000-$7FFFFF.

- -

Laut Christian Schillers FAQ zur Mega-CD-Programmierung :

Beide 68k-Prozessoren laufen gleichzeitig. Nur der Genesis 68k hat Zugriff auf die VDP- und Soundregister des Genesis-Soundchips. Damit bleiben nur drei Aufgaben für die 68k des SCD:

  1. Zugriff auf das CD-Laufwerk,
  2. Zugriff auf die benutzerdefinierten Chips und
  3. Computing. Das 68k des SCD (oder der spezielle Grafikchip) übernimmt beispielsweise das Zoomen und Drehen des gesamten Sprites / Spielfelds in Spielen wie Sonic CD oder Thunderhawk. Dann lädt der Genesis 68k die vorberechneten Daten einfach über den Anschluss (der einfach "nur" ein zweiter Kassettenanschluss ist) herunter und zeigt sie auf dem Bildschirm an.

Stellen wir uns vor, wir laden einige Bitmap-Grafiken von der CD, um sie auf dem Bildschirm anzuzeigen. Wir müssten Folgendes tun:

  1. Geben Sie einen Ladebefehl ein, um die gfx-Datei in den CD-Puffer zu laden
  2. Kopieren Sie die gfx aus dem CD-Puffer in den Hauptspeicher (512 KB?) des CD-Prozessors
  3. Vielleicht drehen / zoomen Sie die gfx mit dem CD-Grafikchip ...
  4. Haupt-RAM auf Genesis-CPU umschalten
  5. Kopieren Sie gfx-Daten vom Haupt-RAM in das Genesis-RAM
  6. Kopieren Sie gfx-Daten aus dem Genesis-RAM in den VDP-RAM, um sie auf dem Bildschirm anzuzeigen.