1. Заголовок или название темы должно быть информативным ! 2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code]. 3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК ! 4.НЕ используйте форум для личного общения! 5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
:D VESA графика из под виндовс не работает почему кто знает ----- из по DOS работает а из под WINDOWS нет почему ???? ----- при установыке пользуюсь ASM функциями
mov ah,4fh mov al,2h mov bx,10eh ;320*200 65536 color
Вот твой вывод точки в режиме 320*200, а я тебе предлагаю свой, чуть быстрей:
Procedure PixelOut(x,y:Word;c:Byte); label we,exit; Begin y:=y*320; {rachet coordin for Y}
asm xor ax,ax {AX in zero} mov bx,x {in di 1000 smeshenie v video memory} mov cx,y {in CX znachen y } add bx,cx {sum BX and CX} mov al,c {in AL color} cmp bx,63999 {conez video buff} je we {then exit} mov es:[bx],al {in vid memory es:di out ds:si} we: end; end;
неправильно, так как если указан адрес, выходящий за рамки сегмента, то bx=0+то, что за сегментом... а ты сравниваешь РАВЕНСТВО вх и 63999... а надо так:
cmp bx,63999 {conez video buff} ja we {then exit} {jamp above}
;D
--------------------
- Где я? - Во тьме. - В какой тьме? - Во тьме твоего мозга.