Программа делает то что вы ей приказали а не то что бы ВАМ хотелось бы. МЕРФИ --------------------- RTFM - Read the fucking manual --------------------- http://www.livejournal.com/users/lonley_raven/
Start: ; Переходим в текстовый режим 80х25х16 mov ax,3 int 10h
;; ;; Выводим информационную строку ;; Пользуясь средствами BIOS после 1/10/86 ; AH = 13h ; AL = режим вывода (см. установки отдельных битов ниже) ; = 0 - в строке только символы, атрибут в BL, курсор не сдвигается ; = 1 - в строке только символы, атрибут в BL, курсор сдвигается ; = 2 - строка содержит символы и атрибуты, курсор не сдвигается ; = 3 - строка содержит символы и атрибуты, курсор сдвигается ; BH = номер видеостраницы ; BL = атрибут, если режим вывода равен 0 или 1 ; CX = длина строки (исключая атрибуты) ; DH = координата по вертикали ; DL = координата по горизонтали ; ES:BP = адрес строки ;; ;;
mov ax,1301h; В данном случае: mov bx,7 ; Вывод строки символов по адресу ES:BP длиной CX mov cx,Len ; байт, атрибут в BL, со сдвигом курсора. На lea bp,Slon1; видеостраницу #0, координаты курсора 0х15 mov dx,0E00h int 10h ; Ожидаем нажатия клавиши mov ah,0 int 16h
;;;;;;;;;;;; Заменяем первый диапазон символов;;;;;;;;;;;;; ; AH = 11h - Функции символьного генератора ; Загрузка набора символов пользователя в алфавитно-цифровом режиме ; AL = 00 ; BH = байт на символ (обычно 8,14,16) ; BL = номер загружаемого блока (0-7 VGA) ; CX = количество символов ; DX = код первого символа ; ES:BP = адрес таблицы символов
mov ax,1100h; В данном случае: lea bp,font1; Загружаемый фонт размером 8х14 mov cx,26 ; (разрабатывалось для EGA). Начиная с mov dx,'A' ; символ а'A' (код 65) по 'Z' (т.е. 26 симв.) mov bx,0E00h; Все суем в нулевой банк int 10h ; Тоже самое для второго диапазона mov ax,1100h lea bp,font2 mov cx,26 mov dx,'a' ; С символа 'a' (код 65) по 'z' mov bx,0E00h int 10h ; И для третьего mov ax,1100h lea bp,font3 mov cx,21 mov dx,'А' ; С символ а'А' (код 65) по 'Ф' mov bx,0E00h int 10h ; Ждем нажатия клавиши mov ah,0 int 16h ; Установка видеорежима используя BIOS, также восстанавливаем исх. шрифт mov ax,3 int 10h
mov ax,4C00h
int 21h ; Данные о СЛОНЕ
font1 db 0,0,0,0,28,35,124,127,255,255,127,63,31,15 db 0,0,0,0,0,128,224,112,188,222,239,247,251,253 db 0,0,0,0,0,0,0,0,0,0,128,192,224,240 db 0,0,0,0,0,0,0,1,0,7,31,63,127,112 db 0,0,0,0,62,127,255,255,127,255,255,255,255,227 db 0,0,0,0,0,192,240,248,248,220,232,240,254,255 db 0,0,0,0,0,0,0,0,0,0,0,0,15,127 db 0,0,0,0,0,0,0,0,0,0,7,255,252,195 db 0,0,0,0,0,0,0,0,0,0,255,248,7,255 db 0,0,0,0,0,0,0,0,0,0,0,192,192,128 db 15,15,15,15,15,15,31,31,31,31,63,63,63,63 db 253,254,254,254,255,255,255,255,255,255,255,255,255,255 db 252,255,255,255,127,191,191,223,239,247,251,253,252,251 db 225,227,255,195,176,187,122,114,2,2,2,130,2,207 db 241,248,4,67,225,225,193,1,1,1,1,0,3,255 db 255,255,255,255,255,255,255,255,255,255,255,127,255,252 db 3,135,159,255,255,255,254,253,251,247,239,159,127,127 db 254,249,247,207,191,127,255,255,255,255,255,255,255,255 db 63,255,255,255,255,255,255,255,255,255,255,255,255,255 db 255,255,255,255,255,255,255,255,255,255,255,255,255,255 db 128,0,0,128,128,192,224,224,224,224,192,220,191,127 db 0,0,0,0,0,0,0,0,0,0,0,0,192,248 db 63,63,63,31,31,31,15,7,3,0,0,0,0,0 db 255,255,255,255,255,255,255,255,255,255,63,7,1,0 db 251,247,247,246,246,246,250,250,252,254,255,255,255,255 db 191,64,63,227,156,127,255,129,126,231,25,191,131,63
font2 db 255,255,127,255,255,127,255,255,255,255,251,241,224,0 db 255,255,255,255,255,255,255,255,255,254,193,191,191,127 db 191,191,223,223,223,223,223,191,127,127,191,223,223,223 db 255,255,255,255,255,254,253,243,239,223,223,191,127,127 db 254,253,243,207,63,255,255,255,255,255,255,255,255,255 db 0,192,240,252,254,255,255,255,255,255,255,255,255,255 db 0,0,0,0,0,0,128,192,224,240,248,252,254,254 db 0,0,15,31,31,3,3,3,1,1,0,0,0,0 db 0,116,239,192,128,129,195,255,255,255,255,255,127,31 db 63,63,127,127,255,255,255,255,254,253,251,247,207,191 db 128,231,223,223,191,191,127,127,255,255,255,255,255,255 db 223,223,239,239,243,252,255,255,255,255,255,255,255,255 db 254,253,253,251,231,31,255,255,255,255,255,255,255,255 db 3,14,248,224,128,192,192,192,224,224,224,240,240,240 db 0,0,0,0,0,0,0,0,0,0,0,32,64,128 db 63,63,127,127,127,127,127,127,127,127,127,127,63,63 db 255,255,255,255,223,223,223,223,223,223,191,191,191,127 db 240,240,240,248,248,248,248,248,248,248,248,248,240,240 db 0,0,0,0,0,0,0,0,0,0,1,1,3,3 db 63,31,15,55,55,59,125,126,127,255,255,255,255,255 db 255,255,255,255,255,255,255,255,127,159,175,191,223,223 db 254,255,255,255,255,255,255,255,255,255,255,254,253,253 db 255,255,255,255,255,255,255,127,191,191,223,223,223,223 db 240,240,240,240,240,224,224,224,192,192,192,128,128,0 db 7,7,7,7,7,7,7,15,15,15,31,31,63,127 db 253,253,253,253,251,251,247,255,255,255,255,255,255,255
font3 db 239,247,251,253,252,252,248,248,248,248,240,240,240,240 db 251,251,251,251,253,30,3,3,3,3,3,3,3,3 db 255,251,253,253,253,253,251,255,255,255,255,255,255,255 db 251,251,251,251,251,253,252,252,252,252,254,254,254,254 db 255,255,255,255,255,255,127,31,3,0,0,0,0,0 db 255,255,255,255,255,255,255,255,252,3,63,63,63,127 db 255,255,255,255,255,254,249,199,63,255,255,255,255,255 db 223,191,190,127,127,191,191,222,223,223,239,239,239,223 db 255,255,255,127,127,127,127,255,255,255,255,255,255,255 db 255,254,252,248,248,240,240,240,240,240,248,248,248,248 db 71,123,252,253,251,251,119,15,7,3,0,0,0,0 db 255,255,63,223,232,231,239,239,223,207,7,0,0,0 db 240,240,224,224,96,160,224,224,224,192,128,0,0,0 db 7,7,7,0,7,15,15,15,7,3,0,0,0,0 db 255,255,255,63,216,231,239,239,239,239,7,0,0,0 db 254,254,254,254,112,174,223,223,223,222,128,0,0,0 db 127,127,134,249,251,251,251,251,127,3,0,0,0,0 db 255,255,63,200,247,239,239,239,255,199,0,0,0,0 db 223,223,207,54,185,189,189,189,191,28,0,0,0,0 db 255,255,143,114,253,253,253,253,255,240,0,0,0,0 db 248,248,0,252,252,252,252,252,248,224,0,0,0,0
;; Типа сам СЛОН ;; ; slon1 db " ABCDEF GHIJ ",13,10 db " KLMNOPQRSTUV ",13,10 db " WXYZabcTdeTTfg o ",13,10 db " hijkTlmTTTTTTn ",13,10 db " pTTqTTTTTTTr ",13,10 db " stuvTTTTTwTTx ",13,10 db " yzАБВГДЕЖЗИЙ ",13,10 db " КЛМНОП РСТУФ ",13,10
; Длина строки len dw $-slon1
End start
В принципе должен получится слон...
--------------------
Программа делает то что вы ей приказали а не то что бы ВАМ хотелось бы. МЕРФИ --------------------- RTFM - Read the fucking manual --------------------- http://www.livejournal.com/users/lonley_raven/