Хранение сжатой графики SMS
В этой статье я хочу рассмотреть один из примеров сжатия графики в играх. В частности, мы будем рассматривать игру Double Hawk для Sega Master System (SMS).
Так же будет полезно ознакомится со статьёй «SMS/GG (Метод хранение несжатой графики в играх для SMS/GG)».
Метод хранения схож с методом описанном в статье «Хранение сжатой графики 1BBP».

В игре много пожатой графики, мы же будем рассматривать надпись Mission.

Так называемый архив со сжатой графика хранится в роме (игре) с $CCAD по $D0BE.

Первые два байта 60 01 эта что-то вроде размера архива. Переворачиваем значение и получаем 01 60. В переводи в десятичные это 352. Это значение сколько пикселей по 8 мы запишем в видеопамять консоли. Проще говоря «размер архива».
Начнём рассматривать по порядку.

Байт 01 это число сколько графических дынных будет до следующего «служебного байта».


В нашем случае мы считываем одно значение FF 00 00 00 равное 4 байтам.

Далее идёт «служебный байт» 81, который указывает на количество повторений.


В нашем случае 3 повторения значения 47 B8 00 00.
То есть 0x81 – 0x7E = 3

Для наглядности












