Themabewertung:
  • 1 Bewertung(en) - 5 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
DOSBox-Patch für Schicksalsklinge
#29
Toungue 
Es hat mich schon sehr gewundert, dass du auf den Beitrag nicht anspringst. :D

Anyway, ich der Zwischenzeit hatte meinen Patch auch weiterentwickelt und hab dann gemerkt, dass diese Entwicklungsrichtung in einer Sackgasse endet, weil:
  1. Es nicht auf allen Cores funktioniert (deiner hatte nur richtig mit dem Full-Core funktioniert Stichwort: "neal calls", meiner nur mir simple und normal)
  2. Es zu DSA1 V3.02 de spezifisch ist. Es wäre ja schöner wenn sich die Arbeit auch für andere Spiele/Versionen auszahlen würde.
  3. Es müsste viel besser konfigurierbar sein (beim kopilen, beim starten und zur Laufzeit)
  4. Das Verzeichniss src/dos war nicht der richtige Platz dafür. :ironie:

Desswegen hab ich nochmal neu mit dem Patch angefangen um Alles noch viel Besser zu machen.

Angedacht sind 2 Teile: einen Generischen und einen Spielespezifischen.

Der generische Teil, von mir "Customizer" genannt, hakt sich in die DOSBox-CPU und DOS ein und fängt interessante Events ab, z.B. ein Programm wird gestartet.
Der "Customizer" schaut sich dann die EXE-Datei an und versucht mittels ein paar Tests und eines Signaturscanners herauszufinden mit welchem Compiler die Exe erzeugt wurde und wo sich welche Bibliotheksfunktionen befinden.
Danach wir geprüft ob die EXE-Datei bekannt ist. Das geschieht indem sich verschiedene Spiele beim "Customizer" registrieren und z.B. eine MD5-Summe übermitteln. Danach wird das Spiel gestartet.

Der Spielespezifische Teil kann sich bei der Registriation beim "Customizer" in CPU-Befehle einhaken und bei Calls den CPU-Befehl einfach überspringen. Und natürlich die LOG Ausgaben machen, vielleicht Ingame ein Menü anbieten bei dem man einstellen kann was geloggt werden soll und/oder Trainerfunktionen. Denkbar wäre auch eine XMIDI Unterstützung für die deutsche CD-Version. :)
Diverse Gemeinheiten wie solche Callstack-Manipulationen müssten dann auch vom spielespezifischen Teil bearbeitet werden, wobei die DOS-Compiler imho nicht sosehr tricksen. :)

Am "Customizer" und dem Signaturscanner für "Borland C++ 3.1" arbeite ich gerade (mit ersten Erfolgen namens strlen() getvect() und setvect()). Dabei habe ich herrausgefunden, dass "Eye of Beholder 3" auch mit diesem Complier übersetzt wurde. :)
Achja, Sternenschweif natürlich auch. ;)
Übrigens sind einige Signaturen auch mit denen von "Turbo C++ 3.0" identisch, was mir eine Menge Arbeit erspart.

2500 Funktionen bei DSA1 ist natürlich ne ganze Menge, wobei SCHICKM.EXE ja auch Overlays nutzt und das die Zahl verfälschen könnte. Kannst du mal gucken wieviel Funktionen GEN.EXE V1.05 hat? Und kennst du jemanden der "Borland C++ V3.0" hat?
Zitieren


Nachrichten in diesem Thema
RE: DOSBox-Patch für Schicksalsklinge - von HenneNWH - 10.01.2009, 18:20



Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste