Also das ein von privaten geschriebener Emulator viele Ressourcen braucht, sehe ich jetzt nicht gerade als Beweis für eine gute Arbeit an.
Als eine gute Umsetzung sehe ich die Xbox One die die 360 emuliert.
Dazu muss man noch sagen das man hier für einen Nintendo Titel auch Geld zahlt.
Da ist es mir egal ob es eine Emulation ist.
Nintendo verkauft hier eine Software die mehrfach ihre Entwicklungskosten wieder eingebracht haben und verlangt hier 5-10€.
Da erwarte ich schon ein bisschen Hirnschmalz damit es gut läuft.
Nintendo spricht ja nicht von einer Emulation sondern von der Rechenleistung des New3DS das benötigt wird um ein Spiel in echter SNES Qualität abzuliefern.
Vielleicht hab ich mich irgendwie falsch ausgedrückt. Wie mir scheint, sind sich die meisten hier nicht über den Unterschied einer Emulation und eines nativen Programms im Klaren. Ich nannte als Beispiel die Bibliothek des 68000er Prozessor, wie ihn der Mega Drive verwendet. Nochmal: Diese Blibliothek gilt als *effizient*, nicht als langsam und sie benötigt dennoch die zigfache Rechenleistung des Originals.
Das liegt daran, dass man bei einer Emulation die Umgebung eben "emuliert". Ein x86-Prozessor versteht keine 68000er Befehle, also werden diese softwareseitig emuliert. Das ist selbst bei höchstmölicher Optimierung immer schnarchlangsam im Vergleich zu einer Hardwarelösung. und benötigt dementsprechend viel mehr Leistung. Wer das nicht glaubt kann gerne mal versuchen die Echtzeiteffekte eines 200MHz schnellen DSPs aus der Audiotechnik zum einen nativ nachzubilden, zum anderen den DSP zu emulieren. Um es kurz zu machen: schon die Nachbildung benötigt VIEL mehr Rechenleistung, die Emulation wiederum ein Vielfaches davon. Damit sind selbst Mehrkern-"GHz-Monster" ausgelastet. Und das Gleiche gilt eben auch für andere Systeme wie das SNES. Du kannst >200MHz haben und trotzdem Probleme bekommen, du kannst aber auch 100 MHz haben und es funktioniert prima. Da spielen sehr viele Faktoren eine Rolle und darunter fallen bestimmt keine MHz-Vergleiche.
Selbst wenn Nintendo nicht von einer Emulation spricht, ist es eine, ansonsten müsste man nämlich den Code neu bauen. Das wäre vollkommen sinnlos. Sinnvoller ist es, um den Code herum einen Emulator zu bauen. Dieser wird definitiv viel mehr Leistung als ein SNES brauchen und im Vergleich zu nativen Programmen wie Ocarina schnarchlangsam laufen.
Ob es trotzdem möglich wäre... keine Ahnung, vielleicht, vielleicht auch nicht, aber das kann hier garantiert keiner beantworten. Und wenn doch hätte ich gerne Einzelheiten, wie man Register und DMA-Zugriffe usw. umsetzen sollte, rein aus Interesse natürlich.
Wie man das bei MS gelöst hat, weiß ich nicht, siehe oben: Das hängt von vielen Faktoren ab, MS hat wohl einen guten Weg gefunden.
