delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2006/09/13/11:47:36

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 <ivorlist AT peritek DOT com>
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>
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 <ivorlist AT peritek DOT com> 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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019