Консоль
Last updated
Last updated
Консоль служит инструментом для переключения отладочных опций Sanny Builder. Многие из них относятся к возможностям дизассемблера и влияют на его работу.
Окно консоли открывается нажатием Ctrl+~
. Для запуска команды введите ее в верхнем поле и нажмите Enter
. Консоль покажет результат.
Все команды являются регистронезависимыми.
help
– показать справку о консоли
clear
– очистить консоль
list
– показать список доступных команд
list options
– вывести все доступные отладочные опции
toggle <имя опции> [on/off]
– переключить
Команда toggle
заканчивается либо словом ON
(опция будет включена), OFF
(опция будет выключена), или ни тем ни другим (опция будет переключена с ON
на OFF
или с OFF
на ON
).
Дизассемблер выводит для каждой команды ее адрес в файле (смещение от начала).
После компиляции в консоли содержится список , которые были использованы только один раз (неиспользуемые переменные, которые можно удалить или заменить на ).
Дизассемблер игнорирует ошибки в исходном коде (неизвестные опкоды, неверные типы данных, нарушения формата файла). Это помогает открыть большинство скриптов, которые были скомпилированы некорректно.
Выводит элементы массива как глобальные переменные с индексом. Доступно для режимов GTA SA
, LCS
, VCS
.
Например, если в исходном файл был массив из трех элементов, начинающийся с $10
, то при переключении этой опции переменные в дизассемблированном файле будут выглядеть следующим образом:
Без CONSTANT_INDEXES
С CONSTANT_INDEXES
$10
$10[0]
$11
$10[1]
$12
$10[2]
Дизассемблер пропускает чтение заголовка .scm
файла. Это позволяет открывать скрипты в которых заголовка нет (например, скрипты из файла script.img
или CLEO скрипты).
Sanny Builder предлагает несколько способов для переключения отладочных опций за пределами консоли. Эти способы могут быть полезны в определенных случаях.
debug
Индекс
Отладочная опция
1
CODE_OFFSETS
2
IGNORE_UNKNOWN
3
VAR_COUNTER
4
CONSTANT_INDEXES
5
SKIP_SCM_HEADER
6
SKIP_EXTRA_INFO
Первая 1
включит опцию CODE_OFFSETS
, вторая 1
включит режим IGNORE_UNKNOWN
. Оставшиеся опции будут отключены.
Клик по самой правой кнопке на панели инструментов открывает выпадающее меню со списком опций:
Каждый элемент списка переключает одну из опций. Изменение будет сразу доступно для использования.
Также при включении этой опции Sanny Builder компилирует .scm
файлы без заголовка (альтернативно использованию {$EXTERNAL}
).
Дизассемблер игнорирует секцию с в конце скрипта. Эта секция будет рассматриваться как набор SCM инструкций, поэтому рекомендуется дополнительно включить опцию IGNORE_UNKNOWN
.
Запуск программы через командную строку с --debug
является способом одновременно переключить несколько опций. Запустите sanny.exe
с параметром --debug X
, где X
это последовательность 0
и 1
. Каждая цифра в последовательности означает определенную опцию: