Some small sync primitive fixes, logging fixes, started to implement the 2D engine on the GPU, fixed DrawArrays, implemented a few more shader instructions, made a start on nvdrv refactor, etc...
This commit is contained in:
parent
211f7f69db
commit
a38a72b062
27 changed files with 816 additions and 199 deletions
|
@ -1,6 +1,6 @@
|
|||
namespace Ryujinx.Graphics.Gpu
|
||||
{
|
||||
class NsGpuMemoryMgr
|
||||
public class NsGpuMemoryMgr
|
||||
{
|
||||
private const long AddrSize = 1L << 40;
|
||||
|
||||
|
@ -50,12 +50,20 @@ namespace Ryujinx.Graphics.Gpu
|
|||
return GpuAddr;
|
||||
}
|
||||
|
||||
public void Unmap(long Position, long Size)
|
||||
{
|
||||
for (long Offset = 0; Offset < Size; Offset += PageSize)
|
||||
{
|
||||
SetPTAddr(Position + Offset, PteUnmapped);
|
||||
}
|
||||
}
|
||||
|
||||
public long Map(long CpuAddr, long Size)
|
||||
{
|
||||
CpuAddr &= ~PageMask;
|
||||
|
||||
long Position = GetFreePosition(Size);
|
||||
|
||||
|
||||
if (Position != -1)
|
||||
{
|
||||
for (long Offset = 0; Offset < Size; Offset += PageSize)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue