exheader.h File Reference

NCCH extended header definitions. More...

`#include <3ds/types.h>`

Go to the source code of this file.

## Data Structures

struct | ExHeader_SystemInfoFlags
| The system info flags and remaster version of a title. More...
struct | ExHeader_CodeSectionInfo
| Information about a title's section. More...
struct | ExHeader_CodeSetInfo
| The name of a title and infomation about its section. More...
struct | ExHeader_SystemInfo
| The savedata size and jump ID of a title. More...
struct | ExHeader_SystemControlInfo
| The code set info, dependencies and system info of a title (SCI) More...
struct | ExHeader_Arm11StorageInfo
| The ARM11 filesystem info of a title. More...
struct | ExHeader_Arm11CoreInfo
| The CPU-related and memory-layout-related info of a title. More...
struct | ExHeader_Arm11SystemLocalCapabilities
| The ARM11 system-local capabilities of a title. More...
struct | ExHeader_Arm11KernelCapabilities
| The ARM11 kernel capabilities of a title. More...
struct | ExHeader_Arm9AccessControl
| The ARM9 access control of a title. More...
struct | ExHeader_AccessControlInfo
| The access control information of a title. More...
struct | ExHeader_Info
| Main extended header data, as returned by PXIPM, Loader and FSREG service commands. More...
struct | ExHeader_AccessDescriptor
| Extended header access descriptor. More...
struct | ExHeader
| The NCCH Extended Header of a title. More...

## Enumerations

enum | { ARM9DESC_MOUNT_NAND = BIT(0) , ARM9DESC_MOUNT_NANDRO_RW = BIT(1) , ARM9DESC_MOUNT_TWLN = BIT(2) , ARM9DESC_MOUNT_WNAND = BIT(3) , ARM9DESC_MOUNT_CARDSPI = BIT(4) , ARM9DESC_USE_SDIF3 = BIT(5) , ARM9DESC_CREATE_SEED = BIT(6) , ARM9DESC_USE_CARD_SPI = BIT(7) , ARM9DESC_SD_APPLICATION = BIT(8) , ARM9DESC_MOUNT_SDMC_RW = BIT(9) }
| ARM9 descriptor flags. More...

enum

{
FSACCESS_CATEGORY_SYSTEM_APPLICATION = BIT(0) ,
FSACCESS_CATEGORY_HARDWARE_CHECK = BIT(1) ,
FSACCESS_CATEGORY_FILESYSTEM_TOOL = BIT(2) ,
FSACCESS_DEBUG = BIT(3) ,
FSACCESS_TWLCARD_BACKUP = BIT(4) ,
FSACCESS_TWLNAND_DATA = BIT(5) ,
FSACCESS_BOSS = BIT(6) ,
FSACCESS_SDMC_RW = BIT(7) ,
FSACCESS_CORE = BIT(8) ,
FSACCESS_NANDRO_RO = BIT(9) ,
FSACCESS_NANDRW = BIT(10) ,
FSACCESS_NANDRO_RW = BIT(11) ,
FSACCESS_CATEGORY_SYSTEM_SETTINGS = BIT(12) ,
FSACCESS_CARDBOARD = BIT(13) ,
FSACCESS_EXPORT_IMPORT_IVS = BIT(14) ,
FSACCESS_SDMC_WO = BIT(15) ,
FSACCESS_SWITCH_CLEANUP = BIT(16) ,
FSACCESS_SAVEDATA_MOVE = BIT(17) ,
FSACCESS_SHOP = BIT(18) ,
FSACCESS_SHELL = BIT(19) ,
FSACCESS_CATEGORY_HOME_MENU = BIT(20) ,
FSACCESS_SEEDDB = BIT(21)
}

