PowerPC und x86 haben recht wenig gemeinsam. Großes Problem bei der Emulation ist z.b. little endian <-> big endian.
Das ist aber kein echtes Problem. Ein kleines Assemblerprogramm kann das in kurzer Zeit bewältigen.
Aber wie gesagt, läuft es vermutlich auf eine Neucompilierung hinaus, weshalb das eh nicht notwendig ist.
Wieso sähe die Sache beie einer Neukompilierung anders aus? Das ist genau das was MS und auch RPCS3 machen. Mit Interpretation ist kein Blumentopf zu gewinnen, besonder bei den geringen Performanceunterschieden CPU-seitig bei 360 und BestBox. Es geht nur über PowerPc -> IL -> Recompile nach x86. RPCS3 verwendet als Backend dafür soweit ich das richtig in Erinnerung habe LVVM, bei MS weiss ich es nicht.
Wie willst du ohne Quellcode ein Game neucompilieren ?
Also MS hat Zugriff auf die Quellcodes der AK Games. Aber die Entwickler des RPCS3 doch nicht. Hab mich in die Seite zwar noch nicht eingelesen, aber wie soll das funktionieren? Und wenn sie Zugriff hätten, müssten sie schließlich auch das neu compilierte Game zur Verfügung stellen. Denn mit den Originalgames könnte niemand wie auch bei der ONE was anfangen.
Aber ich werde mal sehen, was da so auf der Seite steht
Und das Runterladen des kompletten Images ist notwendig, damit MS die (Qualitäts-)Kontrolle über den Zustand jedes Spiels hat. U.a. deshalb kommen die Releases auch wöchentlich, so ist im Gegensatz zum Emulator der Original-Box auf der 360 eine ordentliche Emulator-Qualität sichergestellt. Funktioniert ja bisher auch super.
Das verstehe ich jetzt nicht.
Bei der 360 gabs einfach einen XBOX Emulator, den man heruntergeladen hat. Dieser Emulator besaß einfach nur für jedes zu emulierende XBOX Game eine Config-Datei. Man brauchte also nicht bei jedem XBOX Game einen neuen Emulator runterzuladen. Warum sollte das nicht bei der ONE zu 360 Games ähnlich funktionieren wenn die Emulation gleich ablaufen würde ?. Die einzelnen Games sind doch alle identisch, verstehe deshalb nicht was du mit Zustand der einzelnen Games meinst.
Ich denke einfach, dass die 360 Games einfach neu compiliert werden ohne den Gamecode zu verändern. Also nur das Game über einen Crosscompiler jagen, während die original XBOX Games tatsächlich durch den Emulator interpretiert und nicht neu compiliert wurden.
Die GPU in 360 und BestBox sind nicht binärkompatibel. Es ist dort tatsächlich weniger ein Problem, weil die Komplexität dort nicht so hoch wie auf der CPU-Seite.
Sag ich ja. Im Grunde genommen hat die ONE GPU fast alles na Bord,was auch in der 360 GPU stecke. Der Rest ist einfach per Software zu erledigen, was bei dem Leistungssprung auf GPU Seite von mehr als Faktor 5 ggü. der 360 GPU kein Problem darstellt.
Mein letzter Stand bzgl. RPCS3 ist
- PowerPC wird rekompiliert
- SPU werden emuliert, Recompile ist auf der Roadmap
- Shader-Code wird rekompiliert
Wie gesagt, steht das so auf deren Seite ?
Wenn ich in die FAQ schaue steht da nur, dass es aufgrund des propietären Formats schwierig ist, original PS3 Disc ohne PS3 Laufwerk zu lesen. Aber es stehts nichts davon, dass man die Game in neucompilierter Fassung runterladen muss, damit sie auf dem EMU laufen. Und wie gesagt, wie soll eine recompilierung ohne Quellcode funktionieren ?
Die SPEs auf der GPU zu emulieren dürfte aus folgenden Gründen mMn weniger Erfolg haben. Die Abbildung von Ringbus und die Synchronisation zum PowerPc-Core stelle ich mir schwierig vor. Jede SPE einem ACE zuzuordnen mag gehen, dort aber nur einen Thread laufen zu lassen dürfte wenig performant sein.
Ja, die Architektur ist mega kompliziert und hat mit PPE und X86/X64 so mal gar nix zu tun.