Набросал упомянутый ранее вариант, надеюсь принципиальных ошибок нет. Стоит отметить, что порядок вывода очень своеобразный, конвертер графики надо делать аккуратно.
- - - Добавлено - - -
Скопипастил у jerri описание и не поправил: D - не совсем X, это X+старшая половина адреса начальной плоскости.
Принципиальной разницы от моего последнего варианта не увидел.
Команда внесения данных +
команда перехода +
если надо снятие со стека данных.
Отличие необоснованно замороченный формат.
К вечеру выложу полноценную процедуру с контролем высоты спрайта.