wut  v1.7.0
Wii U Toolchain
Data Structures | Typedefs | Enumerations | Functions
Collaboration diagram for MCP:

Data Structures

struct  MCPDevice
 
struct  MCPInstallInfo
 
struct  MCPInstallProgress
 
struct  MCPInstallTitleInfo
 
struct  MCPSysProdSettings
 
struct  MCPSystemVersion
 
struct  MCPTitleListType
 

Typedefs

typedef int32_t MCPError
 
typedef struct MCPDevice MCPDevice
 
typedef struct MCPDeviceList MCPDeviceList
 
typedef struct MCPInstallInfo MCPInstallInfo
 
typedef struct MCPInstallProgress MCPInstallProgress
 
typedef struct MCPInstallTitleInfo MCPInstallTitleInfo
 
typedef struct MCPSysProdSettings MCPSysProdSettings
 
typedef struct MCPSystemVersion MCPSystemVersion
 
typedef struct MCPTitleListType MCPTitleListType
 
typedef enum MCPAppType MCPAppType
 
typedef enum MCPDeviceType MCPDeviceType
 
typedef enum MCPDeviceFlags MCPDeviceFlags
 
typedef enum MCPInstallTarget MCPInstallTarget
 
typedef enum MCPRegion MCPRegion
 
typedef enum MCPCompatAVFile MCPCompatAVFile
 

Enumerations

enum  MCPAppType {
  MCP_APP_TYPE_GAME_UPDATE = 0x0800001B ,
  MCP_APP_TYPE_GAME_DLC = 0x0800000E ,
  MCP_APP_TYPE_BOOT1 = 0x10000009 ,
  MCP_APP_TYPE_SYSTEM_LIBRARIES = 0x1000000A ,
  MCP_APP_TYPE_BLUETOOTH_FIRMWARE = 0x10000012 ,
  MCP_APP_TYPE_DRC_FIRMWARE = 0x10000013 ,
  MCP_APP_TYPE_DRH_FIRMWARE = 0x10000014 ,
  MCP_APP_TYPE_SYSTEM_VERSION = 0x10000015 ,
  MCP_APP_TYPE_DRC_LANGUAGE = 0x1000001A ,
  MCP_APP_TYPE_EXCEPTIONS_DATA = 0x18000010 ,
  MCP_APP_TYPE_SHARED_DATA = 0x1800001C ,
  MCP_APP_TYPE_CERT_STORE = 0x1800001E ,
  MCP_APP_TYPE_PATCH_MAP_DATA = 0x18000023 ,
  MCP_APP_TYPE_WAGONU_MIGRATION_LIST = 0x18000029 ,
  MCP_APP_TYPE_CAFFEINE_TITLE_LIST = 0x18000030 ,
  MCP_APP_TYPE_MCP_TITLE_LIST = 0x18000031 ,
  MCP_APP_TYPE_GAME = 0x80000000 ,
  MCP_APP_TYPE_GAME_WII = 0x8000002E ,
  MCP_APP_TYPE_SYSTEM_MENU = 0x90000001 ,
  MCP_APP_TYPE_SYSTEM_UPDATER = 0x9000000B ,
  MCP_APP_TYPE_SYSTEM_APPS = 0x90000020 ,
  MCP_APP_TYPE_ACCOUNT_APPS = 0x90000021 ,
  MCP_APP_TYPE_SYSTEM_SETTINGS = 0x90000022 ,
  MCP_APP_TYPE_ECO_PROCESS = 0x9000002F ,
  MCP_APP_TYPE_EMANUAL = 0xD0000003 ,
  MCP_APP_TYPE_HOME_MENU = 0xD0000004 ,
  MCP_APP_TYPE_ERROR_DISPLAY = 0xD0000005 ,
  MCP_APP_TYPE_BROWSER = 0xD0000006 ,
  MCP_APP_TYPE_MIIVERSE_POST = 0xD000000D ,
  MCP_APP_TYPE_MIIVERSE = 0xD0000016 ,
  MCP_APP_TYPE_ESHOP = 0xD0000017 ,
  MCP_APP_TYPE_FRIEND_LIST = 0xD0000018 ,
  MCP_APP_TYPE_DOWNLOAD_MANAGEMENT = 0xD0000019 ,
  MCP_APP_TYPE_AOC_OVERLAY = 0xD000002C ,
  MCP_APP_TYPE_AMIIBO_SETTINGS = 0xD0000033
}
 
