
Wie funktioniert das Raspberry Pi Emulator Kit?
Ein Raspberry Pi-Emulator-Kit verwandelt den Einplatinencomputer in ein Gaming-System mit mehreren Konsolen, indem bestimmte Hardwarekomponenten mit Emulationssoftware kombiniert werden, die klassische Gaming-Hardware nachahmt. Das System arbeitet über verschiedene Schichten-auf der physischen Hardware läuft ein Linux-Betriebssystem, das Emulationssoftware hostet, die alten Spielcode in Anweisungen übersetzt, die der Pi ausführen kann.
Das Kit umfasst normalerweise das Raspberry Pi-Board selbst, eine microSD-Karte, auf der Emulationssoftware wie RetroPie vorinstalliert ist, ein Netzteil, Controller und häufig ein Gehäuse mit Kühlkomponenten. Wenn Sie das System einschalten, startet es die EmulationStation, eine grafische Oberfläche, mit der Sie als ROM-Dateien gespeicherte Spiele durchsuchen und starten können.
Die drei-Schichtarchitektur
Um zu verstehen, wie diese Kits funktionieren, müssen drei miteinander verbundene Schichten betrachtet werden, die jeweils spezifische Funktionen übernehmen.
Hardwareschicht: Die Grundlage
Unten befindet sich die physische Raspberry Pi-Platine-am häufigsten der Pi 4 Model B oder der neuere Pi 5. Der Pi 4 verfügt über einen Broadcom BCM2711 Quad-Core ARM Cortex-A72-Prozessor mit 1,8 GHz, gepaart mit 2 GB bis 8 GB LPDDR4-RAM. Der Pi 5 legt mit Cortex-A76-Kernen mit 2,4 GHz und verbesserter Grafikverarbeitung noch einen drauf.
Diese Hardware ist wichtig, da die Emulation rechenintensiv ist. Der Pi muss völlig unterschiedliche Prozessorarchitekturen in Echtzeit simulieren. Ein Super Nintendo verwendete beispielsweise einen 16-Bit-Ricoh-5A22-Prozessor – der Pi musste berechnen, was dieser Chip getan hätte, und die Ergebnisse dann über seine eigene Grafikpipeline rendern.
Die VideoCore-GPU übernimmt das Rendern von Grafiken. Auf dem Pi 4 läuft er mit 500 MHz, während die neue VideoCore VII-GPU des Pi 5 800 MHz erreicht. Diese GPU-Beschleunigung ist entscheidend für ein reibungsloses Gameplay. Ohne sie hätte die ARM-CPU Schwierigkeiten, konstante Bildraten aufrechtzuerhalten, insbesondere bei 3D-fähigen Systemen wie dem Nintendo 64 oder der PlayStation.
Der Speicher erfolgt über microSD-Karten, typischerweise 32 GB bis 128 GB. Hier leben neben dem Betriebssystem auch Game-ROMs (digitale Kopien von Kassettendaten). Schnellere UHS-I- oder UHS{5}}II-Karten verbessern die Ladezeiten und reduzieren das Stottern während des Spiels.
Softwareschicht: Der Emulation Stack
Auf der Hardware läuft eine modifizierte Version des Raspberry Pi OS (basierend auf Debian Linux). Dieses leichte Betriebssystem bildet die Grundlage für Emulationssoftware und minimiert gleichzeitig den Ressourcenaufwand.
Die meisten Kits verwenden RetroPie, eine Software-Distribution, die alles bündelt, was für Retro-Gaming benötigt wird. RetroPie selbst ist kein Emulator-sondern eine Sammlung von Tools, die zusammenarbeiten. Im Mittelpunkt steht RetroArch, ein „Frontend“, das eine einheitliche Schnittstelle für mehrere Emulationskerne bietet.
Diese Kerne sind die eigentlichen Emulatoren. Jeder Kern ahmt ein bestimmtes Spielsystem nach. Beispielsweise emuliert der SNES9x-Kern Super-Nintendo-Hardware, während PCSX ReARMed PlayStation-Spiele verarbeitet. RetroArch lädt den entsprechenden Kern basierend auf dem von Ihnen ausgewählten Spiel, leitet dann Controller-Eingaben weiter und verwaltet die Audio-/Videoausgabe.
Die Beziehung zwischen den Komponenten sieht folgendermaßen aus: EmulationStation (das Menü, das Sie sehen) → RetroArch (das Emulations-Framework) → Einzelne Kerne (systemspezifische Emulatoren) → Ihre Spiele (ROM-Dateien).
Wenn Sie ein Spiel auswählen, teilt EmulationStation RetroArch mit, welcher Kern geladen und welche ROM-Datei ausgeführt werden soll. RetroArch initialisiert diesen Kern, lädt die Spieldaten und beginnt mit dem Emulationsprozess. Ihre Controller-Eingaben werden durch das Eingabesystem von RetroArch in das Format übersetzt, das der Kern erwartet.
Schnittstellenschicht: Nutzbar machen
EmulationStation stellt das visuelle Menüsystem bereit. Es durchsucht Ihre ROM-Verzeichnisse, zeigt nach Konsole geordnete Spielelisten an und zeigt Verpackungsgrafiken oder Screenshots (sofern Sie Metadaten über die Scraping-Funktion heruntergeladen haben). Die Navigation erfolgt über ein Gamepad oder eine Tastatur-keine Maus erforderlich.
Die Konfiguration erfolgt über verschachtelte Menüs. Sie können Videoeinstellungen anpassen, Steuerelemente pro-System oder pro-Spiel neu zuordnen, Cheats aktivieren oder Netzwerkfunktionen konfigurieren. Mit dem Hotkey-System können Sie mitten im Spiel auf diese Optionen zugreifen, indem Sie eine Tastenkombination drücken, normalerweise „Auswahl+Start“, um das RetroArch-Menü zu öffnen.
Durch dieses mehrschichtige Design können Sie einzelne Komponenten austauschen, ohne alles neu erstellen zu müssen. Möchten Sie einen anderen SNES-Emulator? Installieren Sie einen anderen Kern. Bevorzugen Sie ein anderes Frontend? Ersetzen Sie EmulationStation und behalten Sie RetroArch bei. Brauchen Sie mehr Leistung? Rüsten Sie Ihr Pi-Modell auf und übertragen Sie Ihre microSD-Karte.
Wie Emulation tatsächlich geschieht
Wenn Sie ein Spiel starten, laufen in Millisekunden mehrere Prozesse ab. Der Emulatorkern lädt die ROM-Datei in den Speicher, analysiert ihre Struktur, um den Code und die Assets des Spiels zu verstehen, und beginnt dann mit der Ausführung von Anweisungen.
Die Echtzeitübersetzung-ist die größte Herausforderung. Die CPU der Originalkonsole sprach einen anderen Befehlssatz als der ARM-Prozessor des Pi. Der Emulator muss jede Anweisung der Originalhardware interpretieren, herausfinden, was sie tun soll, und dann entsprechende Operationen auf dem Pi ausführen.
Diese Interpretation erzeugt einen Overhead. Für eine genaue Simulation sind für eine SNES-Anweisung möglicherweise 10 oder 20 ARM-Anweisungen erforderlich. Multiplizieren Sie dies mit den Millionen von Anweisungen, die während des Spiels pro Sekunde verarbeitet werden, und Sie sehen, warum die Emulation eine erhebliche Rechenleistung erfordert.
Einige Optimierungen helfen. Bei der dynamischen Neukompilierung (dynarec) werden Blöcke des Originalcodes im laufenden Betrieb in ARM-Code übersetzt und die Ergebnisse zur Wiederverwendung zwischengespeichert. Dies ist viel schneller, als jede Anweisung einzeln zu interpretieren. Nun-optimierte Kerne wie PCSX ReARMed nutzen Dynarec ausgiebig, weshalb die PlayStation-Emulation trotz der relativen Komplexität dieser Konsole reibungslos auf dem Pi läuft.
Die Grafikemulation folgt einem parallelen Weg. Ursprüngliche Konsolen verfügten über dedizierte Grafikchips mit spezifischen Funktionen-Sprite-Handhabung, Hintergrundebenen und Spezialeffekte. Der Emulator muss diese in der Software neu erstellen und die Ergebnisse dann mithilfe von OpenGL ES über die GPU des Pi rendern. Hier wird die GPU-Beschleunigung entscheidend; Software-Rendering allein kann bei anspruchsvolleren Systemen nicht 60 FPS aufrechterhalten.
Audio stellt ähnliche Herausforderungen dar. Der Emulator simuliert das Verhalten des Soundchips und erzeugt Wellenformen, die der Ausgabe der Originalhardware entsprechen. Dieser Audiostream wird dann durch das Audio-Subsystem des Pi geleitet, sei es HDMI-Audio, die Kopfhörerbuchse oder Bluetooth zu drahtlosen Lautsprechern.

