How can I test Vertical_retrace if I want switch buffers in VESA 1.x*(RealMOde) and VESA 2.0( UNREAL) VESA3.0(PMODE)

Where can i find out the page is currently in use i PM(VESA2 or 3)?


:cool: :) :cool:
Posted on 2003-09-30 14:55:24 by etn
http://www.monstersoft.com/tutorial1/VESA_info.html
in the middle of the page there's a link to the specifications. D/L them .
Posted on 2003-10-01 11:40:45 by Ultrano
I still have some problems.

;fasm syntax

org 100
use16
sub ax,ax
mov al,13h
int 10h
xor cx,cx
mov di,cx
mov ax,0a000h
mov es,ax
go:
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
xor ax,ax
mov [es:di],al
mov al,15
mov [es:di+1],al

call WaitForVerticalRetrace
inc di
jmp go
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
call WaitForVerticalRetrace
;----proc wait for vertical retrace
WaitForVerticalRetrace:
push ax
push dx
mov dx,03dah
WaitStill:
in al,dx
test al,8
jz WaitStill
pop dx
pop ax
ret




let change "wait for vertical retrace"proc and write only
ret


you see?
so why I have to write so many calls to wait for?
If there is no so many calls the animation is not fluent
I have no idea what to do?
Posted on 2003-10-02 02:15:01 by etn