| Filesystem access flags. More...
enum | ResourceLimitCategory { RESLIMIT_CATEGORY_APPLICATION = 0 , RESLIMIT_CATEGORY_SYS_APPLET = 1 , RESLIMIT_CATEGORY_LIB_APPLET = 2 , RESLIMIT_CATEGORY_OTHER = 3 }
| The resource limit category of a title. More...
enum | SystemMode { SYSMODE_O3DS_PROD = 0 , SYSMODE_N3DS_PROD = 1 , SYSMODE_DEV1 = 2 , SYSMODE_DEV2 = 3 , SYSMODE_DEV3 = 4 , SYSMODE_DEV4 = 5 }
| The system mode a title should be launched under. More...

## Detailed Description

NCCH extended header definitions.

## Enumeration Type Documentation

## anonymous enum

anonymous enum

ARM9 descriptor flags.

Enumerator
ARM9DESC_MOUNT_NAND | Mount "nand:/".
ARM9DESC_MOUNT_NANDRO_RW | Mount nand:/ro/ as read-write.
ARM9DESC_MOUNT_TWLN | Mount "twln:/".
ARM9DESC_MOUNT_WNAND | Mount "wnand:/".
ARM9DESC_MOUNT_CARDSPI | Mount "cardspi:/".
ARM9DESC_USE_SDIF3 | Use SDIF3.
ARM9DESC_CREATE_SEED | Create seed (movable.sed)
ARM9DESC_USE_CARD_SPI | Use card SPI, required by multiple pxi:dev commands.
ARM9DESC_SD_APPLICATION | SD application (not checked)
ARM9DESC_MOUNT_SDMC_RW | Mount "sdmc:/" as read-write.

## anonymous enum

anonymous enum

Filesystem access flags.

Enumerator
FSACCESS_CATEGORY_SYSTEM_APPLICATION | Category "system application".
FSACCESS_CATEGORY_HARDWARE_CHECK | Category "hardware check".
FSACCESS_CATEGORY_FILESYSTEM_TOOL | Category "filesystem tool".
FSACCESS_DEBUG | Debug.
FSACCESS_TWLCARD_BACKUP | TWLCARD backup.
FSACCESS_TWLNAND_DATA | TWLNAND data.
FSACCESS_BOSS | BOSS (SpotPass)
FSACCESS_SDMC_RW | SDMC (read-write)
FSACCESS_CORE | Core.
FSACCESS_NANDRO_RO | nand:/ro/ (read-only)
FSACCESS_NANDRW | nand:/rw/
FSACCESS_NANDRO_RW | nand:/ro/ (read-write)
FSACCESS_CATEGORY_SYSTEM_SETTINGS | Category "System Settings".
FSACCESS_CARDBOARD | Cardboard (System Transfer)
FSACCESS_EXPORT_IMPORT_IVS | Export/Import IVs (movable.sed)
FSACCESS_SDMC_WO | SDMC (write-only)
FSACCESS_SWITCH_CLEANUP | "Switch cleanup" (3.0+)
FSACCESS_SAVEDATA_MOVE | Savedata move (5.0+)
FSACCESS_SHOP | Shop (5.0+)
FSACCESS_SHELL | Shop (5.0+)
FSACCESS_CATEGORY_HOME_MENU | Category "Home Menu" (6.0+)
FSACCESS_SEEDDB | Seed DB (9.6+)

## ResourceLimitCategory

enum ResourceLimitCategory

The resource limit category of a title.

Enumerator
RESLIMIT_CATEGORY_APPLICATION | Regular application.
RESLIMIT_CATEGORY_SYS_APPLET | System applet.
RESLIMIT_CATEGORY_LIB_APPLET | Library applet.
RESLIMIT_CATEGORY_OTHER | System modules running inside the BASE memregion.

## SystemMode

enum SystemMode

The system mode a title should be launched under.

Enumerator
SYSMODE_O3DS_PROD | 64MB of usable application memory
SYSMODE_N3DS_PROD | 124MB of usable application memory. Unusable on O3DS
SYSMODE_DEV1 | 97MB/178MB of usable application memory
SYSMODE_DEV2 | 80MB/124MB of usable application memory
SYSMODE_DEV3 | 72MB of usable application memory. Same as "Prod" on N3DS
SYSMODE_DEV4 | 32MB of usable application memory. Same as "Prod" on N3DS