Usage

WHDLoad peut être lancé à partir d'une ligne de comande (CLI/shell) ou bien du Workbench. Les options peuvent être spécifées dans un fichier de configuration globale et par des arguments ou par des ToolsTypes. L'option Slave est toujours requise. D'autres options peuvent être nécessaire aussi, cela depend de votre matériel et des logiciels utilisés. A partir d'une ligne de commande, WHDLoad quittera avec des codes de retour suivants:

Options et configuration globale

Les options sont soit locales, soit globales ou soit les 2. Les options locales peuvent être définies soit comme arguments via la ligne de commande (dans le CLI) soit comme ToolTypes à partir de Workbench.
Le fichier de configuration globale est "S:WHDLoad.prefs". C'est un fichier de caractères ASCII et contient une option par ligne. Les lignes vides et les commentaires sont ignorés. Un commentaire commence après un ";" et se trouve à la fin de la ligne de commande.
Un exemple d'un fichier configuration se trouve dans l'archive WHDLoad ("S/WHDLoad.prefs").

Overview

Liste des options disponibles

Nom de l'optionTypeLocaleGlobaleValeur par défaut
BranchCacheswitcherx-
ButtonWaitswitcherxx
Cacheswitcherx-
Chkswitcherx-
ChkBltHogswitcherx-
ChkBltSizeswitcherx-
ChkBltWaitswitcherx-
ChkColBstswitcherx-
ChkCopConswitcherx-
ChkIntsswitcherx-
ChipNoCacheswitcherxx
CoreDumpswitcherx-
CoreDumpPathstring-xPROGDIR:
Customstringx-
Custom1numericalx-
Custom2numericalx-
Custom3numericalx-
Custom4numericalx-
Custom5numericalx-
Dswitcherx-
Datastringx--
DebugKeynumericalxx-
DCacheswitcherx-
ExecuteCleanupstring-x-
ExecuteStartupstring-x-
Expertswitcher-x
ExpChipswitcherx-
ExpLocalswitcherx-
Exp24Bitswitcherx-
FileLogswitcherx-
FreezeKeynumericalxx
MMUswitcherxx
NoAutoVecswitcherxx
NoCacheswitcherx-
NoFileCacheswitcherx-
NoFilterswitcherxx
NoFlushMemswitcherxx
NoMMUswitcherxx
NoReqswitcherxx
NoTrapHandlerswitcherx-
NoVBRMoveswitcherx-
NoWriteCacheswitcherxx
NTSCswitcherxx
PALswitcherxx
Preloadswitcherx-
QuitKeynumericalxx-
ReadDelaynumerical-x0
RestartKeynumericalxx-
ShowRegsstring-xSYS:Utilities/MultiView
Slavestringx-WHDLoad.Slave
Snoopswitcherx-
SnoopAGAswitcherx-
SnoopECSswitcherx-
SnoopOCSswitcherx-
SplashDelaynumericalxx200
StoreBufferswitcherx-
SuperScalarswitcherx-
TimeOutnumericalx-0
WriteDelaynumericalxx150

Types d'options

numerical: L'option est un nombre,
dans la ligne de commande vous devez utiliser un décimal, dans les ToolType vous pouvez aussi utiliser un héxadecimal précédé d'un "$"
string: L'option est une suite de caractères
switcher: L'option sera activée si spécifiée

Exemple

Workbench: Workbench Options
CLI ou Shell: 1> WHDLoad SuperGame.Slave Preload NTSC QuitKey=69 Custom1=1

Description de chaque option

ButtonWait/S

Cette option n'affecte pas WHDLoad lui-même, mais elle peut être testée par le Slave.
Si elle est activée, l'utilisateur souhaite que le programme installé attende qu'un bouton soit pressé lors de l'affichage d'une image ou lors d'une musique (car le chargement est beaucoup plus rapide à partir d'un disque dur que sur disquette).

BranchCache/S

