diff --git a/data/uking_functions.csv b/data/uking_functions.csv index 341b2648..e7d5705b 100644 --- a/data/uking_functions.csv +++ b/data/uking_functions.csv @@ -90783,8 +90783,8 @@ 0x0000007101201698,ResourceLoadArgBase::dtorDelete,4,_ZN4ksys3res12ILoadRequestD0Ev 0x000000710120169c,ResourceLoadArg::ctor,136,_ZN4ksys3res11LoadRequestC1Ev 0x0000007101201724,ResourceLoadArg::ctor2,112,_ZN4ksys3res11LoadRequestC1Eijb -0x0000007101201794,ResourceLoadArg2::ctor,64, -0x00000071012017d4,ResourceLoadArg3::ctor,60, +0x0000007101201794,ResourceLoadArg2::ctor,64,_ZN4ksys3res17SimpleLoadRequestC1Ev +0x00000071012017d4,ResourceLoadArg3::ctor,60,_ZN4ksys3res23SimplePackedLoadRequestC1Ev 0x0000007101201810,Res::ctor,72,_ZN4ksys3res6HandleC1Ev 0x0000007101201858,Res::dtor,156, 0x00000071012018f4,Res::unload,136, @@ -90796,7 +90796,7 @@ 0x0000007101201afc,Res::setError,12, 0x0000007101201b08,Res::submitLoadForSyncRequestAndGetResource,444, 0x0000007101201cc4,Res::isStartedLoadAndFailed,12, -0x0000007101201cd0,ResourceLoadArg::dtor,20, +0x0000007101201cd0,ResourceLoadArg::dtor,20,_ZN4ksys3res11LoadRequestD2Ev 0x0000007101201ce4,Res::submitLoadRequest,380, 0x0000007101201e60,Res::waitForReady,68, 0x0000007101201ea4,sub_7101201EA4,104, @@ -90818,18 +90818,18 @@ 0x0000007101202a70,ResourceLoadArgBase::rtti2,92,_ZNK4ksys3res12ILoadRequest18getRuntimeTypeInfoEv 0x0000007101202acc,Res::rtti1,112, 0x0000007101202b3c,Res::rtti2,92, -0x0000007101202b98,ResourceLoadArg::rtti1,204, -0x0000007101202c64,ResourceLoadArg::rtti2,92, -0x0000007101202cc0,ResourceLoadArg::dtorDelete,4, -0x0000007101202cc4,ResourceLoadArg2::rtti1,204, -0x0000007101202d90,ResourceLoadArg2::rtti2,92, -0x0000007101202dec,ResourceLoadArg2::dtor,20, -0x0000007101202e00,ResourceLoadArg2::dtorDelete,4, -0x0000007101202e04,ResourceLoadArg3::rtti1,204, -0x0000007101202ed0,ResourceLoadArg3::rtti2,92, +0x0000007101202b98,ResourceLoadArg::rtti1,204,_ZNK4ksys3res11LoadRequest27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE +0x0000007101202c64,ResourceLoadArg::rtti2,92,_ZNK4ksys3res11LoadRequest18getRuntimeTypeInfoEv +0x0000007101202cc0,ResourceLoadArg::dtorDelete,4,_ZN4ksys3res11LoadRequestD0Ev +0x0000007101202cc4,ResourceLoadArg2::rtti1,204,_ZNK4ksys3res17SimpleLoadRequest27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE +0x0000007101202d90,ResourceLoadArg2::rtti2,92,_ZNK4ksys3res17SimpleLoadRequest18getRuntimeTypeInfoEv +0x0000007101202dec,ResourceLoadArg2::dtor,20,_ZN4ksys3res17SimpleLoadRequestD2Ev +0x0000007101202e00,ResourceLoadArg2::dtorDelete,4,_ZN4ksys3res17SimpleLoadRequestD0Ev +0x0000007101202e04,ResourceLoadArg3::rtti1,204,_ZNK4ksys3res23SimplePackedLoadRequest27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE +0x0000007101202ed0,ResourceLoadArg3::rtti2,92,_ZNK4ksys3res23SimplePackedLoadRequest18getRuntimeTypeInfoEv 0x0000007101202f2c,ResourceLoadArgBase::dtor,20,_ZN4ksys3res12ILoadRequestD1Ev -0x0000007101202f40,ResourceLoadArg3::dtorDelete,4, -0x0000007101202f44,sub_7101202F44,140, +0x0000007101202f40,ResourceLoadArg3::dtorDelete,4,_ZN4ksys3res23SimplePackedLoadRequestD0Ev +0x0000007101202f44,sub_7101202F44,140,_ZNK4sead15RuntimeTypeInfo6DeriveIN4ksys3res12ILoadRequestEE9isDerivedEPKNS0_9InterfaceE 0x0000007101202fd0,sub_7101202FD0,32, 0x0000007101202ff0,Struct18::ctor,32, 0x0000007101203010,nullsub_4696,4, diff --git a/src/KingSystem/Resource/resLoadRequest.cpp b/src/KingSystem/Resource/resLoadRequest.cpp index f2ff8a14..e8e2181f 100644 --- a/src/KingSystem/Resource/resLoadRequest.cpp +++ b/src/KingSystem/Resource/resLoadRequest.cpp @@ -13,4 +13,8 @@ LoadRequest::LoadRequest(s32 load_data_alignment, u32 arg_c, bool arg_20) _c = arg_c; } +SimpleLoadRequest::SimpleLoadRequest() = default; + +SimplePackedLoadRequest::SimplePackedLoadRequest() = default; + } // namespace ksys::res diff --git a/src/KingSystem/Resource/resLoadRequest.h b/src/KingSystem/Resource/resLoadRequest.h index 035f812f..e72d6ab6 100644 --- a/src/KingSystem/Resource/resLoadRequest.h +++ b/src/KingSystem/Resource/resLoadRequest.h @@ -29,7 +29,6 @@ public: }; KSYS_CHECK_SIZE_NX150(ILoadRequest, 0x20); -// FIXME: incomplete class LoadRequest : public ILoadRequest { SEAD_RTTI_OVERRIDE(LoadRequest, ILoadRequest) public: @@ -60,4 +59,26 @@ public: }; KSYS_CHECK_SIZE_NX150(LoadRequest, 0x80); +class SimpleLoadRequest : public ILoadRequest { + SEAD_RTTI_OVERRIDE(SimpleLoadRequest, ILoadRequest) +public: + SimpleLoadRequest(); + ~SimpleLoadRequest() override = default; + + sead::SafeString mPath; + void* _30 = nullptr; +}; +KSYS_CHECK_SIZE_NX150(SimpleLoadRequest, 0x38); + +class SimplePackedLoadRequest : public ILoadRequest { + SEAD_RTTI_OVERRIDE(SimplePackedLoadRequest, ILoadRequest) +public: + SimplePackedLoadRequest(); + ~SimplePackedLoadRequest() override = default; + + Handle* mPack = nullptr; + void* _30 = nullptr; +}; +KSYS_CHECK_SIZE_NX150(SimplePackedLoadRequest, 0x30); + } // namespace ksys::res