Skoolkit
Skoolkit — инструментарий для дизассемблирования программ для ZX Spectrum. Ключевая особенность — возможность генерации html файлов с листингом кода и комментариями в стиле literate programming и возможностью вставлять графику (спрайты, шрифты, экраны), извлеченную из дампа памяти.
В отличие от интерактивных дизассемблеров (IDA pro, radare2) Skoolkit оперирует над текстовыми файлами, это позволяет использовать возможности текстовых редакторов для навигации и редактирования. Пользователь, осуществляющий реверс-инженеринг, редактирует .skool файл, добавляя комментарии, label'ы и разметку, а уже из него генерируется листинг, который можно скомпилировать ассемблером, и html файлы. При необходимости изменить блоки кода и данных файл .skool можно перегенерировать с сохранением пометок, добавленных пользователем.
Для определения границ блоков кода и данных Skoolkit может использовать как простой статический анализ, так и profile/trace файлы (насколько часто выполнялась процессором инструкция по каждому адресу), запись которых поддерживают многие эмуляторы.
Программы, дизассемблированные с помощью Skoolkit
На сайте проекта есть дизассемблированный код для:
- Skool Daze
- Back to Skool
- Contact Sam Cruise
- Manic Miner
- Jet Set Willy
- ПЗУ от ZX Spectrum 48K
Другие проекты по дизассемблированию: