08.12.2007, 16:58
@Hendrik:
Da es unter Dos noch keine DLLs gab, mussten die Bibliotheksfunktionen (rand(),random(),fopen(),etc.) in die Exe-Datei eingelinkt werden.
Da ich zu wissen glaube, dass es Schickm.exe mit Borland C++ 3.1 kompiliert wurde,
kann ich mit meinem Kompiler ein kleines Programm schreiben, welches rand(), random() und Konsorten mit eingelinkt hat. Da guck ich dan mit nem Debugger wie die Funktionen aussehen und vergleiche sie mit denen in Schickm.exe, merke mir die Adresse und lasse bei jedem far call einen Test machen ob die Adressen übereinstimmen.
So denke ich mir das jedenfalls. Das ist aber alles CPU-Zeugs. Erstmal will ich das Dos noch ausquetschen (malloc/free/findfirst/findnext/setint/getint, etc.).
Malloc und Free halte ich für besonders wichtig, da man damit auch den Spielstand (Ansehen bei den Göttern, Aktivierte Quests) finden und überwachen kann.
Dass sollte auch für die Lösungsautoren interresant sein.
Da es unter Dos noch keine DLLs gab, mussten die Bibliotheksfunktionen (rand(),random(),fopen(),etc.) in die Exe-Datei eingelinkt werden.
Da ich zu wissen glaube, dass es Schickm.exe mit Borland C++ 3.1 kompiliert wurde,
kann ich mit meinem Kompiler ein kleines Programm schreiben, welches rand(), random() und Konsorten mit eingelinkt hat. Da guck ich dan mit nem Debugger wie die Funktionen aussehen und vergleiche sie mit denen in Schickm.exe, merke mir die Adresse und lasse bei jedem far call einen Test machen ob die Adressen übereinstimmen.
So denke ich mir das jedenfalls. Das ist aber alles CPU-Zeugs. Erstmal will ich das Dos noch ausquetschen (malloc/free/findfirst/findnext/setint/getint, etc.).
Malloc und Free halte ich für besonders wichtig, da man damit auch den Spielstand (Ansehen bei den Göttern, Aktivierte Quests) finden und überwachen kann.
Dass sollte auch für die Lösungsautoren interresant sein.