enum  MCPDeviceType {
  MCP_DEVICE_TYPE_AUTO = 1 ,
  MCP_DEVICE_TYPE_ODD = 2 ,
  MCP_DEVICE_TYPE_MLC = 3 ,
  MCP_DEVICE_TYPE_USB = 4
}
 
enum  MCPDeviceFlags {
  MCP_DEVICE_FLAG_UNK_1 = 0x1 ,
  MCP_DEVICE_FLAG_UNK_2 = 0x2 ,
  MCP_DEVICE_FLAG_UNK_4 = 0x4 ,
  MCP_DEVICE_FLAG_UNK_8 = 0x8
}
 
enum  MCPInstallTarget {
  MCP_INSTALL_TARGET_MLC = 0 ,
  MCP_INSTALL_TARGET_USB = 1
}
 
enum  MCPRegion {
  MCP_REGION_JAPAN = 0x01 ,
  MCP_REGION_USA = 0x02 ,
  MCP_REGION_EUROPE = 0x04 ,
  MCP_REGION_CHINA = 0x10 ,
  MCP_REGION_KOREA = 0x20 ,
  MCP_REGION_TAIWAN = 0x40
}
 
enum  MCPCompatAVFile {
  MCP_COMPAT_AV_FILE_DMCU = 0x00 ,
  MCP_COMPAT_AV_FILE_DEINT = 0x01
}
 

Functions

MCPError MCP_Open ()
 
MCPError MCP_Close (int handle)
 
MCPError MCP_DeviceList (int handle, int *numDevices, MCPDevice *outDeviceList, uint32_t deviceListSizeInBytes)
 
MCPError MCP_FullDeviceList (int handle, int *numDevices, MCPDevice *outDeviceList, uint32_t deviceListSizeInBytes)
 
MCPError MCP_GetOwnTitleInfo (int32_t handle, MCPTitleListType *titleInfo)
 
MCPError MCP_GetSysProdSettings (int32_t handle, MCPSysProdSettings *settings)
 
MCPError MCP_GetSystemVersion (int32_t handle, MCPSystemVersion *systemVersion)
 
MCPError MCP_GetTitleId (int32_t handle, uint64_t *outTitleId)
 
MCPError MCP_GetTitleInfo (int32_t handle, uint64_t titleId, MCPTitleListType *titleInfo)
 
MCPError MCP_InstallSetTargetDevice (int handle, MCPInstallTarget device)
 
MCPError MCP_InstallGetTargetDevice (int handle, MCPInstallTarget *deviceOut)
 
MCPError MCP_InstallSetTargetUsb (int handle, int usb)
 
MCPError MCP_InstallGetInfo (int handle, const char *path, MCPInstallInfo *out)
 
MCPError MCP_InstallTitleAsync (int handle, const char *path, MCPInstallTitleInfo *out)
 
MCPError MCP_InstallGetProgress (int handle, MCPInstallProgress *installProgressOut)
 
MCPError MCP_InstallTitleAbort (int handle)
 
MCPError MCP_TitleCount (int32_t handle)
 
MCPError MCP_TitleList (int32_t handle, uint32_t *outTitleCount, MCPTitleListType *titleList, uint32_t titleListSizeBytes)
 
MCPError MCP_TitleListByAppType (int32_t handle, MCPAppType appType, uint32_t *outTitleCount, MCPTitleListType *titleList, uint32_t titleListSizeBytes)
 
MCPError MCP_TitleListByUniqueId (int32_t handle, uint32_t uniqueId, uint32_t *outTitleCount, MCPTitleListType *titleList, uint32_t titleListSizeBytes)
 
MCPError MCP_TitleListByDevice (int32_t handle, const char *deviceName, uint32_t *outTitleCount, MCPTitleListType *titleList, uint32_t titleListSizeBytes)
 
MCPError MCP_TitleListByDeviceType (int32_t handle, MCPDeviceType deviceType, uint32_t *outTitleCount, MCPTitleListType *titleList, uint32_t titleListSizeBytes)
 
MCPError MCP_TitleListByAppAndDevice (int32_t handle, MCPAppType appType, const char *deviceName, uint32_t *outTitleCount, MCPTitleListType *titleList, uint32_t titleListSizeBytes)
 
MCPError MCP_TitleListByAppAndDeviceType (int32_t handle, MCPAppType appType, MCPDeviceType deviceType, uint32_t *outTitleCount, MCPTitleListType *titleList, uint32_t titleListSizeBytes)
 
