mirror of
https://github.com/wiiu-env/wut.git
synced 2025-01-06 14:18:15 +01:00
Merge pull request #28 from shinyquagsire23/mcp
Add basic MCP coreinit imports
This commit is contained in:
commit
ae9fa0a8ab
103
include/coreinit/mcp.h
Normal file
103
include/coreinit/mcp.h
Normal file
@ -0,0 +1,103 @@
|
||||
#pragma once
|
||||
#include <wut.h>
|
||||
|
||||
/**
|
||||
* \defgroup coreinit_mcp MCP IOS Calls
|
||||
* \ingroup coreinit
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef struct MCPInstallProgress MCPInstallProgress;
|
||||
typedef struct MCPInstallInfo MCPInstallInfo;
|
||||
typedef struct MCPInstallTitleInfo MCPInstallTitleInfo;
|
||||
typedef struct MCPDevice MCPDevice;
|
||||
typedef struct MCPDeviceList MCPDeviceList;
|
||||
|
||||
typedef enum MCPInstallTarget
|
||||
{
|
||||
MCP_INSTALL_TARGET_MLC = 0,
|
||||
MCP_INSTALL_TARGET_USB = 1,
|
||||
} MCPInstallTarget;
|
||||
|
||||
struct __attribute__((__packed__)) MCPInstallProgress
|
||||
{
|
||||
u32 inProgress;
|
||||
u64 tid;
|
||||
u64 sizeTotal;
|
||||
u64 sizeProgress;
|
||||
u32 contentsTotal;
|
||||
u32 contentsProgress;
|
||||
};
|
||||
CHECK_OFFSET(MCPInstallProgress, 0x04, tid);
|
||||
CHECK_OFFSET(MCPInstallProgress, 0x20, contentsProgress);
|
||||
CHECK_SIZE(MCPInstallProgress, 0x24);
|
||||
|
||||
struct MCPInstallInfo
|
||||
{
|
||||
UNKNOWN(0x27F);
|
||||
};
|
||||
CHECK_SIZE(MCPInstallInfo, 0x27F);
|
||||
|
||||
struct MCPInstallTitleInfo
|
||||
{
|
||||
UNKNOWN(0x27F);
|
||||
};
|
||||
CHECK_SIZE(MCPInstallTitleInfo, 0x27F);
|
||||
|
||||
struct MCPDevice
|
||||
{
|
||||
char name[0x31B];
|
||||
};
|
||||
CHECK_SIZE(MCPDevice, 0x31B);
|
||||
|
||||
struct MCPDeviceList
|
||||
{
|
||||
MCPDevice devices[32];
|
||||
};
|
||||
CHECK_SIZE(MCPDeviceList, 0x31B*32);
|
||||
|
||||
int
|
||||
MCP_Open();
|
||||
|
||||
int
|
||||
MCP_Close(int handle);
|
||||
|
||||
int
|
||||
MCP_InstallSetTargetDevice(int handle, MCPInstallTarget device);
|
||||
|
||||
int
|
||||
MCP_InstallGetTargetDevice(int handle, MCPInstallTarget *deviceOut);
|
||||
|
||||
int
|
||||
MCP_InstallSetTargetUsb(int handle, int usb);
|
||||
|
||||
int
|
||||
MCP_InstallGetInfo(int handle, char *path, MCPInstallInfo *out);
|
||||
|
||||
int
|
||||
MCP_InstallTitleAsync(int handle, char *path, MCPInstallTitleInfo *out);
|
||||
|
||||
int
|
||||
MCP_InstallGetProgress(int handle, MCPInstallProgress *installProgressOut);
|
||||
|
||||
int
|
||||
MCP_InstallTitleAbort(int handle);
|
||||
|
||||
int
|
||||
MCP_UninstallTitleAsync(int handle, char *path, MCPInstallTitleInfo *out);
|
||||
|
||||
int
|
||||
MCP_DeviceList(int handle, int *numDevices, MCPDeviceList *outDevices, uint32_t outBufferSize);
|
||||
|
||||
int
|
||||
MCP_FullDeviceList(int handle, int *numDevices, MCPDeviceList *outDevices, uint32_t outBufferSize);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
/** @} */
|
@ -186,6 +186,20 @@ EXPORT(MEMAdjustFrmHeap);
|
||||
EXPORT(MEMResizeForMBlockFrmHeap);
|
||||
EXPORT(MEMGetAllocatableSizeForFrmHeapEx);
|
||||
|
||||
// coreinit/mcp.h
|
||||
EXPORT(MCP_Open);
|
||||
EXPORT(MCP_Close);
|
||||
EXPORT(MCP_InstallSetTargetDevice);
|
||||
EXPORT(MCP_InstallGetTargetDevice);
|
||||
EXPORT(MCP_InstallSetTargetUsb);
|
||||
EXPORT(MCP_InstallGetInfo);
|
||||
EXPORT(MCP_InstallTitleAsync);
|
||||
EXPORT(MCP_InstallGetProgress);
|
||||
EXPORT(MCP_InstallTitleAbort);
|
||||
EXPORT(MCP_DeleteTitleAsync);
|
||||
EXPORT(MCP_DeviceList);
|
||||
EXPORT(MCP_FullDeviceList);
|
||||
|
||||
// coreinit/memheap.h
|
||||
EXPORT(MEMDumpHeap);
|
||||
EXPORT(MEMFindContainHeap);
|
||||
|
Loading…
Reference in New Issue
Block a user