Active le BranchCache du 68060. Il n'y aura aucun effet sur les autres CPU.
L'option est inopérante si NoCache/S est activé.

Cache/S

Cette option active le cache d'instruction du CPU et désactive le cache de données pour le programme installé. Si le MMU est utilisé par WHDLoad, la mémoire Chip sera cachable Writethrough (imprécis).
Cette option est sans effet si NoCache/S est activé.

ChipNoCache/S

Cette option désactive la cachabilité de la mémoire Chip (BaseMem). Ceci peut servir sur le matériel qui n'autorise pas la cachabilité de la mémoire Chip (par ex. les cartes BlizzardPPC) afin d'éviter un ralentissement dans l'exécution du programme installé. Généralités sur le cache CPU.

Chk/S

Cette option est un raccourci et active les options ChkBltSize/S, ChkBltWait/S et ChkColBst/S

ChkBltHog/S

Cette option vérifie tout le temps si le bit blthog (bltpri) dans le registre custom.dmacon est activé. Cette fonction ne marche seulement avec une des options SnoopOCS/SnoopECS/SnoopAGA.

ChkBltSize/S

Cette option vérifie que le programme installé utilise correctement le blitter, ainsi seulement les mémoires valides seront utilisées pour les opérations du blitter. Cette fonction ne marche seulement avec une des options SnoopOCS/SnoopECS/SnoopAGA.

ChkBltWait/S

Cette option vérifie que le programme installé attend que le blitter ait fini son travail avant d'en commencer un autre. Cette fonction ne marche seulement avec une des options of the SnoopOCS/SnoopECS/SnoopAGA.

ChkColBst/S

Cette option teste tout le temps si le bit de couleur dans le registre du custom.bplcon0 est activé. Cette fonction ne marche seulement avec une des options SnoopOCS/SnoopECS/SnoopAGA.

ChkCopCon/S

Cette option vérifie que le programme installé ne permet pas certains accès du Copper au DMA via le registre custom.copcon. Cette fonction ne marche seulement avec une des options SnoopOCS/SnoopECS/SnoopAGA.

ChkInts/S

Cette options vérifie pour chaque interruption, en l'occurence si Intreq et Intena sont activés pour cette interruption. Si ce n'est pas le cas, le programme quittera avec un message approprié. Ce dispositif permet facilement de détecter un problème d'interruption reconnue sur les ordinateurs rapides (68040/060) ou bien un matériel défectueux qui causerait des interruptions non désirées. Dû le fait que cette contition intervient plus rapidement si les interruptions sont désactivées via Intena et si en même temps une interruption se produit, cette option est donc permutable.

CoreDump/S

Si c'est selectionné, à chaque sortie du programme installé, WHDLoad créera une sauvegarde de la mémoire et des registres. C'est utile pour "ripper" une musique ou pour débugger à partir de ce dump.

CoreDumpPath

Définie le chemin d'accès pour les dump fichiers créés par WHDLoad.

Custom/K, Custom1/K/N, Custom2/K/N, Custom3/K/N, Custom4/K/N, Custom5/K/N

Ces options ne sont pas utilisées par WHDLoad lui-même, mais par le Slave. Custom/K peut contenir une suite de caractères, Custom1-5/K seulement des nombres. Jettez un oeil sur la documentation de l'install qui supporte les options Custom.

D/S

Cette option est utile pour débugger. Si l'option est activée et qu'un débuggeur (Hrt ou TK) se trouve en mémoire, WHDLoad simule une interruption non masquable (NMI) avant d'exécuter la 1ère instruction du cpu contenue dans le Slave.

Data/K

Avec cette option, WHDLoad chargera les données du programme installé à partir d'un tiroir spécifié. Cette option est prioritaire sur la valeur ws_CurrentDir contenue dans le Slave.

DCache/S

Cette option active le cache d'instructions et le cache de données du CPU. Si le MMU est utilisé par WHDLoad, la mémoire Chip sera cachable Writethrough (imprécis).
L'option est inefficace si NoCache/S est activé.

