29.05.2014, 23:16
@HenneHW, Rabenaas, Wetzer:
Danke für die Hinweise bezgl. DPMI und passender Dokumentation. Ich denke, dass ich erstmal mit Hex Editor und meinem selbstgeschriebenen Analyseprogramm (die Idee dazu hatte ich vor einiger Zeit, als ich das Savegame-Format von Ascendancy, wer's kennt, rev-engineered habe
) weitermache. Sobald die Formate entziffert sind, kann man sich immer noch Gedanken machen, wie man damit weitermacht.
@Wetzer:
Ich denke, Rabenaas war überhaupt nicht ironisch! Ich finde den Ansatz auch interessant, allerdings ist die Synchronisation wahrscheinlich die Hölle. Muss dann auch in einer speziellen Riva-DOSBOX gemacht werden, damit man auf die Render-Surface Zugriff bekommt. Erst die Dosbox draufzeichnen lassen, dann den OpenGL-Renderer drüber legen (OGL geht mit SDL ja problemfrei). Aber dafür müsste man zumindest Teile der RIVA.EXE disassemblieren, was wohl der härteste Teil werden wird.
@Helios:
Super, die DAT-Files zu entschlüsseln ist auch ein sehr wichtiger Schritt.
Insgesamt frage ich mich, ob das Disassemblieren und in eine BrightEyes-Dosbox verlegen des DPMI-Codes von Riva noch einfacher ist als die Formate zu reverse engineeren und dann ein losgelöstes Remake zu implementieren. Eventuell ist es einfacher, grundlegende Mechanismen wie Kampf, Talentproben, Helden-Management aus BrightEyes zu entnehmen und den Rest drumherum aufzubauen.
Aber ich denke in der Richtung erst weiter, wenn ich mehr Infos zu den Dateiformaten gewonnen habe
Bin übrigens gerade dabei, das Vertexformat zu identifizieren. Scheint kein IEEE754 zu sein. Also doch Integer. Pfui. Immerhin ist mir nun klar geworden, wo in einem Objekt-Block bestimmt wird, welche Textur verwendet wird.
Danke für die Hinweise bezgl. DPMI und passender Dokumentation. Ich denke, dass ich erstmal mit Hex Editor und meinem selbstgeschriebenen Analyseprogramm (die Idee dazu hatte ich vor einiger Zeit, als ich das Savegame-Format von Ascendancy, wer's kennt, rev-engineered habe

@Wetzer:
Ich denke, Rabenaas war überhaupt nicht ironisch! Ich finde den Ansatz auch interessant, allerdings ist die Synchronisation wahrscheinlich die Hölle. Muss dann auch in einer speziellen Riva-DOSBOX gemacht werden, damit man auf die Render-Surface Zugriff bekommt. Erst die Dosbox draufzeichnen lassen, dann den OpenGL-Renderer drüber legen (OGL geht mit SDL ja problemfrei). Aber dafür müsste man zumindest Teile der RIVA.EXE disassemblieren, was wohl der härteste Teil werden wird.
@Helios:
Super, die DAT-Files zu entschlüsseln ist auch ein sehr wichtiger Schritt.
Insgesamt frage ich mich, ob das Disassemblieren und in eine BrightEyes-Dosbox verlegen des DPMI-Codes von Riva noch einfacher ist als die Formate zu reverse engineeren und dann ein losgelöstes Remake zu implementieren. Eventuell ist es einfacher, grundlegende Mechanismen wie Kampf, Talentproben, Helden-Management aus BrightEyes zu entnehmen und den Rest drumherum aufzubauen.
Aber ich denke in der Richtung erst weiter, wenn ich mehr Infos zu den Dateiformaten gewonnen habe

Bin übrigens gerade dabei, das Vertexformat zu identifizieren. Scheint kein IEEE754 zu sein. Also doch Integer. Pfui. Immerhin ist mir nun klar geworden, wo in einem Objekt-Block bestimmt wird, welche Textur verwendet wird.