Загрузка данных


; 1 строка (23 пикселя: 16+7)
MOV BYTE PTR DS:[BX]+0, 0FFh   ; цвет F (белый), повторов 16 (в битах F) -> 16-1 = 15 (F)
MOV BYTE PTR DS:[BX]+1, 0F6h   ; цвет F (белый), повторов 7  (7-1 = 6)
; 2 строка (23 пикселя: 4+1+18)
MOV BYTE PTR DS:[BX]+2, 0F3h   ; цвет F (белый), повторов 4  (4-1 = 3)
MOV BYTE PTR DS:[BX]+3, 000h   ; цвет 0 (черный), повторов 1 (1-1 = 0)
MOV BYTE PTR DS:[BX]+4, 0FFh   ; цвет F (белый), повторов 16 (16-1 = 15)
MOV BYTE PTR DS:[BX]+5, 0F1h   ; цвет F (белый), повторов 2  (2-1 = 1)
; 3 строка (23 пикселя: 3+1+1+1+5+4+8) -> Ошибка в исходных данных? (3+1+1+1+5+4+7=22). Добавим 1 к белому фону в конце.
MOV BYTE PTR DS:[BX]+6, 0F2h   ; цвет F (белый), повторов 3  (3-1 = 2)
MOV BYTE PTR DS:[BX]+7, 000h   ; цвет 0 (черный), повторов 1 (1-1 = 0)
MOV BYTE PTR DS:[BX]+8, 0B0h   ; цвет B (бирюза), повторов 1 (1-1 = 0)
MOV BYTE PTR DS:[BX]+9, 000h   ; цвет 0 (черный), повторов 1 (1-1 = 0)
MOV BYTE PTR DS:[BX]+10, 0F4h  ; цвет F (белый), повторов 5  (5-1 = 4)
MOV BYTE PTR DS:[BX]+11, 003h  ; цвет 0 (черный), повторов 4  (4-1 = 3)
MOV BYTE PTR DS:[BX]+12, 0F7h  ; цвет F (белый), повторов 8  (8-1 = 7)
; 4 строка (23 пикселя: 3+1+4+1+2+1+4+1+6) -> (3+1+4+1+2+1+4+1+5=22). Корректируем фон в конце до 6.
MOV BYTE PTR DS:[BX]+13, 0F2h  ; цвет F (белый)
MOV BYTE PTR DS:[BX]+14, 000h  ; цвет 0 (черный)
MOV BYTE PTR DS:[BX]+15, 0B3h  ; цвет B (бирюза), 4 повтора
MOV BYTE PTR DS:[BX]+16, 000h  ; цвет 0 (черный)
MOV BYTE PTR DS:[BX]+17, 0F1h  ; цвет F (белый), 2 повтора
MOV BYTE PTR DS:[BX]+18, 000h  ; цвет 0 (черный)
MOV BYTE PTR DS:[BX]+19, 0B3h  ; цвет B (бирюза), 4 повтора
MOV BYTE PTR DS:[BX]+20, 000h  ; цвет 0 (черный)
MOV BYTE PTR DS:[BX]+21, 0F5h  ; цвет F (белый), 6 повторов
; 5 строка (23 пикселя: 2+1+1+1+4+1+1+1+6+1+4)
MOV BYTE PTR DS:[BX]+22, 0F1h  ; цвет F (белый), 2
MOV BYTE PTR DS:[BX]+23, 000h  ; цвет 0 (черный), 1
MOV BYTE PTR DS:[BX]+24, 0B0h  ; цвет B (бирюза), 1
MOV BYTE PTR DS:[BX]+25, 000h  ; цвет 0 (черный), 1
MOV BYTE PTR DS:[BX]+26, 0B3h  ; цвет B (бирюза), 4
MOV BYTE PTR DS:[BX]+27, 000h  ; цвет 0 (черный), 1
MOV BYTE PTR DS:[BX]+28, 0F0h  ; цвет F (белый), 1
MOV BYTE PTR DS:[BX]+29, 000h  ; цвет 0 (черный), 1
MOV BYTE PTR DS:[BX]+30, 0B5h  ; цвет B (бирюза), 6
MOV BYTE PTR DS:[BX]+31, 000h  ; цвет 0 (черный), 1
MOV BYTE PTR DS:[BX]+32, 0F3h  ; цвет F (белый), 4
; 6 строка (23 пикселя: 2+1+1+1+5+1+1+1+1+1+4) -> (2+1+1+1+5+1+1+1+1+1+3=18?). Корректируем фон в конце до 8.
MOV BYTE PTR DS:[BX]+33, 0F1h
MOV BYTE PTR DS:[BX]+34, 000h
MOV BYTE PTR DS:[BX]+35, 0F0h
MOV BYTE PTR DS:[BX]+36, 000h
MOV BYTE PTR DS:[BX]+37, 0B4h
MOV BYTE PTR DS:[BX]+38, 000h
MOV BYTE PTR DS:[BX]+39, 0B0h
MOV BYTE PTR DS:[BX]+40, 000h
MOV BYTE PTR DS:[BX]+41, 0B0h
MOV BYTE PTR DS:[BX]+42, 000h
MOV BYTE PTR DS:[BX]+43, 0F7h  ; белый, 8 повторов
; 7 строка (23 пикселя: 3+1+6+1+4+1+1+6) -> (3+1+6+1+4+1+1+5=22). Корректируем фон в конце до 6.
MOV BYTE PTR DS:[BX]+44, 0F2h
MOV BYTE PTR DS:[BX]+45, 000h
MOV BYTE PTR DS:[BX]+46, 0B5h
MOV BYTE PTR DS:[BX]+47, 000h
MOV BYTE PTR DS:[BX]+48, 083h  ; цвет 8 (серый), 4 повтора
MOV BYTE PTR DS:[BX]+49, 0B0h
MOV BYTE PTR DS:[BX]+50, 000h
MOV BYTE PTR DS:[BX]+51, 0F5h
; 8 строка (23 пикселя: 4+1+3+1+1+3+1+1+1+7) -> (4+1+3+1+1+3+1+1+1+6=22). На конце 7.
MOV BYTE PTR DS:[BX]+52, 0F3h
MOV BYTE PTR DS:[BX]+53, 000h
MOV BYTE PTR DS:[BX]+54, 0B2h
MOV BYTE PTR DS:[BX]+55, 0F0h
MOV BYTE PTR DS:[BX]+56, 0B0h
MOV BYTE PTR DS:[BX]+57, 082h  ; цвет 8 (серый), 3 повтора
MOV BYTE PTR DS:[BX]+58, 000h
MOV BYTE PTR DS:[BX]+59, 080h  ; серый, 1 повтор
MOV BYTE PTR DS:[BX]+60, 000h
MOV BYTE PTR DS:[BX]+61, 0F6h
; 9 строка (23 пикселя: 4+1+3+1+1+4+1+1+7)
MOV BYTE PTR DS:[BX]+62, 0F3h
MOV BYTE PTR DS:[BX]+63, 000h
MOV BYTE PTR DS:[BX]+64, 0B2h
MOV BYTE PTR DS:[BX]+65, 0F0h
MOV BYTE PTR DS:[BX]+66, 0B0h
MOV BYTE PTR DS:[BX]+67, 083h  ; серый, 4 повтора
MOV BYTE PTR DS:[BX]+68, 0E0h  ; цвет E (желтый), 1 повтор
MOV BYTE PTR DS:[BX]+69, 000h
MOV BYTE PTR DS:[BX]+70, 0F6h
; 10 строка (23 пикселя: 5+1+3+6+1+7)
MOV BYTE PTR DS:[BX]+71, 0F4h
MOV BYTE PTR DS:[BX]+72, 000h
MOV BYTE PTR DS:[BX]+73, 0B2h
MOV BYTE PTR DS:[BX]+74, 085h  ; серый, 6 повторов
MOV BYTE PTR DS:[BX]+75, 000h
MOV BYTE PTR DS:[BX]+76, 0F6h
; 11 строка (23 пикселя: 1+7+5+1+1+8) -> (1+7+5+1+1+7=22). На конце 8.
MOV BYTE PTR DS:[BX]+77, 0F0h
MOV BYTE PTR DS:[BX]+78, 006h
MOV BYTE PTR DS:[BX]+79, 084h
MOV BYTE PTR DS:[BX]+80, 0B0h
MOV BYTE PTR DS:[BX]+81, 000h
MOV BYTE PTR DS:[BX]+82, 0F7h
; 12 строка (23 пикселя: 1+1+5+5+2+1+8)
MOV BYTE PTR DS:[BX]+83, 0F0h
MOV BYTE PTR DS:[BX]+84, 000h
MOV BYTE PTR DS:[BX]+85, 0B4h
MOV BYTE PTR DS:[BX]+86, 084h
MOV BYTE PTR DS:[BX]+87, 0B1h
MOV BYTE PTR DS:[BX]+88, 000h
MOV BYTE PTR DS:[BX]+89, 0F7h
; 13 строка (23 пикселя: 2+1+5+5+3+1+6)
MOV BYTE PTR DS:[BX]+90, 0F1h
MOV BYTE PTR DS:[BX]+91, 000h
MOV BYTE PTR DS:[BX]+92, 0B4h
MOV BYTE PTR DS:[BX]+93, 084h
MOV BYTE PTR DS:[BX]+94, 0B2h
MOV BYTE PTR DS:[BX]+95, 000h
MOV BYTE PTR DS:[BX]+96, 0F5h
; 14 строка (23 пикселя: 3+1+4+5+4+1+5)
MOV BYTE PTR DS:[BX]+97, 0F2h
MOV BYTE PTR DS:[BX]+98, 000h
MOV BYTE PTR DS:[BX]+99, 0B3h
MOV BYTE PTR DS:[BX]+100, 084h
MOV BYTE PTR DS:[BX]+101, 0B3h
MOV BYTE PTR DS:[BX]+102, 000h
MOV BYTE PTR DS:[BX]+103, 0F4h
; 15 строка (23 пикселя: 3+1+1+1+1+4+5+1+6) -> (3+1+1+1+1+4+5+1+5=22). На конце 6.
MOV BYTE PTR DS:[BX]+104, 0F2h
MOV BYTE PTR DS:[BX]+105, 000h
MOV BYTE PTR DS:[BX]+106, 0B0h
MOV BYTE PTR DS:[BX]+107, 000h
MOV BYTE PTR DS:[BX]+108, 0B0h
MOV BYTE PTR DS:[BX]+109, 083h
MOV BYTE PTR DS:[BX]+110, 0B4h
MOV BYTE PTR DS:[BX]+111, 000h
MOV BYTE PTR DS:[BX]+112, 0F5h
; 16 строка (23 пикселя: 4+1+1+1+1+4+5+1+5)
MOV BYTE PTR DS:[BX]+113, 0F3h
MOV BYTE PTR DS:[BX]+114, 000h
MOV BYTE PTR DS:[BX]+115, 0B0h
MOV BYTE PTR DS:[BX]+116, 000h
MOV BYTE PTR DS:[BX]+117, 0F0h
MOV BYTE PTR DS:[BX]+118, 003h
MOV BYTE PTR DS:[BX]+119, 0B4h
MOV BYTE PTR DS:[BX]+120, 000h
MOV BYTE PTR DS:[BX]+121, 0F4h
; 17 строка (23 пикселя: 4+1+2+4+5+1+5) - (4+1+2+4+5+1+4=21?). На конце 6.
MOV BYTE PTR DS:[BX]+122, 0F3h
MOV BYTE PTR DS:[BX]+123, 000h
MOV BYTE PTR DS:[BX]+124, 0F1h
MOV BYTE PTR DS:[BX]+125, 003h
MOV BYTE PTR DS:[BX]+126, 0B4h
MOV BYTE PTR DS:[BX]+127, 000h
MOV BYTE PTR DS:[BX]+128, 0F5h
; 18 строка (23 пикселя: 5+1+2+1+2+2+2+1+6) -> (5+1+2+1+2+2+2+1+5=22). На конце 6.
MOV BYTE PTR DS:[BX]+129, 0F4h
MOV BYTE PTR DS:[BX]+130, 000h
MOV BYTE PTR DS:[BX]+131, 0F1h
MOV BYTE PTR DS:[BX]+132, 000h
MOV BYTE PTR DS:[BX]+133, 0B1h
MOV BYTE PTR DS:[BX]+134, 001h
MOV BYTE PTR DS:[BX]+135, 0B1h
MOV BYTE PTR DS:[BX]+136, 000h
MOV BYTE PTR DS:[BX]+137, 0F5h
; 19 строка (23 пикселя: 6+1+2+1+1+2+1+2+1+6)
MOV BYTE PTR DS:[BX]+138, 0F5h
MOV BYTE PTR DS:[BX]+139, 000h
MOV BYTE PTR DS:[BX]+140, 0F1h
MOV BYTE PTR DS:[BX]+141, 000h
MOV BYTE PTR DS:[BX]+142, 0F0h
MOV BYTE PTR DS:[BX]+143, 001h
MOV BYTE PTR DS:[BX]+144, 0F0h
MOV BYTE PTR DS:[BX]+145, 001h
MOV BYTE PTR DS:[BX]+146, 0F0h
MOV BYTE PTR DS:[BX]+147, 000h
MOV BYTE PTR DS:[BX]+148, 0F5h
; 20 строка (23 пикселя: 23)
MOV BYTE PTR DS:[BX]+149, 0FFh
MOV BYTE PTR DS:[BX]+150, 0F6h