DebugKey/K/N

Utilisez le code clavier pour quitter le programme avec debug (sauvegarde un fichier coredump et quitte). Ceci ne fonctionne que si le mode expert est activé, que le VBR a été déplacé par WHDLoad (NoVBRMove/S ne doit pas être activé) et que le cpu soit au moins un 68010 ou que le Slave supporte lui-même le "DebugKey".

ExpChip/S, ExpLocal/S, Exp24Bit/S

Si le programme installé utilise de la mémoire étendue (ws_ExpMem), ces options peuvent être utilisées pour forcer WHDLoad à allouer de la mémoire respectivement Chip, Local ou 24Bit. Ceci peut en résulter d'une performance dégradée car ces mémoires ont des accès processeurs moins rapides que la mémoire Fast. Vous pouvez utiliser des programmes comme SysInfo, GvpInfo,... pour vérifier votre configuration de mémoire et voir leur propriété. En général, le but de ces options est de résoudre des problèmes de compatibilités des programmes installés sur des ordinateurs rapides en utilisant de la mémoire lente afin de réduire la vitesse d'exécution du programme.

Expert/S

Active le mode Expert de WHDLoad. Il utilise l'option DebugKey/S et signale les erreurs (écrans de couleur/copper) pendant le retour du programme installé vers l'OS. Si le mode Expert n'est pas activé, l'option DebugKey/S ne sera pas disponible. Dans le mode Expert, un autre bouton dans quelques requêtes d'erreurs de WHDLoad apparait aussi. Ce bouton appellé Show Regs permets d'afficher les registers et de similaires informations contenue dans le registre dump.

ExecuteCleanup

Avec cette option, une commande peut être exécutée après que WHDLoad ait terminé.

ExecuteStartup

Avec cette option, une commande peut être lancée avant WHDLoad. Ceci est utile pour désactiver le matériel qui provoque certains problèmes avec WHDLoad ou pour arrêter une pile TCP/IP ou un programme similaire.

FileLog/S

Cette option est seulement pour débugger. Voir le chapitre Dumps and Logfiles pour plus d'informations.

FreezeKey/K/N

