1 Punkte von GN⁺ 2024-07-30 | 1 Kommentare | Auf WhatsApp teilen

Das Design des Super-Nintendo-Videosystems

Das Innere eines Fernsehers Anfang der 90er
  • Das Super Nintendo gibt Video auf einem Standard-Fernsehgerät aus
  • Der Fernseher empfängt analoges TV-Signal (NTSC) über eine Antenne, nimmt das Signal über einen Tuner auf und zeigt das Bild auf einer CRT (Kathodenstrahlröhre) an
  • Der Fernseher verfügt über einen Zusatzeingang (AUX); ein Standard-Fernsehgerät hat Composite-Anschlüsse (gelb) für das Videosignal und separate Buchsen (weiß und rot) für das Stereo-Audiosignal
Funktionsweise einer CRT
  • Eine CRT arbeitet mit 15 kHz und zeichnet etwa 15.000 Zeilen pro Sekunde
  • Im Inneren der CRT befinden sich drei Elektronenkanonen, die Elektronen immer geradeaus schießen; zwei Magnetsätze (vertikal und horizontal) lenken die Elektronen nach oben und unten sowie nach links und rechts
  • Eine CRT hat keine Pixel; die von den Elektronenkanonen ausgesandten Elektronen treffen immer auf den richtigen Farbstreifen
Wie eine CRT gesteuert wird
  • Eine CRT verarbeitet rote, grüne und blaue Signale, die mit den jeweiligen Elektronenkanonen verbunden sind
  • Synchronisationssignale (HSYNC und VSYNC) werden über einen einzelnen weißen Draht übertragen; das nennt man Composite-Sync (CSYNC)
  • Die CRT verarbeitet die Signale und versucht, die Elektronenkanonen zu synchronisieren
Wie eine CRT ein Bild zeichnet
  • Eine CRT zeichnet Zeilen von links nach rechts
  • Bei einem HSYNC-Ereignis kehrt sie zur linken Seite des Bildschirms (X=0) zurück, bei einem VSYNC-Ereignis zum oberen Rand des Bildschirms (Y=0)
  • Während sie sich nach rechts bewegt, sinkt sie leicht nach unten und zeichnet die Zeile
Der Schlüssel zum Verständnis einer CRT
  • Der entscheidende Punkt bei einer CRT ist, zu verstehen, dass sich die Elektronenkanone nach rechts bewegt und dabei nach unten sinkt
  • Wenn VSYNC gleichzeitig mit dem letzten HSYNC auftritt, wird die Zeile immer an derselben Position des Bildschirms gezeichnet
  • Wenn VSYNC zwischen zwei HSYNCs auftritt, werden die Zeilen versetzt bzw. überkreuzt gezeichnet
Was innerhalb einer Zeile passiert
  • Beim Zeichnen der Zeilen arbeitet die CRT digital, aber der Inhalt innerhalb der Zeile ist analog
  • Die drei Elektronenkanonen sind direkt mit den RGB-Leitungen verbunden, und das System kann die Farbsignale frei verändern
Umgang in bestehenden Systemen
  • Die SNES-Designer mussten ein Signal liefern, das eine CRT verarbeiten konnte
  • Die NTSC-Signalspezifikation musste eingehalten werden
  • Seitenverhältnis 4:3, 262,5 Zeilen pro Feld, 341,25 Punkte pro Zeile, Feldfrequenz 59,94 Hz
Nintendo-Ingenieur werden
  • Nachdem verstanden war, wie eine CRT funktioniert, musste ein Videosystem entworfen werden
  • Es wurden 262 Zeilen verwendet, um einen Progressive-Mode zu erzeugen, mit einer Ziel-Bildrate von 59,94 Hz
  • Zur Anpassung an das Seitenverhältnis 4:3 wurden 350 Punkte verwendet, wofür ein Dot-Clock von 5.496.498 Hz nötig war
Problemlösung
  • Ein Dot-Clock von 5.496.498 Hz konnte nicht verwendet werden
  • Es musste ein Master-Oszillator verwendet werden, den die Subsysteme über Frequenzteiler nutzen
  • Das Overscan-Problem musste gelöst werden
Einführung von Overscan
  • Wenn die Elektronenkanone beim horizontalen oder vertikalen Reset weiter Elektronen aussendet, entstehen sichtbare Artefakte
  • Fernseher nutzen Overscan, sodass das Bild etwas größer als der sichtbare Bildschirmbereich dargestellt wird
  • Nach VSYNC und HSYNC ist eine Zeit nötig, in der die Elektronenkanone stoppt
Wahl der vertikalen SNES-Auflösung
  • Konkurrenzsysteme verwendeten 224 sichtbare Zeilen
  • Nintendo teilte 262 Zeilen in 224 sichtbare Zeilen und 38 leere Zeilen auf
Wahl der horizontalen SNES-Auflösung
  • Es wurden 262 Zeilen verwendet, und mit einem Master-Clock von 21.47727 MHz wurde ein Dot-Clock von 5.3693175 MHz erzeugt
  • Mit 341 Punkten wurde eine Bildrate von 60.098 Hz erreicht
