Move solution and projects to src
This commit is contained in:
parent
cd124bda58
commit
cee7121058
3466 changed files with 55 additions and 55 deletions
53
src/Ryujinx.HLE/Loaders/Npdm/ACI0.cs
Normal file
53
src/Ryujinx.HLE/Loaders/Npdm/ACI0.cs
Normal file
|
@ -0,0 +1,53 @@
|
|||
using Ryujinx.HLE.Exceptions;
|
||||
using System.IO;
|
||||
|
||||
namespace Ryujinx.HLE.Loaders.Npdm
|
||||
{
|
||||
public class Aci0
|
||||
{
|
||||
private const int Aci0Magic = 'A' << 0 | 'C' << 8 | 'I' << 16 | '0' << 24;
|
||||
|
||||
public ulong TitleId { get; set; }
|
||||
|
||||
public int FsVersion { get; private set; }
|
||||
public ulong FsPermissionsBitmask { get; private set; }
|
||||
|
||||
public ServiceAccessControl ServiceAccessControl { get; private set; }
|
||||
public KernelAccessControl KernelAccessControl { get; private set; }
|
||||
|
||||
public Aci0(Stream stream, int offset)
|
||||
{
|
||||
stream.Seek(offset, SeekOrigin.Begin);
|
||||
|
||||
BinaryReader reader = new BinaryReader(stream);
|
||||
|
||||
if (reader.ReadInt32() != Aci0Magic)
|
||||
{
|
||||
throw new InvalidNpdmException("ACI0 Stream doesn't contain ACI0 section!");
|
||||
}
|
||||
|
||||
stream.Seek(0xc, SeekOrigin.Current);
|
||||
|
||||
TitleId = reader.ReadUInt64();
|
||||
|
||||
// Reserved.
|
||||
stream.Seek(8, SeekOrigin.Current);
|
||||
|
||||
int fsAccessHeaderOffset = reader.ReadInt32();
|
||||
int fsAccessHeaderSize = reader.ReadInt32();
|
||||
int serviceAccessControlOffset = reader.ReadInt32();
|
||||
int serviceAccessControlSize = reader.ReadInt32();
|
||||
int kernelAccessControlOffset = reader.ReadInt32();
|
||||
int kernelAccessControlSize = reader.ReadInt32();
|
||||
|
||||
FsAccessHeader fsAccessHeader = new FsAccessHeader(stream, offset + fsAccessHeaderOffset, fsAccessHeaderSize);
|
||||
|
||||
FsVersion = fsAccessHeader.Version;
|
||||
FsPermissionsBitmask = fsAccessHeader.PermissionsBitmask;
|
||||
|
||||
ServiceAccessControl = new ServiceAccessControl(stream, offset + serviceAccessControlOffset, serviceAccessControlSize);
|
||||
|
||||
KernelAccessControl = new KernelAccessControl(stream, offset + kernelAccessControlOffset, kernelAccessControlSize);
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue