Графические устройства

         

Распаковка 16цветных строк



Распаковка 16-цветных строк

Код 16-цветного рисунка занимает 4 разряда, и для сокращения размера файла в одном байте располагаются коды двух точек. Перед записью в видеопамять находившиеся в одном байте коды точек надо расположить в младших разрядах двух разных байтов. Эта операция достаточно проста, и ее целесообразно выполнять в процессе построения строки. Тем более что при предварительной распаковке рисунка его размер увеличится в два раза.

Подпрограмма для распаковки строки в процессе построения 16-цветного рисунка приведена в примере 3.17. Перед обращением к ней надо установить окно видеопамяти, в котором должны располагаться точки строки, а адрес первой точки указать в регистре di. Пара регистров fs:si должна содержать адрес оперативной памяти, начиная с которого хранится упакованная строка. В регистре сх указывается количество точек в строке.



Содержание раздела