Wahl des horizontalen Overscan beim SNES
  • Von 341 Punkten wurden 256 sichtbare Punkte verwendet, und 85 Punkte dienten als HBLANK
  • Das Bildseitenverhältnis beträgt 8:7, was zu einer leichten Verzerrung führt
Hochauflösender Modus: Interlacing
  • Die vertikale Auflösung kann auf 448 Zeilen verdoppelt werden
  • Die horizontale Auflösung zu verdoppeln ist schwierig
PAL und NTSC
  • In Europa wurde statt NTSC PAL verwendet, in Frankreich SECAM
  • PAL verwendet eine Bildrate von 50 Hz und 312,5 Zeilen pro Feld
  • Die PAL-Version des SNES verwendet einen Master-Clock von 17.7344750 MHz
  • Die sichtbare Auflösung beträgt 224 Zeilen und 256 Punkte, bei einer Bildrate von 50.00697891 Hz
Ausgabe
  • Das SNES wandelt das CRT-Signal in Composite und S-Video um
  • Über den AV-Anschluss liefert es reine RGB/CSync-Signale, Composite-Signale und S-Video-Signale

Zusammenfassung von GN⁺

  • Dieser Artikel erklärt den Entwurfsprozess des Super-Nintendo-Videosystems und behandelt die Funktionsweise von CRTs sowie die Signalverarbeitung
  • Anhand des Verständnisses von CRT-Verhalten und Signalverarbeitung werden die Designentscheidungen des SNES-Videosystems erklärt
  • Der Artikel ist nützlich für Menschen, die sich für das Hardware-Design von Videospielkonsolen interessieren, und hilft dabei, die Geschichte und Funktionsweise der CRT-Technologie zu verstehen
  • Ähnliche Projekte mit vergleichbaren Eigenschaften sind Sega Genesis und Neo-Geo AES

1 Kommentare

 
GN⁺ 2024-07-30
Hacker-News-Kommentar
  • 224 ist durch 16 teilbar und passt daher gut zur Tilemap der Grafik-Rendering-Pipeline

    • CGA/EGA/VGA hatten alle einen 320x200-Modus
    • Das NES hatte 256x224, und beim SNES war es genauso
    • Pac-Man hatte in der Arcade 288x224
    • Pac-Man-Klone auf dem PC sahen immer seltsam aus
    • Verstanden habe ich das erst, nachdem ich die Details der Hardware gelernt hatte
    • Die Pixel sind bei PC-Auflösungen nicht quadratisch
    • Wenn ich mir Pac-Man-Ports oder -Klone ansah, versuchte ich immer, die Weltgröße, Tile-Größe und Sprite-Größe herauszufinden
  • 59,94 Hz ist eine seltsame Zahl

    • Nordamerika und einige andere Regionen nutzen ein 60-Hz-Stromnetz
  • Das 8:7-Seitenverhältnis des Artworks sieht man bei auf andere Plattformen portierten SFC/SNES-Spielen

    • PSX-/Saturn-/PC-Versionen behalten die Originalgrafik bei und fügen Padding auf 4:3 hinzu
    • Wenn man Screenshots der Saturn-Version ansieht, wirkt alles ein wenig zu schmal
  • Bei europäischen Spielen erfolgt VSYNC bei 50,00697891 Hz, wodurch Spiele 17 % langsamer laufen als beabsichtigt

    • Ich war enttäuscht, als ich Sonic the Hedgehog zum ersten Mal auf dem Mega Drive spielte
    • Den Geschwindigkeitsunterschied zwischen NTSC und PAL habe ich erst durch YouTube kennengelernt
    • Auch die Musik klingt auf PAL furchtbar
    • DooM auf dem SNES hatte in der NTSC-Version einen größeren Bildschirmbereich
    • Ich war gut in Punch-Out auf dem NES, aber hätte ich in den USA angetreten, wäre ich in der ersten Runde ausgeschieden
  • Im TFA gibt es einen Tippfehler; ein 8:6-Verhältnis ist dasselbe wie 4:3

    • Ich habe den RF-Ausgang genutzt, um zwischen dem SNES und der TV-Antenne umzuschalten
  • Die Ausgaberesolution 256x224 (8:7) wird zu einem 4:3-Bild skaliert

    • Die Dot-Clock des SNES ist langsamer als die Pixel-Clock mit quadratischen Pixeln im ATSC-Standard
    • Die Pixel werden horizontal um 8/7 gestreckt, sodass die 8:7-Auflösung auf 64:49 erweitert wird
    • 224*(4/3) = 298 sichtbare Dots
    • 224*(7/6) = 261,33... sichtbare Dots kommt dem näher
  • Ich frage mich, ob es Emulatoren gibt, die das Erscheinungsbild eines CRT exakt simulieren

    • Mit GPU-Shadern sollte das aus Performance-Sicht möglich sein
  • Ich hatte mir Einsichten dazu erhofft, wie dadurch ikonisches Game-Design entstanden ist

    • Ich liebte das SNES, konnte meine Eltern aber nicht davon überzeugen
    • Danke fürs Schreiben. Sehr interessant