home .. forth .. colorforth mail list archive ..

[ColorForth] Graphic compability


ok as begigning to see responses, ill post this , where ive implemented it into boot.asm, added comments what i do.

I also sizeoptimized some of the old code that were there to make it fit better.

remeber its just step one, so dont try run this just yet
I still have to figure out hot AGP bit is working in detail, bc this is whats gonna be partly replaced.

Just match it in, writing over the old parts

As its a standard way since 1996-1998 and now works on 99.9% graphics cards (S3 and onwards).

Put into Boot.asm (i guess would need other changes too, so its just an suggestion.) mov di,ModeInfoTable ; 256 byte table needs reserved anywhere in memory. (our 32bit address will then be located here at offset 20h)
mov ax,04f01h
mov cx,4114h     ; 800x600 ( use 4117h if you want 1024x768 )
int 10h

mov ax,04f02h
mov bx,4114h     ; 800x600 ( use 4117h if you want 1024x768 )
int 10h

And now, later when in 32bit mode, and you want to have the graphicaddress, just fetch 32bit-address at ModeInfoTable+20h, no hardwarespecific probing needed.








From: "Jimmy Söderman" <hiraganagos@xxxxxxxxxxx>
Reply-To: ColorForth@xxxxxxxxxxxxxxxxxx
To: "ColorForth List Member"  <ColorForth@xxxxxxxxxxxxxxxxxx>
Subject: [ColorForth] Graphic compability
Date: Sun, 16 Jun 2002 09:46:33 +0000


As i discovered there is more or less serious incompability with graphiccards & ColorFORTH, and i hope ive spotted the "problem",
i might be wrong though., Ok im now going rather technical, so here we go:

It seem to use (VESA) VBE BIOS to set its graphicsmode, but hardware probing for getting the actual startaddress of grahics. VBE utilizes a standarzed way to get to that, without probing, ill post a snippet ill used succesfully in my own projects, and Chuck, or someone else might wanna test it.

As its a standard way since 1996-1998 and now works on 99.9% graphics cards (S3 and onwards).

Put into Boot.asm (i guess would need other changes too, so its just an suggestion.)
mov di,ModeInfoTable  ; 256 byte table needs reserved anywhere in memory.
mov ax,04f01h
mov cx,4114h     ; 800x600 ( use 4117h if you want 1024x768 )
int 10h
mov ax,04f02h
mov bx,4114h     ; 800x600 ( use 4117h if you want 1024x768 )
int 10h

And now, later when in 32bit mode, and you want to have the graphicaddress, just fetch 32bit-address at ModeInfoTable+20h, no hardwarespecific probing needed.

_________________________________________________________________
Skicka och ta emot Hotmail-meddelanden på din mobilenhet: http://mobile.msn.com
------------------------

To Unsubscribe from this list, send mail to Mdaemon@xxxxxxxxxxxxxxxxxx with:
unsubscribe ColorForth
as the first and only line within the message body
Problems   -   List-Admin@xxxxxxxxxxxxxxxxxx
Main ColorForth site   -   http://www.colorforth.com




_________________________________________________________________
Hämta MSN Explorer kostnadsfritt på http://explorer.msn.se/intl.asp
------------------------

To Unsubscribe from this list, send mail to Mdaemon@xxxxxxxxxxxxxxxxxx with:
unsubscribe ColorForth
as the first and only line within the message body
Problems   -   List-Admin@xxxxxxxxxxxxxxxxxx
Main ColorForth site   -   http://www.colorforth.com