Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Sign In with Facebook Sign In with Google Sign In with OpenID

Categories

We have migrated to a new platform! Please note that you will need to reset your password to log in (your credentials are still in-tact though). Please contact lee@programmersheaven.com if you have questions.
Welcome to the new platform of Programmer's Heaven! We apologize for the inconvenience caused, if you visited us from a broken link of the previous version. The main reason to move to a new platform is to provide more effective and collaborative experience to you all. Please feel free to experience the new platform and use its exciting features. Contact us for any issue that you need to get clarified. We are more than happy to help you.

Need help with bank switching

I read somewhere that there is a way to put pixels to the screen without changing banks. If this is tru can anyone please help me out as bank switching is very slow in 16bit modes


Comments

  • : I read somewhere that there is a way to put pixels to the screen without changing banks. If this is tru can anyone please help me out as bank switching is very slow in 16bit modes


    As far as I know there is no way to put pixels

    on the screen without bankswitching. Ofcourse I

    know that modes that are within 64Kb don't need

    bankswitching, but you're probably talking about

    modes like 640-480, 800-600, 1280-1024, etc...


    In these modes there is NO way you can put pixels

    on the screen without bankswitching, because you

    are either confined to one single bank, or you use

    the BIOS int 10h to put the pixels on the screen.

    The last one doesn't need to know the bank, but

    bank switching still happens (by BIOS code).


    One advise:

    DON'T USE BIOS TO PUT PIXELS ON THE SCREEN


    I've checked once how much slower it is, believe

    me: there is almost no way of putting a pixel

    slower on the screen


  • : I read somewhere that there is a way to put pixels to the screen without changing banks. If this is tru can anyone please help me out as bank switching is very slow in 16bit modes


    It is possible.

    Find some documents about "VESA 2.0" and "Linear framebuffer".

    One document that I just found is located here:

    ftp://x2ftp.oulu.fi/pub/msdos/programming/docs/vgovbe20.zip

    (there is also some other interesting stuff...)


    I don't know how well it explains the vesa 2.0, because I just take a quick look about it... But it looked that it can be used. I could mail you a better (?) text if you need... (the one where I learned to use VESA 2.0)


    VESA 2.0 works fine on DOS. I don't know how well it works in some other OS (like Windows).


    You seem to use VESA 1.x, it isn't very big step from there to VESA 2.0.


    -Sepi




  • : As far as I know there is no way to put pixels

    : on the screen without bankswitching. Ofcourse I

    : know that modes that are within 64Kb don't need

    : bankswitching, but you're probably talking about

    : modes like 640-480, 800-600, 1280-1024, etc...


    BTM, welcome to the wonderful world of pmode, where 64k segments no longer exist, in combination with the VESA 2.0 LFB standard, where banking no longer exists. Isn't this just amazing stuff? *wahoo* ;-P


    The Watcher^TUHB


Sign In or Register to comment.