Si vous utilisez un débuggeur (HrtMon ou ThrillKill), vous pouvez activer cette option pour que WHDLoad puisse entrer dans le débugger quand une touche du clavier est pressée rawkey. Pour cela, il faut que le VBR soit déplacé par WHDLoad, (l'option NoVBRMove/S doit être désactivée et que le cpu soit au moins un 68010).

MMU/S

Cette option doit être utilisée sur les systèmes à base de 68030 pour obtenir les fonctions MMU suivantes: protection de la mémoire , amélioration de la gestion des caches du cpu, Snooping, resload_Protect#? Sur un 68040 ou 68060, cette option n'a pas d'effet car le MMU est utilisé par défaut. Il est fortement recommendé de mettre cette option dans le fichier configuration globale pour tous les systèmes à base de 68030 (non 68EC030) contenant un MMU car le MMU améliore énormément la stabilité du système et sa sécurité. Si l'option NoMMU/S est activée, cette option n'a pas d'effet.

NoAutoVec/S

Si cette option est selectionnée, WHDLoad ne quittera pas le programme si un auto-vecteur inattendu ou une NMI intervient (vecteur #25-31 / $64-$7c). Ceci peut être utilisé sur les systèmes/hardware qui produisent des interruptions aléatoires afin d'empêcher WHDLoad de quitter (l'idéal est de déconnecter le matériel défaillant!).

NoCache/S

Désactive tous les caches du cpu.
Cette option prend le dessus sur les options suivantes: BranchCache/S, Cache/S, DCache/S, StoreBuffer/S et SuperScalar/S.

NoFileCache/S

Désactive le cache des fichiers de WHDLoad et force l'activation de l'OS pour chaque opération du disque du programme installé.
Cette option désactive l'option Preload/S.

NoFilter/S

Désactive le filtre audio. Notez que cette option n'est efficace seulement au début, le programme installé peut changer lui-même l'état du filtre audio.

NoFlushMem/S

Normalement WHDLoad vide la mémoire au début pour avoir le plus de mémoire libre pour l'opération Preload/S en ôtant les ressources non utilisées comme les libraries, fonts etc. de la mémoire. En utilisant cette option, WHDLoad ne videra pas la mémoire. Cela peut être utilisé sur des systèmes qui possèdent beaucoup de mémoire libre afin d'améliorer les performances du système.

NoReq/S

Cette option est utilisée seulement quand WHDLoad est lancé à partir d'une ligne de commande (CLI/Shell). A partir du Workbench, il n'aura aucun effet. L'option force WHDLoad à afficher les messages de sorties dans la fenêtre de commande où WHDLoad a été exécuté au lieu d'ouvrir une nouvelle fenêtre.

NoMMU/S

Si cette option est activée, WHDLoad n'utilisera pas le MMU. C'est une option dangeureuse et n'est recommandée seulement pour tester ou débugger et non pour une utilisation normale. Voir chapitre MMU pour plus d'informations. L'option prend le dessus sur MMU/S.

NoTrapHandler/S

Si cette option est activée, WHDLoad utilisera la table de vecteurs originaux de l'OS du système. Au début WHDLoad copiera la table de vecteurs du système au lieu de créer sa propre table. C'est utile pour débugger et ne ne devrait pas être utilisé pour un usage normal. Attention: si une exception est appelée par l'intermédiaire de la table de vecteur originale, elle exécutera une fonction OS ou essayera d'utiliser les données de l'OS et la machine plantera (ex. exec.Alert).

NoVBRMove/S

Par défaut, WHDLoad déplace le VBR à une position différente dans la mémoire autre que $0. C'est un avantage, le programme installé ne peut changer la table des vecteurs et ceci améliore énormément la sécurité et la stabilité de WHDLoad. Quelques programmes installés/slaves ne fonctionnent pas correctement avec un VBR déplacé. La raison est que le programme installé peut effectuer des choses étranges qui ne supporteront pas que le VBR soit déplacé ou que l'auteur de l'install était trop fainéant pour supporter un VBR déplacé. Dans un tel cas, cette option doit être activée pour empêcher un déplacement du VBR par WHDLoad.
Une autre caractéristique d'un VBR déplacé est que WHDLoad peut vérifier le clavier chaque fois qu'une interruption d'un Autovector se produit. WHDLoad sera donc capable de quitter le programme installé indépendamment du fonctionnement de celui-ci, si QuitKey/S ou DebugKey/S est pressée. (de même que le programme installé peut être intérompu quand FreezeKey/S est pressée). Pour déplacer le VBR, il faut au minimum un 68010. Sur un 68000, cette option n'a pas d'effet, car le VBR se trouve toujours à $0 et qu'il ne peut pas être déplacé.

NoWriteCache/S

Cette option désactive le cache du disque en écriture de WHDLoad. Sans cette option, WHDLoad essayera d'optimiser toutes les opérations d'écriture dans la mémoire et de les différer jusqu'à que le programme quitte afin d'éviter inutilement l'activation de l'OS.

NTSC/S

Si selectionné, WHDLoad utilisera un afficache NTSC (60Hz) pour le programme installé. Sur un Amiga PAL, le pilote du moniteur NTSC doit être installé dans "DEVS:Monitors/".

PAL/S

Si selectionné, WHDLoad utilisera un afficache PAL (50Hz) pour le programme installé. Sur un Amiga NTSC, le pilote du moniteur PAL doit être installé dans "DEVS:Monitors/".

Preload/S

Si cette option est activée, WHDLoad chargera les fichiers et les images de disque en mémoire autant que possible (en fonction de la mémoire libre disponible). Ceci améliore les performances quand le programme installé fonctionne, car cela évite des accès à l'OS pour charger les données directement à partir du disque dur. Cette option devrait toujours être activée.

QuitKey/K/N

Choisissez un code clavier pour quitter le programme, ceci marche seulement si le VBR est déplacé par WHDLoad (NoVBRMove/S ne doit être activé et le cpu doit être au moins un 68010) ou que le slave le supporte lui-même.

ReadDelay/K/N

Cette option spécifie le temps en 1/50ème de seconde l'attente de WHDLoad après avoir charger les données du disque, et aussi après que l'option Preload ait fini. Ceci resout les problèmes de lecteurs (ex. lecteur de CD) qui veulent faire quelque chose après la lecture (ex. éteindre le moteur).

RestartKey/K/N

En utilisant cette option, vous pouvez choisir un code clavier pour relancer le programme installé.

ShowRegs/K/N

Cette option est très utile si Expert/S est activé. Vous pouvez spécifier un programme qui sera utilisé pour afficher le fichier Dump, si le bouton Show Regs (dans une requête d'erreur de WHDLoad) a été pressé. WHDLoad copiera le nom du fichier (fichier temporairement sauvé, actuellement T:.whdl_register) dans la chaîne de commande spécifiée.

Slave

Nom du slave qui doit être utilisé pas WHDLoad. Le slave contient le code interface qui est requis pour la communication entre le programme installé et WHDLoad.

Snoop/S, SnoopAGA/S, SnoopECS/S, SnoopOCS/S

Ces options activent le registre Cia/Custom snoop de WHDLoad.

SplashDelay/K/N

Cette option spécifie le temps (en 1/50ème de seconde) d'affichage de la fenêtre d'informations de WHDLoad au début. Si SplashDelay/K/N est plus petit que ReadDelay/K/N, il sera ignoré et la fenêtre restera affichée avec le temps de ReadDelay/K/N. La fenêtre est affichée aussi longtemps que Preload/S travaille. Si l'option est à 0, aucune fenêtre ne s'affichera.

StoreBuffer/S

Cette option active le Store Buffer du 68060. Sur les autres cpu, il n'y aura aucun effet.
L'option est inactive si NoCache/S est mis.

SuperScalar/S

Cette option active la capacité du cpu à exécuter plusieurs instructions par cycle. Sur les autres cpu, il n'y aura aucun effet.
L'option est inactive si NoCache/S est mis.

TimeOut/K/N

Si activé, WHDLoad et le programme installé quittera après le temps spécifié. L'option NoVBRMove/S ne doit pas être mise et le programme installé ne doit pas modifier le ciaa.ciatod timer. Le temps pour quitter est spécifié en 1/50ème de seconde. Pour mesurer ce temps pour une démo ou un jeu, activez l'option Expert/S et choisissez un DebugKey/K/N, quand vous aurez atteint le point désiré, appuyez sur la touche debug. Maintenant regardez dans le fichier .whdl-register et recherchez la valeur ciaa-event. Si la fréquence de la puissance délivrée est 50 Hz, alors c'est la valeur à mettre avec TimeOut/K/N, si la fréquence est 60 Hz, vous devez multiplier la valeur par 5/6.

WriteDelay/K/N

Cette option spécifie le temps d'attente (en 1/50ème de seconde) de WHDLoad après avoir écrit sur le disque dur. Ceci affecte toutes les fonctions resload_Save#? et FileLog/S. En général, les systèmes de fichiers n'écrivent pas les données immédiatement sur le disque dur. Cela prend un peu de temps (1 à 3 secondes) jusqu'à que toutes les structures du système de fichiers soient mises à jour avec succès. La valeur par défaut pour WriteDelay est 150, WHDLoad attendra donc 3 secondes après chaque écriture sur le disque dur. Vous pouvez mettre la valeur à 0, mais vous ne devriez jamais quitter par un reset le programme installé car les données ne seront pas sauvegardées correctement sur le disque dur.