Skip to content
DieMilchgebendeKuh DEEN
Get Plus Log in
Decompilation & PortsRe-/DecompilationGX 56New

Mission: Impossible (N64) – deutsche Recompilation als PC-Port

Die deutsche N64-Fassung von Mission: Impossible als PC-Port: 60 Bilder pro Sekunde, Breitbild, Maus und Tastatur. Du brauchst nur deine eigene ROM, den Rest erledigt das Einrichtungsprogramm.

5 min
Download FavoriteBell
Text width

Text width

Applies to all posts, saved in this browser.

Mission: Impossible RecompilationN641998PC-PortDownload: Mission: Impossible (N64) – Deutsche Recompilation

This post is only available in German. Your browser can translate it for you. · Deutsch

Mission: Impossible erschien 1998 fĂŒr das Nintendo 64, in Deutschland mit eigener Fassung: deutsche Texte, deutsche Sprachausgabe, alles lokalisiert. Eine recomp gibt es schon, nur eben nicht fĂŒr die deutsche Version (oh, Wunder …). Das habe ich geĂ€ndert. Hier nun mein PC-Port: hohe Auflösung, Breitbild, Maus und Tastatur und 60 Bilder pro Sekunde statt der 50 Hz der deutschen PAL-Fassung. Möglich macht das statische Rekompilierung, dazu unten mehr. Du brauchst nur deine eigene deutsche ROM, den Rest erledigt das Einrichtungsprogramm. Das Zielen habe ich sogleich auch angepasst, sodass es sich nicht mehr anfĂŒhlt, als wĂŒrde man mit einer stumpfen Pinzette versuchen, ein Haar aus einer Frikadelle zu operieren.

Download und Voraussetzungen

Was du brauchst

  • Die deutsche N64-ROM von Mission: Impossible, als Abbild deines eigenen Moduls. PrĂŒfsumme (SHA-1): 906ffab2f8e8eece17e0846ffbd9ea32370206da. Andere Fassungen (US, andere EU-Sprachen) erkennt die Einrichtung und lehnt sie ab. FĂŒr die US-Fassung gibt es ja mi_n64_exe.
  • Windows, 64 Bit.
  • Eine Grafikkarte mit DirectX 12 oder Vulkan.

Das war’s. Ordner entpacken, Einrichtung.exe starten, ROM auswĂ€hlen, Zielverzeichnis angeben. Das Übersetzen dauert je nach Rechner ein paar Minuten, danach ist alles fertig.

Download

Mission: Impossible (N64) – Deutsche Recompilation

Mission: Impossible (N64) – German Recompilation

Open on YouTube
  • Version 1.0 Free

    Windows · .zip · 123.0 MB · Nov 3, 2026

    Checksum

    SHA-256ccba14301d3aa773be64cda3a1548b500b8de0461bd5fdfe767f069e08a1cb58

So funktioniert die Rekompilierung

Ein Emulator tut so, als wĂ€re er ein N64: Er liest die Befehle des Spiels einzeln, wĂ€hrend es lĂ€uft, und fĂŒhrt sie nach. Das klappt, bleibt aber eine Dauer-Simulation.

Erst ĂŒbersetzen, dann spielen

Hier lĂ€uft es andersherum: Der Maschinencode des Spiels (MIPS R4300i) wird vorher einmal komplett in C ĂŒbersetzt. HĂŒbsch ist dieses C nicht, aber treu: Jede Funktion im ROM wird zu einer C-Funktion, die Register werden zu Variablen, und SprĂŒnge laufen ĂŒber eine Nachschlagetabelle.

Dann macht ein ganz normaler C-Compiler Code fĂŒr deinen Prozessor daraus. Heraus kommt eine DLL, die direkt auf deiner CPU lĂ€uft. Der Ton-Teil (der RSP, ein kleiner Signalprozessor im N64) wird auf dieselbe Weise ĂŒbersetzt.

Grafik ĂŒber RT64

Bleibt das Bild. Das Spiel schickt dem N64 Zeichenlisten: Dreiecke, Texturen, Farbmischung und so weiter. RT64 nimmt sie entgegen und gibt sie an moderne Grafikschnittstellen weiter, unter Windows D3D12 oder Vulkan. Darum gehen Breitbild, hohe Auflösung und MSAA, ohne dass man am Spiel schrauben muss.

Betriebssystem ĂŒber N64ModernRuntime

Das Betriebssystem des N64 (libultra) ersetzt N64ModernRuntime. Ruft das Spiel etwa osRecvMesg auf, landet es in einer PC-Funktion und nicht in nachgebauter Hardware.

Kurz gesagt: Das Spiel glaubt, es liefe auf einem N64. In Wirklichkeit ist es ein PC-Programm, das sehr genau weiß, wie ein N64 sich benimmt.

Auf wessen Schultern das steht

Den grĂ¶ĂŸten Teil der Arbeit haben andere gemacht.

  • mi_n64_exe von nickallevato ist die PC-Rekompilierung von Mission: Impossible, allerdings fĂŒr die US-Fassung. Von dort stammen die 60 FPS, Maus und Tastatur, die Analogkamera, Breitbild mit festem HUD und das ganze GrundgerĂŒst. Ohne dieses Projekt gĂ€be es meinen Port nicht. Lizenz: GPL-3.0.
  • N64Recomp und N64ModernRuntime, ursprĂŒnglich von Wiseguy: das Werkzeug, das MIPS nach C ĂŒbersetzt, und die Laufzeit, die das N64-Betriebssystem ersetzt. Bekannt sind sie vor allem durch Zelda64Recomp.
  • RT64 von Dario ist der Renderer, der die N64-Zeichenlisten in D3D12 oder Vulkan ĂŒbersetzt.
  • RecompFrontend liefert das GerĂŒst fĂŒr MenĂŒ und Einstellungen, auf dem auch mi_n64_exe aufbaut.

