![]() |
![]() |
Shadow |
![]()
Сообщение
#1
|
![]() Lonely_Raven ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 640 Пол: Мужской Репутация: ![]() ![]() ![]() |
:D
вывод точки напрямую в видео память --- своя процедура --- мне тут помогли (Dark) и я решил...... --- очень быстро --- Код Const color:array[0..10,0..14] of Byte= ((24,15,15,24,24,24,15,15,15,24,15,24,24,24,15), (15,24,22,15,24,15,24,24,24,24,15,15,24,15,15), (15,22,24,15,24,24,15,15,24,24,15,24,15,24,15), (15,15,15,15,24,24,24,24,15,24,15,24,24,24,15), (15,24,24,15,24,15,15,15,24,24,15,24,24,24,15), (24,24,24,24,24,24,24,24,24,24,24,24,24,24,24), (15,15,15,24,24,24,15,15,15,24,24,24,15,15,15), (15,22,24,15,24,15,24,24,24,15,24,15,24,24,24), (15,15,15,24,24,15,15,15,15,15,24,24,15,15,24), (15,24,22,24,22,15,24,22,24,15,24,24,24,24,15), (15,24,22,22,22,15,24,22,24,15,24,15,15,15,24)); Var x,y,c,col:Word; Procedure PixelOut(x,y:Word;c:Byte); label we; Begin y:=y*320; asm xor ax,ax mov bx,x {in di 1000 smeshenie v video memory} mov cx,y {} add bx,cx mov al,c cmp bx,64000 je we mov es:[bx],al {<=> mov es:di, ds:si move strin byte 11 in vid memory es:di out ds:si} we: end; end; BEGIN asm mov ax,0013h int 10h mov ax,0a000h mov es,ax end; for x:=0 to 14 do for y:=0 to 10 do begin col:=color[y,x]; PixelOut(100+x,50+y,col); end; asm mov ah,0 int 16h end; end. -------------------- Программа делает то что вы ей приказали а не то что бы ВАМ хотелось бы.
МЕРФИ --------------------- RTFM - Read the fucking manual --------------------- http://www.livejournal.com/users/lonley_raven/ |
![]() ![]() |
![]() |
Текстовая версия | 15.07.2025 0:29 |