Move GPU LLE emulation from HLE to Graphics

This commit is contained in:
ReinUsesLisp 2018-09-02 23:52:56 -03:00
parent b549daed03
commit 9ab3690839
33 changed files with 61 additions and 60 deletions

View file

@ -1,6 +1,6 @@
using Ryujinx.HLE.Gpu.Memory;
using Ryujinx.Graphics.Memory;
namespace Ryujinx.HLE.Gpu.Engines
namespace Ryujinx.Graphics.Engines
{
interface INvGpuEngine
{

View file

@ -1,8 +1,8 @@
using Ryujinx.HLE.Gpu.Memory;
using Ryujinx.Graphics.Memory;
using System;
using System.Collections.Generic;
namespace Ryujinx.HLE.Gpu.Engines
namespace Ryujinx.Graphics.Engines
{
class MacroInterpreter
{

View file

@ -1,4 +1,4 @@
namespace Ryujinx.HLE.Gpu.Engines
namespace Ryujinx.Graphics.Engines
{
enum NvGpuEngine
{

View file

@ -1,12 +1,12 @@
using Ryujinx.Graphics.Gal;
using Ryujinx.HLE.Gpu.Memory;
using Ryujinx.HLE.Gpu.Texture;
using Ryujinx.Graphics.Memory;
using Ryujinx.Graphics.Texture;
using System;
using System.Collections.Generic;
namespace Ryujinx.HLE.Gpu.Engines
namespace Ryujinx.Graphics.Engines
{
class NvGpuEngine2d : INvGpuEngine
public class NvGpuEngine2d : INvGpuEngine
{
private enum CopyOperation
{

View file

@ -1,4 +1,4 @@
namespace Ryujinx.HLE.Gpu.Engines
namespace Ryujinx.Graphics.Engines
{
enum NvGpuEngine2dReg
{

View file

@ -1,12 +1,12 @@
using Ryujinx.Graphics.Gal;
using Ryujinx.HLE.Gpu.Memory;
using Ryujinx.HLE.Gpu.Texture;
using Ryujinx.Graphics.Memory;
using Ryujinx.Graphics.Texture;
using System;
using System.Collections.Generic;
namespace Ryujinx.HLE.Gpu.Engines
namespace Ryujinx.Graphics.Engines
{
class NvGpuEngine3d : INvGpuEngine
public class NvGpuEngine3d : INvGpuEngine
{
public int[] Registers { get; private set; }

View file

@ -1,4 +1,4 @@
namespace Ryujinx.HLE.Gpu.Engines
namespace Ryujinx.Graphics.Engines
{
enum NvGpuEngine3dReg
{

View file

@ -1,10 +1,10 @@
using Ryujinx.HLE.Gpu.Memory;
using Ryujinx.HLE.Gpu.Texture;
using Ryujinx.Graphics.Memory;
using Ryujinx.Graphics.Texture;
using System.Collections.Generic;
namespace Ryujinx.HLE.Gpu.Engines
namespace Ryujinx.Graphics.Engines
{
class NvGpuEngineDma : INvGpuEngine
public class NvGpuEngineDma : INvGpuEngine
{
public int[] Registers { get; private set; }

View file

@ -1,4 +1,4 @@
namespace Ryujinx.HLE.Gpu.Engines
namespace Ryujinx.Graphics.Engines
{
enum NvGpuEngineDmaReg
{

View file

@ -1,10 +1,10 @@
using Ryujinx.HLE.Gpu.Memory;
using Ryujinx.Graphics.Memory;
using System.Collections.Concurrent;
using System.Threading;
namespace Ryujinx.HLE.Gpu.Engines
namespace Ryujinx.Graphics.Engines
{
class NvGpuFifo
public class NvGpuFifo
{
private const int MacrosCount = 0x80;
private const int MacroIndexMask = MacrosCount - 1;

View file

@ -1,4 +1,4 @@
namespace Ryujinx.HLE.Gpu.Engines
namespace Ryujinx.Graphics.Engines
{
enum NvGpuFifoMeth
{

View file

@ -1,6 +1,6 @@
using Ryujinx.HLE.Gpu.Memory;
using Ryujinx.Graphics.Memory;
namespace Ryujinx.HLE.Gpu.Engines
namespace Ryujinx.Graphics.Engines
{
delegate void NvGpuMethod(NvGpuVmm Vmm, NvGpuPBEntry PBEntry);
}

View file

@ -1,6 +1,6 @@
namespace Ryujinx.HLE.Gpu.Memory
namespace Ryujinx.Graphics.Memory
{
enum NvGpuBufferType
public enum NvGpuBufferType
{
Index,
Vertex,

View file

@ -1,9 +1,9 @@
using System;
using System.Collections.ObjectModel;
namespace Ryujinx.HLE.Gpu.Memory
namespace Ryujinx.Graphics.Memory
{
struct NvGpuPBEntry
public struct NvGpuPBEntry
{
public int Method { get; private set; }

View file

@ -1,9 +1,9 @@
using System.Collections.Generic;
using System.IO;
namespace Ryujinx.HLE.Gpu.Memory
namespace Ryujinx.Graphics.Memory
{
static class NvGpuPushBuffer
public static class NvGpuPushBuffer
{
private enum SubmissionMode
{

View file

@ -2,9 +2,9 @@ using ChocolArm64.Memory;
using Ryujinx.Graphics.Gal;
using System;
namespace Ryujinx.HLE.Gpu.Memory
namespace Ryujinx.Graphics.Memory
{
class NvGpuVmm : IAMemory, IGalMemory
public class NvGpuVmm : IAMemory, IGalMemory
{
public const long AddrSize = 1L << 40;

View file

@ -1,12 +1,13 @@
using ChocolArm64.Memory;
using Ryujinx.HLE.Memory;
using System;
using System.Collections.Generic;
namespace Ryujinx.HLE.Gpu.Memory
namespace Ryujinx.Graphics.Memory
{
class NvGpuVmmCache
{
private const long RamSize = 4L * 1024 * 1024 * 1024;
private const int MaxCpCount = 10000;
private const int MaxCpTimeDelta = 60000;
@ -226,7 +227,7 @@ namespace Ryujinx.HLE.Gpu.Memory
{
if (Residency == null)
{
Residency = new HashSet<long>[DeviceMemory.RamSize / PageSize];
Residency = new HashSet<long>[RamSize / PageSize];
for (int i = 0; i < Residency.Length; i++)
{

View file

@ -1,9 +1,9 @@
using Ryujinx.Graphics.Gal;
using Ryujinx.HLE.Gpu.Engines;
using Ryujinx.Graphics.Engines;
namespace Ryujinx.HLE.Gpu
namespace Ryujinx.Graphics
{
class NvGpu
public class NvGpu
{
public IGalRenderer Renderer { get; private set; }

View file

@ -1,6 +1,6 @@
using System;
namespace Ryujinx.HLE.Gpu.Texture
namespace Ryujinx.Graphics.Texture
{
class BlockLinearSwizzle : ISwizzle
{

View file

@ -1,4 +1,4 @@
namespace Ryujinx.HLE.Gpu.Texture
namespace Ryujinx.Graphics.Texture
{
interface ISwizzle
{

View file

@ -1,4 +1,4 @@
namespace Ryujinx.HLE.Gpu.Texture
namespace Ryujinx.Graphics.Texture
{
class LinearSwizzle : ISwizzle
{

View file

@ -1,8 +1,8 @@
using Ryujinx.Graphics.Gal;
using Ryujinx.HLE.Gpu.Memory;
using Ryujinx.Graphics.Memory;
using System;
namespace Ryujinx.HLE.Gpu.Texture
namespace Ryujinx.Graphics.Texture
{
static class TextureFactory
{

View file

@ -1,9 +1,9 @@
using ChocolArm64.Memory;
using Ryujinx.Graphics.Gal;
using Ryujinx.HLE.Gpu.Memory;
using Ryujinx.Graphics.Memory;
using System;
namespace Ryujinx.HLE.Gpu.Texture
namespace Ryujinx.Graphics.Texture
{
static class TextureHelper
{

View file

@ -1,8 +1,8 @@
using Ryujinx.Graphics.Gal;
namespace Ryujinx.HLE.Gpu.Texture
namespace Ryujinx.Graphics.Texture
{
struct TextureInfo
public struct TextureInfo
{
public long Position { get; private set; }

View file

@ -2,9 +2,9 @@ using ChocolArm64.Memory;
using Ryujinx.Graphics.Gal;
using System;
namespace Ryujinx.HLE.Gpu.Texture
namespace Ryujinx.Graphics.Texture
{
static class TextureReader
public static class TextureReader
{
public static byte[] Read(IAMemory Memory, TextureInfo Texture)
{

View file

@ -1,6 +1,6 @@
namespace Ryujinx.HLE.Gpu.Texture
namespace Ryujinx.Graphics.Texture
{
enum TextureSwizzle
public enum TextureSwizzle
{
_1dBuffer = 0,
PitchColorKey = 1,

View file

@ -1,6 +1,6 @@
using ChocolArm64.Memory;
namespace Ryujinx.HLE.Gpu.Texture
namespace Ryujinx.Graphics.Texture
{
static class TextureWriter
{

View file

@ -1,4 +1,4 @@
using Ryujinx.HLE.Gpu.Memory;
using Ryujinx.Graphics.Memory;
using System.Collections.Generic;
namespace Ryujinx.HLE.HOS.Services.Nv.NvGpuAS

View file

@ -1,5 +1,5 @@
using ChocolArm64.Memory;
using Ryujinx.HLE.Gpu.Memory;
using Ryujinx.Graphics.Memory;
using Ryujinx.HLE.HOS.Services.Nv.NvMap;
using Ryujinx.HLE.Logging;
using System;

View file

@ -1,5 +1,5 @@
using ChocolArm64.Memory;
using Ryujinx.HLE.Gpu.Memory;
using Ryujinx.Graphics.Memory;
using Ryujinx.HLE.HOS.Services.Nv.NvGpuAS;
using Ryujinx.HLE.Logging;
using System;

View file

@ -1,5 +1,5 @@
using ChocolArm64.Memory;
using Ryujinx.HLE.Gpu.Memory;
using Ryujinx.Graphics.Memory;
using Ryujinx.HLE.Logging;
using Ryujinx.HLE.Utilities;
using System.Collections.Concurrent;

View file

@ -1,5 +1,5 @@
using Ryujinx.Graphics.Gal;
using Ryujinx.HLE.Gpu.Texture;
using Ryujinx.Graphics.Texture;
using Ryujinx.HLE.HOS.Kernel;
using Ryujinx.HLE.HOS.Services.Nv.NvMap;
using Ryujinx.HLE.Logging;

View file

@ -1,6 +1,6 @@
using Ryujinx.Audio;
using Ryujinx.Graphics.Gal;
using Ryujinx.HLE.Gpu;
using Ryujinx.Graphics;
using Ryujinx.HLE.HOS;
using Ryujinx.HLE.Input;
using Ryujinx.HLE.Logging;