Was ich gemacht habe

Von der US- zur deutschen Fassung

Die deutsche ROM ist nicht einfach die US-ROM mit anderen Texten. Der Code liegt an anderen Adressen, Funktionen sind verschoben, einiges ist schlicht anders. mi_n64_exe kennt nur die US-Adressen: Jeder Hook und jede feste Datenadresse zeigt dorthin.

Daneben arbeite ich an einer Matching-Dekompilierung der deutschen Fassung. Das heißt: C-Code schreiben, ihn mit dem Original-Compiler von damals (KMC GCC 2.7.2) ĂŒbersetzen und so lange anpassen, bis dasselbe herauskommt wie in der ROM. Inzwischen sind es 1367 Funktionen, rund 65 % des CPU-Codes.

Damit lassen sich US- und DE-Adressen sauber aufeinander abbilden. Ein paar Skripte rechnen jede Stelle um und prĂŒfen den Code dort gegen. Also kein „sieht ungefĂ€hr gleich aus, passt schon“.

Ein Befund dabei: DE und US unterscheiden sich in nur 21 Funktionen. Der gesamte Audio-Code ist identisch.

Von 50 Hz auf 60 Hz

Die deutsche Fassung ist eine PAL-Fassung und lief mit 50 Hz. Damit sie dabei nicht lahmer wirkt, hat der Code an mehreren Stellen nachgeholfen: Bewegungen werden hochgerechnet, Kamerafahrten durch 1,2 geteilt, Anzeigedauern umgestellt (600 statt 500 Ticks) und so weiter.

Spannend: All diese Korrekturen hÀngen zur Laufzeit an einer einzigen Variable, osTvType. Keine ist fest eingebaut. Der Port setzt osTvType auf NTSC und liefert den Bildtakt fest mit 60 Hz. Damit lÀuft die deutsche Fassung wie die NTSC-Fassung: gleiche Spiel-, Animations-, Ton- und Musikgeschwindigkeit, nur eben mit deutscher Sprache. Nicht 50 Hz hochgerechnet, sondern das Original-Timing der NTSC-Fassung.

Die Einrichtung

Spielcode und Spieldaten dĂŒrfen nicht weitergegeben werden. Deshalb erzeugt das Einrichtungsprogramm alles auf deinem Rechner:

  1. Es fragt nach der ROM und prĂŒft sie: Byte-Reihenfolge (.z64, .v64 oder .n64 gehen alle) und PrĂŒfsumme.
  2. Es lĂ€sst N64Recomp und RSPRecomp lokal laufen. Der Spielcode wird also bei dir nach C ĂŒbersetzt.
  3. Danach macht ein mitgelieferter C-Compiler (llvm-mingw) daraus die spielcode.dll.
  4. Eine SelbstprĂŒfung kontrolliert die Installation, dann ist sie fertig. Starter, Deinstaller und VerknĂŒpfungen werden gleich mit angelegt.

Der Download selbst enthĂ€lt keine ROM-Inhalte. Das prĂŒft der automatische Bau bei jedem Paket gegen FingerabdrĂŒcke der ROM.

Einrichtung, Starter und MenĂŒs sind ĂŒbrigens im Stil des Spiels gehalten, mit der Spielschrift, die beim Einrichten aus deiner ROM gelesen wird.

TV-Erlebnis (optional)

Wer mag, schickt das Spiel durch einen Röhrenfernseher-Filter. Es gibt zwei Modi:

  • Nur Filter: Scanlines, Maske, Leuchten, Composite-UnschĂ€rfe und so weiter, direkt auf dem Bild.
  • 3D-Wohnzimmer: Das Spiel lĂ€uft auf einem Fernseher in einem gerenderten Raum, mit Videorekorder und allem, was dazugehört.

Beides steckt in roehre, einem eigenen Projekt von mir (MIT/Apache-2.0). Die Szene, der Einbau und die Weiterentwicklung der Filter stammen von mir. Die Filter selbst bauen auf der Arbeit anderer auf:

  • crt-guest-advanced von guest(r)
  • crt-beans
  • librashader, eine Laufzeitumgebung fĂŒr RetroArch-Shader
  • der CRT Beam Simulator von Blur Busters

Das alles ist rein optional. Wer das Spiel einfach scharf und modern sehen will, schaltet es ab.

Grenzen

  • Nur die deutsche Fassung, nur Windows.
  • Getestet habe ich auf meinen eigenen Rechnern. Wenn etwas hakt, freue ich mich ĂŒber eine Meldung.
  • Die eigentliche Spielmechanik stammt aus mi_n64_exe. Fehler, die dort bestehen, gibt es hier vermutlich auch.

Rechtliches

Das ist ein Fanprojekt und kein offizielles Produkt. Mission: Impossible ist eine Marke von Paramount, das N64-Spiel stammt von Infogrames/Ocean. Ich stehe mit keinem der beiden in Verbindung. Im Download sind keine Spieldaten. Du brauchst eine eigene, rechtmĂ€ĂŸig erstellte Kopie deines Moduls.

Der Port steht wie mi_n64_exe unter der GPL-3.0. Die Lizenzen aller verwendeten Projekte liegen im Paket bei.

Danke

An nickallevato fĂŒr mi_n64_exe, an Wiseguy und alle Beteiligten an N64Recomp und N64ModernRuntime, an Dario fĂŒr RT64, an guest(r), die Leute hinter crt-beans, librashader und Blur Busters, und an alle, die das N64 seit Jahren auseinandernehmen, damit so etwas ĂŒberhaupt geht 🙂

Did you like this post? Then leave a Moo.

You might also like

Leave a comment