mirror of
https://github.com/ryujinx-mirror/ryujinx.git
synced 2024-11-27 09:30:51 +01:00
c393cdf8e3
* Keep track mapped buffers with fixed offsets * Started rewriting the memory manager * Initial support for MapPhysicalMemory and UnmapPhysicalMemory, other tweaks * MapPhysicalMemory/UnmapPhysicalMemory support, other tweaks * Rebased * Optimize the map/unmap physical memory svcs * Integrate shared font support * Fix address space reserve alignment * Some fixes related to gpu memory mapping * Some cleanup * Only try uploading const buffers that are really used * Check if memory region is contiguous * Rebased * Add missing count increment on IsRegionModified * Check for reads/writes outside of the address space, optimize translation with a tail call
49 lines
1.9 KiB
C#
49 lines
1.9 KiB
C#
using System;
|
|
|
|
namespace Ryujinx.HLE.OsHle
|
|
{
|
|
[Flags]
|
|
enum MemoryState : uint
|
|
{
|
|
Unmapped = 0x00000000,
|
|
Io = 0x00002001,
|
|
Normal = 0x00042002,
|
|
CodeStatic = 0x00DC7E03,
|
|
CodeMutable = 0x03FEBD04,
|
|
Heap = 0x037EBD05,
|
|
SharedMemory = 0x00402006,
|
|
ModCodeStatic = 0x00DD7E08,
|
|
ModCodeMutable = 0x03FFBD09,
|
|
IpcBuffer0 = 0x005C3C0A,
|
|
MappedMemory = 0x005C3C0B,
|
|
ThreadLocal = 0x0040200C,
|
|
TransferMemoryIsolated = 0x015C3C0D,
|
|
TransferMemory = 0x005C380E,
|
|
ProcessMemory = 0x0040380F,
|
|
Reserved = 0x00000010,
|
|
IpcBuffer1 = 0x005C3811,
|
|
IpcBuffer3 = 0x004C2812,
|
|
KernelStack = 0x00002013,
|
|
CodeReadOnly = 0x00402214,
|
|
CodeWritable = 0x00402015,
|
|
Mask = 0xffffffff,
|
|
|
|
PermissionChangeAllowed = 1 << 8,
|
|
ForceReadWritableByDebugSyscalls = 1 << 9,
|
|
IpcSendAllowedType0 = 1 << 10,
|
|
IpcSendAllowedType3 = 1 << 11,
|
|
IpcSendAllowedType1 = 1 << 12,
|
|
ProcessPermissionChangeAllowed = 1 << 14,
|
|
MapAllowed = 1 << 15,
|
|
UnmapProcessCodeMemoryAllowed = 1 << 16,
|
|
TransferMemoryAllowed = 1 << 17,
|
|
QueryPhysicalAddressAllowed = 1 << 18,
|
|
MapDeviceAllowed = 1 << 19,
|
|
MapDeviceAlignedAllowed = 1 << 20,
|
|
IpcBufferAllowed = 1 << 21,
|
|
IsPoolAllocated = 1 << 22,
|
|
MapProcessAllowed = 1 << 23,
|
|
AttributeChangeAllowed = 1 << 24,
|
|
CodeMemoryAllowed = 1 << 25
|
|
}
|
|
} |