[Main] [Docs] [Installs] [Search] [Team] [Guestbook] [Links]

Dump- und Protokoll-Dateien

Hauptsächlich aus Gründen der Fehlersuche ist WHDLoad in der Lage verschiedene Dump- und Protokoll-Dateien zu schreiben.

Memory Dump

Bei einem Memory Dump wird der gesamte Speicherbereich des installierten Programmes in eine Datei geschrieben. Die Größe der Datei hängt vom installierten Programm ab (sie ist gleich dem Wert von ws_BaseMemSize in der Slave Struktur). Ein Memory Dump wird erzeugt, wenn der DebugKey gedrückt wurde oder wenn nach einem Fehlerrequester der CoreDump Knopf gedrückt wurde. Der Name der Memory Dump Datei ist ".whdl_memory". Das voreingestellte Verzeichnis worin die Datei abgelegt wird ist "PROGDIR:". Das Verzeichnis kann aber mittels der Option CoreDumpPath verändert werden. Eine bereits existierende Datei wird immer überschrieben. Wenn das installierte Programm auch Expansions-Mem (ws_ExpMem) verwendet, wird dieser Speicherbereich in einer zweiten Datei mit dem Namen ".whdl_expmem" gespeichert.

Register Dump

Das Register Dump enthält den gesamten CPU (inklusiv der MMU), CIA- und Custom-Chip Status. Einige CIA- und Custom-Register sind nicht lesbar, diese sind im Dump nur enthalten, wenn eine der Snoop Option aktiv war. Die Informationen werden in eine ASCII-Datei geschrieben, wobei für Hervorhebungen Escape Sequenzen (mittels CSI - Control Sequence Introducer, dezimal 155) verwendet werden. Zum Anzeigen sollte deshalb ein Betrachter verwendet werden, der diese entsprechend interpretiert (z.B. More, MuchMore, MultiView, ...). Der Name der Dump Datei ist ".whdl_register", das voreingestellte Verzeichnis "PROGDIR:", welches aber mit der Option CoreDumpPath verändert werden kann. Wenn eine Datei mit demselben Namen bereits existiert wird das Dump an die bestehende Datei angehängt.

komplettes Dump

Das komplette Dump ist eine IFF-Datei die alle Informationen der zuvor aufgeführten Dumps enthält. Dieses Dump kann von anderen Applikationen gelesen werden. Der Aufbau des Dumps ist in der speziellen Include-Datei whddump.i beschrieben. Gegenwärtig wird dieses Dump von den Programmen WHDLoadGCI (graphical coders interface) und SP (Speichern von Bildern) gelesen. Der Name der Dump-Datei die erzeugt wird ist ".whdl_dump" im Verzeichnis "PROGDIR:". Das Verzeichnis kann mit der Option CoreDumpPath angepasst werden. Falls die Datei bereits existiert wird sie immer überschrieben.

Datenzugriffsprotokoll

Alle Zugriffe auf Dateien werden protokolliert wenn die Option FileLog/S eingeschaltet ist. Diese Möglichkeit ist sehr praktisch um die Diskoperationen eines installierten Programmes zu analysieren und zu optimieren. Die folgenden resload Funktionen erzeugen einen Eintrag in der Protokolldatei: Mit jeder Ausführung einer dieser Funtionen wird eine Zeile in der Protokolldatei erzeugt. Die Zeile enthält den Name der Funktion, die CRC-Prüfsumme über die geladenen/geschriebenen Daten, die Parameter der Funktion und den Rückgabewert. WHDLoad sammelt die Informationen in einem internen Puffer (LogBuffer/K/N). Der Puffer wird beim Beenden von WHDLoad und beim Schreiben eines Eintrags wenn der Puffer voll ist geleert. Die Daten werden als eine ASCII Datei geschrieben. Der Name der Protokolldatei ist ".whdl_log" (vor WHDLoad Version 18.0 war er ".whdl_filelog"), das voreingestellte Verzeichnis ist "PROGDIR:", welches aber mit der Option CoreDumpPath verändert werden kann. Wenn eine Datei mit demselben Namen bereits existiert wird das Protokoll an die bestehende Datei angehängt.

Eigene Protokolleinträge

Beginnend mit der WHDLoad Version 18.0 es ist möglich eigene Einträge der Protokolldatei ".whdl_log" hinzuzufügen. Dazu kann die Funktion resload_Log verwendet werden. Die Einträge können dabei mithilfe einem sprintf vergleichbaren Formatierungsstring und passenden Parametern aufbereitet werden. Die erzeugten Einträge werden in dem LogBuffer/K/N zwischengespeichert um zu vermeiden, dass dabei auf das Betriebssystem umgeschalten werden muss. Wenn viele Einträge erzeugt werden sollte deshalb dieser Puffer angemessen vergrößert werden. Damit überhaupt Einträge geschrieben werden muss auch die Option FileLog/S aktiviert sein.
[Main] [Docs] [Installs] [Search] [Team] [Guestbook] [Links]