Dieses Blog durchsuchen

Es ist ein Fehler bei diesem Gadget aufgetreten.

Sonntag, 15. Juni 2014

Castlevania Dracula X Chronicles Rondo of Blood ROM Dumping Project


Hierbei geht es darum die PC Engine-Version von Castlevania: Rondo of Blood (jap.: „Akumajou Dracula X: Chi no Rondo“) aus der "Castlevania: The Dracula X Chronicles"-UMD zu extrahieren.

Die benötigten Tools sind:
Eine PSP (außer PSP Go) mit Custom-Firmware die es erlaubt Kopien von UMDs zu erstellen (in meinem Fall die ME-Firmware 6.60 1.8)
Das Windows-Programm UMDGen 4.00 um den Inhalt eines UMD-Abbilds zu extrahieren
    siehe:    http://dl.qj.net/psp/homebrew-applications/umdgen-v400.html
Das PSP-Programm AT3CNV12a um AT3-Dateien in WAV umzuwandeln
    siehe:    http://blogs.yahoo.co.jp/goodlifeinthefuture/7581529.html
Einen Hex-Editor wie z.B. HxD um die Datei DRAC_02.DAT nachzubearbeiten
    siehe:    http://mh-nexus.de/de/hxd/
Einen Texteditor wie z.B. Notepad++ um eine CUE-Datei zu schreiben
    siehe:    http://notepad-plus-plus.org/
Die Datei "PC_Engine_Super_ CD-ROM-Header.data"
    siehe:    https://drive.google.com/file/d/0B6GGv-RQKKgwd0FGeXQtcVo5RnM/edit?usp=sharing

Zu empfehlen für das Ganze ist es ein „Arbeitsverzeichnis“ zu erstellen in dem man alle Dateien ablegen kann die anfallen werden. Ebenfalls kann man darin, im gleichen Atemzug, den Ordner "Castlevania_X" erstellen.

Zuerst einmal nehmen wir uns das Auslesen der UMD vor. Dies geht ganz einfach mittels PSP selbst. Dazu stellen wir im VSH-Menu, welches wir mittels SELECT-Taste aufrufen, bei „USB Connection“ auf „UMD-Disc“ um. Das erlaubt uns, direkt per Copy&Paste, ein Image der UMD zu erstellen. Der Name der Datei lautet dann „ULES-00841.ISO“.

Nun öffen wir UMDGen wählen „Open“ aus und suchen nach dem gerade erstellten Image. Nachdem das Image erfolgreich geladen wurde erscheint oben rechts in der Ecke das Logo von „Castlevania: The Dracula X Chronicles“. Jetzt wählen wir „Extract Image“ um die UMD-ISO zu entpacken. Nach erfolgreichem Entpacken haben wir nun den Ordner „NoLabel“ vor uns liegen. Hier drin liegen alle, für uns benötigten, Dateien.
Wir gehen nun in der Verszeichnisstruktur zu „NoLabel\PSP_GAME\USRDIR\res\pce\eng\bgm“. Dort kopieren wir folgende Dateien in unser „Arbeitsverzeichnis“:

BGM_CATCH.at3
CD_003.at3
CD_004.at3
CD_005.at3
CD_006.at3
CD_007.at3
CD_008.at3
CD_009.at3
CD_010.at3
CD_011.at3
CD_012.at3
CD_013.at3
CD_014.at3
CD_015.at3
CD_016.at3
CD_017.at3
CD_018.at3
CD_019.at3
CD_020.at3
CD_021.at3

Diese Dateien enthalten den Soundtrack des Spiels, das Intro, diverse Outros und das Konami-Jingle (als Platzhalter für Track01).
Da uns diese Dateien in ihrer jetzigen Form aber noch nichts nützen müssen wir diese erst einmal in WAV-Dateien umwandeln (Diese können, bei Bedarf, dann in MP3-Dateien umgewandelt werden).
Dafür nehmen wir uns wieder die PSP zur Hilfe. Wir kopieren die AT3-Dateien auf unsere PSP in das Verzeichnis ms0:/PSP/MUSIC. Nun starten wir das Programm "AT3 Converter ver.1.2a", wählen Convert aus und bestätigen unsere Auswahl mit der Kreis-Taste.
Da der Vorgang jetzt erst mal eine ganze Weile in Anspruch nehmen wird, können wir schon mal damit beginnen die benötigte CUE-Datei zu erstellen. Der Aufbau lautet wie folgt:

FILE Track01.wav WAV
  TRACK 01 AUDIO
    INDEX 01 00:00:00
FILE Track02.iso BINARY
  TRACK 02 MODE1/2048
    PREGAP 00:03:04
    INDEX 01 00:00:00
FILE Track03.wav WAV
  TRACK 03 AUDIO
    PREGAP 00:02:00
    INDEX 01 00:00:00
FILE Track04.wav WAV
  TRACK 04 AUDIO
    PREGAP 00:00:01
    INDEX 01 00:00:00
FILE Track05.wav WAV
  TRACK 05 AUDIO
    PREGAP 00:00:01
    INDEX 01 00:00:00
FILE Track06.wav WAV
  TRACK 06 AUDIO
    PREGAP 00:00:02
    INDEX 01 00:00:00
FILE Track07.wav WAV
  TRACK 07 AUDIO
    INDEX 01 00:00:00
FILE Track08.wav WAV
  TRACK 08 AUDIO
    PREGAP 00:00:02
    INDEX 01 00:00:00
FILE Track09.wav WAV
  TRACK 09 AUDIO
    PREGAP 00:00:02
    INDEX 01 00:00:00
FILE Track10.wav WAV
  TRACK 10 AUDIO
    PREGAP 00:00:02
    INDEX 01 00:00:00
FILE Track11.wav WAV
  TRACK 11 AUDIO
    PREGAP 00:00:02
    INDEX 01 00:00:00
FILE Track12.wav WAV
  TRACK 12 AUDIO
    PREGAP 00:00:01
    INDEX 01 00:00:00
FILE Track13.wav WAV
  TRACK 13 AUDIO
    PREGAP 00:00:01
    INDEX 01 00:00:00
FILE Track14.wav WAV
  TRACK 14 AUDIO
    PREGAP 00:00:03
    INDEX 01 00:00:00
FILE Track15.wav WAV
  TRACK 15 AUDIO
    PREGAP 00:00:04
    INDEX 01 00:00:00
FILE Track16.wav WAV
  TRACK 16 AUDIO
    PREGAP 00:00:01
    INDEX 01 00:00:00
FILE Track17.wav WAV
  TRACK 17 AUDIO
    PREGAP 00:00:03
    INDEX 01 00:00:00
FILE Track18.wav WAV
  TRACK 18 AUDIO
    PREGAP 00:00:02
    INDEX 01 00:00:00
FILE Track19.wav WAV
  TRACK 19 AUDIO
    INDEX 01 00:00:00
FILE Track20.wav WAV
  TRACK 20 AUDIO
    PREGAP 00:00:01
    INDEX 01 00:00:00
FILE Track21.wav WAV
  TRACK 21 AUDIO
    PREGAP 00:00:02
    INDEX 01 00:00:00
FILE Track22.iso BINARY
  TRACK 22 MODE1/2048
    PREGAP 00:03:02
    INDEX 01 00:00:00

Diese Datei speichern wir nun als "Castlevania_X.cue", im Ordner "Castlevania_X", ab. Hierhin kommen dann auch die Audio-Dateien, wenn sie fertig sind.

Da die Umwandlung der Audio-Datei, höchstwahrscheinlich, immer noch andauert kümmern wir uns schon mal um die wichtigste Datei: das Spiel selbst. Diese finden wir im Verzeichnis "NoLabel\PSP_GAME\USRDIR\res\pce\arc" unserer entpackten UMD-ISO. Sie trägt den Namen "DRACX_02.DAT"

Damit die Datei "DRACX_02.DAT" benutzbar wird müssen wir, mittels Hex-Editor den Header eines Super CD-ROM-Spiels einfügen. Diesen finden wir am Anfang dieses Artikels unter dem Namen "PC_Engine_Super_CD-ROM-Header.data" verlinkt. Jetzt markieren wir die Datei "DRACX_02.DAT" an der letzten Stelle des Offset(h) "00000FF0" rückwärts und fügen mit "Paste Write" den Header ein (den KOMPLETTEN Inhalt der Datei "PC_Engine_Super_ CD-ROM-Header.data"). Wichtig ist hier die Funktion "Paste Write" da wir überschreiben und NICHT einfügen müssen. Diese soeben modifizierte Datei speichern nun als Track02.iso und als Track22.iso ab.

Mittlerweile sollte die Umwandlung der AT3-Dateien in WAV-Dateien abgeschlossen sein. Sie sind ab gespeichert worden im Ordner "ms0:/PSP/MUSIC/decode". Aus diesem Ordner kopieren wir sie in unser „Arbeitsverzeichnis“. Nun folgend benennen wir sie nach folgendem Schemata um:

BGM_CATCH.at3.wav    >    Track01.wav
CD_003.AT3.wav    >    Track03.wav
CD_004.AT3.wav    >    Track04.wav
CD_005.AT3.wav    >    Track05.wav
CD_006.AT3.wav    >    Track06.wav
CD_007.AT3.wav    >    Track07.wav
CD_008.AT3.wav    >    Track08.wav
CD_009.AT3.wav    >    Track09.wav
CD_010.AT3.wav    >    Track10.wav
CD_011.AT3.wav    >    Track11.wav
CD_012.AT3.wav    >    Track12.wav
CD_013.AT3.wav    >    Track13.wav
CD_014.AT3.wav    >    Track14.wav
CD_015.AT3.wav    >    Track15.wav
CD_016.AT3.wav    >    Track16.wav
CD_017.AT3.wav    >    Track17.wav
CD_018.AT3.wav    >    Track18.wav
CD_019.AT3.wav    >    Track19.wav
CD_020.AT3.wav    >    Track20.wav
CD_021.AT3.wav    >    Track21.wav

Sind die Datein fertig umbenannt verschieben wir sie in das Verzeichnis "Castlevania_X". Mit diesem Ordner kann man dan beliebige PC Engine-Emulatoren füttern.

Da wir aber nicht die originale PC Engine Super CD-ROM-Disc von „Akumajou Dracula X: Chi no Rondo“ benutzt haben treten leider ein paar Bugs auf, die aber, meiner Meinung nach, verschmerzbar sind. Folgende Bugs sind mir bekannt:
Das Spiel ist komplett in japanisch bis auf die Sprachausgabe in den Zwischensequenzen (englisch) und dem Intro (deutsch). Ich vermute es liegt daran das die Lokalisierungsdateien in der laufenden Emulation auf der PSP iniziert werden und die ROM nicht wirklich von Grund auf übersetzt ist.
Die Soundeffekte sind zu leise und die Musik ist zu laut. Das kommt wahrscheinlich daher weil die Musik, verglichen mit der Originalversion, schon eine höhere Grund-Lautstärke besitzt und die Soundeffekte, im Vergleich dazu, zu leise sind.
Wenn man in einem Level stirbt, verstummt, bis zum nächsten GAME OVER, die Musik.

PS:        Sind euch noch andere Wege bekannt, außer mittels Retrode, an legale ROMs zu kommen, lasst es mich und Andere über die Kommnetare wissen.
PPS:    Mir persönilch sind noch folgende Wege bekannt:
        -Auslesen NES-ROMs aus Animal Crossing für den Nintendo GameCube
        -Auslesen der NES- & N64-Zelda-ROMs aus der The Legend of Zelda Collector's Edition
        -Auslesen der ROMs aus Virtual Console-Spielen der Nintendo Wii