Valhalla Legends Archive

Programming => Advanced Programming => Topic started by: Mad_DadD on November 24, 2006, 08:45 PM

Title: GPU Memory Map?
Post by: Mad_DadD on November 24, 2006, 08:45 PM
How do I obtain the memory map for the GeForce Nvidia 7600 GT SLI Delux?

Also, how do I apply a 64 bit entry into a memory location?
Title: Re: GPU Memory Map?
Post by: Joe[x86] on November 26, 2006, 05:10 AM
Quote from: Mad_DadD on November 24, 2006, 08:45 PM
Also, how do I apply a 64 bit entry into a memory location?

Put the first four bytes in a 32bit location as usual. The second set of four bytes should be << 4'd and put into the location 32bit's to the right.
Title: Re: GPU Memory Map?
Post by: MyndFyre on November 26, 2006, 03:21 PM
Quote from: Joex86] link=topic=16075.msg161813#msg161813 date=1164539424]
Quote from: Mad_DadD on November 24, 2006, 08:45 PM
Also, how do I apply a 64 bit entry into a memory location?

Put the first four bytes in a 32bit location as usual. The second set of four bytes should be << 4'd and put into the location 32bit's to the right.
I'm pretty sure a bitwise shift of four will not produce the desired result.
Title: Re: GPU Memory Map?
Post by: TheMinistered on December 30, 2006, 04:27 PM
The GPU probably has a set of instructions for dealing with 64bit operations.  You should read the manual for the GPU.  Its basically a processor, just like the FPU and CPU.  The FPU has its own set of instructions, etc fldz being one (load zero on stack).   So does the GPU.
Title: Re: GPU Memory Map?
Post by: brew on March 21, 2010, 08:08 PM
Quote from: Mad_DadD on November 24, 2006, 08:45 PM
How do I obtain the memory map for the GeForce Nvidia 7600 GT SLI Delux?

You could either read the ACPI MCFG table (preferred) or reading from ports 0xCF8 and 0xCFC as described here (http://pdos.csail.mit.edu/6.828/2009/readings/hardware/vgadoc/PCI.TXT) (ugly) to get your card's configuration space. This is even simpler with Microsoft Windows 2000 and later; send an IRP_MJ_PNP packet to the PCI bus driver. Check out this link (http://support.microsoft.com/kb/253232) for an example.
From there, you should be able to determine the base addresses of all regions of your card, provided you have sufficient documentation. Since you're asking about nVidia, your best bet would be figure out the structure via RCEing the driver for your card.