Table of Contents

Class ProgramInfo

Namespace
SceneGate.Ekona.Containers.Rom
Assembly
SceneGate.Ekona.dll

Information about the content of the program.

public class ProgramInfo : IFormat
Inheritance
ProgramInfo
Implements
IFormat
Inherited Members

Properties

Arm7Autoload

Gets or sets the auto-load address of the ARM-7.

public uint Arm7Autoload { get; set; }

Property Value

uint

Arm7EntryAddress

Gets or sets the entry address of the ARM-7.

public uint Arm7EntryAddress { get; set; }

Property Value

uint

Arm7ParametersTableOffset

Gets or sets the offset in the ARM7 pointing to some parameter values. Relative to the base RAM address for ARM7.

public uint Arm7ParametersTableOffset { get; set; }

Property Value

uint

Remarks

Only for DSi games and DS games released after the DSi. Otherwise 0.

Arm7RamAddress

Gets or sets the address of the ARM-7 in the RAM.

public uint Arm7RamAddress { get; set; }

Property Value

uint

Arm9Autoload

Gets or sets the auto-load address of the ARM-9.

public uint Arm9Autoload { get; set; }

Property Value

uint

Arm9EntryAddress

Gets or sets the entry address of the ARM-9.

public uint Arm9EntryAddress { get; set; }

Property Value

uint

Arm9ParametersTableOffset

Gets or sets the offset in the ARM9 pointing to some parameter values. Relative to the base RAM address for ARM9.

public uint Arm9ParametersTableOffset { get; set; }

Property Value

uint

Remarks

Only for DSi games and DS games released after the DSi. Otherwise 0.

Arm9RamAddress

Gets or sets the address of the ARM-9 in the RAM.

public uint Arm9RamAddress { get; set; }

Property Value

uint

AutoStartFlag

Gets or sets the flags to skip parts of the autostart.

public byte AutoStartFlag { get; set; }

Property Value

byte

BannerMac

Gets or sets the SHA-1 HMAC of the banner.

public HashInfo BannerMac { get; set; }

Property Value

HashInfo

Remarks

Only for DSi games and DS games released after the DSi. Otherwise null.

CartridgeSize

Gets or sets the size of the ROM cartridge.

public long CartridgeSize { get; set; }

Property Value

long

ChecksumHeader

Gets or sets the checksum of the header.

public HashInfo ChecksumHeader { get; set; }

Property Value

HashInfo

Gets or sets the checksum of the copyright logo.

public HashInfo ChecksumLogo { get; set; }

Property Value

HashInfo

ChecksumSecureArea

Gets or sets the checksum of the ARM-9 secure area.

public HashInfo ChecksumSecureArea { get; set; }

Property Value

HashInfo

DebugRamAddress

Gets or sets the debug ROM location in the RAM.

public uint DebugRamAddress { get; set; }

Property Value

uint

DebugRomOffset

Gets or sets the debug ROM offset.

public uint DebugRomOffset { get; set; }

Property Value

uint

DebugSize

Gets or sets the debug ROM size.

public uint DebugSize { get; set; }

Property Value

uint

DisableSecureArea

Gets or sets a value indicating whether the ARM9 secure are encryption is disabled.

public bool DisableSecureArea { get; set; }

Property Value

bool

DsiCryptoFlags

Gets or sets the modcrypt flags for DSi.

public DsiCryptoMode DsiCryptoFlags { get; set; }

Property Value

DsiCryptoMode

DsiInfo

Gets or sets the information exclusive to DSi programs.

public DsiProgramInfo DsiInfo { get; set; }

Property Value

DsiProgramInfo

EncryptionSeed

Gets or sets the index to encryption seed byte for KEY2.

public byte EncryptionSeed { get; set; }

Property Value

byte

FlagsInit

Gets or sets the control register flags for init.

public uint FlagsInit { get; set; }

Property Value

uint

FlagsRead

Gets or sets the control register flags for read.

public uint FlagsRead { get; set; }

Property Value

uint

GameCode

Gets or sets the game code.

public string GameCode { get; set; }

Property Value

string

GameTitle

Gets or sets the short game title.

public string GameTitle { get; set; }

Property Value

string

MakerCode

Gets or sets the maker code.

public string MakerCode { get; set; }

Property Value

string

MinimumCartridgeSize

Gets the minimum cartridge size.

public static long MinimumCartridgeSize { get; }

Property Value

long

NitroOverlaysMac

Gets or sets the SHA-1 HMAC of the overlays of the ARM9.

public HashInfo NitroOverlaysMac { get; set; }

Property Value

HashInfo

Remarks

Only for DS games released after the DSi. Otherwise null.

NitroProgramMac

Gets or sets the SHA-1 HMAC of the header, encrypted ARM9 and ARM7 programs.

public HashInfo NitroProgramMac { get; set; }

Property Value

HashInfo

Remarks

Only for DS games released after the DSi. Otherwise null.

Overlays7Info

Gets or sets the collection of information of overlays for ARM-7.

public Collection<OverlayInfo> Overlays7Info { get; set; }

Property Value

Collection<OverlayInfo>

Overlays9Info

Gets or sets the collection of information of overlays for ARM-9.

public Collection<OverlayInfo> Overlays9Info { get; set; }

Property Value

Collection<OverlayInfo>

ProgramCodeParameters

Gets or sets the program code (arm9) parameters.

public NitroProgramCodeParameters ProgramCodeParameters { get; set; }

Property Value

NitroProgramCodeParameters

ProgramFeatures

Gets or sets flags related to ROM features.

public DsiRomFeatures ProgramFeatures { get; set; }

Property Value

DsiRomFeatures

Remarks

Only for DSi games and DS games released after the DSi. Otherwise 0.

Region

Gets or sets the supported region.

public ProgramRegions Region { get; set; }

Property Value

ProgramRegions

SecureAreaDelay

Gets or sets the secure area delay in 131kHz units.

public ushort SecureAreaDelay { get; set; }

Property Value

ushort

Signature

Gets or sets the RSA SHA-1 signature of the ROM header.

public HashInfo Signature { get; set; }

Property Value

HashInfo

Remarks

Only for DSi games and DS games released after the DSi. Otherwise null.

UnitCode

Gets or sets the unit code.

public DeviceUnitKind UnitCode { get; set; }

Property Value

DeviceUnitKind

Version

Gets or sets the version of the program.

public byte Version { get; set; }

Property Value

byte

Methods

HasValidHashes()

Gets a value indicating if all the content hashes are valid.

public bool HasValidHashes()

Returns

bool

Value indicating whether the hashes are valid.

Remarks

It takes into account hashes only available in DS or DSi games.

HasValidSignature()

Gets a value indicating if the content signature is valid.

public bool HasValidSignature()

Returns

bool

Value indicating whether the signature is valid.

Remarks

In the case of DS games it always returns true.