diff options
| author | elijah-thomas774 <elijahthomas774@gmail.com> | 2024-03-17 17:40:00 -0400 |
|---|---|---|
| committer | elijah-thomas774 <elijahthomas774@gmail.com> | 2024-03-17 17:40:00 -0400 |
| commit | 606cc15eeda81fe26207ccab28e84a1ef40ec3fd (patch) | |
| tree | 69576d8441f2f0d1a70e8833ccc7a984784e4ebb /src/d | |
| parent | c2a4909bd2a9a23d73a65f6840e8c886658cef74 (diff) | |
some fManager, fBase, mHeap, f - lists and tree stuff
Diffstat (limited to 'src/d')
| -rw-r--r-- | src/d/a/d_a_base.cpp | 146 | ||||
| -rw-r--r-- | src/d/d_heap.cpp | 47 | ||||
| -rw-r--r-- | src/d/d_sys.cpp | 0 | ||||
| -rw-r--r-- | src/d/d_system.cpp | 0 |
4 files changed, 107 insertions, 86 deletions
diff --git a/src/d/a/d_a_base.cpp b/src/d/a/d_a_base.cpp index 5b3ad743..51705bd2 100644 --- a/src/d/a/d_a_base.cpp +++ b/src/d/a/d_a_base.cpp @@ -6,49 +6,35 @@ u32 dAcBase_c::s_Create_RoomId = -1; u32 dAcBase_c::s_Create_Params2 = -1; u16 dAcBase_c::s_Create_UnkFlags = -1; -u8 dAcBase_c::s_Create_ViewClipIdx = -1; +u8 dAcBase_c::s_Create_ViewClipIdx = -1; // .sbss -mVec3_c* dAcBase_c::s_Create_Position; -mAng3_c* dAcBase_c::s_Create_Rotation; -mVec3_c* dAcBase_c::s_Create_Scale; -dAcBase_c* dAcBase_c::s_Create_Parent; -ObjInfo* dAcBase_c::s_Create_ObjInfo; +mVec3_c *dAcBase_c::s_Create_Position; +mAng3_c *dAcBase_c::s_Create_Rotation; +mVec3_c *dAcBase_c::s_Create_Scale; +dAcBase_c *dAcBase_c::s_Create_Parent; +ObjInfo *dAcBase_c::s_Create_ObjInfo; u8 dAcBase_c::s_Create_Subtype; -extern "C" ObjInfo* getObjByActorIdAndSubtype_unkNamespace(ProfileName, u8); -extern "C" char* getObjectName_8006a730(ObjInfo*); -extern "C" void* soundForActorInitRelated_803889c0(s8, fBase_c*, char*, u8); +extern "C" ObjInfo *getObjByActorIdAndSubtype_unkNamespace(ProfileName, u8); +extern "C" char *getObjectName_8006a730(ObjInfo *); +extern "C" void *soundForActorInitRelated_803889c0(s8, fBase_c *, char *, u8); bool dAcBase_c::createHeap() { return true; } // Doesnt Match Yet -dAcBase_c::dAcBase_c() : - heap_allocator() , - obj_info(s_Create_ObjInfo), - sound_info_tail(&heap_allocator.mHeap), - sound_info_next(&heap_allocator.mHeap), - count(0), - obj_sound(nullptr), - obj_pos(&position), - params2(s_Create_Params2), - obj_id(s_Create_UnkFlags), - viewclip_index(s_Create_ViewClipIdx), - actor_node(), - roomid(s_Create_RoomId), - actor_subtype(s_Create_Subtype) -{ +dAcBase_c::dAcBase_c() + : heap_allocator(), obj_info(s_Create_ObjInfo), sound_info_tail(&heap_allocator.mHeap), + sound_info_next(&heap_allocator.mHeap), count(0), obj_sound(nullptr), obj_pos(&position), + params2(s_Create_Params2), obj_id(s_Create_UnkFlags), viewclip_index(s_Create_ViewClipIdx), actor_node(), + roomid(s_Create_RoomId), actor_subtype(s_Create_Subtype) { JStudio_actor = 0; someStr[0] = 0; if (s_Create_Position != nullptr) { // void set(f32 fx, f32 fy, f32 fz) { x = fx; y = fy; z = fz; } - position.set( - s_Create_Position->x, - s_Create_Position->y, - s_Create_Position->z - ); + position.set(s_Create_Position->x, s_Create_Position->y, s_Create_Position->z); // position = *s_Create_Position; } if (s_Create_Rotation != 0) { @@ -59,27 +45,23 @@ dAcBase_c::dAcBase_c() : } else { setScale(1.0, 1.0, 1.0); } - if (s_Create_Parent != 0){ + if (s_Create_Parent != 0) { setActorRef(s_Create_Parent); } - fProfile::fActorProfile_c* profile = (fProfile::fActorProfile_c*)((*fProfile::sProfileList)[profile_name]); + fProfile::fActorProfile_c *profile = (fProfile::fActorProfile_c *)((*fProfile::sProfileList)[profile_name]); actor_properties = profile->mActorProperties; if (obj_info == nullptr) { obj_info = getObjByActorIdAndSubtype_unkNamespace(profile_name, actor_subtype); } someStr[0] = '\0'; -} +} /* 8002c530 */ dBase_c::~dBase_c() {} dAcBase_c::~dAcBase_c() {} -void dAcBase_c::setTempCreateParams( \ - mVec3_c* pos, mAng3_c* rot, mVec3_c* scale, \ - s32 roomId, u32 params2, dAcBase_c* parent, \ - u8 subtype, s16 unkFlag, u8 viewClipIdx,\ - ObjInfo* objInfo ) -{ +void dAcBase_c::setTempCreateParams(mVec3_c *pos, mAng3_c *rot, mVec3_c *scale, s32 roomId, u32 params2, + dAcBase_c *parent, u8 subtype, s16 unkFlag, u8 viewClipIdx, ObjInfo *objInfo) { s_Create_Position = pos; s_Create_Rotation = rot; s_Create_Scale = scale; @@ -93,25 +75,25 @@ void dAcBase_c::setTempCreateParams( \ } // has regswap -void* dAcBase_c::FUN_8002c690() { +void *dAcBase_c::FUN_8002c690() { if (obj_info == nullptr) { return nullptr; } s8 unk_val = obj_info->unk_0xA; - if ( unk_val == -1) { + if (unk_val == -1) { return nullptr; } - char* objName = getObjectName_8006a730(obj_info); + char *objName = getObjectName_8006a730(obj_info); return soundForActorInitRelated_803889c0(unk_val, this, objName, subtype); } -int dAcBase_c::initAllocatorWork1Heap(int size, char* name, int align) { - initAllocator(size, name, dHeap::work1Heap, align); +int dAcBase_c::initAllocatorWork1Heap(int size, char *name, int align) { + return initAllocator(size, name, dHeap::work1Heap.heap, align); } -extern "C" int fn_802EE510(mAllocator_c*, int size, EGG::Heap* heap, char* name, int align, int unk); -int dAcBase_c::initAllocator(int size, char* name, EGG::Heap* heap, int align) { - if (fn_802EE510(&heap_allocator, size, heap, name, 0x20, 0) == 0){ +extern "C" int fn_802EE510(mAllocator_c *, int size, EGG::Heap *heap, char *name, int align, int unk); +int dAcBase_c::initAllocator(int size, char *name, EGG::Heap *heap, int align) { + if (fn_802EE510(&heap_allocator, size, heap, name, 0x20, 0) == 0) { return 0; } obj_sound = FUN_8002c690(); @@ -121,11 +103,11 @@ int dAcBase_c::initAllocator(int size, char* name, EGG::Heap* heap, int align) { } bool dAcBase_c::addActorToRoom(s32 roomId) { - dBase_c* room = RoomManager::getRoom(roomId); + dBase_c *room = RoomManager::getRoom(roomId); if (room == nullptr) { return false; } - if (setConnectChild(room)){ + if (setConnectChild(room)) { if (roomId == -1) { this->roomid = RoomManager::m_Instance->curr_room_id; } else { @@ -149,7 +131,7 @@ int dAcBase_c::create() { return actorPostCreate(); } int success = actorCreate(); - if (success == SUCCEEDED){ + if (success == SUCCEEDED) { success = NOT_READY; actor_properties |= 0x8000000; } @@ -159,15 +141,13 @@ int dAcBase_c::create() { void dAcBase_c::postCreate(fBase_c::MAIN_STATE_e state) { if (state == SUCCESS) { pos_copy = position; - rot_copy = rotation; + rot_copy = rotation; room_id_copy = roomid; } dBase_c::postCreate(state); } -int dAcBase_c::preDelete() { - -} +int dAcBase_c::preDelete() {} int dAcBase_c::preExecute() { if (dBase_c::preExecute() == NOT_READY) { @@ -185,10 +165,14 @@ int dAcBase_c::execute() {} int dAcBase_c::actorExecute() {} int dAcBase_c::actorExecuteInEvent() {} void dAcBase_c::postExecute(fBase_c::MAIN_STATE_e state) {} -void dAcBase_c::unkVirtFunc_0x5C() { return; } -void dAcBase_c::unkVirtFunc_0x60() { return; } +void dAcBase_c::unkVirtFunc_0x5C() { + return; +} +void dAcBase_c::unkVirtFunc_0x60() { + return; +} bool dAcBase_c::restorePosRotFromCopy() {} -u32 dAcBase_c::itemDroppingAndGivingRelated(Vec3f* spawnPos, int subtype) {} +u32 dAcBase_c::itemDroppingAndGivingRelated(Vec3f *spawnPos, int subtype) {} void dAcBase_c::fillUpperParams2Byte() {} u32 dAcBase_c::getParams2_ignoreLower() {} void dAcBase_c::setParams2Upper_ignoreLower(u32 val) {} @@ -196,29 +180,23 @@ u8 dAcBase_c::getParams2UpperByte() {} void dAcBase_c::setParams2UpperByte(u32 val) {} u32 dAcBase_c::buildParams2(u32 lower, u8 upper) {} u32 dAcBase_c::getParams2Lower() {} -dAcBase_c* dAcBase_c::findActor(char* objName, dAcBase_c* parent) {} +dAcBase_c *dAcBase_c::findActor(char *objName, dAcBase_c *parent) {} // searches for actor based on groupType -dAcBase_c* dAcBase_c::searchActor(dAcBase_c& optionalParent) {} +dAcBase_c *dAcBase_c::searchActor(dAcBase_c &optionalParent) {} -void dAcBase_c::forEachActor(void*, dAcBase_c&) {} +void dAcBase_c::forEachActor(void *, dAcBase_c &) {} mAng dAcBase_c::getXZAngleToPlayer() {} -bool dAcBase_c::getDistanceToActor(dAcBase_c& actor, f32 distThresh, f32* outDist) {} -bool dAcBase_c::getDistanceAndAngleToActor( \ - dAcBase_c& actor, f32 distThresh, s16 yAngle, s16 xAngle, \ - f32* outDist, s16* outDiffAngleY, s16* outDiffAngleX) -{ - -} +bool dAcBase_c::getDistanceToActor(dAcBase_c &actor, f32 distThresh, f32 *outDist) {} +bool dAcBase_c::getDistanceAndAngleToActor(dAcBase_c &actor, f32 distThresh, s16 yAngle, s16 xAngle, f32 *outDist, + s16 *outDiffAngleY, s16 *outDiffAngleX) {} bool dAcBase_c::isWithinPlayerRadius(f32 radius) {} -bool dAcBase_c::getDistanceAndAngleToPlayer( \ - f32 distThresh, s16 yAngle, s16 xAngle, \ - f32* outDist, s16* outDiffAngleY, s16* outDiffAngleX) -{ +bool dAcBase_c::getDistanceAndAngleToPlayer(f32 distThresh, s16 yAngle, s16 xAngle, f32 *outDist, s16 *outDiffAngleY, + s16 *outDiffAngleX) { // return getDistanceAndAngleToActor(PLAYER, distThresh, yAngle, xAngle, outDist, outDiffAngleY, outDiffAngleX); } f32 dAcBase_c::getDistToPlayer() {} -f32 dAcBase_c::getSquareDistToPlayer() {} +f32 dAcBase_c::getSquareDistToPlayer() {} void dAcBase_c::updateRoomId(f32 yOffs) {} bool dAcBase_c::isRoomFlags_0x6_Set() {} void dAcBase_c::FUN_8002d590() {} @@ -238,34 +216,30 @@ void dAcBase_c::FUN_8002d810() {} void dAcBase_c::FUN_8002d830() {} void dAcBase_c::FUN_8002d860() {} void dAcBase_c::FUN_8002d880() {} - // first param is not dAcBase_c +// first param is not dAcBase_c void dAcBase_c::FUN_8002d890() {} - // current name is Global__setActorRef -void dAcBase_c::setActorRef(dBase_c*) {} - // May not be only purpose +// current name is Global__setActorRef +void dAcBase_c::setActorRef(dBase_c *) {} +// May not be only purpose void dAcBase_c::setUnkFlag() {} void dAcBase_c::FUN_8002d940() {} void dAcBase_c::FUN_8002d960() {} // spawns GroupType2 (ACTOR) -dAcBase_c dAcBase_c::createActor( \ - ProfileName actorId, u32 params1, \ - Vec3f* pos, Vec3s* rot, Vec3f* scale, \ - u32 params2, s32 roomId, dBase_c* ref) {} +dAcBase_c dAcBase_c::createActor(ProfileName actorId, u32 params1, Vec3f *pos, Vec3s *rot, Vec3f *scale, u32 params2, + s32 roomId, dBase_c *ref) {} -dAcBase_c dAcBase_c::createActorUnkGroup3( \ - ProfileName actorId, u32 params1, \ - Vec3f* pos, Vec3s* rot, Vec3f* scale, \ - u32 params2, s32 roomId, dBase_c* ref) {} +dAcBase_c dAcBase_c::createActorUnkGroup3(ProfileName actorId, u32 params1, Vec3f *pos, Vec3s *rot, Vec3f *scale, + u32 params2, s32 roomId, dBase_c *ref) {} -void* dAcBase_c::getCurrentEventActor() {} +void *dAcBase_c::getCurrentEventActor() {} void dAcBase_c::unkVirtFunc_0x6C() {} void dAcBase_c::doInteraction(s32) {} -void dAcBase_c::FUN_8002dc20(s16*, s16*) {} +void dAcBase_c::FUN_8002dc20(s16 *, s16 *) {} void dAcBase_c::incrementKillCounter() {} void dAcBase_c::FUN_8002dcd0() {} void dAcBase_c::FUN_8002dd10() {} void dAcBase_c::FUN_8002dd50() {} void dAcBase_c::FUN_8002dd90() {} void dAcBase_c::FUN_8002ddd0() {} -void dAcBase_c::FUN_8002de30() {}
\ No newline at end of file +void dAcBase_c::FUN_8002de30() {} diff --git a/src/d/d_heap.cpp b/src/d/d_heap.cpp new file mode 100644 index 00000000..4bfa5e52 --- /dev/null +++ b/src/d/d_heap.cpp @@ -0,0 +1,47 @@ +#include <d/d_heap.h> + +dHeap dHeap::work1Heap; +dHeap dHeap::work2Heap; +dHeap dHeap::workExHeap; +dHeap dHeap::layoutHeap; +dHeap dHeap::layoutExHeap; +dHeap dHeap::layoutEx2Heap; +dHeap dHeap::layoutResHeap; +dHeap dHeap::fontHeap; +dHeap dHeap::HBMHeap; + +EGG::ExpHeap *dHeap::init(const char *name, size_t size, EGG::Heap *parent) { + heap = EGG::ExpHeap::create(size, parent, 4); + if (heap != nullptr) { + heap->setGroupID(0); + heap->mName = name; + } + return heap; +} +void dHeap::createWork1Heap(size_t size, EGG::Heap *parent) { + work1Heap.init("ゲーム用作業用ヒープ(dHeap::work1Heap)", size, parent); +} +void dHeap::createWork2Heap(size_t size, EGG::Heap *parent) { + work2Heap.init("ゲーム用作業用ヒープ(dHeap::work2Heap)", size, parent); +} +void dHeap::createWorkExHeap(size_t size, EGG::Heap *parent) { + workExHeap.init("ゲーム用拡張作業用ヒープ(dHeap::workExHeap)", size, parent); +} +void dHeap::createLayoutHeap(size_t size, EGG::Heap *parent) { + layoutHeap.init("レイアウト作業用ヒープ(dHeap::layoutHeap)", size, parent); +} +void dHeap::createLayoutExHeap(size_t size, EGG::Heap *parent) { + layoutExHeap.init("レイアウト拡張作業用ヒープ(dHeap::layoutExHeap)", size, parent); +} +void dHeap::createLayoutEx2Heap(size_t size, EGG::Heap *parent) { + layoutEx2Heap.init("レイアウト拡張作業用ヒープ2(dHeap::layoutEx2Heap)", size, parent); +} +void dHeap::createLayoutResHeap(size_t size, EGG::Heap *parent) { + layoutResHeap.init("レイアウトリソース用ヒープ(dHeap::layoutResHeap)", size, parent); +} +void dHeap::createFontHeap(size_t size, EGG::Heap *parent) { + fontHeap.init("フォント用ヒープ(dHeap::fontHeap)", size, parent); +} +void dHeap::createHBMHeap(size_t size, EGG::Heap *parent) { + HBMHeap.init("HBM用ヒープ(dHeap::HBMHeap)", size, parent); +} diff --git a/src/d/d_sys.cpp b/src/d/d_sys.cpp new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/src/d/d_sys.cpp diff --git a/src/d/d_system.cpp b/src/d/d_system.cpp new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/src/d/d_system.cpp |
