X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f Date: Wed, 13 Sep 2006 08:34:23 -0700 From: Ivor Bowden User-Agent: Thunderbird 1.5.0.5 (Windows/20060719) MIME-Version: 1.0 Newsgroups: comp.os.msdos.djgpp Subject: Re: 64 bit access under DOS? References: <44ff387a$0$19628$88260bb3 AT free DOT teranews DOT com> <4506ff21$0$486$cc7c7865 AT news DOT luth DOT se> In-Reply-To: <4506ff21$0$486$cc7c7865@news.luth.se> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Lines: 56 Message-ID: <450817eb$0$19728$88260bb3@free.teranews.com> NNTP-Posting-Date: 13 Sep 2006 14:38:35 GMT X-Complaints-To: abuse AT teranews DOT com To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Martin, thank you for your information. The cmpxchg8 looks like it would do what I need. I was hoping to avoid OS dependent messiness by going direct to assembly level code under DOS, but it does seem tricky. I found a couple of useful web pages: From Microsoft: http://msdn2.microsoft.com/en-us/library/ttk2z1ws.aspx (information about Win32 Platform SDK InterlockedCompareExchange function). From AMD: http://www.amd.com/us-en/Processors/TechnicalResources/0,,30_182_739_7044,00.html (AMD64 Architecture Tech Docs, including Programmers' Reference Manuals) An alternate approach I have been considering for my specific situation, which is doing hardware testing covering the upper 32 bits of the PCI-64 bus, is to introduce another hardware board which is capable of doing 64 bit wide DMA, then using the DMA controller to access the Device Under Test in 64 bit mode. I'd prefer a purely software solution, so I'm still interested in any potential solutions of that type. Thanks, Ivor I was hoping to get down to assembly level and bypass the on 9/12/2006 11:40 AM PDT Martin Str|mberg wrote: > Ivor Bowden wrote: >> I could use something like _farpeekll / _farpokell (long long). I'm not >> sure what else I would need to do to set up the system for these kind of >> accesses. > > I'm not sure if there are any 64-bit wide x86 instructions but the > cmpxchg8. > >> The other thought I had was to set up some assembly routines to use the >> AMD64 instructions. > > Unfortunately AMD64 instructions are only available in long 64-bit > (non-compatibility) mode and in long mode vm86 mode isn't supported, > so this won't happen. > >> Any ideas or tips?? > > You're probably are out of luck. > > > Right, > > MartinS -- Posted via a free Usenet account from http://www.teranews.com