Leistungsgrenzen
Nicht alle Systeme emulieren gleich gut. Der Pi 4 kommt hervorragend mit 8-Bit- und 16-Bit-Konsolen zurecht – NES, SNES, Genesis und Game Boy laufen alle mit voller Geschwindigkeit und Genauigkeit. PlayStation 1-Spiele funktionieren größtenteils gut, einige Titel zeigen jedoch bei komplexen Szenen eine Verlangsamung.
Die Nintendo 64-Emulation stößt an Leistungsgrenzen. Selbst auf leistungsstarken PCs war es bekanntermaßen schwierig, die Architektur dieses Systems genau zu emulieren. Der Pi 4 kann einige N64-Spiele mit reduzierten Genauigkeitseinstellungen mit spielbarer Geschwindigkeit ausführen, anspruchsvolle Titel wie Rogue Squadron bleiben jedoch abgehackt. Hier helfen die verbesserten Spezifikationen des Pi 5, mit Berichten über eine bessere N64-Kompatibilität, obwohl er immer noch nicht perfekt ist.
Die Dreamcast-Emulation ist auf dem Pi 5 mit dem Redream-Emulator vielversprechend. PlayStation 2, GameCube und Wii bleiben weitgehend unerreichbar-diese Systeme sind einfach zu komplex für die Fähigkeiten des Pi. Ihre Multi-Prozessor-Architektur und ihre anspruchsvolle Grafik erfordern eine beträchtliche Leistung, die selbst der Pi 5 nicht konstant liefern kann.
Laut Tests von Tom's Hardware können die Bildraten bei anspruchsvollen PlayStation-Titeln auf dem Pi 4 merklich sinken, bei Kampfspielen kommt es zu Rucklern beim Tastendruck. Aktuelle Benchmarks auf dem Pi 4 zeigen eine reibungslose Leistung mit richtig optimierten Titeln, insbesondere für 2D- und weniger anspruchsvolle 3D-Spiele.
Der Pi 5 bringt messbare Verbesserungen. Unabhängige Tests zeigen, dass der Pi 5 die Game Boy Advance-, N64-, Dreamcast- und PSP-Emulation mit verbesserter Konsistenz im Vergleich zu früheren Modellen beherrscht. Technische Optimierungen wie die NUMA-Emulation können die Multi-Core-Leistung auf dem Pi 5 um bis zu 18 % steigern, allerdings erfordern solche Optimierungen Kernel-Änderungen, die über typische Benutzerkonfigurationen hinausgehen.
Das Controller-Übersetzungssystem
Der Controller-Unterstützung gebührt besondere Aufmerksamkeit, da sie häufig missverstanden wird. Wenn Sie RetroPie zum ersten Mal starten, werden Sie aufgefordert, einen Controller zu konfigurieren, indem Sie die einzelnen Tasten-D-Pad-Richtungen, Gesichtstasten, Schultertasten, Start/Auswahl und eine Taste zum Aktivieren des Hotkeys drücken.
Diese Erstkonfiguration ordnet Ihren physischen Controller dem Menüsystem von EmulationStation zu und erstellt ein Basisprofil für RetroArch. RetroArch generiert dann automatisch Controller-Konfigurationen für jeden Emulatorkern basierend auf diesem Profil.
Aber hier wird es interessant: Verschiedene Konsolen hatten unterschiedliche Tastenlayouts. Ein SNES-Controller hatte vier Gesichtstasten und zwei Schultertasten. Ein PlayStation-Controller fügte zwei weitere Schultertasten und Analogsticks hinzu. Ein Genesis-Controller hatte zunächst nur drei Gesichtstasten.
Die Controller-Abstraktionsschicht von RetroArch ordnet die Tasten Ihres modernen Controllers den Erwartungen des ursprünglichen Systems zu. Wenn Sie eine PlayStation DualShock 4 mit 16 Tasten verwenden, um ein NES-Spiel zu spielen, das nur 4 Tasten verwendet, ignoriert RetroArch die zusätzlichen Eingaben einfach, es sei denn, Sie haben sie speziell Emulatorfunktionen wie Speicherstatus oder Schnellvorlauf zugeordnet.
Pro-Spiel ist eine Neuzuordnung möglich. Wenn sich ein bestimmter Titel mit der Standardzuordnung als unangenehm anfühlt, können Sie während des Spiels das RetroArch-Menü aufrufen und die Steuerung nur für dieses Spiel neu konfigurieren. Die Änderungen werden automatisch gespeichert.
USB-Controller funktionieren Plug-{0}}und-nach der Erstkonfiguration. Bluetooth-Controller müssen über das Bluetooth-Setup-Menü von RetroPie gekoppelt werden, das durch die Erkennung und Verbindung führt. Nach der Kopplung stellen Bluetooth-Controller beim Booten automatisch wieder eine Verbindung her.
Speicher- und Dateiverwaltung
Die Struktur der microSD-Karte ist unkompliziert, aber wichtig zu verstehen. Die /boot-Partition enthält den Linux-Kernel und die Boot-Konfigurationsdateien. Die Hauptpartition enthält das Betriebssystem, die RetroPie-Software und Ihre ROMs.
ROM-Dateien befinden sich in /home/pi/RetroPie/roms/, mit Unterverzeichnissen für jedes System-nes/, snes/, psx/ usw. EmulationStation scannt diese Verzeichnisse beim Start und zeigt alles an, was es findet.
ROMs auf den Pi zu bekommen, geschieht auf verschiedene Arten. Die USB-Methode ist am einfachsten: Erstellen Sie einen Ordner mit dem Namen „retropie“ auf einem FAT32-formatierten Flash-Laufwerk, schließen Sie ihn an den Pi an, warten Sie eine Minute, während er die Ordnerstruktur erstellt, entfernen Sie ihn dann und kopieren Sie ROMs in die entsprechenden Konsolenordner auf Ihrem Computer. Schließen Sie es wieder an den Pi an, warten Sie auf die Übertragung und starten Sie neu.
Die Netzwerkübertragung funktioniert über Samba (Windows-Dateifreigabe). Von einem anderen Computer in Ihrem Netzwerk aus können Sie auf \\\\retropie zugreifen und die ROM-Ordner direkt sehen. Ziehen Sie die Dateien nach Bedarf per Drag-and-Drop und starten Sie dann EmulationStation neu, um die Spielelisten zu aktualisieren.
Einige Systeme erfordern BIOS-Dateien-Binärcode von der Originalhardware, die für eine genaue Emulation erforderlich ist. Für die PlayStation-Emulation ist beispielsweise das PS1-BIOS erforderlich. Diese Dateien befinden sich in /home/pi/RetroPie/BIOS/. Ohne sie werden viele Spiele nicht geladen.
Speicherstände unterscheiden sich von -Spielständen. In-Spielspeicherungen funktionieren genauso wie auf der Originalhardware und werden in den Speicherdaten des ROM gespeichert. Speicherstatus sind Emulatorfunktionen, die jederzeit eine Momentaufnahme des gesamten Systemstatus erstellen. Sie können diese sofort speichern und laden, auch in Spielen, die nie über eine Speicherfunktion verfügten. RetroArch speichert diese in /home/pi/RetroPie/retroarch/states/.
Energie- und Wärmemanagement
Die Leistungsabgabe wirkt sich stärker auf die Leistung aus, als vielen bewusst ist. Der Pi 4 benötigt ein 5V/3A (15W) Netzteil; Der Pi 5 benötigt 5V/5A (25W) für einen stabilen Betrieb, insbesondere bei anspruchsvoller Emulation. Eine unzureichende Leistung führt zu einer Drosselung. -Das System reduziert automatisch die Taktrate, um Instabilität zu verhindern, was zu einer Verlangsamung während des Spiels führt.
Der Pi verfügt nicht über einen Power-Knopf im herkömmlichen Sinne. Durch Anschließen an die Stromversorgung wird es eingeschaltet. Für ein ordnungsgemäßes Herunterfahren ist es erforderlich, im Menü der EmulationStation „System herunterfahren“ auszuwählen, das vor der Stromunterbrechung ein sauberes Herunterfahren durchführt. Wenn Sie einen laufenden Pi einfach vom Stromnetz trennen, besteht die Gefahr, dass Ihre microSD-Karte beschädigt wird.
Bei längeren Spielsitzungen wird Hitze zum Faktor. Der Pi 4 erzeugt unter Last erhebliche Wärme. Tests haben gezeigt, dass es ohne ausreichende Kühlung zu thermischer Drosselung kommen kann. Gehäuse mit eingebauten-Lüftern oder Kühlkörpern verhindern dies. Der Pi 5 wird aufgrund seiner gesteigerten Leistung noch heißer, sodass eine aktive Kühlung für eine konsistente Emulation praktisch zwingend erforderlich ist.
Durch Übertakten wird der Pi über seine Standardgeschwindigkeit hinaus beschleunigt, um eine bessere Leistung zu erzielen. Dadurch erhöht sich sowohl die Leistungsaufnahme als auch die Wärmeabgabe. Jüngste Optimierungen der SDRAM-Timings auf dem Pi 5 führten zu Geschwindigkeitsverbesserungen von 10–20 % bei Standardtakten, wobei vorsichtiges Übertakten bis zu 32 % Steigerungen bei 3,2 GHz erreichte. Solche Modifikationen erfordern eine ausreichende Kühlung und bergen das Risiko der Instabilität.