MCPError MCP_TitleListByUniqueIdAndIndexedDeviceAndAppType (int32_t handle, uint32_t uniqueId, const char *indexedDevice, uint8_t unk0x60, MCPAppType appType, uint32_t *outTitleCount, MCPTitleListType *titleList, uint32_t titleListSizeBytes)
 
MCPError MCP_UninstallTitleAsync (int32_t handle, const char *path, MCPInstallTitleInfo *out)
 
MCPError MCP_CompatLoadAVFile (int32_t handle, void *ptr, uint32_t *size, MCPCompatAVFile file)
 
MCPError MCP_TriggerCrashLogCollection (int32_t handle)
 Saves the current Cafe log to the SLC logs directory. More...
 
MCPError MCP_ChangeEcoSettings (int32_t handle, uint32_t enable, uint32_t maxOnTime, uint16_t defaultOffTime)
 Sets values to /storage_slc/sys/config/eco.xml. More...
 
static const char * MCP_GetDeviceNameByDeviceType (MCPDeviceType deviceType)
 

Detailed Description


Data Structure Documentation

◆ MCPDevice

struct MCPDevice

Definition at line 105 of file mcp.h.

Data Fields
char type[8]
char unk0x08[128]
char filesystem[8]
char path[0x27F]
MCPDeviceFlags flags
uint32_t uid
uint32_t index

◆ MCPInstallInfo

struct MCPInstallInfo

Definition at line 124 of file mcp.h.

◆ MCPInstallProgress

struct MCPInstallProgress

Definition at line 130 of file mcp.h.

Data Fields
uint32_t inProgress
uint64_t tid
uint64_t sizeTotal
uint64_t sizeProgress
uint32_t contentsTotal
uint32_t contentsProgress

◆ MCPInstallTitleInfo

struct MCPInstallTitleInfo

Definition at line 147 of file mcp.h.

◆ MCPSysProdSettings

struct MCPSysProdSettings

Definition at line 153 of file mcp.h.

Data Fields
MCPRegion product_area
uint16_t eeprom_version
MCPRegion game_region
char ntsc_pal[5]
char wifi_5ghz_country_code[4] 5ghz_country_code in xml
uint8_t wifi_5ghz_country_code_revision 5ghz_country_code_revision in xml
char code_id[8]
char serial_id[12]
char model_number[16]
uint32_t version

◆ MCPSystemVersion

struct MCPSystemVersion

Definition at line 186 of file mcp.h.

Data Fields
uint32_t major
uint32_t minor
uint32_t patch
char region

◆ MCPTitleListType

struct MCPTitleListType

Definition at line 199 of file mcp.h.

Data Fields
uint64_t titleId
uint32_t groupId
char path[56]
MCPAppType appType
uint16_t titleVersion
uint64_t osVersion
uint32_t sdkVersion
char indexedDevice[10]
uint8_t unk0x60

Typedef Documentation

◆ MCPError

typedef int32_t MCPError

Definition at line 14 of file mcp.h.

◆ MCPDevice

typedef struct MCPDevice MCPDevice

Definition at line 14 of file mcp.h.

◆ MCPDeviceList

typedef struct MCPDeviceList MCPDeviceList

Definition at line 14 of file mcp.h.

◆ MCPInstallInfo

Definition at line 14 of file mcp.h.

◆ MCPInstallProgress

Definition at line 14 of file mcp.h.

◆ MCPInstallTitleInfo

Definition at line 14 of file mcp.h.

◆ MCPSysProdSettings

Definition at line 14 of file mcp.h.

◆ MCPSystemVersion

Definition at line 14 of file mcp.h.

◆ MCPTitleListType

Definition at line 14 of file mcp.h.

◆ MCPAppType

typedef enum MCPAppType MCPAppType

◆ MCPDeviceType

◆ MCPDeviceFlags

◆ MCPInstallTarget

◆ MCPRegion

typedef enum MCPRegion MCPRegion

◆ MCPCompatAVFile

Enumeration Type Documentation

◆ MCPAppType

