From b9307025c2ed94c94fe7a14cda3b4026725e5793 Mon Sep 17 00:00:00 2001 From: MonsterDruide1 <5958456@gmail.com> Date: Sat, 9 May 2026 00:22:20 +0200 Subject: [PATCH 1/4] all: fix declarations and types for symbols --- include/nn/account.h | 10 ++++++++-- include/nn/audio.h | 1 + include/nn/friends.h | 9 +++++++-- include/nn/fs/fs_save.h | 4 ---- include/nn/fs/fs_types.h | 8 ++------ include/nn/image.h | 2 +- include/nn/nfp/nfp.h | 4 +++- include/nn/nn.h | 6 ++++-- 8 files changed, 26 insertions(+), 18 deletions(-) diff --git a/include/nn/account.h b/include/nn/account.h index 18ee1f2e..a546c818 100644 --- a/include/nn/account.h +++ b/include/nn/account.h @@ -10,8 +10,12 @@ namespace nn { namespace account { -typedef char Nickname[0x21]; -typedef u64 NetworkServiceAccountId; +struct Nickname { + char m_Buffer[0x21]; +}; +struct NetworkServiceAccountId { + u64 m_Id; +}; class AsyncContext; @@ -40,6 +44,7 @@ Result LoadNetworkServiceAccountIdTokenCache(u64*, char*, u64, UserHandle const& Result GetLastOpenedUser(Uid*); Result GetNickname(Nickname* nickname, Uid const& userID); +Result GetNetworkServiceAccountId(NetworkServiceAccountId*, const UserHandle&); Result GetUserId(Uid* uid, const UserHandle& handle); Result OpenPreselectedUser(UserHandle* handle); @@ -47,6 +52,7 @@ Result OpenPreselectedUser(UserHandle* handle); class AsyncContext { public: AsyncContext(); + ~AsyncContext(); Result HasDone(bool*); Result GetResult(); diff --git a/include/nn/audio.h b/include/nn/audio.h index bd8c86e9..ab140895 100644 --- a/include/nn/audio.h +++ b/include/nn/audio.h @@ -147,6 +147,7 @@ struct VoiceType { }; struct DeviceSinkType { + struct DownMixParameter; u64* _0; }; diff --git a/include/nn/friends.h b/include/nn/friends.h index d5bd2506..4f554195 100644 --- a/include/nn/friends.h +++ b/include/nn/friends.h @@ -10,7 +10,12 @@ namespace nn { namespace friends { -typedef char Url[0xA0]; +struct Url { + char m_Buffer[0xA0]; +}; +struct ImageSize { + s32 m_Size; +}; class AsyncContext; class Profile; @@ -27,7 +32,7 @@ class Profile { nn::account::NetworkServiceAccountId GetAccountId() const; nn::account::Nickname& GetNickname() const; bool IsValid() const; - Result GetProfileImageUrl(nn::friends::Url*, s32); + Result GetProfileImageUrl(nn::friends::Url*, ImageSize) const; }; class AsyncContext { diff --git a/include/nn/fs/fs_save.h b/include/nn/fs/fs_save.h index 03a9b154..c27e1941 100644 --- a/include/nn/fs/fs_save.h +++ b/include/nn/fs/fs_save.h @@ -3,10 +3,6 @@ #include #include -namespace nn { -typedef u64 ApplicationId; -}; - namespace nn::fs { Result EnsureSaveData(const nn::account::Uid&); diff --git a/include/nn/fs/fs_types.h b/include/nn/fs/fs_types.h index 132fdf7c..729c6442 100644 --- a/include/nn/fs/fs_types.h +++ b/include/nn/fs/fs_types.h @@ -2,10 +2,7 @@ #include -namespace nn { -typedef u64 ApplicationId; - -namespace fs { +namespace nn::fs { using namespace ams::fs; // for errors typedef u64 UserId; @@ -78,5 +75,4 @@ struct WriteOption { return op; } }; -} // namespace fs -} // namespace nn +} // namespace nn::fs diff --git a/include/nn/image.h b/include/nn/image.h index f9712ba8..165a4cda 100644 --- a/include/nn/image.h +++ b/include/nn/image.h @@ -35,7 +35,7 @@ class JpegDecoder { nn::image::JpegStatus Analyze(); nn::image::Dimension GetAnalyzedDimension() const; s64 GetAnalyzedWorkBufferSize() const; - JpegStatus Decode(void* out, s64, s32 alignment, void*, s64); + JpegStatus Decode(void* out, u64, s32 alignment, void*, u64); nn::image::ProcessStage mProcessStage; // _8 void* mData; // _C diff --git a/include/nn/nfp/nfp.h b/include/nn/nfp/nfp.h index e02f754c..ec041618 100644 --- a/include/nn/nfp/nfp.h +++ b/include/nn/nfp/nfp.h @@ -8,7 +8,9 @@ struct SystemEventType; namespace nn::nfp { -using DeviceHandle = u64; +struct DeviceHandle { + u64 m_Id; +}; enum State : u32; enum DeviceState : u32; diff --git a/include/nn/nn.h b/include/nn/nn.h index d367d9b8..173d44fb 100644 --- a/include/nn/nn.h +++ b/include/nn/nn.h @@ -8,7 +8,9 @@ #include namespace nn { -typedef u64 ApplicationId; +struct ApplicationId { + u64 m_Id; +}; }; #ifdef __cplusplus @@ -30,4 +32,4 @@ void __nnDetailNintendoSdkNsoFile_0(); #ifdef __cplusplus } -#endif \ No newline at end of file +#endif From 7aa038adb255d6d72ec7072056fe28701564b524 Mon Sep 17 00:00:00 2001 From: MonsterDruide1 <5958456@gmail.com> Date: Sat, 9 May 2026 00:24:29 +0200 Subject: [PATCH 2/4] clang-format --- include/nn/nn.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/nn/nn.h b/include/nn/nn.h index 173d44fb..286fe4f3 100644 --- a/include/nn/nn.h +++ b/include/nn/nn.h @@ -11,7 +11,7 @@ namespace nn { struct ApplicationId { u64 m_Id; }; -}; +} // namespace nn #ifdef __cplusplus extern "C" { From cfaff029bb6543d1c3d8549d7f5a04617b5eed46 Mon Sep 17 00:00:00 2001 From: MonsterDruide1 <5958456@gmail.com> Date: Sun, 10 May 2026 11:09:34 +0200 Subject: [PATCH 3/4] fix includes --- include/nn/fs/fs_rom.h | 1 + include/nn/fs/fs_save.h | 1 + 2 files changed, 2 insertions(+) diff --git a/include/nn/fs/fs_rom.h b/include/nn/fs/fs_rom.h index da1dc8e1..3cd4df1e 100644 --- a/include/nn/fs/fs_rom.h +++ b/include/nn/fs/fs_rom.h @@ -1,5 +1,6 @@ #pragma once +#include #include namespace nn::fs { diff --git a/include/nn/fs/fs_save.h b/include/nn/fs/fs_save.h index c27e1941..b9d9eb85 100644 --- a/include/nn/fs/fs_save.h +++ b/include/nn/fs/fs_save.h @@ -1,5 +1,6 @@ #pragma once +#include #include #include From 1566e3df6061d138046ba12c1dd347b5c83d8b9f Mon Sep 17 00:00:00 2001 From: MonsterDruide1 <5958456@gmail.com> Date: Sun, 10 May 2026 11:10:39 +0200 Subject: [PATCH 4/4] clang-format --- include/nn/fs/fs_rom.h | 2 +- include/nn/fs/fs_save.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/include/nn/fs/fs_rom.h b/include/nn/fs/fs_rom.h index 3cd4df1e..6220ec91 100644 --- a/include/nn/fs/fs_rom.h +++ b/include/nn/fs/fs_rom.h @@ -1,7 +1,7 @@ #pragma once -#include #include +#include namespace nn::fs { diff --git a/include/nn/fs/fs_save.h b/include/nn/fs/fs_save.h index b9d9eb85..6dda8d05 100644 --- a/include/nn/fs/fs_save.h +++ b/include/nn/fs/fs_save.h @@ -1,8 +1,8 @@ #pragma once -#include #include #include +#include namespace nn::fs {