Alternative Emulationsplattformen
Während RetroPie dominiert, gibt es Alternativen mit unterschiedlichen Philosophien. Recalbox legt Wert auf Benutzerfreundlichkeit mit mehr Automatisierung, aber weniger Anpassung. Lakka bietet ein leichtes, konsolenähnliches Erlebnis mit LibreELEC als Basis. Batocera bietet umfassende Plattformunterstützung und integrierte-Game-Streaming-Funktionen.
Jüngste Plattformvergleiche auf dem Pi 5 zeigen, dass Batocera solide Unterstützung für mehrere Konsolen mit einer Controller-Konfiguration für 8{3}Spieler bietet, während Lakka sich durch unkomplizierte Emulation mit einer PlayStation-inspirierten Benutzeroberfläche auszeichnet. Jede Plattform geht unterschiedliche Kompromisse zwischen Einfachheit und Flexibilität ein.
Die grundlegende Architektur bleibt plattformübergreifend ähnlich-Linux-Basis, RetroArch-Framework, mehrere Emulatorkerne. Die Unterschiede liegen im Schnittstellendesign, den enthaltenen Funktionen und den Konfigurationsansätzen. Benutzer, die mehr Kontrolle wünschen, tendieren zu RetroPie, während diejenigen, die Plug-{3}}und{4}}Einfachheit wünschen, möglicherweise Recalbox bevorzugen.
Wenn die Dinge nicht funktionieren
Leistungsprobleme haben in der Regel mehrere gemeinsame Ursachen. Unterversorgte Netzteile führen zu zufälligen Abstürzen oder Verlangsamungen. Langsame microSD-Karten verursachen beim Laden von Leveln Ruckler. Überhitzung löst eine Drosselung aus, die sich in plötzlichen Frame-Einbrüchen äußert.
Wenn ein bestimmtes Spiel nicht geladen werden kann, sind in der Regel falsche ROM-Formate die Ursache. Verschiedene Emulatorkerne unterstützen unterschiedliche Dateiformate. PlayStation-Spiele liegen möglicherweise in den Formaten .bin/.cue, .chd oder .pbp vor.-Nicht alle Kerne lesen alle Formate. Ein Blick in die Dokumentation des Kernels zeigt, welche Formate erwartet werden.
Einige Spiele erfordern spezielle Emulatorkerne. Neo Geo-Spiele benötigen sowohl das Spiel-ROM als auch die Neo Geo-BIOS-Datei, um zu funktionieren. Arcade-ROMs müssen mit der MAME-Version übereinstimmen, die der Emulator erwartet.-Die Verwendung eines ROM-Sets, das für MAME 0.78 entwickelt wurde, mit MAME 2003 Plus funktioniert nicht.
Controller-Probleme sind oft auf die Hotkey-Konfiguration zurückzuführen. Wenn Tasten in Spielen scheinbar nicht reagieren, liegt das häufig daran, dass gleichzeitig die Hotkey-Aktivierungstaste gedrückt wird, wodurch RetroArch in einen Modus versetzt wird, in dem es auf Emulatorbefehle wartet, anstatt Eingaben an das Spiel weiterzuleiten.
Häufig gestellte Fragen
Kann ich jedes Raspberry Pi-Modell zur Emulation verwenden?
Während jeder Pi technisch funktioniert, ist der Pi 4 mit mindestens 2 GB RAM das praktische Minimum für eine gute Leistung auf den meisten Systemen. Frühere Modelle haben mit allem, was über 8-Bit-Konsolen hinausgeht, Probleme. Für eine komfortable Emulation von Systemen jenseits der NES-/Game-Boy-Ära ist der Pi Zero zu schwach.
Benötige ich Original-Spielekassetten, um Emulator-Kits legal nutzen zu können?
Die Urheberrechtsgesetze rund um ROMs variieren je nach Gerichtsbarkeit. Der sicherste Ansatz besteht darin, nur Spiele zu verwenden, von denen Sie persönlich physische Kopien besitzen. Allerdings unterscheiden sich Durchsetzung und rechtliche Klarheit je nach Region erheblich. RetroPie enthält keine urheberrechtlich geschützten Inhalte-Sie müssen Ihre eigenen Spieldateien bereitstellen.
Kann ich nach der Ersteinrichtung Spiele hinzufügen?
Ja, das Hinzufügen von ROMs ist unkompliziert per USB-Übertragung oder Netzwerk-Dateifreigabe. Platzieren Sie ROM-Dateien im entsprechenden Konsolenordner unter /home/pi/RetroPie/roms/ und starten Sie dann EmulationStation neu, um die Spieleliste zu aktualisieren.
Wie viel Speicherplatz benötige ich?
Eine 32-GB-microSD-Karte enthält Hunderte von 8-Bit- und 16-Bit-Spielen. PlayStation- und N64-Spiele benötigen mehr Speicherplatz – etwa 500 MB pro PS1-Spiel, 10–50 MB für N64-Titel. Eine 64-GB-Karte bietet komfortablen Platz für eine vielfältige Bibliothek über mehrere Systeme hinweg.
Blick auf das Gesamtsystem
Die Eleganz von Raspberry Pi-Emulator-Kits liegt darin, wie relativ einfache Komponenten zu einer leistungsfähigen Retro-Gaming-Lösung kombiniert werden. Der ARM-Prozessor des Pi wurde nicht für die Emulation entwickelt, doch durch clevere Softwareentwicklung und Hardwareoptimierung reproduziert er Spielerlebnisse von Systemen, die völlig andere Architekturen verwendeten.
Der modulare Charakter bedeutet, dass sich das System schrittweise verbessert. Es erscheinen regelmäßig bessere Emulatorkerne, die für mehr Genauigkeit oder Leistung sorgen. Firmware-Updates erweitern die Fähigkeiten des Pi. Sie können einzelne Komponenten-eine schnellere microSD-Karte, ein leistungsstärkeres Pi-Modell, verschiedene Controller-aufrüsten, ohne von vorne beginnen zu müssen.
Für jemanden, der diese Kits verstehen und nicht nur verwenden möchte, ist die wichtigste Erkenntnis, dass die Emulation mehrere Abstraktionsebenen umfasst, die jeweils zwischen verschiedenen Darstellungen derselben Sache übersetzen. Das Spiel denkt, dass es auf seiner Original-Hardware läuft, aber in Wirklichkeit läuft es auf einer Software, die diese Hardware simuliert, die ihrerseits auf völlig anderer physischer Hardware läuft. Die ausreichende Rechenleistung des Raspberry Pi in Kombination mit der über Jahrzehnte verfeinerten Open-{2}Source-Emulationssoftware macht diese Übersetzung schnell genug für Echtzeit-Gaming.
Diese Kombination aus erschwinglicher Hardware und ausgereifter Software erklärt, warum „Schaff dir einfach einen Pi“ zu einem gängigen Ratschlag für Retro-Gaming-Enthusiasten geworden ist. Auch wenn es nicht perfekt ist-einige Systeme bleiben über ihre Möglichkeiten hinaus-Der Pi schafft ein bemerkenswertes Gleichgewicht zwischen Kosten, Leistung und Zugänglichkeit für die Erhaltung und den Genuss klassischer Spiele.




