wut v1.9.1
Wii U Toolchain
Loading...
Searching...
No Matches
client_cpp.h
Go to the documentation of this file.
1#pragma once
2#include <wut.h>
3#include <nn/ffl/miidata.h>
4#include <nn/result.h>
5
13#ifdef __cplusplus
14
15namespace nn
16{
17
18namespace act
19{
20
21//https://github.com/decaf-emu/decaf-emu/blob/master/src/libdecaf/src/nn/act/nn_act_types.h
22
23using ACTLoadOption = uint32_t;
24using SlotNo = uint8_t;
25using LocalFriendCode = uint64_t;
26using PersistentId = uint32_t;
27using PrincipalId = uint32_t;
28using SimpleAddressId = uint32_t;
29using TransferrableId = uint64_t;
30
31static constexpr size_t AccountIdSize = 17;
32static constexpr size_t DeviceHashSize = 8;
33static constexpr size_t NfsPasswordSize = 17;
34static constexpr size_t MiiNameSize = 11;
35static constexpr size_t UuidSize = 16;
36
37//https://github.com/decaf-emu/decaf-emu/blob/master/src/libdecaf/src/cafe/libraries/nn_act/nn_act_client.cpp
38
41 asm("Initialize__Q2_2nn3actFv");
42
45 asm("Finalize__Q2_2nn3actFv");
46
47//https://github.com/decaf-emu/decaf-emu/blob/master/src/libdecaf/src/cafe/libraries/nn_act/nn_act_clientstandardservice.cpp
48
50GetAccountId(char outAccountId[AccountIdSize])
51 asm("GetAccountId__Q2_2nn3actFPc");
52
54GetAccountIdEx(char outAccountId[AccountIdSize], SlotNo slot)
55 asm("GetAccountIdEx__Q2_2nn3actFPcUc");
56
58GetBirthday(uint16_t *outYear, uint8_t *outMonth, uint8_t *outDay)
59 asm("GetBirthday__Q2_2nn3actFPUsPUcT2");
60
62GetBirthdayEx(uint16_t *outYear, uint8_t *outMonth, uint8_t *outDay, SlotNo slot)
63 asm("GetBirthdayEx__Q2_2nn3actFPUsPUcT2Uc");
64
67 asm("GetDefaultAccount__Q2_2nn3actFv");
68
71 asm("GetDeviceHash__Q2_2nn3actFPUL");
72
74LoadConsoleAccount(SlotNo slot, ACTLoadOption unk1, char const *unk2, bool unk3)
75 asm("LoadConsoleAccount__Q2_2nn3actFUc13ACTLoadOptionPCcb");
76
79 asm("GetMii__Q2_2nn3actFP12FFLStoreData");
80
83 asm("GetMiiEx__Q2_2nn3actFP12FFLStoreDataUc");
84
86GetMiiImageEx(size_t *outImageSize, void *buffer, size_t bufferSize, int unk, SlotNo slot)
87 asm("GetMiiImageEx__Q2_2nn3actFPUiPvUi15ACTMiiImageTypeUc");
88
90GetMiiName(int16_t outName[MiiNameSize])
91 asm("GetMiiName__Q2_2nn3actFPw");
92
94GetMiiNameEx(int16_t outName[MiiNameSize], SlotNo slot)
95 asm("GetMiiNameEx__Q2_2nn3actFPwUc");
96
99 asm("GetNfsPassword__Q2_2nn3actFPc");
100
103 asm("GetNfsPasswordEx__Q2_2nn3actFPcUc");
104
105uint8_t
107 asm("GetNumOfAccounts__Q2_2nn3actFv");
108
109SlotNo
111 asm("GetParentalControlSlotNo__Q2_2nn3actFv");
112
115 asm("GetParentalControlSlotNoEx__Q2_2nn3actFPUcUc");
116
119 asm("GetPersistentId__Q2_2nn3actFv");
120
123 asm("GetPersistentIdEx__Q2_2nn3actFUc");
124
127 asm("GetPrincipalId__Q2_2nn3actFv");
128
131 asm("GetPrincipalIdEx__Q2_2nn3actFPUiUc");
132
135 asm("GetSimpleAddressId__Q2_2nn3actFv");
136
139 asm("GetSimpleAddressIdEx__Q2_2nn3actFPUiUc");
140
141SlotNo
143 asm("GetSlotNo__Q2_2nn3actFv");
144
146GetTransferableId(uint32_t unk1)
147 asm("GetTransferableId__Q2_2nn3actFUi");
148
150GetTransferableIdEx(TransferrableId *outId, uint32_t unk1, SlotNo slot)
151 asm("GetTransferableIdEx__Q2_2nn3actFPULUiUc");
152
154GetUuidEx(char outUuid[UuidSize], SlotNo slot, int32_t unk1)
155 asm("GetUuidEx__Q2_2nn3actFP7ACTUuidUcUi");
156
158GetUuidEx(char outUuid[UuidSize], SlotNo slot)
159 asm("GetUuidEx__Q2_2nn3actFP7ACTUuidUc");
160
162GetUuid(char outUuid[UuidSize], int32_t unk1)
163 asm("GetUuid__Q2_2nn3actFP7ACTUuidUi");
164
166GetUuid(char outUuid[UuidSize])
167 asm("GetUuid__Q2_2nn3actFP7ACTUuid");
168
169BOOL
171 asm("HasNfsAccount__Q2_2nn3actFv");
172
173BOOL
175 asm("IsCommitted__Q2_2nn3actFv");
176
177BOOL
179 asm("IsCommittedEx__Q2_2nn3actFUc");
180
181BOOL
183 asm("IsPasswordCacheEnabled__Q2_2nn3actFv");
184
185BOOL
187 asm("IsPasswordCacheEnabledEx__Q2_2nn3actFUc");
188
189BOOL
191 asm("IsNetworkAccount__Q2_2nn3actFv");
192
193BOOL
195 asm("IsNetworkAccountEx__Q2_2nn3actFUc");
196
197BOOL
199 asm("IsServerAccountActive__Q2_2nn3actFv");
200
201BOOL
203 asm("IsServerAccountActiveEx__Q2_2nn3actFUc");
204
205BOOL
207 asm("IsServerAccountDeleted__Q2_2nn3actFv");
208
209BOOL
211 asm("IsServerAccountDeletedEx__Q2_2nn3actFUc");
212
213BOOL
215 asm("IsSlotOccupied__Q2_2nn3actFUc");
216
217} //namespace act
218
219} //namespace nn
220
221#endif //__cplusplus
222
Result value type used by nn libraries.
Definition result.h:70
uint32_t PrincipalId
Definition client_cpp.h:27
BOOL HasNfsAccount(void) asm("HasNfsAccount__Q2_2nn3actFv")
uint8_t GetNumOfAccounts(void) asm("GetNumOfAccounts__Q2_2nn3actFv")
uint64_t LocalFriendCode
Definition client_cpp.h:25
nn::Result Initialize(void) asm("Initialize__Q2_2nn3actFv")
PersistentId GetPersistentIdEx(SlotNo slot) asm("GetPersistentIdEx__Q2_2nn3actFUc")
SlotNo GetParentalControlsSlotNo(void) asm("GetParentalControlSlotNo__Q2_2nn3actFv")
uint32_t ACTLoadOption
Definition client_cpp.h:23
nn::Result GetMiiImageEx(size_t *outImageSize, void *buffer, size_t bufferSize, int unk, SlotNo slot) asm("GetMiiImageEx__Q2_2nn3actFPUiPvUi15ACTMiiImageTypeUc")
uint64_t TransferrableId
Definition client_cpp.h:29
SimpleAddressId GetSimpleAddressId(void) asm("GetSimpleAddressId__Q2_2nn3actFv")
BOOL IsCommittedEx(SlotNo slot) asm("IsCommittedEx__Q2_2nn3actFUc")
static constexpr size_t AccountIdSize
Definition client_cpp.h:31
nn::Result GetMiiName(int16_t outName[MiiNameSize]) asm("GetMiiName__Q2_2nn3actFPw")
nn::Result GetMii(FFLStoreData *mii) asm("GetMii__Q2_2nn3actFP12FFLStoreData")
uint32_t PersistentId
Definition client_cpp.h:26
nn::Result GetMiiNameEx(int16_t outName[MiiNameSize], SlotNo slot) asm("GetMiiNameEx__Q2_2nn3actFPwUc")
SlotNo GetDefaultAccount(void) asm("GetDefaultAccount__Q2_2nn3actFv")
PersistentId GetPersistentId(void) asm("GetPersistentId__Q2_2nn3actFv")
nn::Result GetPrincipalIdEx(PrincipalId *outId, SlotNo slot) asm("GetPrincipalIdEx__Q2_2nn3actFPUiUc")
static constexpr size_t NfsPasswordSize
Definition client_cpp.h:33
BOOL IsServerAccountActive(void) asm("IsServerAccountActive__Q2_2nn3actFv")
nn::Result GetBirthdayEx(uint16_t *outYear, uint8_t *outMonth, uint8_t *outDay, SlotNo slot) asm("GetBirthdayEx__Q2_2nn3actFPUsPUcT2Uc")
BOOL IsCommitted(void) asm("IsCommitted__Q2_2nn3actFv")
BOOL IsServerAccountDeleted(void) asm("IsServerAccountDeleted__Q2_2nn3actFv")
PrincipalId GetPrincipalId(void) asm("GetPrincipalId__Q2_2nn3actFv")
nn::Result LoadConsoleAccount(SlotNo slot, ACTLoadOption unk1, char const *unk2, bool unk3) asm("LoadConsoleAccount__Q2_2nn3actFUc13ACTLoadOptionPCcb")
BOOL IsPasswordCacheEnabled(void) asm("IsPasswordCacheEnabled__Q2_2nn3actFv")
nn::Result GetMiiEx(FFLStoreData *mii, SlotNo slot) asm("GetMiiEx__Q2_2nn3actFP12FFLStoreDataUc")
BOOL IsNetworkAccount(void) asm("IsNetworkAccount__Q2_2nn3actFv")
nn::Result GetBirthday(uint16_t *outYear, uint8_t *outMonth, uint8_t *outDay) asm("GetBirthday__Q2_2nn3actFPUsPUcT2")
BOOL IsServerAccountActiveEx(SlotNo slot) asm("IsServerAccountActiveEx__Q2_2nn3actFUc")
nn::Result GetAccountId(char outAccountId[AccountIdSize]) asm("GetAccountId__Q2_2nn3actFPc")
nn::Result GetUuidEx(char outUuid[UuidSize], SlotNo slot, int32_t unk1) asm("GetUuidEx__Q2_2nn3actFP7ACTUuidUcUi")
nn::Result GetUuid(char outUuid[UuidSize], int32_t unk1) asm("GetUuid__Q2_2nn3actFP7ACTUuidUi")
nn::Result Finalize(void) asm("Finalize__Q2_2nn3actFv")
nn::Result GetNfsPasswordEx(char outPassword[NfsPasswordSize], SlotNo slot) asm("GetNfsPasswordEx__Q2_2nn3actFPcUc")
nn::Result GetParentalControlsSlotNoEx(SlotNo *outSlotNo, SlotNo slot) asm("GetParentalControlSlotNoEx__Q2_2nn3actFPUcUc")
uint8_t SlotNo
Definition client_cpp.h:24
BOOL IsServerAccountDeletedEx(SlotNo slot) asm("IsServerAccountDeletedEx__Q2_2nn3actFUc")
static constexpr size_t DeviceHashSize
Definition client_cpp.h:32
static constexpr size_t MiiNameSize
Definition client_cpp.h:34
BOOL IsPasswordCacheEnabledEx(SlotNo slot) asm("IsPasswordCacheEnabledEx__Q2_2nn3actFUc")
SlotNo GetSlotNo(void) asm("GetSlotNo__Q2_2nn3actFv")
uint32_t SimpleAddressId
Definition client_cpp.h:28
BOOL IsNetworkAccountEx(SlotNo slot) asm("IsNetworkAccountEx__Q2_2nn3actFUc")
nn::Result GetNfsPassword(char outPassword[NfsPasswordSize]) asm("GetNfsPassword__Q2_2nn3actFPc")
TransferrableId GetTransferableId(uint32_t unk1) asm("GetTransferableId__Q2_2nn3actFUi")
static constexpr size_t UuidSize
Definition client_cpp.h:35
nn::Result GetAccountIdEx(char outAccountId[AccountIdSize], SlotNo slot) asm("GetAccountIdEx__Q2_2nn3actFPcUc")
BOOL IsSlotOccupied(SlotNo slot) asm("IsSlotOccupied__Q2_2nn3actFUc")
nn::Result GetDeviceHash(char outHash[DeviceHashSize]) asm("GetDeviceHash__Q2_2nn3actFPUL")
nn::Result GetTransferableIdEx(TransferrableId *outId, uint32_t unk1, SlotNo slot) asm("GetTransferableIdEx__Q2_2nn3actFPULUiUc")
Definition ac_cpp.h:16
int32_t BOOL
Definition wut_types.h:7