From: BlissComm Message-ID: <8158561e.3543b438@aol.com> Date: Sun, 26 Apr 1998 18:24:54 EDT To: djgpp AT delorie DOT com Mime-Version: 1.0 Subject: pc memory access Content-type: text/plain; charset=US-ASCII Content-transfer-encoding: 7bit Precedence: bulk Can anybody solve my confusion? Was the Intel cpu designed by Rube Goldberg? Here's my problem. I want to write a driver for an i/o board (DTI-1120 mil-std-1553) that has the usual registers and also 32k or 64k of dual-access ram. The ram can be set to appear anywhere from 9000:0000 to d000:0000 depending on where the video ram is. How do I access this memory? I can access something here with the dpmi functions, but it seems to me it's virtual not real memory. For instance b8000 is where the video text screen image is. But it is different memory when accessed from different dos windows. (I'm using windows 3.11). In fact all such "dos" memory is different when I access it from a different window. What's the difference between outportx() and _farpokex(). I know I use outport and inport to access i/o registers, but why can't I use _farpoke and _farpeek? Can it be that Intel i/o registers aren't in data space, or is "dos memory" not real memory, or what? Are outportb() and outp() the same thing? Can I get two programs running in two dos windows to have access to the same memory? I see functions in dpmi.h for this but they are for DPMI version 1.0 and don't seem to work on my computer. Thanks in advance, Steve Bliss .