enum MCPAppType
Enumerator
MCP_APP_TYPE_GAME_UPDATE 
MCP_APP_TYPE_GAME_DLC 
MCP_APP_TYPE_BOOT1 
MCP_APP_TYPE_SYSTEM_LIBRARIES 
MCP_APP_TYPE_BLUETOOTH_FIRMWARE 
MCP_APP_TYPE_DRC_FIRMWARE 
MCP_APP_TYPE_DRH_FIRMWARE 
MCP_APP_TYPE_SYSTEM_VERSION 
MCP_APP_TYPE_DRC_LANGUAGE 
MCP_APP_TYPE_EXCEPTIONS_DATA 
MCP_APP_TYPE_SHARED_DATA 
MCP_APP_TYPE_CERT_STORE 
MCP_APP_TYPE_PATCH_MAP_DATA 
MCP_APP_TYPE_WAGONU_MIGRATION_LIST 
MCP_APP_TYPE_CAFFEINE_TITLE_LIST 
MCP_APP_TYPE_MCP_TITLE_LIST 
MCP_APP_TYPE_GAME 
MCP_APP_TYPE_GAME_WII 
MCP_APP_TYPE_SYSTEM_MENU 
MCP_APP_TYPE_SYSTEM_UPDATER 
MCP_APP_TYPE_SYSTEM_APPS 
MCP_APP_TYPE_ACCOUNT_APPS 
MCP_APP_TYPE_SYSTEM_SETTINGS 
MCP_APP_TYPE_ECO_PROCESS 
MCP_APP_TYPE_EMANUAL 
MCP_APP_TYPE_HOME_MENU 
MCP_APP_TYPE_ERROR_DISPLAY 
MCP_APP_TYPE_BROWSER 
MCP_APP_TYPE_MIIVERSE_POST 
MCP_APP_TYPE_MIIVERSE 
MCP_APP_TYPE_ESHOP 
MCP_APP_TYPE_FRIEND_LIST 
MCP_APP_TYPE_DOWNLOAD_MANAGEMENT 
MCP_APP_TYPE_AOC_OVERLAY 
MCP_APP_TYPE_AMIIBO_SETTINGS 

Definition at line 25 of file mcp.h.

◆ MCPDeviceType

Enumerator
MCP_DEVICE_TYPE_AUTO 
MCP_DEVICE_TYPE_ODD 
MCP_DEVICE_TYPE_MLC 
MCP_DEVICE_TYPE_USB 

Definition at line 64 of file mcp.h.

◆ MCPDeviceFlags

Enumerator
MCP_DEVICE_FLAG_UNK_1 
MCP_DEVICE_FLAG_UNK_2 
MCP_DEVICE_FLAG_UNK_4 
MCP_DEVICE_FLAG_UNK_8 

Definition at line 73 of file mcp.h.

◆ MCPInstallTarget

Enumerator
MCP_INSTALL_TARGET_MLC 
MCP_INSTALL_TARGET_USB 

Definition at line 81 of file mcp.h.

◆ MCPRegion

enum MCPRegion
Enumerator
MCP_REGION_JAPAN 
MCP_REGION_USA 
MCP_REGION_EUROPE 
MCP_REGION_CHINA 
MCP_REGION_KOREA 
MCP_REGION_TAIWAN 

Definition at line 87 of file mcp.h.

◆ MCPCompatAVFile

Enumerator
MCP_COMPAT_AV_FILE_DMCU 

DMCU firmware.

MCP_COMPAT_AV_FILE_DEINT 

Deinterlacer parameters.

Definition at line 97 of file mcp.h.

Function Documentation

◆ MCP_Open()

MCPError MCP_Open ( )

◆ MCP_Close()

MCPError MCP_Close ( int  handle)

◆ MCP_DeviceList()

MCPError MCP_DeviceList ( int  handle,
int *  numDevices,
MCPDevice outDeviceList,
uint32_t  deviceListSizeInBytes 
)

◆ MCP_FullDeviceList()

MCPError MCP_FullDeviceList ( int  handle,
int *  numDevices,
MCPDevice outDeviceList,
uint32_t  deviceListSizeInBytes 
)

◆ MCP_GetOwnTitleInfo()

MCPError MCP_GetOwnTitleInfo ( int32_t  handle,
MCPTitleListType titleInfo 
)

◆ MCP_GetSysProdSettings()

MCPError MCP_GetSysProdSettings ( int32_t  handle,
MCPSysProdSettings settings 
)

◆ MCP_GetSystemVersion()

MCPError MCP_GetSystemVersion ( int32_t  handle,
MCPSystemVersion systemVersion 
)

◆ MCP_GetTitleId()

MCPError MCP_GetTitleId ( int32_t  handle,
uint64_t *  outTitleId 
)

◆ MCP_GetTitleInfo()

MCPError MCP_GetTitleInfo ( int32_t  handle,
uint64_t  titleId,
MCPTitleListType titleInfo 
)

◆ MCP_InstallSetTargetDevice()

MCPError MCP_InstallSetTargetDevice ( int  handle,
MCPInstallTarget  device 
)

◆ MCP_InstallGetTargetDevice()

MCPError MCP_InstallGetTargetDevice ( int  handle,
MCPInstallTarget deviceOut 
)

◆ MCP_InstallSetTargetUsb()

MCPError MCP_InstallSetTargetUsb ( int  handle,
int  usb 
)

◆ MCP_InstallGetInfo()

MCPError MCP_InstallGetInfo ( int  handle,
const char *  path,
MCPInstallInfo out 
)

◆ MCP_InstallTitleAsync()

MCPError MCP_InstallTitleAsync ( int  handle,
const char *  path,
MCPInstallTitleInfo out 
)

◆ MCP_InstallGetProgress()

MCPError MCP_InstallGetProgress ( int  handle,
MCPInstallProgress installProgressOut 
)

◆ MCP_InstallTitleAbort()

MCPError MCP_InstallTitleAbort ( int  handle)

◆ MCP_TitleCount()

MCPError MCP_TitleCount ( int32_t  handle)

◆ MCP_TitleList()

MCPError MCP_TitleList ( int32_t  handle,
uint32_t *  outTitleCount,
MCPTitleListType titleList,
uint32_t  titleListSizeBytes 
)

◆ MCP_TitleListByAppType()

MCPError MCP_TitleListByAppType ( int32_t  handle,
MCPAppType  appType,
uint32_t *  outTitleCount,
MCPTitleListType titleList,
uint32_t  titleListSizeBytes 
)

◆ MCP_TitleListByUniqueId()

MCPError MCP_TitleListByUniqueId ( int32_t  handle,
uint32_t  uniqueId,
uint32_t *  outTitleCount,
MCPTitleListType titleList,
uint32_t  titleListSizeBytes 
)

◆ MCP_TitleListByDevice()

MCPError MCP_TitleListByDevice ( int32_t  handle,
const char *  deviceName,
uint32_t *  outTitleCount,
MCPTitleListType titleList,
uint32_t  titleListSizeBytes 
)

◆ MCP_TitleListByDeviceType()

MCPError MCP_TitleListByDeviceType ( int32_t  handle,
MCPDeviceType  deviceType,
uint32_t *  outTitleCount,
MCPTitleListType titleList,
uint32_t  titleListSizeBytes 
)

◆ MCP_TitleListByAppAndDevice()

MCPError MCP_TitleListByAppAndDevice ( int32_t  handle,
MCPAppType  appType,
const char *  deviceName,
uint32_t *  outTitleCount,
MCPTitleListType titleList,
uint32_t  titleListSizeBytes 
)

◆ MCP_TitleListByAppAndDeviceType()

MCPError MCP_TitleListByAppAndDeviceType ( int32_t  handle,
MCPAppType  appType,
MCPDeviceType  deviceType,
uint32_t *  outTitleCount,
MCPTitleListType titleList,
uint32_t  titleListSizeBytes 
)

◆ MCP_TitleListByUniqueIdAndIndexedDeviceAndAppType()

MCPError MCP_TitleListByUniqueIdAndIndexedDeviceAndAppType ( int32_t  handle,
uint32_t  uniqueId,
const char *  indexedDevice,
uint8_t  unk0x60,
MCPAppType  appType,
uint32_t *  outTitleCount,
MCPTitleListType titleList,
uint32_t  titleListSizeBytes 
)

◆ MCP_UninstallTitleAsync()

MCPError MCP_UninstallTitleAsync ( int32_t  handle,
const char *  path,
MCPInstallTitleInfo out 
)

◆ MCP_CompatLoadAVFile()

MCPError MCP_CompatLoadAVFile ( int32_t  handle,
void *  ptr,
uint32_t *  size,
MCPCompatAVFile  file 
)

◆ MCP_TriggerCrashLogCollection()

MCPError MCP_TriggerCrashLogCollection ( int32_t  handle)

Saves the current Cafe log to the SLC logs directory.

Internally calls IOS_Ioctl() with request 0xCD .

Returns
0 on success.

◆ MCP_ChangeEcoSettings()

MCPError MCP_ChangeEcoSettings ( int32_t  handle,
uint32_t  enable,
uint32_t  maxOnTime,
uint16_t  defaultOffTime 
)

Sets values to /storage_slc/sys/config/eco.xml.

Returns
0 on success.

◆ MCP_GetDeviceNameByDeviceType()

static const char* MCP_GetDeviceNameByDeviceType ( MCPDeviceType  deviceType)
inlinestatic

Definition at line 386 of file mcp.h.