From 6f4fae57dabe10a9a0528a7b2346cef0ea10d392 Mon Sep 17 00:00:00 2001 From: robojumper Date: Thu, 8 May 2025 17:06:38 +0200 Subject: [PATCH] jstudio-object OK (#2427) * jstudio-object checkpoint * jstudio-object OK * Small debug improvements --- configure.py | 2 +- .../JSystem/JStudio/JStudio/jstudio-object.h | 115 +- include/JSystem/JStudio/JStudio/object-id.h | 1 + .../JStudio/JStudio/jstudio-object.cpp | 2753 ++++++----------- 4 files changed, 998 insertions(+), 1873 deletions(-) diff --git a/configure.py b/configure.py index 04967656f7f..e207dcd7cea 100755 --- a/configure.py +++ b/configure.py @@ -804,7 +804,7 @@ config.libs = [ Object(MatchingFor("GZ2E01"), "JSystem/JStudio/JStudio/jstudio-control.cpp"), Object(MatchingFor("GZ2E01"), "JSystem/JStudio/JStudio/jstudio-data.cpp"), Object(MatchingFor("GZ2E01"), "JSystem/JStudio/JStudio/jstudio-math.cpp"), - Object(NonMatching, "JSystem/JStudio/JStudio/jstudio-object.cpp"), + Object(MatchingFor("GZ2E01"), "JSystem/JStudio/JStudio/jstudio-object.cpp", extra_cflags=['-pragma "sym off"']), Object(MatchingFor("GZ2E01"), "JSystem/JStudio/JStudio/object-id.cpp"), Object(MatchingFor("GZ2E01"), "JSystem/JStudio/JStudio/stb.cpp"), Object(MatchingFor("GZ2E01"), "JSystem/JStudio/JStudio/stb-data-parse.cpp"), diff --git a/include/JSystem/JStudio/JStudio/jstudio-object.h b/include/JSystem/JStudio/JStudio/jstudio-object.h index 4ece3fbab1c..e7181f4ae04 100644 --- a/include/JSystem/JStudio/JStudio/jstudio-object.h +++ b/include/JSystem/JStudio/JStudio/jstudio-object.h @@ -15,6 +15,7 @@ namespace data { UNK_0x2 = 0x2, UNK_0x3 = 0x3, UNK_0x10 = 0x10, + UNK_0x11 = 0x11, UNK_0x12 = 0x12, UNK_0x18 = 0x18, UNK_0x19 = 0x19, @@ -46,6 +47,9 @@ struct TVariableValue { } void setValue_none() { +#ifdef DEBUG + field_0xc.fv = NULL; +#endif field_0x8 = NULL; } @@ -65,19 +69,21 @@ struct TVariableValue { template T getValue_clamp() const { - f32 val = mValue; - if (val <= std::numeric_limits::min()) { - return std::numeric_limits::min(); - } else if (val >= std::numeric_limits::max()) { - return std::numeric_limits::max(); + u8 min = std::numeric_limits::min(); + u8 max = std::numeric_limits::max(); + if (mValue <= min) { + return (T)min; + } else if (mValue >= max) { + return (T)max; } - return val; + return mValue; } u8 getValue_uint8() const { return getValue_clamp(); } void forward(u32 param_0) { - if (std::numeric_limits::max() - field_0x4 <= param_0) { - field_0x4 = std::numeric_limits::max(); + u32 max = std::numeric_limits::max(); + if (max - field_0x4 <= param_0) { + field_0x4 = max; } else { field_0x4 += param_0; } @@ -147,7 +153,7 @@ struct TAdaptor { TAdaptor(TVariableValue *param_1, u32 param_2) { pObject_ = NULL; pValue_ = param_1; - u = param_2; + uvv_ = param_2; } /* 80285FD0 */ virtual ~TAdaptor() = 0; /* 80286018 */ virtual void adaptor_do_prepare(); @@ -193,15 +199,16 @@ struct TAdaptor { adaptor_referVariableValue(param_0)->setValue_immediate(param_1); } - const TVariableValue* adaptor_getVariableValue(u32 param_0) const { - return &pValue_[param_0]; + const TVariableValue* adaptor_getVariableValue(u32 u) const { + JUT_ASSERT(293, u +class TOutputVariableValue_BOOL_ : public JStudio::TVariableValue::TOutput { +public: + typedef void (T::*Func)(JStudio::data::TEOperationData, const void*, u32); + + TOutputVariableValue_BOOL_(Func f) : mFunc(f) {} + virtual void operator()(f32 f, JStudio::TAdaptor* adaptor) const { + BOOL value = 0; + if (f >= 0.5f) { + value = 1; + } + (static_cast(adaptor)->*mFunc)(data::UNK_0x2, &value, 4); + } + virtual ~TOutputVariableValue_BOOL_() {} + +private: + Func mFunc; +}; + +/* 8043101C-8043102C 05DD3C 0010+00 1/2 0/0 0/0 .bss + * soovv_actor_PARENT_ENABLE___Q27JStudio28@unnamed@jstudio_object_cpp@ */ +TOutputVariableValue_BOOL_ + soovv_actor_PARENT_ENABLE_(&JStudio::TAdaptor_actor::adaptor_do_PARENT_ENABLE); +/* 80431038-80431048 05DD58 0010+00 1/2 0/0 0/0 .bss + * soovv_actor_RELATION_ENABLE___Q27JStudio28@unnamed@jstudio_object_cpp@ */ +TOutputVariableValue_BOOL_ + soovv_actor_RELATION_ENABLE_(&JStudio::TAdaptor_actor::adaptor_do_RELATION_ENABLE); + +/* 80431054-80431064 05DD74 0010+00 1/2 0/0 0/0 .bss + * soovv_camera_PARENT_ENABLE___Q27JStudio28@unnamed@jstudio_object_cpp@ */ +TOutputVariableValue_BOOL_ + soovv_camera_PARENT_ENABLE_(&JStudio::TAdaptor_camera::adaptor_do_PARENT_ENABLE); +/* 80431070-80431080 05DD90 0010+00 1/2 0/0 0/0 .bss + * soovv_camera_TARGET_PARENT_ENABLE___Q27JStudio28@unnamed@jstudio_object_cpp@ */ +TOutputVariableValue_BOOL_ + soovv_camera_TARGET_PARENT_ENABLE_(&JStudio::TAdaptor_camera::adaptor_do_TARGET_PARENT_ENABLE); + +/* 8043108C-8043109C 05DDAC 0010+00 1/2 0/0 0/0 .bss + * soovv_light_ENABLE___Q27JStudio28@unnamed@jstudio_object_cpp@ */ +TOutputVariableValue_BOOL_ + soovv_light_ENABLE_(&JStudio::TAdaptor_light::adaptor_do_ENABLE); + +/* 804310A8-804310B8 05DDC8 0010+00 0/1 0/0 0/0 .bss + * soovv_particle_PARENT_ENABLE___Q27JStudio28@unnamed@jstudio_object_cpp@ */ +TOutputVariableValue_BOOL_ + soovv_particle_PARENT_ENABLE_(&JStudio::TAdaptor_particle::adaptor_do_PARENT_ENABLE); +/* 804310C4-804310D4 05DDE4 0010+00 0/1 0/0 0/0 .bss + * soovv_particle_REPEAT___Q27JStudio28@unnamed@jstudio_object_cpp@ */ +TOutputVariableValue_BOOL_ + soovv_particle_REPEAT_(&JStudio::TAdaptor_particle::adaptor_do_REPEAT); +/* 804310E0-804310F0 05DE00 0010+00 0/1 0/0 0/0 .bss + * soovv_particle_ON_EXIT_NOT_END___Q27JStudio28@unnamed@jstudio_object_cpp@ */ +TOutputVariableValue_BOOL_ + soovv_particle_ON_EXIT_NOT_END_(&JStudio::TAdaptor_particle::adaptor_do_ON_EXIT_NOT_END); + +/* 804310FC-8043110C 05DE1C 0010+00 0/1 0/0 0/0 .bss + * soovv_sound_PARENT_ENABLE___Q27JStudio28@unnamed@jstudio_object_cpp@ */ +TOutputVariableValue_BOOL_ + soovv_sound_PARENT_ENABLE_(&JStudio::TAdaptor_sound::adaptor_do_PARENT_ENABLE); +/* 80431118-80431128 05DE38 0010+00 0/1 0/0 0/0 .bss + * soovv_sound_REPEAT___Q27JStudio28@unnamed@jstudio_object_cpp@ */ +TOutputVariableValue_BOOL_ + soovv_sound_REPEAT_(&JStudio::TAdaptor_sound::adaptor_do_REPEAT); +/* 80431134-80431144 05DE54 0010+00 0/1 0/0 0/0 .bss + * soovv_sound_CONTINUOUS___Q27JStudio28@unnamed@jstudio_object_cpp@ */ +TOutputVariableValue_BOOL_ + soovv_sound_CONTINUOUS_(&JStudio::TAdaptor_sound::adaptor_do_CONTINUOUS); +/* 80431150-80431160 05DE70 0010+00 0/1 0/0 0/0 .bss + * soovv_sound_LOCATED___Q27JStudio28@unnamed@jstudio_object_cpp@ */ +TOutputVariableValue_BOOL_ + soovv_sound_LOCATED_(&JStudio::TAdaptor_sound::adaptor_do_LOCATED); +/* 8043116C-8043117C 05DE8C 0010+00 0/1 0/0 0/0 .bss + * soovv_sound_ON_EXIT_NOT_END___Q27JStudio28@unnamed@jstudio_object_cpp@ */ +TOutputVariableValue_BOOL_ + soovv_sound_ON_EXIT_NOT_END_(&JStudio::TAdaptor_sound::adaptor_do_ON_EXIT_NOT_END); +}; // namespace +}; // namespace JStudio /* 80285E0C-80285E54 28074C 0048+00 6/6 11/11 0/0 .text __dt__Q37JStudio14TVariableValue7TOutputFv */ -JStudio::TVariableValue::TOutput::~TOutput() { - // NONMATCHING -} +JStudio::TVariableValue::TOutput::~TOutput() {} /* 80285E54-80285EB8 280794 0064+00 1/1 0/0 0/0 .text * update__Q27JStudio14TVariableValueFdPQ27JStudio8TAdaptor */ @@ -1330,10 +107,6 @@ void JStudio::TVariableValue::update_immediate_(JStudio::TVariableValue* param_0 param_0->field_0x8 = NULL; } -/* ############################################################################################## */ -/* 804554A0-804554A8 003AA0 0008+00 3/3 0/0 0/0 .sdata2 @803 */ -SECTION_SDATA2 static f64 lit_803 = 4503599627370496.0 /* cast u32 to float */; - /* 80285ECC-80285F08 28080C 003C+00 1/1 0/0 0/0 .text * update_time___Q27JStudio14TVariableValueFPQ27JStudio14TVariableValued */ void JStudio::TVariableValue::update_time_(JStudio::TVariableValue* param_0, f64 param_1) { @@ -1349,9 +122,7 @@ void JStudio::TVariableValue::update_functionValue_(JStudio::TVariableValue* par /* 80285F6C-80285FCC 2808AC 0060+00 2/1 0/0 0/0 .text * __dt__Q37JStudio14TVariableValue13TOutput_none_Fv */ -JStudio::TVariableValue::TOutput_none_::~TOutput_none_() { - // NONMATCHING -} +JStudio::TVariableValue::TOutput_none_::~TOutput_none_() {} /* 80285FCC-80285FD0 28090C 0004+00 1/0 0/0 0/0 .text * __cl__Q37JStudio14TVariableValue13TOutput_none_CFfPQ27JStudio8TAdaptor */ @@ -1363,9 +134,13 @@ void JStudio::TVariableValue::TOutput_none_::operator()(f32 param_0, /* 80285FD0-80286018 280910 0048+00 8/8 0/0 0/0 .text __dt__Q27JStudio8TAdaptorFv */ JStudio::TAdaptor::~TAdaptor() {} +const char *JStudio::TAdaptor::adaptor_getID_string() const { + return pObject_ != NULL ? (const char*)pObject_->getID() : "(unnamed)"; +} + /* 80286018-8028601C 280958 0004+00 8/0 2/0 0/0 .text adaptor_do_prepare__Q27JStudio8TAdaptorFv */ // void JStudio::TAdaptor::adaptor_do_prepare() { -extern "C" void adaptor_do_prepare__Q27JStudio8TAdaptorFv() { +void JStudio::TAdaptor::adaptor_do_prepare() { /* empty function */ } @@ -1465,11 +240,12 @@ void JStudio::TAdaptor::adaptor_setVariableValue_n(JStudio::TControl* pControl, * adaptor_setVariableValue_immediate__Q27JStudio8TAdaptorFPCQ37JStudio8TAdaptor27TSetVariableValue_immediate */ void JStudio::TAdaptor::adaptor_setVariableValue_immediate( - JStudio::TAdaptor::TSetVariableValue_immediate const* param_0) { + JStudio::TAdaptor::TSetVariableValue_immediate const* p) { + JUT_ASSERT(388, p!=NULL); u32 uVar1; - while ((uVar1 = param_0->field_0x0) != 0xffffffff) { - adaptor_setVariableValue_immediate(uVar1, param_0->field_0x4); - param_0++; + while ((uVar1 = p->field_0x0) != 0xffffffff) { + adaptor_setVariableValue_immediate(uVar1, p->field_0x4); + p++; } } @@ -1516,7 +292,7 @@ void JStudio::TAdaptor::adaptor_getVariableValue_GXColor(GXColor* param_1, void JStudio::TAdaptor::adaptor_updateVariableValue(JStudio::TControl* pControl, u32 param_2) { JUT_ASSERT(479, pControl!=0); f64 dVar3 = pControl->getSecondPerFrame(); - JGadget::TEnumerator enumerator(pValue_, pValue_ + u); + JGadget::TEnumerator enumerator(pValue_, pValue_ + uvv_); while (enumerator) { JStudio::TVariableValue* value = *enumerator; value->forward(param_2); @@ -1589,7 +365,6 @@ void JStudio::TObject::forward_value(u32 param_0) { } /* 8028679C-802867D4 2810DC 0038+00 9/0 0/0 0/0 .text do_begin__Q27JStudio7TObjectFv */ -// NONMATCHING void JStudio::TObject::do_begin() { TAdaptor* adaptor = getAdaptor(); if (adaptor != NULL) { @@ -1627,7 +402,6 @@ JStudio::TObject::TObject(JStudio::stb::data::TParse_TBlock_object const& param_ /* 802868B0-80286910 2811F0 0060+00 0/0 1/1 0/0 .text __dt__Q27JStudio14TAdaptor_actorFv */ -// NONMATCHING JStudio::TAdaptor_actor::~TAdaptor_actor() { } @@ -1642,40 +416,162 @@ JStudio::TObject_actor::TObject_actor(JStudio::stb::data::TParse_TBlock_object c /* ############################################################################################## */ /* 8039AA68-8039AA74 0270C8 000C+00 3/3 2/2 0/0 .rodata * sauVariableValue_3_TRANSLATION_XYZ__Q27JStudio14TAdaptor_actor */ -SECTION_RODATA u32 const JStudio::TAdaptor_actor::sauVariableValue_3_TRANSLATION_XYZ[3] = { +u32 const JStudio::TAdaptor_actor::sauVariableValue_3_TRANSLATION_XYZ[3] = { 3, 4, 5, }; -COMPILER_STRIP_GATE(0x8039AA68, &JStudio::TAdaptor_actor::sauVariableValue_3_TRANSLATION_XYZ); -/* 80431010-8043101C 05DD30 000C+00 3/3 0/0 0/0 .bss @744 */ -static u8 lit_744[12]; +/* ############################################################################################## */ +/* 8039AA74-8039AA80 0270D4 000C+00 0/0 2/2 0/0 .rodata + * sauVariableValue_3_ROTATION_XYZ__Q27JStudio14TAdaptor_actor */ + u32 const JStudio::TAdaptor_actor::sauVariableValue_3_ROTATION_XYZ[3] = { + 6, 7, 8, +}; -/* 8043101C-8043102C 05DD3C 0010+00 1/2 0/0 0/0 .bss - * soovv_actor_PARENT_ENABLE___Q27JStudio28@unnamed@jstudio_object_cpp@ */ -static u8 data_8043101C[16]; - -/* 8043102C-80431038 05DD4C 000C+00 0/1 0/0 0/0 .bss @747 */ -#pragma push -#pragma force_active on -static u8 lit_747[12]; -#pragma pop - -/* 80431038-80431048 05DD58 0010+00 1/2 0/0 0/0 .bss - * soovv_actor_RELATION_ENABLE___Q27JStudio28@unnamed@jstudio_object_cpp@ */ -static u8 data_80431038[16]; +/* 8039AA80-8039AA8C 0270E0 000C+00 0/0 2/2 0/0 .rodata + * sauVariableValue_3_SCALING_XYZ__Q27JStudio14TAdaptor_actor */ +u32 const JStudio::TAdaptor_actor::sauVariableValue_3_SCALING_XYZ[3] = { + 9, 10, 11, +}; /* 804511F0-804511F8 0006F0 0004+04 6/6 6/6 0/0 .sbss soOutput_none___Q27JStudio14TVariableValue */ -JStudio::TVariableValue::TOutput_none_ JStudio::TVariableValue::soOutput_none_; + JStudio::TVariableValue::TOutput_none_ JStudio::TVariableValue::soOutput_none_; /* 8028694C-80286C9C 28128C 0350+00 2/0 0/0 0/0 .text * do_paragraph__Q27JStudio13TObject_actorFUlPCvUl */ -void JStudio::TObject_actor::do_paragraph(u32 param_0, void const* param_1, u32 param_2) { - // NONMATCHING +void JStudio::TObject_actor::do_paragraph(u32 param_1, void const* param_2, u32 param_3) { + TAdaptor* adaptor = getAdaptor(); + TControl* control; + if (adaptor == NULL) { + return; + } + typedef void (TAdaptor_actor::*actorParagraphFunc)(JStudio::data::TEOperationData, const void*, u32); + + control = getControl(); + u32 uVar1 = (param_1 >> 5); + data::TEOperationData operation = (data::TEOperationData)(param_1 &= 0x1F); + u32 u; + const u32* pN; + actorParagraphFunc pmfn_ = NULL; + TVariableValue::TOutput *pOutput; + switch (uVar1) { + case 57: + pmfn_ = &TAdaptor_actor::adaptor_do_SHAPE; + goto fun; + case 58: + pmfn_ = &TAdaptor_actor::adaptor_do_ANIMATION; + goto fun; + case 67: + pmfn_ = &TAdaptor_actor::adaptor_do_ANIMATION_MODE; + goto fun; + case 76: + pmfn_ = &TAdaptor_actor::adaptor_do_TEXTURE_ANIMATION; + goto fun; + case 78: + pmfn_ = &TAdaptor_actor::adaptor_do_TEXTURE_ANIMATION_MODE; + goto fun; + case 48: + pmfn_ = &TAdaptor_actor::adaptor_do_PARENT; + goto fun; + case 49: + pmfn_ = &TAdaptor_actor::adaptor_do_PARENT_NODE; + goto fun; + case 50: + pmfn_ = &TAdaptor_actor::adaptor_do_PARENT_ENABLE; + u = 12; + pOutput = &JStudio::soovv_actor_PARENT_ENABLE_; + goto value_or_fun; + case 81: + pmfn_ = &TAdaptor_actor::adaptor_do_PARENT_FUNCTION; + goto fun; + case 51: + pmfn_ = &TAdaptor_actor::adaptor_do_RELATION; + goto fun; + case 52: + pmfn_ = &TAdaptor_actor::adaptor_do_RELATION_NODE; + goto fun; + case 53: + pmfn_ = &TAdaptor_actor::adaptor_do_RELATION_ENABLE; + u = 13; + pOutput = &JStudio::soovv_actor_RELATION_ENABLE_; + goto value_or_fun; + case 59: + u = 0; + goto value; + case 75: + u = 1; + goto value; + case 9: + u = 3; + goto value; + case 10: + u = 4; + goto value; + case 11: + u = 5; + goto value; + case 13: + u = 6; + goto value; + case 14: + u = 7; + goto value; + case 15: + u = 8; + goto value; + case 17: + u = 9; + goto value; + case 18: + u = 10; + goto value; + case 19: + u = 11; + goto value; + case 12: + pN = TAdaptor_actor::sauVariableValue_3_TRANSLATION_XYZ; + u = 3; + goto value_n; + case 16: + pN = TAdaptor_actor::sauVariableValue_3_ROTATION_XYZ; + u = 3; + goto value_n; + case 20: + pN = TAdaptor_actor::sauVariableValue_3_SCALING_XYZ; + u = 3; + goto value_n; + default: + return; + } + +value_or_fun: + switch (operation) { + case data::UNK_0x10: + case data::UNK_0x11: + case data::UNK_0x12: + adaptor->adaptor_setVariableValue(control, u, operation, param_2, param_3); + adaptor->adaptor_referVariableValue(u)->setOutput(pOutput); + break; + default: + (((TAdaptor_actor*)adaptor)->*pmfn_)(operation, param_2, param_3); + break; + } + return; + +value: + adaptor->adaptor_setVariableValue(control, u, operation, param_2, param_3); + return; + +value_n: + adaptor->adaptor_setVariableValue_n(control, pN, u, operation, param_2, param_3); + return; + +fun: + (((TAdaptor_actor*)adaptor)->*pmfn_)(operation, param_2, param_3); + return; } /* 80286C9C-80286CFC 2815DC 0060+00 0/0 1/1 0/0 .text __dt__Q27JStudio21TAdaptor_ambientLightFv */ -// NONMATCHING JStudio::TAdaptor_ambientLight::~TAdaptor_ambientLight() {} /* 80286CFC-80286D38 28163C 003C+00 0/0 1/1 0/0 .text @@ -1686,45 +582,69 @@ JStudio::TObject_ambientLight::TObject_ambientLight( JStudio::TAdaptor_ambientLight* param_1) : TObject(param_0, param_1) { } -/* ############################################################################################## */ -/* 8039AA74-8039AA80 0270D4 000C+00 0/0 2/2 0/0 .rodata - * sauVariableValue_3_ROTATION_XYZ__Q27JStudio14TAdaptor_actor */ -SECTION_RODATA u32 const JStudio::TAdaptor_actor::sauVariableValue_3_ROTATION_XYZ[3] = { - 6, 7, 8, -}; -COMPILER_STRIP_GATE(0x8039AA74, &JStudio::TAdaptor_actor::sauVariableValue_3_ROTATION_XYZ); - -/* 8039AA80-8039AA8C 0270E0 000C+00 0/0 2/2 0/0 .rodata - * sauVariableValue_3_SCALING_XYZ__Q27JStudio14TAdaptor_actor */ -SECTION_RODATA u32 const JStudio::TAdaptor_actor::sauVariableValue_3_SCALING_XYZ[3] = { - 9, 10, 11, -}; -COMPILER_STRIP_GATE(0x8039AA80, &JStudio::TAdaptor_actor::sauVariableValue_3_SCALING_XYZ); - /* 8039AA8C-8039AA98 0270EC 000C+00 1/1 0/0 0/0 .rodata * sauVariableValue_3_COLOR_RGB__Q27JStudio21TAdaptor_ambientLight */ -SECTION_RODATA u32 const JStudio::TAdaptor_ambientLight::sauVariableValue_3_COLOR_RGB[3] = { +u32 const JStudio::TAdaptor_ambientLight::sauVariableValue_3_COLOR_RGB[3] = { 0, 1, 2, }; -COMPILER_STRIP_GATE(0x8039AA8C, &JStudio::TAdaptor_ambientLight::sauVariableValue_3_COLOR_RGB); /* 8039AA98-8039AAA8 0270F8 0010+00 1/1 2/2 0/0 .rodata * sauVariableValue_4_COLOR_RGBA__Q27JStudio21TAdaptor_ambientLight */ -SECTION_RODATA u32 const JStudio::TAdaptor_ambientLight::sauVariableValue_4_COLOR_RGBA[4] = { +u32 const JStudio::TAdaptor_ambientLight::sauVariableValue_4_COLOR_RGBA[4] = { 0, 1, 2, 3, }; -COMPILER_STRIP_GATE(0x8039AA98, &JStudio::TAdaptor_ambientLight::sauVariableValue_4_COLOR_RGBA); /* 80286D38-80286E1C 281678 00E4+00 1/0 0/0 0/0 .text * do_paragraph__Q27JStudio20TObject_ambientLightFUlPCvUl */ -void JStudio::TObject_ambientLight::do_paragraph(u32 param_0, void const* param_1, - u32 param_2) { - // NONMATCHING +void JStudio::TObject_ambientLight::do_paragraph(u32 param_1, void const* param_2, + u32 param_3) { + TAdaptor* adaptor = getAdaptor(); + TControl* control; + if (adaptor == NULL) { + return; + } + + control = getControl(); + u32 uVar1 = (param_1 >> 5); + data::TEOperationData operation = (data::TEOperationData)(param_1 &= 0x1F); + u32 u; + const u32* pN; + switch (uVar1) { + case 29: + u = 0; + goto value; + case 30: + u = 1; + goto value; + case 31: + u = 2; + goto value; + case 32: + u = 3; + goto value; + case 33: + pN = TAdaptor_ambientLight::sauVariableValue_3_COLOR_RGB; + u = 3; + goto value_n; + case 34: + pN = TAdaptor_ambientLight::sauVariableValue_4_COLOR_RGBA; + u = 4; + goto value_n; + default: + return; + } + +value: + adaptor->adaptor_setVariableValue(control, u, operation, param_2, param_3); + return; + +value_n: + adaptor->adaptor_setVariableValue_n(control, pN, u, operation, param_2, param_3); + return; } /* 80286E1C-80286E7C 28175C 0060+00 0/0 1/1 0/0 .text __dt__Q27JStudio15TAdaptor_cameraFv */ -// NONMATCHING JStudio::TAdaptor_camera::~TAdaptor_camera() {} /* 80286E7C-80286EB8 2817BC 003C+00 0/0 1/1 0/0 .text @@ -1737,52 +657,139 @@ JStudio::TObject_camera::TObject_camera(JStudio::stb::data::TParse_TBlock_object /* ############################################################################################## */ /* 8039AAA8-8039AAB4 027108 000C+00 1/1 2/2 0/0 .rodata * sauVariableValue_3_POSITION_XYZ__Q27JStudio15TAdaptor_camera */ -SECTION_RODATA u32 const JStudio::TAdaptor_camera::sauVariableValue_3_POSITION_XYZ[3] = { +u32 const JStudio::TAdaptor_camera::sauVariableValue_3_POSITION_XYZ[3] = { 0, 1, 2, }; -COMPILER_STRIP_GATE(0x8039AAA8, &JStudio::TAdaptor_camera::sauVariableValue_3_POSITION_XYZ); /* 8039AAB4-8039AAC0 027114 000C+00 1/1 2/2 0/0 .rodata * sauVariableValue_3_TARGET_POSITION_XYZ__Q27JStudio15TAdaptor_camera */ -SECTION_RODATA u32 const JStudio::TAdaptor_camera::sauVariableValue_3_TARGET_POSITION_XYZ[3] = { +u32 const JStudio::TAdaptor_camera::sauVariableValue_3_TARGET_POSITION_XYZ[3] = { 3, 4, 5, }; -COMPILER_STRIP_GATE(0x8039AAB4, &JStudio::TAdaptor_camera::sauVariableValue_3_TARGET_POSITION_XYZ); - -/* 80431048-80431054 05DD68 000C+00 0/1 0/0 0/0 .bss @750 */ -#pragma push -#pragma force_active on -static u8 lit_750[12]; -#pragma pop - -/* 80431054-80431064 05DD74 0010+00 1/2 0/0 0/0 .bss - * soovv_camera_PARENT_ENABLE___Q27JStudio28@unnamed@jstudio_object_cpp@ */ -static u8 data_80431054[16]; - -/* 80431064-80431070 05DD84 000C+00 0/1 0/0 0/0 .bss @753 */ -#pragma push -#pragma force_active on -static u8 lit_753[12]; -#pragma pop - -/* 80431070-80431080 05DD90 0010+00 1/2 0/0 0/0 .bss - * soovv_camera_TARGET_PARENT_ENABLE___Q27JStudio28@unnamed@jstudio_object_cpp@ */ -static u8 data_80431070[16]; /* 804554B0-804554B8 003AB0 0008+00 1/1 0/0 0/0 .sdata2 * sauVariableValue_2_DISTANCE_NEAR_FAR__Q27JStudio15TAdaptor_camera */ -SECTION_SDATA2 u32 JStudio::TAdaptor_camera::sauVariableValue_2_DISTANCE_NEAR_FAR[2] = { +u32 const JStudio::TAdaptor_camera::sauVariableValue_2_DISTANCE_NEAR_FAR[2] = { 8, 9, }; /* 80286EB8-8028717C 2817F8 02C4+00 2/0 0/0 0/0 .text * do_paragraph__Q27JStudio14TObject_cameraFUlPCvUl */ -void JStudio::TObject_camera::do_paragraph(u32 param_0, void const* param_1, u32 param_2) { - // NONMATCHING +void JStudio::TObject_camera::do_paragraph(u32 param_1, void const* param_2, u32 param_3) { + TAdaptor* adaptor = getAdaptor(); + TControl* control; + if (adaptor == NULL) { + return; + } + typedef void (TAdaptor_camera::*cameraParagraphFunc)(JStudio::data::TEOperationData, const void*, u32); + + control = getControl(); + u32 uVar1 = (param_1 >> 5); + data::TEOperationData operation = (data::TEOperationData)(param_1 &= 0x1F); + u32 u; + const u32* pN; + cameraParagraphFunc pmfn_ = NULL; + TVariableValue::TOutput *pOutput; + switch (uVar1) { + case 48: + pmfn_ = &TAdaptor_camera::adaptor_do_PARENT; + goto fun; + case 49: + pmfn_ = &TAdaptor_camera::adaptor_do_PARENT_NODE; + goto fun; + case 50: + pmfn_ = &TAdaptor_camera::adaptor_do_PARENT_ENABLE; + u = 10; + pOutput = &JStudio::soovv_camera_PARENT_ENABLE_; + goto value_or_fun; + case 81: + pmfn_ = &TAdaptor_camera::adaptor_do_PARENT_FUNCTION; + goto fun; + case 82: + pmfn_ = &TAdaptor_camera::adaptor_do_TARGET_PARENT; + goto fun; + case 83: + pmfn_ = &TAdaptor_camera::adaptor_do_TARGET_PARENT_NODE; + goto fun; + case 84: + pmfn_ = &TAdaptor_camera::adaptor_do_TARGET_PARENT_ENABLE; + u = 11; + pOutput = &JStudio::soovv_camera_TARGET_PARENT_ENABLE_; + goto value_or_fun; + case 21: + u = 0; + goto value; + case 22: + u = 1; + goto value; + case 23: + u = 2; + goto value; + case 25: + u = 3; + goto value; + case 26: + u = 4; + goto value; + case 27: + u = 5; + goto value; + case 39: + u = 6; + goto value; + case 38: + u = 7; + goto value; + case 40: + u = 8; + goto value; + case 41: + u = 9; + goto value; + case 24: + pN = TAdaptor_camera::sauVariableValue_3_POSITION_XYZ; + u = 3; + goto value_n; + case 28: + pN = TAdaptor_camera::sauVariableValue_3_TARGET_POSITION_XYZ; + u = 3; + goto value_n; + case 42: + pN = TAdaptor_camera::sauVariableValue_2_DISTANCE_NEAR_FAR; + u = 2; + goto value_n; + default: + return; + } + +value_or_fun: + switch (operation) { + case data::UNK_0x10: + case data::UNK_0x11: + case data::UNK_0x12: + adaptor->adaptor_setVariableValue(control, u, operation, param_2, param_3); + adaptor->adaptor_referVariableValue(u)->setOutput(pOutput); + break; + default: + (((TAdaptor_camera*)adaptor)->*pmfn_)(operation, param_2, param_3); + break; + } + return; + +value: + adaptor->adaptor_setVariableValue(control, u, operation, param_2, param_3); + return; + +value_n: + adaptor->adaptor_setVariableValue_n(control, pN, u, operation, param_2, param_3); + return; + +fun: + (((TAdaptor_camera*)adaptor)->*pmfn_)(operation, param_2, param_3); + return; } /* 8028717C-802871DC 281ABC 0060+00 0/0 1/1 0/0 .text __dt__Q27JStudio12TAdaptor_fogFv */ -// NONMATCHING JStudio::TAdaptor_fog::~TAdaptor_fog() {} /* 802871DC-80287218 281B1C 003C+00 0/0 1/1 0/0 .text @@ -1794,33 +801,82 @@ JStudio::TObject_fog::TObject_fog(JStudio::stb::data::TParse_TBlock_object const /* ############################################################################################## */ /* 8039AAC0-8039AACC 027120 000C+00 1/1 0/0 0/0 .rodata * sauVariableValue_3_COLOR_RGB__Q27JStudio12TAdaptor_fog */ -SECTION_RODATA u32 const JStudio::TAdaptor_fog::sauVariableValue_3_COLOR_RGB[3] = { +u32 const JStudio::TAdaptor_fog::sauVariableValue_3_COLOR_RGB[3] = { 0, 1, 2, }; -COMPILER_STRIP_GATE(0x8039AAC0, &JStudio::TAdaptor_fog::sauVariableValue_3_COLOR_RGB); /* 8039AACC-8039AADC 02712C 0010+00 1/1 2/2 0/0 .rodata * sauVariableValue_4_COLOR_RGBA__Q27JStudio12TAdaptor_fog */ -SECTION_RODATA u32 const JStudio::TAdaptor_fog::sauVariableValue_4_COLOR_RGBA[4] = { +u32 const JStudio::TAdaptor_fog::sauVariableValue_4_COLOR_RGBA[4] = { 0, 1, 2, 3, }; -COMPILER_STRIP_GATE(0x8039AACC, &JStudio::TAdaptor_fog::sauVariableValue_4_COLOR_RGBA); /* 804554B8-804554C0 003AB8 0008+00 1/1 0/0 0/0 .sdata2 * sauVariableValue_2_RANGE_BEGIN_END__Q27JStudio12TAdaptor_fog */ -SECTION_SDATA2 u32 JStudio::TAdaptor_fog::sauVariableValue_2_RANGE_BEGIN_END[2] = { +u32 const JStudio::TAdaptor_fog::sauVariableValue_2_RANGE_BEGIN_END[2] = { 4, 5, }; /* 80287218-80287308 281B58 00F0+00 2/0 0/0 0/0 .text * do_paragraph__Q27JStudio11TObject_fogFUlPCvUl */ -void JStudio::TObject_fog::do_paragraph(u32 param_0, void const* param_1, u32 param_2) { - // NONMATCHING +void JStudio::TObject_fog::do_paragraph(u32 param_1, void const* param_2, u32 param_3) { + TAdaptor* adaptor = getAdaptor(); + TControl* control; + if (adaptor == NULL) { + return; + } + + control = getControl(); + u32 uVar1 = (param_1 >> 5); + data::TEOperationData operation = (data::TEOperationData)(param_1 &= 0x1F); + u32 u; + const u32* pN; + switch (uVar1) { + case 29: + u = 0; + goto value; + case 30: + u = 1; + goto value; + case 31: + u = 2; + goto value; + case 32: + u = 3; + goto value; + case 43: + u = 4; + goto value; + case 44: + u = 5; + goto value; + case 33: + pN = TAdaptor_fog::sauVariableValue_3_COLOR_RGB; + u = 3; + goto value_n; + case 34: + pN = TAdaptor_fog::sauVariableValue_4_COLOR_RGBA; + u = 4; + goto value_n; + case 45: + pN = TAdaptor_fog::sauVariableValue_2_RANGE_BEGIN_END; + u = 2; + goto value_n; + default: + return; + } + +value: + adaptor->adaptor_setVariableValue(control, u, operation, param_2, param_3); + return; + +value_n: + adaptor->adaptor_setVariableValue_n(control, pN, u, operation, param_2, param_3); + return; } /* 80287308-80287368 281C48 0060+00 0/0 1/1 0/0 .text __dt__Q27JStudio14TAdaptor_lightFv */ -// NONMATCHING JStudio::TAdaptor_light::~TAdaptor_light() {} /* 80287368-802873A4 281CA8 003C+00 0/0 1/1 0/0 .text @@ -1829,27 +885,148 @@ JStudio::TAdaptor_light::~TAdaptor_light() {} JStudio::TObject_light::TObject_light(JStudio::stb::data::TParse_TBlock_object const& param_0, JStudio::TAdaptor_light* param_1) : TObject(param_0, param_1) {} -/* ############################################################################################## */ -/* 80431080-8043108C 05DDA0 000C+00 0/1 0/0 0/0 .bss @756 */ -#pragma push -#pragma force_active on -static u8 lit_756[12]; -#pragma pop - -/* 8043108C-8043109C 05DDAC 0010+00 1/2 0/0 0/0 .bss - * soovv_light_ENABLE___Q27JStudio28@unnamed@jstudio_object_cpp@ */ -static u8 data_8043108C[16]; - /* 804554C0-804554C8 003AC0 0008+00 1/1 0/0 0/0 .sdata2 * sauVariableValue_2_DIRECTION_THETA_PHI__Q27JStudio14TAdaptor_light */ -SECTION_SDATA2 u32 JStudio::TAdaptor_light::sauVariableValue_2_DIRECTION_THETA_PHI[2] = { +u32 const JStudio::TAdaptor_light::sauVariableValue_2_DIRECTION_THETA_PHI[2] = { 10, 11, }; +/* ############################################################################################## */ +/* 8039AADC-8039AAE8 02713C 000C+00 0/0 0/0 0/0 .rodata + * sauVariableValue_3_COLOR_RGB__Q27JStudio14TAdaptor_light */ + u32 const JStudio::TAdaptor_light::sauVariableValue_3_COLOR_RGB[3] = { + 0, 1, 2, +}; + +/* 8039AAE8-8039AAF8 027148 0010+00 0/0 2/2 0/0 .rodata + * sauVariableValue_4_COLOR_RGBA__Q27JStudio14TAdaptor_light */ +u32 const JStudio::TAdaptor_light::sauVariableValue_4_COLOR_RGBA[4] = { + 0, 1, 2, 3, +}; + +/* 8039AAF8-8039AB04 027158 000C+00 0/0 2/2 0/0 .rodata + * sauVariableValue_3_POSITION_XYZ__Q27JStudio14TAdaptor_light */ +u32 const JStudio::TAdaptor_light::sauVariableValue_3_POSITION_XYZ[3] = { + 4, 5, 6, +}; + +/* 8039AB04-8039AB10 027164 000C+00 0/0 2/2 0/0 .rodata + * sauVariableValue_3_TARGET_POSITION_XYZ__Q27JStudio14TAdaptor_light */ +u32 const JStudio::TAdaptor_light::sauVariableValue_3_TARGET_POSITION_XYZ[3] = { + 7, 8, 9, +}; + /* 802873A4-802875E0 281CE4 023C+00 2/0 0/0 0/0 .text * do_paragraph__Q27JStudio13TObject_lightFUlPCvUl */ -void JStudio::TObject_light::do_paragraph(u32 param_0, void const* param_1, u32 param_2) { - // NONMATCHING +void JStudio::TObject_light::do_paragraph(u32 param_1, void const* param_2, u32 param_3) { + TAdaptor* adaptor = getAdaptor(); + TControl* control; + if (adaptor == NULL) { + return; + } + typedef void (TAdaptor_light::*lightParagraphFunc)(JStudio::data::TEOperationData, const void*, u32); + + control = getControl(); + u32 uVar1 = (param_1 >> 5); + data::TEOperationData operation = (data::TEOperationData)(param_1 &= 0x1F); + u32 u; + const u32* pN; + lightParagraphFunc pmfn_ = NULL; + TVariableValue::TOutput *pOutput; + switch (uVar1) { + case 54: + pmfn_ = &TAdaptor_light::adaptor_do_ENABLE; + u = 12; + pOutput = &JStudio::soovv_light_ENABLE_; + goto value_or_fun; + case 55: + pmfn_ = &TAdaptor_light::adaptor_do_FACULTY; + goto fun; + case 29: + u = 0; + goto value; + case 30: + u = 1; + goto value; + case 31: + u = 2; + goto value; + case 32: + u = 3; + goto value; + case 21: + u = 4; + goto value; + case 22: + u = 5; + goto value; + case 23: + u = 6; + goto value; + case 25: + u = 7; + goto value; + case 26: + u = 8; + goto value; + case 27: + u = 9; + goto value; + case 35: + u = 10; + goto value; + case 36: + u = 11; + goto value; + case 33: + pN = TAdaptor_light::sauVariableValue_3_COLOR_RGB; + u = 3; + goto value_n; + case 34: + pN = TAdaptor_light::sauVariableValue_4_COLOR_RGBA; + u = 4; + goto value_n; + case 24: + pN = TAdaptor_light::sauVariableValue_3_POSITION_XYZ; + u = 3; + goto value_n; + case 28: + pN = TAdaptor_light::sauVariableValue_3_TARGET_POSITION_XYZ; + u = 3; + goto value_n; + case 37: + pN = TAdaptor_light::sauVariableValue_2_DIRECTION_THETA_PHI; + u = 2; + goto value_n; + default: + return; + } + +value_or_fun: + switch (operation) { + case data::UNK_0x10: + case data::UNK_0x11: + case data::UNK_0x12: + adaptor->adaptor_setVariableValue(control, u, operation, param_2, param_3); + adaptor->adaptor_referVariableValue(u)->setOutput(pOutput); + break; + default: + (((TAdaptor_light*)adaptor)->*pmfn_)(operation, param_2, param_3); + break; + } + return; + +value: + adaptor->adaptor_setVariableValue(control, u, operation, param_2, param_3); + return; + +value_n: + adaptor->adaptor_setVariableValue_n(control, pN, u, operation, param_2, param_3); + return; + +fun: + (((TAdaptor_light*)adaptor)->*pmfn_)(operation, param_2, param_3); + return; } /* 802875E0-80287640 281F20 0060+00 0/0 1/1 0/0 .text __dt__Q27JStudio16TAdaptor_messageFv */ @@ -1864,28 +1041,27 @@ JStudio::TObject_message::TObject_message(JStudio::stb::data::TParse_TBlock_obje /* 8028767C-8028770C 281FBC 0090+00 1/0 0/0 0/0 .text * do_paragraph__Q27JStudio15TObject_messageFUlPCvUl */ -// NONMATCHING - param_1 &= 0x1f is out of place + unsure about the pmfn void JStudio::TObject_message::do_paragraph(u32 param_1, void const* param_2, u32 param_3) { TAdaptor* adaptor = getAdaptor(); if (adaptor != NULL) { u32 uVar1 = (param_1 >> 5); - param_1 &= 0x1f; - paragraphFunc pmfn_ = NULL; + data::TEOperationData operation = (data::TEOperationData)(param_1 &= 0x1f); + typedef void (TAdaptor_message::*messageParagraphFunc)(JStudio::data::TEOperationData, const void*, u32); + messageParagraphFunc pmfn_ = NULL; switch (uVar1) { case 0x42: - pmfn_ = &TObject::do_paragraph; - JUT_ASSERT(1161, pmfn_!=0); + pmfn_ = &TAdaptor_message::adaptor_do_MESSAGE; break; default: return; } - (((TObject*)adaptor)->*pmfn_)(param_1, param_2, param_3); + JUT_ASSERT(1161, pmfn_!=0); + (((TAdaptor_message*)adaptor)->*pmfn_)(operation, param_2, param_3); } } /* 8028770C-8028776C 28204C 0060+00 0/0 1/1 0/0 .text __dt__Q27JStudio17TAdaptor_particleFv */ -// NONMATCHING JStudio::TAdaptor_particle::~TAdaptor_particle() {} /* 8028776C-802877A8 2820AC 003C+00 0/0 1/1 0/0 .text @@ -1894,15 +1070,217 @@ JStudio::TAdaptor_particle::~TAdaptor_particle() {} JStudio::TObject_particle::TObject_particle( JStudio::stb::data::TParse_TBlock_object const& param_0, JStudio::TAdaptor_particle* param_1) : TObject(param_0, param_1) {} +/* 8039AB10-8039AB1C 027170 000C+00 0/0 1/1 0/0 .rodata + * sauVariableValue_3_TRANSLATION_XYZ__Q27JStudio17TAdaptor_particle */ + u32 const JStudio::TAdaptor_particle::sauVariableValue_3_TRANSLATION_XYZ[3] = { + 0, 1, 2, +}; + +/* 8039AB1C-8039AB28 02717C 000C+00 0/0 1/1 0/0 .rodata + * sauVariableValue_3_ROTATION_XYZ__Q27JStudio17TAdaptor_particle */ +u32 const JStudio::TAdaptor_particle::sauVariableValue_3_ROTATION_XYZ[3] = { + 3, 4, 5, +}; + +/* 8039AB28-8039AB34 027188 000C+00 0/0 1/1 0/0 .rodata + * sauVariableValue_3_SCALING_XYZ__Q27JStudio17TAdaptor_particle */ +u32 const JStudio::TAdaptor_particle::sauVariableValue_3_SCALING_XYZ[3] = { + 6, 7, 8, +}; + +/* 8039AB34-8039AB40 027194 000C+00 0/0 0/0 0/0 .rodata + * sauVariableValue_3_COLOR_RGB__Q27JStudio17TAdaptor_particle */ +u32 const JStudio::TAdaptor_particle::sauVariableValue_3_COLOR_RGB[3] = { + 9, 10, 11, +}; + +/* 8039AB40-8039AB50 0271A0 0010+00 0/0 1/1 0/0 .rodata + * sauVariableValue_4_COLOR_RGBA__Q27JStudio17TAdaptor_particle */ +u32 const JStudio::TAdaptor_particle::sauVariableValue_4_COLOR_RGBA[4] = { + 9, 10, 11, 12, +}; + +/* 8039AB50-8039AB5C 0271B0 000C+00 0/0 0/0 0/0 .rodata + * sauVariableValue_3_COLOR1_RGB__Q27JStudio17TAdaptor_particle */ +u32 const JStudio::TAdaptor_particle::sauVariableValue_3_COLOR1_RGB[3] = { + 9, 10, 11, +}; + +/* 8039AB5C-8039AB6C 0271BC 0010+00 0/0 0/0 0/0 .rodata + * sauVariableValue_4_COLOR1_RGBA__Q27JStudio17TAdaptor_particle */ +u32 const JStudio::TAdaptor_particle::sauVariableValue_4_COLOR1_RGBA[4] = { + 9, 10, 11, 12, +}; + /* 802877A8-80287B3C 2820E8 0394+00 2/0 0/0 0/0 .text * do_paragraph__Q27JStudio16TObject_particleFUlPCvUl */ -void JStudio::TObject_particle::do_paragraph(u32 param_0, void const* param_1, u32 param_2) { - // NONMATCHING +void JStudio::TObject_particle::do_paragraph(u32 param_1, void const* param_2, u32 param_3) { + TAdaptor* adaptor = getAdaptor(); + TControl* control; + if (adaptor == NULL) { + return; + } + typedef void (TAdaptor_particle::*particleParagraphFunc)(JStudio::data::TEOperationData, const void*, u32); + + control = getControl(); + u32 uVar1 = (param_1 >> 5); + data::TEOperationData operation = (data::TEOperationData)(param_1 &= 0x1F); + u32 u; + const u32* pN; + particleParagraphFunc pmfn_ = NULL; + TVariableValue::TOutput *pOutput; + switch (uVar1) { + case 68: + pmfn_ = &TAdaptor_particle::adaptor_do_PARTICLE; + goto fun; + case 79: + pmfn_ = &TAdaptor_particle::adaptor_do_BEGIN; + goto fun; + case 46: + pmfn_ = &TAdaptor_particle::adaptor_do_BEGIN_FADE_IN; + goto fun; + case 80: + pmfn_ = &TAdaptor_particle::adaptor_do_END; + goto fun; + case 47: + pmfn_ = &TAdaptor_particle::adaptor_do_END_FADE_OUT; + goto fun; + case 48: + pmfn_ = &TAdaptor_particle::adaptor_do_PARENT; + goto fun; + case 49: + pmfn_ = &TAdaptor_particle::adaptor_do_PARENT_NODE; + goto fun; + case 50: + pmfn_ = &TAdaptor_particle::adaptor_do_PARENT_ENABLE; + u = 17; + pOutput = &JStudio::soovv_particle_PARENT_ENABLE_; + goto value_or_fun; + case 81: + pmfn_ = &TAdaptor_particle::adaptor_do_PARENT_FUNCTION; + goto fun; + case 86: + pmfn_ = &TAdaptor_particle::adaptor_do_REPEAT; + u = 18; + pOutput = &JStudio::soovv_particle_REPEAT_; + goto value_or_fun; + case 85: + pmfn_ = &TAdaptor_particle::adaptor_do_ON_EXIT_NOT_END; + u = 19; + pOutput = &JStudio::soovv_particle_ON_EXIT_NOT_END_; + goto value_or_fun; + case 9: + u = 0; + goto value; + case 10: + u = 1; + goto value; + case 11: + u = 2; + goto value; + case 13: + u = 3; + goto value; + case 14: + u = 4; + goto value; + case 15: + u = 5; + goto value; + case 17: + u = 6; + goto value; + case 18: + u = 7; + goto value; + case 19: + u = 8; + goto value; + case 29: + u = 9; + goto value; + case 30: + u = 10; + goto value; + case 31: + u = 11; + goto value; + case 32: + u = 12; + goto value; + case 69: + u = 13; + goto value; + case 70: + u = 14; + goto value; + case 71: + u = 15; + goto value; + case 72: + u = 16; + goto value; + case 12: + pN = TAdaptor_particle::sauVariableValue_3_TRANSLATION_XYZ; + u = 3; + goto value_n; + case 16: + pN = TAdaptor_particle::sauVariableValue_3_ROTATION_XYZ; + u = 3; + goto value_n; + case 20: + pN = TAdaptor_particle::sauVariableValue_3_SCALING_XYZ; + u = 3; + goto value_n; + case 33: + pN = TAdaptor_particle::sauVariableValue_3_COLOR_RGB; + u = 3; + goto value_n; + case 34: + pN = TAdaptor_particle::sauVariableValue_4_COLOR_RGBA; + u = 4; + goto value_n; + case 73: + pN = TAdaptor_particle::sauVariableValue_3_COLOR1_RGB; + u = 3; + goto value_n; + case 74: + pN = TAdaptor_particle::sauVariableValue_4_COLOR1_RGBA; + u = 4; + goto value_n; + default: + return; + } + +value_or_fun: + switch (operation) { + case data::UNK_0x10: + case data::UNK_0x11: + case data::UNK_0x12: + adaptor->adaptor_setVariableValue(control, u, operation, param_2, param_3); + adaptor->adaptor_referVariableValue(u)->setOutput(pOutput); + break; + default: + (((TAdaptor_particle*)adaptor)->*pmfn_)(operation, param_2, param_3); + break; + } + return; + +value: + adaptor->adaptor_setVariableValue(control, u, operation, param_2, param_3); + return; + +value_n: + adaptor->adaptor_setVariableValue_n(control, pN, u, operation, param_2, param_3); + return; + +fun: + (((TAdaptor_particle*)adaptor)->*pmfn_)(operation, param_2, param_3); + return; } /* 80287B3C-80287B9C 28247C 0060+00 0/0 1/1 0/0 .text __dt__Q27JStudio14TAdaptor_soundFv */ -// NONMATCHING JStudio::TAdaptor_sound::~TAdaptor_sound() {} /* 80287B9C-80287BD8 2824DC 003C+00 0/0 1/1 0/0 .text @@ -1911,420 +1289,131 @@ JStudio::TAdaptor_sound::~TAdaptor_sound() {} JStudio::TObject_sound::TObject_sound(JStudio::stb::data::TParse_TBlock_object const& param_0, JStudio::TAdaptor_sound* param_1) : TObject(param_0, param_1) {} -/* ############################################################################################## */ -/* 8039AADC-8039AAE8 02713C 000C+00 0/0 0/0 0/0 .rodata - * sauVariableValue_3_COLOR_RGB__Q27JStudio14TAdaptor_light */ -#pragma push -#pragma force_active on -SECTION_RODATA u32 const JStudio::TAdaptor_light::sauVariableValue_3_COLOR_RGB[3] = { - 0, 1, 2, -}; -COMPILER_STRIP_GATE(0x8039AADC, &JStudio::TAdaptor_light::sauVariableValue_3_COLOR_RGB); -#pragma pop - -/* 8039AAE8-8039AAF8 027148 0010+00 0/0 2/2 0/0 .rodata - * sauVariableValue_4_COLOR_RGBA__Q27JStudio14TAdaptor_light */ -SECTION_RODATA u32 const JStudio::TAdaptor_light::sauVariableValue_4_COLOR_RGBA[4] = { - 0, 1, 2, 3, -}; -COMPILER_STRIP_GATE(0x8039AAE8, &JStudio::TAdaptor_light::sauVariableValue_4_COLOR_RGBA); - -/* 8039AAF8-8039AB04 027158 000C+00 0/0 2/2 0/0 .rodata - * sauVariableValue_3_POSITION_XYZ__Q27JStudio14TAdaptor_light */ -SECTION_RODATA u32 const JStudio::TAdaptor_light::sauVariableValue_3_POSITION_XYZ[3] = { - 4, 5, 6, -}; -COMPILER_STRIP_GATE(0x8039AAF8, &JStudio::TAdaptor_light::sauVariableValue_3_POSITION_XYZ); - -/* 8039AB04-8039AB10 027164 000C+00 0/0 2/2 0/0 .rodata - * sauVariableValue_3_TARGET_POSITION_XYZ__Q27JStudio14TAdaptor_light */ -SECTION_RODATA u32 const JStudio::TAdaptor_light::sauVariableValue_3_TARGET_POSITION_XYZ[3] = { - 7, 8, 9, -}; -COMPILER_STRIP_GATE(0x8039AB04, &JStudio::TAdaptor_light::sauVariableValue_3_TARGET_POSITION_XYZ); - -/* 8039AB10-8039AB1C 027170 000C+00 0/0 1/1 0/0 .rodata - * sauVariableValue_3_TRANSLATION_XYZ__Q27JStudio17TAdaptor_particle */ -SECTION_RODATA u32 const JStudio::TAdaptor_particle::sauVariableValue_3_TRANSLATION_XYZ[3] = { - 0, 1, 2, -}; -COMPILER_STRIP_GATE(0x8039AB10, &JStudio::TAdaptor_particle::sauVariableValue_3_TRANSLATION_XYZ); - -/* 8039AB1C-8039AB28 02717C 000C+00 0/0 1/1 0/0 .rodata - * sauVariableValue_3_ROTATION_XYZ__Q27JStudio17TAdaptor_particle */ -SECTION_RODATA u32 const JStudio::TAdaptor_particle::sauVariableValue_3_ROTATION_XYZ[3] = { - 3, 4, 5, -}; -COMPILER_STRIP_GATE(0x8039AB1C, &JStudio::TAdaptor_particle::sauVariableValue_3_ROTATION_XYZ); - -/* 8039AB28-8039AB34 027188 000C+00 0/0 1/1 0/0 .rodata - * sauVariableValue_3_SCALING_XYZ__Q27JStudio17TAdaptor_particle */ -SECTION_RODATA u32 const JStudio::TAdaptor_particle::sauVariableValue_3_SCALING_XYZ[3] = { - 6, 7, 8, -}; -COMPILER_STRIP_GATE(0x8039AB28, &JStudio::TAdaptor_particle::sauVariableValue_3_SCALING_XYZ); - -/* 8039AB34-8039AB40 027194 000C+00 0/0 0/0 0/0 .rodata - * sauVariableValue_3_COLOR_RGB__Q27JStudio17TAdaptor_particle */ -#pragma push -#pragma force_active on -SECTION_RODATA u32 const JStudio::TAdaptor_particle::sauVariableValue_3_COLOR_RGB[3] = { - 9, 10, 11, -}; -COMPILER_STRIP_GATE(0x8039AB34, &JStudio::TAdaptor_particle::sauVariableValue_3_COLOR_RGB); -#pragma pop - -/* 8039AB40-8039AB50 0271A0 0010+00 0/0 1/1 0/0 .rodata - * sauVariableValue_4_COLOR_RGBA__Q27JStudio17TAdaptor_particle */ -SECTION_RODATA u32 const JStudio::TAdaptor_particle::sauVariableValue_4_COLOR_RGBA[4] = { - 9, 10, 11, 12, -}; -COMPILER_STRIP_GATE(0x8039AB40, &JStudio::TAdaptor_particle::sauVariableValue_4_COLOR_RGBA); - -/* 8039AB50-8039AB5C 0271B0 000C+00 0/0 0/0 0/0 .rodata - * sauVariableValue_3_COLOR1_RGB__Q27JStudio17TAdaptor_particle */ -#pragma push -#pragma force_active on -SECTION_RODATA u32 const JStudio::TAdaptor_particle::sauVariableValue_3_COLOR1_RGB[3] = { - 9, 10, 11, -}; -COMPILER_STRIP_GATE(0x8039AB50, &JStudio::TAdaptor_particle::sauVariableValue_3_COLOR1_RGB); -#pragma pop - -/* 8039AB5C-8039AB6C 0271BC 0010+00 0/0 0/0 0/0 .rodata - * sauVariableValue_4_COLOR1_RGBA__Q27JStudio17TAdaptor_particle */ -#pragma push -#pragma force_active on -SECTION_RODATA u32 const JStudio::TAdaptor_particle::sauVariableValue_4_COLOR1_RGBA[4] = { - 9, 10, 11, 12, -}; -COMPILER_STRIP_GATE(0x8039AB5C, &JStudio::TAdaptor_particle::sauVariableValue_4_COLOR1_RGBA); -#pragma pop - /* 8039AB6C-8039AB78 0271CC 000C+00 1/1 1/1 0/0 .rodata * sauVariableValue_3_POSITION_XYZ__Q27JStudio14TAdaptor_sound */ -SECTION_RODATA u32 const JStudio::TAdaptor_sound::sauVariableValue_3_POSITION_XYZ[3] = { +u32 const JStudio::TAdaptor_sound::sauVariableValue_3_POSITION_XYZ[3] = { 0, 1, 2, }; -COMPILER_STRIP_GATE(0x8039AB6C, &JStudio::TAdaptor_sound::sauVariableValue_3_POSITION_XYZ); /* 80287BD8-80287F04 282518 032C+00 2/0 0/0 0/0 .text * do_paragraph__Q27JStudio13TObject_soundFUlPCvUl */ -void JStudio::TObject_sound::do_paragraph(u32 param_0, void const* param_1, u32 param_2) { - // NONMATCHING +void JStudio::TObject_sound::do_paragraph(u32 param_1, void const* param_2, u32 param_3) { + TAdaptor* adaptor = getAdaptor(); + TControl* control; + if (adaptor == NULL) { + return; + } + typedef void (TAdaptor_sound::*soundParagraphFunc)(JStudio::data::TEOperationData, const void*, u32); + + control = getControl(); + u32 uVar1 = (param_1 >> 5); + data::TEOperationData operation = (data::TEOperationData)(param_1 &= 0x1F); + u32 u; + const u32* pN; + soundParagraphFunc pmfn_ = NULL; + TVariableValue::TOutput *pOutput; + switch (uVar1) { + case 60: + pmfn_ = &TAdaptor_sound::adaptor_do_SOUND; + goto fun; + case 79: + pmfn_ = &TAdaptor_sound::adaptor_do_BEGIN; + goto fun; + case 46: + pmfn_ = &TAdaptor_sound::adaptor_do_BEGIN_FADE_IN; + goto fun; + case 80: + pmfn_ = &TAdaptor_sound::adaptor_do_END; + goto fun; + case 47: + pmfn_ = &TAdaptor_sound::adaptor_do_END_FADE_OUT; + goto fun; + case 48: + pmfn_ = &TAdaptor_sound::adaptor_do_PARENT; + goto fun; + case 49: + pmfn_ = &TAdaptor_sound::adaptor_do_PARENT_NODE; + goto fun; + case 50: + pmfn_ = &TAdaptor_sound::adaptor_do_PARENT_ENABLE; + u = 3; + pOutput = &JStudio::soovv_sound_PARENT_ENABLE_; + goto value_or_fun; + case 86: + pmfn_ = &TAdaptor_sound::adaptor_do_REPEAT; + u = 4; + pOutput = &JStudio::soovv_sound_REPEAT_; + goto value_or_fun; + case 87: + pmfn_ = &TAdaptor_sound::adaptor_do_CONTINUOUS; + u = 5; + pOutput = &JStudio::soovv_sound_CONTINUOUS_; + goto value_or_fun; + case 56: + pmfn_ = &TAdaptor_sound::adaptor_do_LOCATED; + u = 6; + pOutput = &JStudio::soovv_sound_LOCATED_; + goto value_or_fun; + case 85: + pmfn_ = &TAdaptor_sound::adaptor_do_ON_EXIT_NOT_END; + u = 12; + pOutput = &JStudio::soovv_sound_ON_EXIT_NOT_END_; + goto value_or_fun; + case 21: + u = 0; + goto value; + case 22: + u = 1; + goto value; + case 23: + u = 2; + goto value; + case 61: + u = 7; + goto value; + case 62: + u = 8; + goto value; + case 63: + u = 9; + goto value; + case 64: + u = 10; + goto value; + case 65: + u = 11; + goto value; + case 24: + pN = TAdaptor_sound::sauVariableValue_3_POSITION_XYZ; + u = 3; + goto value_n; + default: + return; + } + +value_or_fun: + switch (operation) { + case data::UNK_0x10: + case data::UNK_0x11: + case data::UNK_0x12: + adaptor->adaptor_setVariableValue(control, u, operation, param_2, param_3); + adaptor->adaptor_referVariableValue(u)->setOutput(pOutput); + break; + default: + (((TAdaptor_sound*)adaptor)->*pmfn_)(operation, param_2, param_3); + break; + } + return; + +value: + adaptor->adaptor_setVariableValue(control, u, operation, param_2, param_3); + return; + +value_n: + adaptor->adaptor_setVariableValue_n(control, pN, u, operation, param_2, param_3); + return; + +fun: + (((TAdaptor_sound*)adaptor)->*pmfn_)(operation, param_2, param_3); + return; } - -/* 80287F04-80287F64 282844 0060+00 1/0 0/0 0/0 .text __dt__Q27JStudio13TObject_soundFv - */ -// JStudio::TObject_sound::~TObject_sound() { -extern "C" void __dt__Q27JStudio13TObject_soundFv() { - // NONMATCHING -} - -/* 80287F64-80287FC4 2828A4 0060+00 1/0 0/0 0/0 .text __dt__Q27JStudio16TObject_particleFv */ -// JStudio::TObject_particle::~TObject_particle() { -extern "C" void __dt__Q27JStudio16TObject_particleFv() { - // NONMATCHING -} - -/* 80287FC4-80288024 282904 0060+00 1/0 0/0 0/0 .text __dt__Q27JStudio15TObject_messageFv - */ -// JStudio::TObject_message::~TObject_message() { -extern "C" void __dt__Q27JStudio15TObject_messageFv() { - // NONMATCHING -} - -/* 80288024-80288084 282964 0060+00 1/0 0/0 0/0 .text __dt__Q27JStudio13TObject_lightFv - */ -// JStudio::TObject_light::~TObject_light() { -extern "C" void __dt__Q27JStudio13TObject_lightFv() { - // NONMATCHING -} - -/* 80288084-802880E4 2829C4 0060+00 1/0 0/0 0/0 .text __dt__Q27JStudio11TObject_fogFv */ -// JStudio::TObject_fog::~TObject_fog() { -extern "C" void __dt__Q27JStudio11TObject_fogFv() { - // NONMATCHING -} - -/* 802880E4-80288144 282A24 0060+00 1/0 0/0 0/0 .text __dt__Q27JStudio14TObject_cameraFv - */ -// JStudio::TObject_camera::~TObject_camera() { -extern "C" void __dt__Q27JStudio14TObject_cameraFv() { - // NONMATCHING -} - -/* 80288144-802881A4 282A84 0060+00 1/0 0/0 0/0 .text __dt__Q27JStudio20TObject_ambientLightFv */ -// JStudio::TObject_ambientLight::~TObject_ambientLight() { -extern "C" void __dt__Q27JStudio20TObject_ambientLightFv() { - // NONMATCHING -} - -/* 802881A4-80288204 282AE4 0060+00 1/0 0/0 0/0 .text __dt__Q27JStudio13TObject_actorFv - */ -// JStudio::TObject_actor::~TObject_actor() { -extern "C" void __dt__Q27JStudio13TObject_actorFv() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 803C5650-803C5660 022770 0010+00 2/2 0/0 0/0 .data - * __vt__Q37JStudio28@unnamed@jstudio_object_cpp@54TOutputVariableValue_BOOL_ - */ -SECTION_DATA extern void* data_803C5650[4] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)func_802887BC, - (void*)func_802885DC, -}; - -/* 803C5660-803C5670 022780 0010+00 2/2 0/0 0/0 .data - * __vt__Q37JStudio28@unnamed@jstudio_object_cpp@57TOutputVariableValue_BOOL_ - */ -SECTION_DATA extern void* data_803C5660[4] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)func_80288818, - (void*)func_8028863C, -}; - -/* 803C5670-803C5680 022790 0010+00 2/2 0/0 0/0 .data - * __vt__Q37JStudio28@unnamed@jstudio_object_cpp@54TOutputVariableValue_BOOL_ - */ -SECTION_DATA extern void* data_803C5670[4] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)func_80288874, - (void*)func_8028869C, -}; - -/* 803C5680-803C5690 0227A0 0010+00 2/2 0/0 0/0 .data - * __vt__Q37JStudio28@unnamed@jstudio_object_cpp@55TOutputVariableValue_BOOL_ - */ -SECTION_DATA extern void* data_803C5680[4] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)func_802888D0, - (void*)func_802886FC, -}; - -/* 803C5690-803C56A0 0227B0 0010+00 2/2 0/0 0/0 .data - * __vt__Q37JStudio28@unnamed@jstudio_object_cpp@54TOutputVariableValue_BOOL_ - */ -SECTION_DATA extern void* data_803C5690[4] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)func_8028892C, - (void*)func_8028875C, -}; - -/* 8043109C-804310A8 05DDBC 000C+00 0/1 0/0 0/0 .bss @759 */ -#pragma push -#pragma force_active on -static u8 lit_759[12]; -#pragma pop - -/* 804310A8-804310B8 05DDC8 0010+00 0/1 0/0 0/0 .bss - * soovv_particle_PARENT_ENABLE___Q27JStudio28@unnamed@jstudio_object_cpp@ */ -#pragma push -#pragma force_active on -static u8 data_804310A8[16]; -#pragma pop - -/* 804310B8-804310C4 05DDD8 000C+00 0/1 0/0 0/0 .bss @762 */ -#pragma push -#pragma force_active on -static u8 lit_762[12]; -#pragma pop - -/* 804310C4-804310D4 05DDE4 0010+00 0/1 0/0 0/0 .bss - * soovv_particle_REPEAT___Q27JStudio28@unnamed@jstudio_object_cpp@ */ -#pragma push -#pragma force_active on -static u8 data_804310C4[16]; -#pragma pop - -/* 804310D4-804310E0 05DDF4 000C+00 0/1 0/0 0/0 .bss @765 */ -#pragma push -#pragma force_active on -static u8 lit_765[12]; -#pragma pop - -/* 804310E0-804310F0 05DE00 0010+00 0/1 0/0 0/0 .bss - * soovv_particle_ON_EXIT_NOT_END___Q27JStudio28@unnamed@jstudio_object_cpp@ */ -#pragma push -#pragma force_active on -static u8 data_804310E0[16]; -#pragma pop - -/* 804310F0-804310FC 05DE10 000C+00 0/1 0/0 0/0 .bss @768 */ -#pragma push -#pragma force_active on -static u8 lit_768[12]; -#pragma pop - -/* 804310FC-8043110C 05DE1C 0010+00 0/1 0/0 0/0 .bss - * soovv_sound_PARENT_ENABLE___Q27JStudio28@unnamed@jstudio_object_cpp@ */ -#pragma push -#pragma force_active on -static u8 data_804310FC[16]; -#pragma pop - -/* 8043110C-80431118 05DE2C 000C+00 0/1 0/0 0/0 .bss @771 */ -#pragma push -#pragma force_active on -static u8 lit_771[12]; -#pragma pop - -/* 80431118-80431128 05DE38 0010+00 0/1 0/0 0/0 .bss - * soovv_sound_REPEAT___Q27JStudio28@unnamed@jstudio_object_cpp@ */ -#pragma push -#pragma force_active on -static u8 data_80431118[16]; -#pragma pop - -/* 80431128-80431134 05DE48 000C+00 0/1 0/0 0/0 .bss @774 */ -#pragma push -#pragma force_active on -static u8 lit_774[12]; -#pragma pop - -/* 80431134-80431144 05DE54 0010+00 0/1 0/0 0/0 .bss - * soovv_sound_CONTINUOUS___Q27JStudio28@unnamed@jstudio_object_cpp@ */ -#pragma push -#pragma force_active on -static u8 data_80431134[16]; -#pragma pop - -/* 80431144-80431150 05DE64 000C+00 0/1 0/0 0/0 .bss @777 */ -#pragma push -#pragma force_active on -static u8 lit_777[12]; -#pragma pop - -/* 80431150-80431160 05DE70 0010+00 0/1 0/0 0/0 .bss - * soovv_sound_LOCATED___Q27JStudio28@unnamed@jstudio_object_cpp@ */ -#pragma push -#pragma force_active on -static u8 data_80431150[16]; -#pragma pop - -/* 80431160-8043116C 05DE80 000C+00 0/1 0/0 0/0 .bss @780 */ -#pragma push -#pragma force_active on -static u8 lit_780[12]; -#pragma pop - -/* 8043116C-8043117C 05DE8C 0010+00 0/1 0/0 0/0 .bss - * soovv_sound_ON_EXIT_NOT_END___Q27JStudio28@unnamed@jstudio_object_cpp@ */ -#pragma push -#pragma force_active on -static u8 data_8043116C[16]; -#pragma pop - -/* 8043117C-80431188 05DE9C 000C+00 0/1 0/0 0/0 .bss @819 */ -#pragma push -#pragma force_active on -static u8 lit_819[12]; -#pragma pop - -/* 80288204-802885DC 282B44 03D8+00 0/0 1/0 0/0 .text __sinit_jstudio-object_cpp */ -void func_80288204() { - // NONMATCHING -} - -#pragma push -#pragma force_active on -REGISTER_CTORS(0x80288204, func_80288204); -#pragma pop - -/* 802885DC-8028863C 282F1C 0060+00 2/1 0/0 0/0 .text - * __dt__Q37JStudio28@unnamed@jstudio_object_cpp@54TOutputVariableValue_BOOL_Fv - */ -void func_802885DC() { - // NONMATCHING -} - -/* 8028863C-8028869C 282F7C 0060+00 2/1 0/0 0/0 .text - * __dt__Q37JStudio28@unnamed@jstudio_object_cpp@57TOutputVariableValue_BOOL_Fv - */ -void func_8028863C() { - // NONMATCHING -} - -/* 8028869C-802886FC 282FDC 0060+00 2/1 0/0 0/0 .text - * __dt__Q37JStudio28@unnamed@jstudio_object_cpp@54TOutputVariableValue_BOOL_Fv - */ -void func_8028869C() { - // NONMATCHING -} - -/* 802886FC-8028875C 28303C 0060+00 2/1 0/0 0/0 .text - * __dt__Q37JStudio28@unnamed@jstudio_object_cpp@55TOutputVariableValue_BOOL_Fv - */ -void func_802886FC() { - // NONMATCHING -} - -/* 8028875C-802887BC 28309C 0060+00 2/1 0/0 0/0 .text - * __dt__Q37JStudio28@unnamed@jstudio_object_cpp@54TOutputVariableValue_BOOL_Fv - */ -void func_8028875C() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 804554C8-804554D0 003AC8 0004+04 5/5 0/0 0/0 .sdata2 @1967 */ -SECTION_SDATA2 static f32 lit_1967[1 + 1 /* padding */] = { - 0.5f, - /* padding */ - 0.0f, -}; - -/* 802887BC-80288818 2830FC 005C+00 1/0 0/0 0/0 .text - * __cl__Q37JStudio28@unnamed@jstudio_object_cpp@54TOutputVariableValue_BOOL_CFfPQ27JStudio8TAdaptor - */ -void func_802887BC() { - // NONMATCHING -} - -/* 80288818-80288874 283158 005C+00 1/0 0/0 0/0 .text - * __cl__Q37JStudio28@unnamed@jstudio_object_cpp@57TOutputVariableValue_BOOL_CFfPQ27JStudio8TAdaptor - */ -void func_80288818() { - // NONMATCHING -} - -/* 80288874-802888D0 2831B4 005C+00 1/0 0/0 0/0 .text - * __cl__Q37JStudio28@unnamed@jstudio_object_cpp@54TOutputVariableValue_BOOL_CFfPQ27JStudio8TAdaptor - */ -void func_80288874() { - // NONMATCHING -} - -/* 802888D0-8028892C 283210 005C+00 1/0 0/0 0/0 .text - * __cl__Q37JStudio28@unnamed@jstudio_object_cpp@55TOutputVariableValue_BOOL_CFfPQ27JStudio8TAdaptor - */ -void func_802888D0() { - // NONMATCHING -} - -/* 8028892C-80288988 28326C 005C+00 1/0 0/0 0/0 .text - * __cl__Q37JStudio28@unnamed@jstudio_object_cpp@54TOutputVariableValue_BOOL_CFfPQ27JStudio8TAdaptor - */ -void func_8028892C() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 8039AB78-8039AB88 0271D8 000A+06 0/0 0/0 0/0 .rodata None */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_8039AB78 = "(unnamed)"; -#pragma pop - -/* 804511F8-80451200 0006F8 0008+00 0/0 1/1 0/0 .sbss None */ -// extern u8 data_804511F8[8]; -// u8 data_804511F8[8]; - -/* 8039AB78-8039AB78 0271D8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */