Игра ЧИП-8 имеет нечетное количество байтов

Я работал над эмулятором CHIP8 и использую hex-редактор в notepad++ для просмотра шестнадцатеричных значений. Я случайно заметил, что некоторые игры, такие как "Blitz" Дэвида Винтера, имеют нечетное количество байтов.

Окно свойств Blitx

Блиц шестнадцатеричные данные

В CHIP8 каждый код операции имеет длину 2 байта, поэтому должно быть четное число байтов, верно?

1 ответ

Решение

Как вы можете видеть в шестнадцатеричном дампе, автор встроил строку BLITZ By David WINTER в ПЗУ. Может быть, эта строка показана где-то в игре, или, может быть, это просто его маленький способ подписать свое творение.

Длина строки составляет 21 символ, поэтому вы получаете нечетный размер файла.
Игра начинается с инструкции 0x1217, который является переходом к адресу 0x217, Это соответствует первому байту после строки, так как игры загружаются в память по адресу 0x200,

Другие вопросы по тегам