From: oak9755 AT silver DOT sdsmt DOT edu (Olav Kindt) Newsgroups: comp.os.msdos.djgpp Subject: Re: Directly calling bank switch function? Date: 22 Oct 1996 16:22:00 GMT Organization: South Dakota School of Mines and Technology Lines: 50 Distribution: world Message-ID: <54isb8$4p8@news.sdsmt.edu> References: <53j43r$dcq AT oravannahka DOT Helsinki DOT FI> <326B406F DOT 2CD0 AT seitz DOT de> NNTP-Posting-Host: silver.sdsmt.edu To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Mirko Geffken (mirko AT seitz DOT de) wrote: : Joonas W N Reynders wrote: : > : > If I have a segment:offset (16:16) pointer to a function (this : > case the bank switch function ptr returned by a VESA GetModeInfo function), : > how can I call it directly? The bank switch interrup is too slow... : > : > Thaks in advance, : > : > Joonas : > : > PS. Email would be nice: I allways forget that I've posted something ;) : Simply don't use bank switching, as there is something nice as VBE 2.0 : with linear frame buffer. : What if the card doesn't support VBE2.0??? If you want to do bankswitching you can use the _go32_dpmi_simulate_real_mode_... (Look up the correct spelling) or __dpmi_simulate.... (Also look up spelling) You'll find the manuals somewhere at http://www.delorie.com This is how it would look: __dpmi_regs regs; regs.x.cs = segment; regs.x.ip = offset; regs.x.bx = 0; // Set the page regs.x.dx = page; // The pagenumber regs.x.sp = regs.x.ss = 0; // Don't know why, just do it __dpmi__simulate_real_mode_...(®s); Well that sould do, hope this helps. PS: Is there anyway you can access the linear frame buffer when the VBE version in the VESAINFO is 1.2 ? I have a videocard that returns this version, but it would be nice if i could use the linear frame buffer. Let me know if you know. Cheers -- Olav Kindt | email: oak9755 AT silver DOT sdsmt DOT edu 737 E. Anamosa Street #103 | xedb_oak AT debet DOT nhh DOT no Rapid City SD-57701 | MAIL me man.......