Fix NV stubs
This commit is contained in:
parent
0979426e63
commit
0f8e94024c
5 changed files with 75 additions and 0 deletions
|
@ -0,0 +1,8 @@
|
|||
namespace Ryujinx.Core.OsHle.Services.Nv.NvGpuGpu
|
||||
{
|
||||
struct NvGpuGpuGetActiveSlotMask
|
||||
{
|
||||
public int Slot;
|
||||
public int Mask;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,10 @@
|
|||
namespace Ryujinx.Core.OsHle.Services.Nv.NvGpuGpu
|
||||
{
|
||||
struct NvGpuGpuGetTpcMasks
|
||||
{
|
||||
public int MaskBufferSize;
|
||||
public int Reserved;
|
||||
public long MaskBufferAddress;
|
||||
public long Unk;
|
||||
}
|
||||
}
|
|
@ -41,6 +41,12 @@ namespace Ryujinx.Core.OsHle.Services.Nv.NvGpuGpu
|
|||
long InputPosition = Context.Request.GetBufferType0x21Position();
|
||||
long OutputPosition = Context.Request.GetBufferType0x22Position();
|
||||
|
||||
NvGpuGpuZcullGetCtxSize Args = AMemoryHelper.Read<NvGpuGpuZcullGetCtxSize>(Context.Memory, InputPosition);
|
||||
|
||||
Args.Size = 0x1;
|
||||
|
||||
AMemoryHelper.Write(Context.Memory, OutputPosition, Args);
|
||||
|
||||
Context.Ns.Log.PrintStub(LogClass.ServiceNv, "Stubbed.");
|
||||
|
||||
return NvResult.Success;
|
||||
|
@ -51,6 +57,21 @@ namespace Ryujinx.Core.OsHle.Services.Nv.NvGpuGpu
|
|||
long InputPosition = Context.Request.GetBufferType0x21Position();
|
||||
long OutputPosition = Context.Request.GetBufferType0x22Position();
|
||||
|
||||
NvGpuGpuZcullGetInfo Args = AMemoryHelper.Read<NvGpuGpuZcullGetInfo>(Context.Memory, InputPosition);
|
||||
|
||||
Args.WidthAlignPixels = 0x20;
|
||||
Args.HeightAlignPixels = 0x20;
|
||||
Args.PixelSquaresByAliquots = 0x400;
|
||||
Args.AliquotTotal = 0x800;
|
||||
Args.RegionByteMultiplier = 0x20;
|
||||
Args.RegionHeaderSize = 0x20;
|
||||
Args.SubregionHeaderSize = 0xc0;
|
||||
Args.SubregionWidthAlignPixels = 0x20;
|
||||
Args.SubregionHeightAlignPixels = 0x40;
|
||||
Args.SubregionCount = 0x10;
|
||||
|
||||
AMemoryHelper.Write(Context.Memory, OutputPosition, Args);
|
||||
|
||||
Context.Ns.Log.PrintStub(LogClass.ServiceNv, "Stubbed.");
|
||||
|
||||
return NvResult.Success;
|
||||
|
@ -121,6 +142,12 @@ namespace Ryujinx.Core.OsHle.Services.Nv.NvGpuGpu
|
|||
long InputPosition = Context.Request.GetBufferType0x21Position();
|
||||
long OutputPosition = Context.Request.GetBufferType0x22Position();
|
||||
|
||||
NvGpuGpuGetTpcMasks Args = AMemoryHelper.Read<NvGpuGpuGetTpcMasks>(Context.Memory, InputPosition);
|
||||
|
||||
Args.Unk = 0xcafe;
|
||||
|
||||
AMemoryHelper.Write(Context.Memory, OutputPosition, Args);
|
||||
|
||||
Context.Ns.Log.PrintStub(LogClass.ServiceNv, "Stubbed.");
|
||||
|
||||
return NvResult.Success;
|
||||
|
@ -131,6 +158,13 @@ namespace Ryujinx.Core.OsHle.Services.Nv.NvGpuGpu
|
|||
long InputPosition = Context.Request.GetBufferType0x21Position();
|
||||
long OutputPosition = Context.Request.GetBufferType0x22Position();
|
||||
|
||||
NvGpuGpuGetActiveSlotMask Args = AMemoryHelper.Read<NvGpuGpuGetActiveSlotMask>(Context.Memory, InputPosition);
|
||||
|
||||
Args.Slot = 0x07;
|
||||
Args.Mask = 0x01;
|
||||
|
||||
AMemoryHelper.Write(Context.Memory, OutputPosition, Args);
|
||||
|
||||
Context.Ns.Log.PrintStub(LogClass.ServiceNv, "Stubbed.");
|
||||
|
||||
return NvResult.Success;
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
namespace Ryujinx.Core.OsHle.Services.Nv.NvGpuGpu
|
||||
{
|
||||
struct NvGpuGpuZcullGetCtxSize
|
||||
{
|
||||
public int Size;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,16 @@
|
|||
namespace Ryujinx.Core.OsHle.Services.Nv.NvGpuGpu
|
||||
{
|
||||
struct NvGpuGpuZcullGetInfo
|
||||
{
|
||||
public int WidthAlignPixels;
|
||||
public int HeightAlignPixels;
|
||||
public int PixelSquaresByAliquots;
|
||||
public int AliquotTotal;
|
||||
public int RegionByteMultiplier;
|
||||
public int RegionHeaderSize;
|
||||
public int SubregionHeaderSize;
|
||||
public int SubregionWidthAlignPixels;
|
||||
public int SubregionHeightAlignPixels;
|
||||
public int SubregionCount;
|
||||
}
|
||||
}
|
Loading…
Add table
Reference in a new issue