Message-ID: <35DFD709.886F2F11@geocities.com> From: Merlin MIME-Version: 1.0 Newsgroups: comp.os.msdos.djgpp Subject: Re: VESA: hints, clue but no examples References: <1998081519323200 DOT PAA25189 AT ladder01 DOT news DOT aol DOT com> <35D66C0C DOT 8D8F94C8 AT geocities DOT com> <35D70CC1 DOT BCA4F4EF AT unb DOT ca> <35D93933 DOT 40CF1D5 AT geocities DOT com> <35D98CF1 DOT F906723E AT unb DOT ca> <35DA8319 DOT B27A2AD8 AT geocities DOT com> <35DB1276 DOT 7EEBF3D AT unb DOT ca> <35DBD016 DOT EE071EAD AT geocities DOT com> <35DDBEA7 DOT 7E5FD60F AT unb DOT ca> <35DE71D3 DOT 78AEC80E AT geocities DOT com> <35DF0F8F DOT A95A89A9 AT unb DOT ca> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 38 Date: Sun, 23 Aug 1998 08:51:05 GMT NNTP-Posting-Host: 191-cy-wpg.ilos.net NNTP-Posting-Date: Sun, 23 Aug 1998 03:51:05 CDT Organization: MBnet Networking Inc. To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk Endlisnis wrote: > Merlin wrote: > > > > This is especially important in protected mode because switching banks requires changing to > > > real-mode. > > ouch...using __dpmi_int int the middle of drawing something that needed to be fast would be a killer... > > There is an quicker way to switch banks, in the ModeInfoBlock for a given VESA mode, there is a far > pointer to a function which will switch banks for you. That only requires > __djgpp_simulate_real_mode_procedure_retf which is MUCH faster than dpmi_int. I see.... > > > > > The near pointer functions set the limit of a selector to a very high value. NT sees this as a > > > possible crashing program and does not allow it. If NT did allow it, then it would be easier to make > > > it (NT) crash. > > anyway...i've got a question about selectors...well, perhaps a couple... i'd have to use _farpokeb do > > access the .....selected memory right?...or movedata(..) to copy a buffer? > > Yes. I've made my own 'setdata' function to use a bunch of _farnspokel calls to quickly write a single > value to a bunch of contiguous locations. > > what exactly is: _my_ds()? > > i know it's a selector and i know (to some degree..i don;t quite know how to make one yet...soon > > though..) what a selector is... but...what is _my_ds()? > > It is a function that returns the selector for the data in your program. All variables dynamically or > statically allocated will be within the scope of _my_ds().-- ahh..ok... thanks... L8r, Merlin.