WHDLoad может быть запущен из командной строки (CLI/Shell) или из Workbench. Параметры могут задаваться в файле глобальной конфигурации и через аргументы или Tooltypes. Как правило, необходимо использование параметра Slave. Остальные параметры устанавливаются по мере необходимости, в зависимости от вашей конфигурации системы и программы, запускаемой из WHDLoad. Когда WHDLoad запущен из командной строки, то при выходе возвращаются следующие коды возврата:
Есть локальные и глобальные опции. Локальные
опции определяются как аргументы через CLI или как
ToolTypes, если запуск происходит из Workbench.
Если запуск производится через иконку из Workbench, то WHDLoad попытается обновить иконку в соответствии с опциями PreloadSize, Config и опций, выбираемых во всплывающем окне. Если такая операция требуется при запуске с использованием инструментов командной строки, таких как WBRun (содержится в OS3.5/3.9), нужно использовать эмуляцию запуска из Workbench.
Глобальный файл конфигурации находится в "S:WHDLoad.prefs
".
Это обычный ASCII файл, содержащий по одному
параметру в каждой строке. Закомментированные и
пустые строки игнорируются. Комментарий - это
часть строки, начиная со знака ";"
и до
конца текущей строки.
Пример файла конфигурации содержится в пакете
WHDLoad ("S/WHDLoad.prefs
").
существует три типа параметров:
numerical: | целое число; из CLI вы обязаны использовать только десятичное значение, а при использовании в ToolType, допускается также использовать шестнадцатеричное значение, которое должно начинаться со знака - " $" |
string: | строковое выражение |
switcher: | опция будет активирована, если будет установлена (boolean) |
Колонка "Локальный" указывает на то, что опция может использоваться в командной строке и как tooltype в иконке. Колонка "Глобальный" указывает на то, что опция может быть использована в глобальном файле конфигурации.
Многие опции недоступны в WHDLoadCD32. Колонка CD³² указывает на то, присутствует ли опция в этой специальной версии WHDLoad.
Name of option | Type | Local | Global | CD³² | Default value |
---|---|---|---|---|---|
BranchCache | switch | x | - | - | |
ButtonWait | switch | x | x | x | |
Cache | switch | x | - | x | |
Chk | switch | x | - | - | |
ChkAudPt | switch | x | - | - | |
ChkBltHog | switch | x | - | - | |
ChkBltSize | switch | x | - | - | |
ChkBltWait | switch | x | - | - | |
ChkColBst | switch | x | - | - | |
ChkCopCon | switch | x | - | - | |
ChkInts | switch | x | - | - | |
ChipNoCache | switch | x | x | - | |
Config | string | x | - | x | "" |
ConfigDelay | numerical | x | x | x | 400 |
CoreDump | switch | x | - | - | |
CoreDumpPath | string | - | x | - | PROGDIR: |
Custom | string | x | - | x | "" |
Custom1 | numerical | x | - | x | 0 |
Custom2 | numerical | x | - | x | 0 |
Custom3 | numerical | x | - | x | 0 |
Custom4 | numerical | x | - | x | 0 |
Custom5 | numerical | x | - | x | 0 |
D | switch | x | - | - | |
Data | string | x | - | x | - |
DebugKey | numerical | x | x | - | $78 (CAA) |
DCache | switch | x | - | - | |
ExecuteCleanup | string | x | x | - | - |
ExecuteStartup | string | x | x | - | - |
Expert | switch | - | x | - | |
ExpChip | switch | x | - | - | |
ExpLocal | switch | x | - | - | |
Exp24Bit | switch | x | - | - | |
FileLog | switch | x | - | - | |
FreezeKey | numerical | x | x | - | $78 (CAA) |
FullChip | switch | x | x | - | |
LogBuffer | numerical | x | x | - | 4096 |
MMU | switch | x | x | - | |
NoAutoVec | switch | x | x | x | |
NoCache | switch | x | - | x | |
NoFileCache | switch | x | - | x | |
NoFilter | switch | x | x | x | |
NoFlushMem | switch | x | x | - | |
NoMemReverse | switch | - | x | - | |
NoMMU | switch | x | x | - | |
NoNetwork | switch | x | x | - | |
NoResInt | switch | x | - | x | |
NoReq | switch | x | x | x | |
NoVBRMove | switch | x | - | x | |
NoWriteCache | switch | x | x | - | |
NTSC | switch | x | x | x | |
PAL | switch | x | x | x | |
Preload | switch | x | x | x | |
PreloadSize | numerical | x | - | - | |
Proxy | string | - | x | - | - |
QuitKey | numerical | x | x | x | $59 (F10) |
ReadDelay | numerical | - | x | x | 0 |
RestartKey | numerical | x | x | x | $78 (CAA) |
SaveDir | string | x | - | - | - |
SavePath | string | x | x | - | - |
ShowRegs | string | - | x | - | SYS:Utilities/MultiView |
Slave | string | x | - | x | WHDLoad.Slave |
Snoop | switch | x | - | - | |
SnoopAGA | switch | x | - | - | |
SnoopECS | switch | x | - | - | |
SnoopOCS | switch | x | - | - | |
SplashDelay | numerical | x | x | x | 200 |
StoreBuffer | switch | x | - | - | |
SuperScalar | switch | x | - | - | |
TimeOut | numerical | x | - | x | 0 |
WriteDelay | numerical | x | x | - | 150 |
Workbench: | ![]() |
CLI или Shell: | 1> WHDLoad SuperGame.slave Preload NTSC QuitKey=69 Custom1=1 |
Этот параметр не используется непосредственно
программой WHDLoad, но может быть проверен
slave-модулем.
Назначение этого параметра состоит в том, что
если он определён, то установленная программа
ждет нажатия кнопки, в то время, как
демонстрируется какая-то графика и/или
воспроизводится музыка (обычно делает это в
течение очень ограниченного промежутка времени
из-за долгой загрузки с жесткого диска /
оперативной памяти, сравнимой со скоростью
загрузки с дискеты).
Включает кэш ветвления (Branch Cache) на процессорах 68060.
На других типах процессоров это не имеет никакого эффекта.
Также этот параметр не имеет никакого эффекта, если используется параметр NoCache/S.
Позволяет включать и отключать использование кэша установленной программой.
На 68030 так же включается instruction burst.
Если WHDLoad использует диспетчер памяти, то Chip-память
помечается как кэшируемая Writethrough (неточно).
Этот параметр не имеет никакого эффекта, если
также используется параметр NoCache/S.
Этот параметр является быстрым способом активации других параметров - ChkBltSize/S, ChkBltWait/S и ChkColBst/S.
Проверяет что указатели, записанные в указатели пользовательских (Custom) аудиоданных, являются допустимыми адресами чип-памяти. Указатели не должны быть нулевыми и находиться внутри BaseMem. Данная функция работает только в сочетании с одной из опций SnoopOCS/SnoopECS/SnoopAGA. Данная функция может помочь с выявлением проблем, связанных с процедурами повторного воспроизведения звука.
Включает постоянную проверку не выставлен ли бит blthog
(bltpri
)
в регистре custom.dmacon.
Может использоваться только совместно с одним из параметров
SnoopOCS / SnoopECS / SnoopAGA.
Включение blthog
дает приоритет доступа к памяти блиттеру над ЦП,
что может вызвать проблемы на некоторых аппаратных конфигурациях.
Также это иногда может улучшить производительность, предоставляя процессору несколько циклов шины.
Включает проверку правильно ли установленная программа использует блиттер, чтобы только действительные области памяти использовались для работы блиттера. Может использоваться только совместно с одним из параметров SnoopOCS / SnoopECS / SnoopAGA. Будут проверены все операции блиттера, за исключением линейного режима (line mode).
Включает проверку правильно ли установленная программа ожидает конца работы блиттера перед новым запуском blitter-а. Может использоваться только совместно с одним из параметров SnoopOCS / SnoopECS / SnoopAGA.
Включает постоянную проверку установлен ли бит цветности (color)
в регистре custom.bplcon0
.
Может использоваться только совместно с одним из параметров
SnoopOCS / SnoopECS / SnoopAGA.
Некоторое оборудование, особенно flickerfixer, требует установки данного бита для вывода
корректного видеосигнала. Поэтому, для лучшей совместимости,
следует всегда устанавливать данный бит.
Выставленные пишут напрямую в custom.bplcon0
и все списки Коппера (Copper lists).
Включает проверку того, что установленная программа на включает доступ Коппера к регистрам
DMA через изменение установок custom.copcon
.
Может использоваться только совместно с одним из параметров
SnoopOCS / SnoopECS / SnoopAGA.
Иногда может быть полезно для определения используется ли Коппер программой для управления активностью DMA.
Этот параметр проверяет при каждом прерывании
установлены ли для него соответствующая пара бит
в intreq
и intena
.
Если нет, то установленная программа закончит работу
с соответствующим сообщением об ошибке. Эта
возможность позволяет легко обнаруживать
возможные проблемы с прерываниями на быстрых
машинах (68040/060) или неисправных аппаратных
средствах, которые создают нежелательные
прерывания. Этот параметр сделан переключаемым, в связи с тем,
что условие может возникнуть если прерывания
отключены установками intena
в то
самое время, когда происходит прерывание.
Выключает кэширование Chip-памяти (BaseMem). Эта опция может использоваться на аппаратных средствах , которые не позволяют кэширование Chip-памяти (например, плата Blizzard PPC), во избежание замедления скорости выполнения установленной программы. См. также Работа с кэшем центрального процессора.
Если этот параметр установлен, то при каждом выходе из установленной программы, WHDLoad создаёт файл дампа памяти. Это может быть полезно для отладочных целей или, например, для того чтобы вытащить музыку в MOD-формате из этого файла с дампом памяти.
Определяет место сохранения файлов дампа памяти, созданных программой WHDLoad.
Этот параметр непосредственно программой WHDLoad не используется, но может быть проверен slave-модулем для управления специфическими возможностями установленной программы. Custom/K может содержать строковую переменную, а Custom1-5/K может содержать только целое число. За конкретной информацией относительно возможного использования данных параметров, обращайтесь к документации на конкретную установленную программу.
Этот параметр очень полезен для отладки. Если он установлен и если поддерживаемый программный системный монитор (HRT/TK) найден в памяти, то WHDLoad эмулирует немаскируемое прерывание (NMI) перед выполнением первой инструкции процессора, содержавшейся в Slave-модуле.
Используя этот параметр можно задать путь к каталогу, в который WHDLoad должен перейти для загрузки данных установленной программы. Можно также с помощью запятой "," определить несколько каталогов для загрузки данных(учтите то что имена директорий не могут содержать запятую!). Также если для поиска и загрузки какого-то файла можно указать несколько каталогов, то сохранение происходит только в первый указанный каталог. Этот параметр перезаписывает переменную ws_CurrentDir, содержащуюся в Slave-модуле.
Позволяет включать кэш данных и кэш инструкций для установленной программы.
На 68030 также будет включен instruction burst.
Если WHDLoad использует MMU, то Chip-память помечается как
кэшируемая Writethrough (неточно).
Этот параметр не имеет никакого эффекта, если
также используется параметр NoCache/S.
Задает код клавиши rawkey чтобы остановить программу для отладки (создаются файлы дампа памяти. Параметр работает только если активен режим Expert и VBR (Vector Base Register) перемещен программой WHDLoad (параметр NoVBRMove/S НЕ установлен, а процессор не ниже 68010) или если slave-модуль поддерживает это самостоятельно.
С помощью данного параметра можно задать команду, которая будет выполнена перед завершением работы WHDLoad. Также можно выполнить скрипт используя системную команду Execute.
С помощью данного параметра может быть определена команда, которая будет выполнена при запуске WHDLoad. Может использоваться для отключения тех аппаратных средств или программ, которые могут конфликтовать с программой WHDLoad, например, стек IP или USB. За более подробной информацией обратитесь к разделу ошибки. Также можно выполнить скрипт используя системную команду Execute.
Переключает WHDLoad в режим эксперта. Это влияет на параметр DebugKey/S и вывод предупреждений во время переключения между установленной программой и OS (color cycle copper screens - когда экран разделён на 3 горизонтальных прямоугольника, средний из которых постоянно меняет цвета, используя всю доступную палитру). Если режим эксперта НЕ активен, то параметр DebugKey/S тоже будет недоступен. Также в режиме эксперта в некоторых окнах с сообщениями об ошибках появляется дополнительная кнопка. Эта кнопка, называющаяся Show Regs, позволяет просматривать регистры и информацию о статусе, подобно тому, как пишется в дамп регистров. Кроме того, для переключения параметров, относящихся к отладке, добавлены некоторые кнопки всплывающего окна splash window. При запуске из workbench, измененные значения параметров сохраняются в параметрах ярлыка.
Если установленная программа использует
дополнительную память (ws_ExpMem), то эти параметры могут
быть использованы для того, чтобы заставить WHDLoad
резервировать эту память соответственно в Chip-памяти,
Local-памяти или 24BitDma-памяти.В результате это может
привести снижению скорости выполнения программы,
поскольку доступ центрального процессора к этой
памяти может быть медленнее по сравнению к
скорости доступа к Fast-памяти, используемой по
умолчанию. Вы можете использовать сторонние
утилиты (например, SysInfo, GvpInfo,...) чтобы узнать
конфигурацию вашей памяти, а также какими
характеристиками обладает каждый тип памяти.
В общем, эти опции предназначены для решения
проблем совместимости установленных программ на
быстрых машинах, замедляя их выполнение за счёт
использования медленной памяти.
Этот параметр служит только для отладочных
целей.
За подробностями обращайтесь к разделу Дампы памяти и файлы журналов
регистрации.
Если Вы используете один из поддерживаемых программных системных мониторов (HRTmon или Thrillkill), Вы можете использовать этот параметр для назначения кода клавиши rawkey, при нажатии на которую, WHDLOAD переключится в системный монитор. Работает, если только VBR перемещен программой WHDLoad (НЕ должен быть активен параметр NoVBRMove/S и центральный процессор должен быть не менее 68010), а системный монитор должен быть запущен. За детальной информацией обращайтесь к главе Системные мониторы.
Этот параметр должен использоваться только на процессорах 68030, для того, чтобы позволить им использовать возможности MMU функций (защита памяти, улучшенная опция управление кэшем, Snooping, resload_Protect#?). На процессорах 68040/060 эта опция не имеет никакого эффекта, потому что диспетчер памяти и так будет использоваться по умолчанию. Рекомендуется устанавливать эту параметр в глобальном файле конфигурации на всех системах, имеющих CPU 68030 c MMU (т.е. не 68EC030), потому что это значительно увеличивает стабильность и безопасность системы. Этот параметр не имеет никакого эффекта, если также используется параметр NoMMU/S.
Если установлен этот параметр, то WHDLoad не будет выходить, если внезапно возникнет автовекторное прерывание или немаскируемое прерывание (NMI) (векторы #25-31 / $64-$7c). Этот параметр может использоваться для предотвращения выхода программы WHDLoad на системах, которые создают случайные прерывания. Но учтите, что данная опция не является лекарством от неисправного "железа", которое генерирует эти прерывания. Несмотря на то, что данная опция активна, на таком оборудовании некоторые установленные программы все равно могут работать некорректно. Так что лучшим решением данной проблемы была бы замена (или ремонт, если это возможно) неисправного оборудования, которое генерирует прерывания.
Если этот параметр ВКЛЮЧЕН, то все кэши
будут ВЫКЛЮЧЕНЫ.
Этот параметр аннулирует следующие параметры: BranchCache/S, Cache/S, DCache/S,
StoreBuffer/S и SuperScalar/S.
Отключает кэширование файлов в WHDLoad и вынуждает
его обращаться к OS для каждой дисковой операции,
установленной программы.
Этот параметр отключает параметр Preload/S.
Отключает звуковой фильтр. Обратите внимание, что этот параметр затрагивает инициализацию фильтра только при запуске, так что эта функция бессильна, если установленная программа сама манипулирует состоянием звукового фильтра.
Обычно WHDLoad очищает память при запуске, чтобы получить как можно больше свободной памяти для опции Preload/S, т.е. из памяти удаляются все незадействованные ресурсы системы, такие как библиотеки, шрифты и т.д. При использование же этого параметра, WHDLoad не будет очищать память. Может использоваться на системах с большим количеством свободной памяти, избегая тем самым перезагрузку резидентных программ тем самым улучшая работоспособность системы.
Если этот параметр установлен, WHDLOAD не будет использовать диспетчер памяти. Это - критическая и опасная опция, рекомендованная только для тестирования или отладки, а не для нормального использования. За дополнительной информацией обращайтесь к разделу WHDLoad и диспетчер памяти (MMU). Этот параметр подавляет параметр MMU/S.
Может использоваться только если WHDLoad был запущен из командной строки (CLI/Shell). При запуске из Workbench, эта опция не имеет никакого эффекта. Данный параметр отключает в WHDLoad вывод сообщений в новое отдельное окно, а сообщения будут выводиться в том же консольном окне, где был запущен WHDLoad.
По умолчанию WHDLoad перемещает таблицу векторов в другую область памяти, используя VBR (Vector base Register).
Это имеет преимущество, т.к. установленная программа, не может изменить
таблицу векторов, что намного увеличивает безопасность и стабильность программы WHDLoad.
Некоторые установленные программы / slave-модули не будут правильно работать с перемещенным VBR.
Причина этого может служить то, что установленная программа использует исключения процессора, либо еще что-нибудь нестандартное.
В таком случае, эта опция должна использоваться, чтобы препятствовать WHDLoad
перемещать базу вектора.
Другая возможность перемещенного VBR это то, что WHDLoad может проверить клавиатуру каждый раз, когда
происходит автовекторное прерывание.
С помощью такой проверки WHDLoad способен выйти из установленной программы независимо от работы
установленной программы / slave-модуля, если были нажаты QuitKey/S или DebugKey/S
или для входа в Монитор, когда нажата FreezeKey/S).
Для возможности перемещения VBR требуется процессор не ниже 68010.
На процессоре 68000 эта опция не имеет никакого эффекта, потому что нет VBR и таблица векторов всегда
начинается в $0 и не может быть перемещена.
На процессорах 68000 WHDLoad поддерживает некоторые специфические аппаратные стредства (ACA500, Zeus),
которые позволяют
which allows to place the Autovector interrupt vectors
+on a different memory location to be able to always support the QuitKey/S feature. These special hardware features are not
+used if this option has been enabled.
Отключает для WHDLoad возможность кэширования диска для операций записи. Без этого параметра WHDLoad будет сам пытаться кэшировать в памяти все операции записи и откладывать запись до выхода из программы, чтобы избежать ненужных обращений к операционной системе.
Если выбран этот параметр, то WHDLoad для
установленной программы будет использовать
режим NTSC (60Hz). На PAL-версии Амиги, драйвер NTSC-монитора
должен быть установлен в "DEVS:Monitors/
".
Если выбран этот параметр, то WHDLoad для
установленной программы будет использовать
режим PAL (50Hz). На NTSC-версии Амиги, драйвер PAL-монитора
должен быть установлен в "DEVS:Monitors/
".
Если этот параметр включен, то в момент запуска WHDLoad загрузит в память столько файлов и образов дискет, сколько возможно. Если в момент предзагрузки свободной памяти недостаточно, загрузка останавливается и загружается только часть файлов. Это увеличивает скорость выполнения загрузки/подгрузки файлов установленной программы, потому что позволяет избегать обращений к OS, для загрузки данных непосредственно от жесткого диска. Желательно всегда задействовать этот параметр.
Назначает код клавиши rawkey, по нажатию на которую произойдет выход из программы. Работает, если только VBR перемещен программой WHDLoad (НЕ должен быть активен параметр NoVBRMove/S, а центральный процессор должен быть не менее 68010) и сам slave-модуль должен это поддерживать.
Устанавливает, в значениях равных 1/50-й части секунды, сколько времени WHDLoad должен ждать после того, как он загрузил данные с дисков. Также ожидает такое же количество времени после того, как была завершена подгрузка (Preload/S). Это решает проблемы с такими приводами (например, приводы CD-ROM), которые еще что-то делают после чтения (например, выключают мотор).
Используя этот параметр, Вы можете назначать rawkey код клавиши, при нажатии на которую, WHDLoad перезапустит установленную программу.
Этот параметр полезен только совместно с
параметром Expert/S.
С помощью этого параметра можно задать в каком
виде WHDLoad будет показывать дамп состояния
регистров если будет нажата кнопка Show Regs в
окне сообщения об ошибке WHDLoad. WHDLoad будет
добавлять, к указанной командной строке, имя
временно сохраненного файла (в настоящее время T:.whdl_register).
Имя slave-модуля, который будет использоваться программой WHDLoad. Slave-модуль содержит код интерфейса, требуемый для связи между установленной программой и WHDLoad.
Эти параметры активируют возможности Cia/Custom register snoop в WHDLoad.
Устанавливает, в значениях равных 1/50-й части
секунды, сколько времени при запуске WHDLoad будет
показывать информационное окно. Если SplashDelay/K/N
меньше чем ReadDelay/K/N, то этот параметр
игнорируется, и окно показывается столько,
сколько указано в ReadDelay/K/N. Окно
показывается, по крайней мере, в течение времени
работы функции Preload/S.
Если параметр имеет значение равное 0, то никаких окон выводиться не будет.
Если параметр имеет значение равное -1, то у всплывающего окна появится кнопка Start, а окно будет оставаться открытым,
пока эта кнопка не будет нажата. Также всплывающее окно может быть закрыто нажатием клавиш Space, Return, Enter или кнопкой выстрела на игровом контроллере в порту #1.
При нажатии клавиши Esc, WHDLoad немедленно прекращает работу функции Preload/S и завершает свою работу. См. также ConfigDelay/K/N.
Позволяет активировать Store Buffer на процессорах
68060. На других процессорах этот параметр не имеет
никакого эффекта.
Также не имеет никакого эффекта, если установлен
параметр NoCache/S.
Позволяет на процессорах 68060 выполнять
множество инструкций за один машинный цикл. На
других процессорах этот параметр не имеет
никакого эффекта.
Также не имеет никакого эффекта, если установлен
параметр NoCache/S.
Если этот параметр установлен, то это позволяет
WHDLoad и установленной программе завершать свою
работу через определенное время. Требуется,
чтобы параметр NoVBRMove/S НЕ был
установлен и чтобы установленная программа не
изменяла таймер ciaa.ciatod
. Время
работы до выхода устанавливается, в значениях
равных 1/50-й части секунды. Для измерения времени
работы демо или игры нужно активировать
параметр Expert/S и задать параметр DebugKey/K/N, и в момент, когда вы захотите
выйти, нажмите горячую клавишу (DebugKey). После этого
загляните в созданный файл .whdl_registers,
и посмотрите значение ciaa-event. Если
частота питающей сети - 50 Гц, то это будет как раз
тем значением, которое Вы должны установить с TimeOut/K/N,
если же частота - 60 Гц, то следует умножить это
значение на 5/6.
Параметр времени ожидания после записи на диск. Определяет, в значениях равных 1/50-й части секунды, время, которое WHDLoad будет ожидать после записи чего-либо на диск. Этот параметр затрагивает функцию resload_Save *? и возможности FileLog/S. Эта функция имеет смысл, потому что файловые системы обычно не могут моментально записать данные на диск. Это занимает некоторое время (1.. 3 секунды) пока все структуры фйловой системы будут успешно обновлены. Значение по умолчанию для функции WriteDelay составляет 150, что позволяет WHDLoad ждать 3 секунды после того, как данные запишутся на жесткий диск. Вы можете изменить значение на 0, но тогда Вы никогда не должны выходить из установленной программы по RESET'у сразу после записи, потому что данные не будут правильно записаны на диск.