Mail Archives: djgpp/2000/06/23/08:01:56
> Date: Fri, 23 Jun 2000 13:03:38 +0300
> From: Yoram Hofman <yoram AT htsol DOT com>
>
> I need really quickly read a big portion of information from frame
> memory controller (16 bit interface). I tried dosmemget() and
> dosmemgetw(). Both failed. So I use "farptr" functions. But I think
> usage of dosmemXXX functions can be more effective.
> Anybody can give a tip why these functions fail?
They don't fail for me. Since you didn't post even a simple code
fragment that hows how did you use them, and didn't tell what does
``both failed'' mean, I can only guess what could have gone wrong.
One possibility is that your controller is mapped into the program's
address space with a call to __dpmi_physical_address_mapping (see
section 18.7 of the FAQ). If that is the case, you cannot use dosmem*
functions because they implicitly assume the use of the _dos_ds
selector, which doesn't include the memory mapped in by
__dpmi_physical_address_mapping. But you still should be able to use
movedata, which is also faster than _farpeek* and _farpoke*.
If my guess is wrong, please post the missing info.
- Raw text -