Dumping

### Dump e Logfile di WHDLoad

WHDLoad può creare vari dump e logfile, questi possono tornare utili principalmente nel debugging.

#### Dump della Memoria

Un dump della memoria è l'intera memoria utilizzata dal programma installato riversata in un file. La dimensione del dump dipende dal programma installato (è uguale al valore di ws_BaseMemSize nella struttura dello Slave). Il dump viene creato se DebugKey viene premuto o se dopo un errore viene premuto il pulsante CoreDump. Il nome del file di dump della memoria creato è ".whdl_memory". La sua posizione di default è "PROGDIR:" ma può essere cambiata con l'opzione CoreDumpPath. Se esiste un file con lo stesso nome questo sarà sovrascritto in ogni caso. Se il programma installato utilizza anche della memoria Fast, verrà salvato con il nome ".whdl_expmem".

#### Dump dei Registri

Il dump dei registri contiene l'intero stato della CPU (inclusa la MMU), dei CIA e dei chip Custom. Qualche registro dei CIA e dei chip Custom non sono leggibili, e saranno contenuti nel file di dump solo se la modalità Snoop è attiva. Le informazioni verranno scritte in formato ASCII con qualche evidenziazione mediante l'utilizzo di sequenze di Escape (mediante CSI - Control Sequence Introducer, decimale 155). Per visualizzarlo, consigliamo l'utilizzo di un programma che supporta le sequenze di Escape (ad esempio More, MuchMore, MultiView, ...). Il nome del file di dump è ".whdl_register", la posizione di default è "PROGDIR:" ma può essere modificata con l'opzione CoreDumpPath. Se ci sarà già un file con lo stesso nome, il dump verrà accodato - altrimenti ne verrà creato uno nuovo.

#### Dump file completo

Il dump file completo è un file IIF contenente le informazioni di tutti i dump file precedenti. Questo file è generato per poter essere utilizzato da altre applicazioni. La struttura del file è descritta in un file aggiuntivo chiamato `whddump.i`. Applicazioni che utilizzano il dump file completo sono WHDLoadGCI (interfaccia grafica per i programmatori) e SP (salva immagine). Il nome del file creato è ".whdl_dump". La posizione di default è "PROGDIR:" ma può essere modificata con l'opzione CoreDumpPath. Se esiste un file con lo stesso nome questo sarà sovrascritto.

#### Log di accesso ai file

Verrà creato un log di tutti gli accessi ai dischi se l'opzione FileLog sarà stata attivata. Questa funzione è molto utile per analizzare le operazioni sui dischi del programma installato per il debug e l'ottimizzazione. Le operazioni eseguite dalle seguenti funzioni di resload andranno a finire all'interno del log:

- resload_DeleteFile
- resload_DiskLoad
- resload_Examine
- resload_ExNext
- resload_GetFileSize
- resload_GetFileSizeDec
- resload_ListFiles
- resload_LoadFile
- resload_LoadFileDecrunch
- resload_LoadFileOffset
- resload_SaveFile
- resload_SaveFileOffset

Ogni accesso ai file tramite le funzioni sopraelencate, aggiungeranno una riga nel file di log, la riga identificherà la funzione chiamata, i parametri ed il risultato. WHDLoad accumulerà i dati del log in un buffer interno. Il buffer verrà liberato all'uscita o durante un accesso se sarà pieno. Le informazioni verranno scritte in un file ASCII, il nome del dump è ".whdl_filelog", la posizione di default è "PROGDIR:" ma può essere cambiata tramite l'opzione CoreDumpPath.