We help IT Professionals succeed at work.

VESA/MODE 12h Graphics

DaveJ080797
DaveJ080797 asked
on
Medium Priority
535 Views
Last Modified: 2012-08-13
Help! Is there an easier way of programming 640x480x16/640x480x256 graphics then unchaining
the bitplanes? It means that working in 16 bits is extremely fiddly and it's so SLOW, even when written in BASM.
Perhaps DMAs might help!?
Comment
Watch Question

No,

Since you work in a realmode enviroment you have no chances to use the new linear frame buffer function of new vga-cards.

The only option you have is to use VESA. Ther're a lot of good vesa libraries on the net, and I'm sure you'll be able to find one.

Basically the only thing you have to do is, to set the graphic mode. If you want to access your frame-buffer you have to do some math:

 for 640x480x256 your image is 307200 bytes in size.

the video segment 0xa000 is only 64k in size. If you know want to access any part of the video memory above the first 64k you have to tell the vesa to use another bank of the video memory. (a simple call or interrupt.. whatever you prefear).

Vesa isn't that slow.. If your graphic is to slow it's your code, not the vesa-stuff.


Hope this helps you...

  Nils Pipenbrinck

Not the solution you were looking for? Getting a personalized solution is easy.

Ask the Experts

Author

Commented:
Dave's brother liked the answer anyway.
Access more of Experts Exchange with a free account
Thanks for using Experts Exchange.

Create a free account to continue.

Limited access with a free account allows you to:

  • View three pieces of content (articles, solutions, posts, and videos)
  • Ask the experts questions (counted toward content limit)
  • Customize your dashboard and profile

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.