### WHDLoadCD32

WHDLoadCD32 ist eine spezielle WHDLoad Version für das CD³². Sie wurde für diese Hardware optimiert und ist deshalb auch nur auf einem nicht erweitertem CD³² lauffähig. Ein SX-32 oder anderes Gerät wird nicht unterstützt.

Nachfolgend die Unterschiede zum normalen WHDLoad:

- es benötigt und benutzt keinen WHDLoad Schlüssel, damit können auch CD's die WHDLoadCD32 enthalten problemlos verbreitet werden, ohne die Lizenz zu verletzen
- es wird nur der 68020 Prozessor unterstützt, damit sind auch keine MMU-Funktionen vorhanden
- FastMem-Speicher wird nicht unterstützt
- es gibt keinerlei schreibende Funktionen, damit können keine Spielstände, Bestwerte und auch keine Coredumps gesichert werden (eine CD ist für gewöhnlich nur lesbar)
- viele Optionen die nicht sinnvoll auf einem CD³² wären sind entfernt worden, dies macht das WHDLoad Programm kleiner und spart damit wertvollen Hauptspeicher, im Kapitel Benutzung und Optionen ist aufgelistet welche Optionen vorhanden sind
- die folgenden Resload-Funktionen sind nicht implementiert, den Versuch diese zu benutzen quittiert WHDLoadCD32 mit einem Kode TDREASON_ILLEGALARGS:
  - resload_DiskLoadDev
  - resload_ProtectRead
  - resload_ProtectReadWrite
  - resload_ProtectWrite
  - resload_ProtectRemove
  - resload_ProtectSMC
- die folgenden Resload-Funktionen sind funktionslos, sie tun nichts aber kehren mit einem Kode zurück der Erfolg anzeigt:
  - resload_SaveFile
  - resload_SaveFileOffset
  - resload_DeleteFile
- es werden keine Freezer unterstützt
- es gibt keine WHDLoad eigene Prüfung auf genügend Stackspeicher wie im normalen WHDLoad, die standardmäßigen 4096 Bytes sollten für WHDLoadCD32 aber ausreichend sein

### Tips and Tricks für WHDLoad auf dem CD³²

Das Hauptproblem mit WHDLoad auf dem CD³² ist der beschränkte Hauptspeicher. Es sind nur 2 MB Chip-Memory vorhanden. Das Ziel muss es deshalb sein, so viel wie möglich Speicher für WHDLoad und insbesondere die PreLoad-Operation frei zu haben. Keine anderen Programme sollten gleichzeitig mit WHDLoad laufen.

- Wenn die Install die Wahl zwischen Disk-Images und einzelnen Dateien bietet sollten die Dateien gewählt werden. Denn einzelne kleine Dateien lassen sich besser zwischenspeichern als wenige große Images.
- Wenn die Install es ermöglicht die Dateien zu komprimieren, sollte dies auch getan werden. ProPack im Modus 1 (RNC1) bietet dabei die beste Kompressionsrate. Komprimierte Dateien benötigen weniger Speicher beim PreLoad und verursachen kaum eine Verlangsamung der Ladegeschwindigkeit.
- Das Programm AllocMemReverse (oder etwas vergleichbares) sollte vor dem Start von WHDLoadCD32 ausgeführt werden. Diese kleine Programm ist im dev-Paket von WHDLoad enthalten. Es modifiziert die Speicherbelegungsfunktion AllocMem des Betriebssystem derart, dass Speicher immer mit dem Attribut MEM_REVERSE alloziert wird. Dadurch wird Speicher vom Ende statt vom Anfang her belegt und damit Speicher am Anfang freigehalten. WHDLoad benötigt immer Speicher von der Adresse 0 an. Je weniger Speicher in diesem Bereich belegt ist, desto weniger muss als Schattenspeicher für die Sicherung des belegten Speichers allokiert werden, und umso mehr Speicher ist dann für das installierte Programm und die PreLoad-Operation verfügbar.
- Die Option Data sollte immer verwendet werden. Die PreLoad-Operation weiss nicht welche Dateien vom installierten Program geladen werden, deshalb lädt es alle Dateien im entsprechenden Verzeichnis. Um zu vermeiden das unnötige Dateien geladen werden, sollte ein Verzeichnis angelegt werden welches nur die erforderlichen Dateien enthält. Alles unnötige wie #?.info, #?.Slave, ReadMe, Manual, usw. kann gelöscht werden. WHDLoad sollte dann mit dem Slave und dem Data-Verzeichnis als Argument aufgerufen werden, z.B. `WHDLoadCD32 :Slaves/XYZ.Slave Data=:Data/XYZ PreLoad`. Es ist dabei nicht notwendig das aktuelle Verzeichnis auf einen bestimmten Pfad zu setzen.
- Die Daten Dateien des installierten Programmes sollten nicht mit XPK komprimiert werden. Das Entpacken von XPK-Dateien benötigt viel Speicher, wegen den XPK Libraries und dem Entpacken an sich. Ausserdem wird beim Entpacken der Speicher fragmentiert was zu weiter verringertem Möglichkeiten für PreLoad führen kann.