mirror of
https://github.com/zeldaret/tp
synced 2026-07-11 15:28:38 -04:00
d_kyeff, d_kyeff2, m_Do_printf, and m_Do_graphic (#109)
* Split d_kyeff * Partially matched d_kyeff * split d_kyeff2 * Match d_kyeff2 * split m_Do_printf * m_Do_printf partially matched * hotfix and clang-format * split m_Do_graphic * rename symbols in m_Do_graphic * Match a few functions in m_Do_graphic * Fix Merge Errors * Delete sh.exe.stackdump * Update OSReportInit
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
#include "d/d_a/d_a_alink/d_a_alink.h"
|
||||
#include "SComponent/c_bg_w.h"
|
||||
#include "SComponent/c_lib.h"
|
||||
#include "SComponent/c_phase.h"
|
||||
#include "Z2AudioLib/Z2Creature/Z2Creature.h"
|
||||
#include "Z2AudioLib/Z2LinkMgr/Z2LinkMgr.h"
|
||||
@@ -7,6 +8,7 @@
|
||||
#include "Z2AudioLib/Z2SeqMgr/Z2SeqMgr.h"
|
||||
#include "Z2AudioLib/Z2SoundObject/Z2SoundObject.h"
|
||||
#include "d/d_bg/d_bg_s/d_bg_s_poly_pass_chk.h"
|
||||
#include "d/d_kankyo/d_kankyo.h"
|
||||
#include "f/f_pc/f_pc_manager.h"
|
||||
#include "f/f_pc/f_pc_searcher.h"
|
||||
#include "m_Do/m_Do_audio/m_Do_audio.h"
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
#include "f/f_pc/f_pc_searcher.h"
|
||||
#include "m_Do/m_Do_audio/m_Do_audio.h"
|
||||
#include "m_Do/m_Do_controller_pad/m_Do_controller_pad.h"
|
||||
#include "m_Do/m_Do_graphic/m_Do_graphic.h"
|
||||
|
||||
extern "C" {
|
||||
void __dt__8cM3dGLinFv(void);
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
#include "Z2AudioLib/Z2SeqMgr/Z2SeqMgr.h"
|
||||
#include "d/d_bg/d_bg_s/d_bg_s.h"
|
||||
#include "d/d_item/d_item/d_item.h"
|
||||
#include "d/d_kankyo/d_kankyo.h"
|
||||
#include "global.h"
|
||||
#include "m_Do/m_Do_Reset/m_Do_Reset.h"
|
||||
#include "m_Do/m_Do_audio/m_Do_audio.h"
|
||||
|
||||
+4
-2
@@ -1,9 +1,11 @@
|
||||
/* d_kankyo.cpp autogenerated by split.py v0.3 at 2021-01-01 22:51:09.344700 */
|
||||
|
||||
#include "d/d_kankyo/d_kankyo.h"
|
||||
#include "Z2AudioLib/Z2SeMgr/Z2SeMgr.h"
|
||||
#include "d/d_com/d_com_inf_game/d_com_inf_game.h"
|
||||
#include "global.h"
|
||||
#include "m_Do/m_Do_audio/m_Do_audio.h"
|
||||
#include "m_Do/m_Do_graphic/m_Do_graphic.h"
|
||||
#include "os/OS.h"
|
||||
|
||||
extern "C" {
|
||||
@@ -279,14 +281,14 @@ asm void dKy_FiveSenses_fullthrottle_dark_static1(void) {
|
||||
nofralloc
|
||||
#include "d/d_kankyo/asm/func_8019D8CC.s"
|
||||
}
|
||||
|
||||
};
|
||||
// dKy_FiveSenses_fullthrottle_dark__Fv
|
||||
// dKy_FiveSenses_fullthrottle_dark(void)
|
||||
asm void dKy_FiveSenses_fullthrottle_dark(void) {
|
||||
nofralloc
|
||||
#include "d/d_kankyo/asm/func_8019DD4C.s"
|
||||
}
|
||||
|
||||
extern "C" {
|
||||
// dKy_light_influence_id__F4cXyzi
|
||||
// dKy_light_influence_id(cXyz, int)
|
||||
asm void dKy_light_influence_id(void) {
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
/* d_kankyo_data.cpp autogenerated by split.py v0.3 at 2021-01-01 22:11:10.952715 */
|
||||
|
||||
#include "d/d_kankyo/d_kankyo.h"
|
||||
#include "global.h"
|
||||
|
||||
extern "C" {
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
#include "SComponent/c_math.h"
|
||||
#include "d/d_bg/d_bg_s/d_bg_s_poly_pass_chk.h"
|
||||
#include "d/d_com/d_com_inf_game/d_com_inf_game.h"
|
||||
#include "d/d_kankyo/d_kankyo.h"
|
||||
#include "global.h"
|
||||
|
||||
extern "C" {
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
#include "SComponent/c_xyz.h"
|
||||
#include "Z2AudioLib/Z2SeMgr/Z2SeMgr.h"
|
||||
#include "d/d_com/d_com_inf_game/d_com_inf_game.h"
|
||||
#include "d/d_kankyo/d_kankyo.h"
|
||||
#include "global.h"
|
||||
#include "m_Do/m_Do_audio/m_Do_audio.h"
|
||||
|
||||
@@ -477,7 +478,7 @@ asm void dKyw_evil_Draw(void) {
|
||||
nofralloc
|
||||
#include "d/d_kankyo/d_kankyo_wether/asm/func_800574BC.s"
|
||||
}
|
||||
|
||||
};
|
||||
// dKyw_wether_init__Fv
|
||||
// dKyw_wether_init(void)
|
||||
asm void dKyw_wether_init(void) {
|
||||
@@ -498,7 +499,7 @@ asm void dKyw_wether_delete(void) {
|
||||
nofralloc
|
||||
#include "d/d_kankyo/d_kankyo_wether/asm/func_80057A04.s"
|
||||
}
|
||||
|
||||
extern "C" {
|
||||
// __dt__19dKankyo_evil_PacketFv
|
||||
// dKankyo_evil_Packet::~dKankyo_evil_Packet(void)
|
||||
asm void func_80057C84(void) {
|
||||
@@ -568,14 +569,14 @@ asm void func_80058128(void) {
|
||||
nofralloc
|
||||
#include "d/d_kankyo/d_kankyo_wether/asm/func_80058128.s"
|
||||
}
|
||||
|
||||
};
|
||||
// dKyw_wether_delete2__Fv
|
||||
// dKyw_wether_delete2(void)
|
||||
asm void dKyw_wether_delete2(void) {
|
||||
nofralloc
|
||||
#include "d/d_kankyo/d_kankyo_wether/asm/func_800581AC.s"
|
||||
}
|
||||
|
||||
extern "C" {
|
||||
// __dt__21dKankyo_vrkumo_PacketFv
|
||||
// dKankyo_vrkumo_Packet::~dKankyo_vrkumo_Packet(void)
|
||||
asm void func_8005820C(void) {
|
||||
@@ -589,14 +590,14 @@ asm void wether_move_thunder(void) {
|
||||
nofralloc
|
||||
#include "d/d_kankyo/d_kankyo_wether/asm/func_80058290.s"
|
||||
}
|
||||
|
||||
};
|
||||
// dKyw_wether_move__Fv
|
||||
// dKyw_wether_move(void)
|
||||
asm void dKyw_wether_move(void) {
|
||||
nofralloc
|
||||
#include "d/d_kankyo/d_kankyo_wether/asm/func_800582F8.s"
|
||||
}
|
||||
|
||||
extern "C" {
|
||||
// wether_move_sun__Fv
|
||||
// wether_move_sun(void)
|
||||
asm void wether_move_sun(void) {
|
||||
@@ -666,14 +667,13 @@ asm void wether_move_evil(void) {
|
||||
nofralloc
|
||||
#include "d/d_kankyo/d_kankyo_wether/asm/func_80059F74.s"
|
||||
}
|
||||
|
||||
};
|
||||
// dKyw_wether_move_draw__Fv
|
||||
// dKyw_wether_move_draw(void)
|
||||
asm void dKyw_wether_move_draw(void) {
|
||||
nofralloc
|
||||
#include "d/d_kankyo/d_kankyo_wether/asm/func_8005A0B8.s"
|
||||
}
|
||||
|
||||
// dKyw_wether_move_draw2__Fv
|
||||
// dKyw_wether_move_draw2(void)
|
||||
asm void dKyw_wether_move_draw2(void) {
|
||||
@@ -694,7 +694,7 @@ asm void dKyw_wether_draw2(void) {
|
||||
nofralloc
|
||||
#include "d/d_kankyo/d_kankyo_wether/asm/func_8005A304.s"
|
||||
}
|
||||
|
||||
extern "C" {
|
||||
// dKyw_wether_proc__Fv
|
||||
// dKyw_wether_proc(void)
|
||||
asm void dKyw_wether_proc(void) {
|
||||
|
||||
+81
-1
@@ -1 +1,81 @@
|
||||
// ok
|
||||
#include "d/d_ky/d_kyeff/d_kyeff.h"
|
||||
#include "SComponent/c_lib.h"
|
||||
#include "Z2AudioLib/Z2EnvSeMgr/Z2EnvSeMgr.h"
|
||||
#include "d/d_com/d_com_inf_game/d_com_inf_game.h"
|
||||
#include "d/d_kankyo/d_kankyo.h"
|
||||
#include "m_Do/m_Do_audio/m_Do_audio.h"
|
||||
#include "os/OS.h"
|
||||
|
||||
bool dKyeff_Draw(dKyeff_c* dKyeff_c_ptr) {
|
||||
dKyw_wether_draw();
|
||||
return true;
|
||||
}
|
||||
|
||||
// const char* lbl_80394F38 = "Name";
|
||||
|
||||
#ifdef NONMATCHING // matching but gameinfoplay struct is messed up
|
||||
bool dKyeff_c::execute(void) {
|
||||
char* stageName = dComIfGp_getStartStageName();
|
||||
int strcmp_result = strcmp(stageName, "Name"); // strcmp(stageName,"Name");
|
||||
if (strcmp_result != 0) {
|
||||
dKyw_wether_move();
|
||||
}
|
||||
dKyw_wether_move_draw();
|
||||
dKy_FiveSenses_fullthrottle_dark();
|
||||
mDoAud_mEnvse_framework();
|
||||
return true;
|
||||
}
|
||||
#else
|
||||
asm bool dKyeff_c::execute(void) {
|
||||
nofralloc
|
||||
#include "d/d_ky/d_kyeff/asm/func_801ADD5C.s"
|
||||
}
|
||||
#endif
|
||||
|
||||
bool dKyeff_Execute(dKyeff_c* dKyeff_c_ptr) {
|
||||
return dKyeff_c_ptr->execute();
|
||||
}
|
||||
|
||||
bool dKyeff_IsDelete(dKyeff_c* dKyeff_c_ptr) {
|
||||
return true;
|
||||
}
|
||||
|
||||
bool dKyeff_Delete(dKyeff_c* dKyeff_c_ptr) {
|
||||
dKyw_wether_delete();
|
||||
return true;
|
||||
}
|
||||
/*
|
||||
const f32 lbl_80453E58 = 0.0f;
|
||||
const f32 lbl_80453E5C = 1.0f;
|
||||
const f64 lbl_80453E60 = 4.503601774854144E15; //int to float conversion thing
|
||||
const f32 lbl_80453E68 = 0.7f;
|
||||
const f32 lbl_80453E6C = 15.0f;
|
||||
*/
|
||||
|
||||
#ifdef NONMATCHING // matching but gameinfoplay struct is messed up
|
||||
u32 dKyeff_Create(kankyo_class* kankyo_class_ptr) {
|
||||
int strcmp_result;
|
||||
OSTime Time;
|
||||
OSCalendarTime CalendarTime;
|
||||
|
||||
dKyw_wether_init();
|
||||
strcmp_result = strcmp(dComIfGp_getStartStageName(), "Name");
|
||||
if (strcmp_result == 0) {
|
||||
Time = OSGetTime();
|
||||
OSTicksToCalendarTime(
|
||||
Time,
|
||||
&CalendarTime); // CONCAT44(iVar1,(int)((ulonglong)OVar2 >> 0x20)),&CalendarTime);
|
||||
lbl_8042CA54.field_0xe48 = 1.0f;
|
||||
lbl_8042CA54.field_0xe4c = 0.0f;
|
||||
lbl_8042CA54.field_0xe50 = 0.0f;
|
||||
lbl_8042CA54.field_0xe58 = 0.7f;
|
||||
lbl_8042CA54.field_0x1244 = CalendarTime.hours * 15.0f;
|
||||
}
|
||||
return 4;
|
||||
}
|
||||
#else
|
||||
asm u32 dKyeff_Create(kankyo_class* kankyo_class_ptr) {
|
||||
nofralloc
|
||||
#include "d/d_ky/d_kyeff/asm/func_801ADE00.s"
|
||||
}
|
||||
#endif
|
||||
|
||||
+30
-1
@@ -1 +1,30 @@
|
||||
// ok
|
||||
#include "d/d_ky/d_kyeff2/d_kyeff2.h"
|
||||
#include "global.h"
|
||||
|
||||
bool dKyeff2_Draw(dKyeff2_c* p_dKyeff2_c) {
|
||||
dKyw_wether_draw2();
|
||||
return true;
|
||||
}
|
||||
|
||||
bool dKyeff2_c::execute(void) {
|
||||
dKyw_wether_move_draw2();
|
||||
return true;
|
||||
}
|
||||
|
||||
bool dKyeff2_Execute(dKyeff2_c* p_dKyeff2_c) {
|
||||
return p_dKyeff2_c->execute();
|
||||
}
|
||||
|
||||
bool dKyeff2_IsDelete(dKyeff2_c* p_dKyeff2_c) {
|
||||
return true;
|
||||
}
|
||||
|
||||
bool dKyeff2_Delete(dKyeff2_c* p_dKyeff2_c) {
|
||||
dKyw_wether_delete2();
|
||||
return true;
|
||||
}
|
||||
|
||||
int dKyeff2_Create(kankyo_class* p_kankyo_class) {
|
||||
dKyw_wether_init2();
|
||||
return 4;
|
||||
}
|
||||
@@ -244,7 +244,6 @@ void getGlbResource__10JKRArchiveFUlPCcP10JKRArchive(void);
|
||||
void mDoExt_3DlineMatSortPacket_NS_dtor(void);
|
||||
void mDoExt_3Dline_c(void);
|
||||
void mDoExt_3Dline_c_NS_init(void);
|
||||
void mDoExt_GetCurrentRunningThread(void);
|
||||
void mDoExt_J3DModel__create(void);
|
||||
void mDoExt_McaMorf2_NS_ERROR_EXIT(void);
|
||||
void mDoExt_McaMorf2_NS_create(void);
|
||||
@@ -1841,14 +1840,14 @@ asm void mDoExt_setAraCacheSize(void) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_ext/asm/func_80014D5C.s"
|
||||
}
|
||||
|
||||
};
|
||||
// mDoExt_GetCurrentRunningThread__Fv
|
||||
// mDoExt_GetCurrentRunningThread(void)
|
||||
asm void mDoExt_GetCurrentRunningThread(void) {
|
||||
asm OSThread* mDoExt_GetCurrentRunningThread(void) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_ext/asm/func_80014D64.s"
|
||||
}
|
||||
|
||||
extern "C" {
|
||||
// setGX__7JUTFontFQ28JUtility6TColorQ28JUtility6TColor
|
||||
// JUTFont::setGX(JUtility::TColor, JUtility::TColor)
|
||||
asm void func_80014D9C(void) {
|
||||
|
||||
+223
-1
@@ -1 +1,223 @@
|
||||
// ok
|
||||
#include "m_Do/m_Do_graphic/m_Do_graphic.h"
|
||||
#include "JSystem/J2DSys.h"
|
||||
#include "JSystem/JKernel/JKRHeap/JKRHeap.h"
|
||||
#include "JSystem/JUtility/JUTGamePad/JUTGamePad.h"
|
||||
#include "SComponent/c_lib.h"
|
||||
#include "d/d_a/d_a_player/d_a_player.h"
|
||||
#include "d/d_com/d_com_inf_game/d_com_inf_game.h"
|
||||
#include "d/d_drawlist/d_drawlist.h"
|
||||
#include "d/d_kankyo/d_kankyo.h"
|
||||
#include "f/f_pc/f_pc_searcher.h"
|
||||
#include "global.h"
|
||||
#include "gx/GX.h"
|
||||
#include "m_Do/m_Do_main/m_Do_main.h"
|
||||
|
||||
#ifdef NONMATCHING // mr and addi swapped
|
||||
ResTIMG* createTimg(u16 width, u16 height, u32 format) {
|
||||
u32 data_offset = 32;
|
||||
|
||||
u32 texture_buffer_size = GXGetTexBufferSize(width, height, format, 0, 0);
|
||||
u32 alloc_size = texture_buffer_size + data_offset;
|
||||
void* ptr = JKRHeap::alloc(alloc_size, data_offset, NULL);
|
||||
ResTIMG* timg_ptr = (ResTIMG*)ptr;
|
||||
if (timg_ptr == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
cLib_memSet(timg_ptr, 0, texture_buffer_size);
|
||||
timg_ptr->texture_format = format;
|
||||
timg_ptr->is_alpha_enabled = false;
|
||||
timg_ptr->texture_width = width;
|
||||
timg_ptr->texture_height = height;
|
||||
timg_ptr->min_filter = GX_LINEAR;
|
||||
timg_ptr->mag_filter = GX_LINEAR;
|
||||
timg_ptr->num_mipmaps = 1;
|
||||
timg_ptr->texture_data_offset = data_offset;
|
||||
return timg_ptr;
|
||||
}
|
||||
#else
|
||||
asm ResTIMG* createTimg(u16 width, u16 height, u32 format) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_80007D9C.s"
|
||||
}
|
||||
#endif
|
||||
|
||||
asm void mDoGph_gInf_c::create(void) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_80007E44.s"
|
||||
}
|
||||
|
||||
asm void mDoGph_gInf_c::beginRender(void) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_80007F90.s"
|
||||
}
|
||||
|
||||
#ifdef NONMATCHING // need to figure out float stuff
|
||||
void mDoGph_gInf_c::fadeOut(f32 fadeSpeed, _GXColor& color) {
|
||||
lbl_80450BE6 = true;
|
||||
|
||||
lbl_80450BDC = lbl_80451A38;
|
||||
// lbl_80450594 = color;
|
||||
|
||||
lbl_80450594.r = color.r;
|
||||
lbl_80450594.g = color.g;
|
||||
lbl_80450594.b = color.b;
|
||||
lbl_80450594.a = color.a;
|
||||
|
||||
// lbl_80450BE0 = fadeSpeed;
|
||||
|
||||
if (fadeSpeed < 0.0f) {
|
||||
lbl_80450BDC = 1.0f;
|
||||
}
|
||||
}
|
||||
#else
|
||||
asm void mDoGph_gInf_c::fadeOut(f32 fadeSpeed, _GXColor& color) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_80007FD8.s"
|
||||
}
|
||||
#endif
|
||||
|
||||
asm void mDoGph_gInf_c::fadeOut_f(f32 speed, _GXColor& color) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_80008028.s"
|
||||
}
|
||||
|
||||
void mDoGph_gInf_c::onBlure(void) {
|
||||
onBlure(lbl_803A2FD8);
|
||||
}
|
||||
|
||||
void mDoGph_gInf_c::onBlure(const Mtx InMtx) {
|
||||
lbl_80450BE4 = true;
|
||||
PSMTXCopy((Mtx*)InMtx, &lbl_803DD43C);
|
||||
}
|
||||
|
||||
void mDoGph_gInf_c::fadeOut(f32 speed) {
|
||||
fadeOut(speed, lbl_80450600);
|
||||
}
|
||||
|
||||
asm void darwFilter(_GXColor color) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_800080F4.s"
|
||||
}
|
||||
|
||||
asm void mDoGph_gInf_c::calcFade(void) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_80008330.s"
|
||||
}
|
||||
|
||||
void mDoGph_BlankingON(void) {
|
||||
return;
|
||||
}
|
||||
|
||||
void mDoGph_BlankingOFF(void) {
|
||||
return;
|
||||
}
|
||||
#ifdef NONMATCHING // Matching but gameinfo is screwed up at the moment
|
||||
void dScnPly_BeforeOfPaint(void) {
|
||||
dComIfGd_reset();
|
||||
}
|
||||
#else
|
||||
asm void dScnPly_BeforeOfPaint(void) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_80008424.s"
|
||||
}
|
||||
#endif
|
||||
|
||||
bool mDoGph_BeforeOfDraw(void) {
|
||||
dScnPly_BeforeOfPaint();
|
||||
return true;
|
||||
}
|
||||
|
||||
asm bool mDoGph_AfterOfDraw(void) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_80008474.s"
|
||||
}
|
||||
|
||||
asm void drawDepth2(view_class* view_class_ptr, view_port_class* view_port_class_ptr, int param_3) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_80008630.s"
|
||||
}
|
||||
|
||||
// __dt__4cXyzFv
|
||||
// cXyz::~cXyz(void)
|
||||
extern "C" { // everything gets shifted when this is an actual destructor??
|
||||
asm void cXyz_NS_dtor(void) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_80009184.s"
|
||||
}
|
||||
};
|
||||
|
||||
asm void trimming(view_class* view_class_ptr, view_port_class* view_port_class_ptr) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_800091C0.s"
|
||||
}
|
||||
|
||||
asm void mDoGph_drawFilterQuad(s8 param_1, s8 param_2) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_800094B4.s"
|
||||
}
|
||||
|
||||
asm void mDoGph_gInf_c::bloom_c::create(void) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_80009544.s"
|
||||
}
|
||||
|
||||
asm int mDoGph_gInf_c::bloom_c::remove(void) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_800095F8.s"
|
||||
}
|
||||
|
||||
asm void mDoGph_gInf_c::bloom_c::draw(void) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_80009650.s"
|
||||
}
|
||||
|
||||
asm void retry_captue_frame(view_class* view_class_ptr, view_port_class* view_port_class_ptr,
|
||||
int param_3) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_8000A160.s"
|
||||
}
|
||||
|
||||
asm void motionBlure(view_class* view_class_ptr) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_8000A290.s"
|
||||
}
|
||||
|
||||
asm void setLight(void) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_8000A504.s"
|
||||
}
|
||||
|
||||
asm void drawItem3D(void) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_8000A58C.s"
|
||||
}
|
||||
|
||||
asm bool mDoGph_Painter(void) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_8000A604.s"
|
||||
}
|
||||
|
||||
extern "C" {
|
||||
// __dt__13J2DOrthoGraphFv
|
||||
// J2DOrthoGraph::~J2DOrthoGraph(void)
|
||||
asm void __dt__13J2DOrthoGraphFv(void) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_8000B118.s"
|
||||
}
|
||||
};
|
||||
|
||||
asm void mDoGph_Create(void) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_8000B174.s"
|
||||
}
|
||||
|
||||
extern "C" {
|
||||
asm void __sinit_m_Do_graphic_cpp(void) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_graphic/asm/func_8000B1D0.s"
|
||||
}
|
||||
};
|
||||
|
||||
int daPy_py_c::getAtnActorID(void) const {
|
||||
return -1;
|
||||
}
|
||||
+131
-1
@@ -1 +1,131 @@
|
||||
// ok
|
||||
#include "m_Do/m_Do_printf/m_Do_printf.h"
|
||||
#include "global.h"
|
||||
#include "m_Do/m_Do_ext/m_Do_ext.h"
|
||||
#include "os/OS.h"
|
||||
|
||||
asm void OSSwitchFiberEx(u32, u32, u32, u32, u32, u32) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_printf/asm/func_80006798.s"
|
||||
}
|
||||
|
||||
void my_PutString(const char* message) {
|
||||
fputs(message, &lbl_803D29B0.stdout);
|
||||
}
|
||||
|
||||
void OSVAttention(const char* fmt, __va_list_struct* va_list) {
|
||||
mDoPrintf_vprintf(fmt, va_list);
|
||||
}
|
||||
|
||||
extern "C" {
|
||||
asm void OSAttention(char* msg, ...) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_printf/asm/func_80006814.s"
|
||||
}
|
||||
|
||||
void OSReportDisable(void) {
|
||||
lbl_80450B98 = true;
|
||||
}
|
||||
|
||||
void OSReportEnable(void) {
|
||||
lbl_80450B98 = false;
|
||||
}
|
||||
|
||||
void OSReportForceEnableOn(void) {
|
||||
lbl_80450B9C = true;
|
||||
}
|
||||
|
||||
void OSReportForceEnableOff(void) {
|
||||
lbl_80450B9C = false;
|
||||
}
|
||||
}; // extern "C"
|
||||
|
||||
void OSReportInit(void) {
|
||||
if (lbl_80450BB4 == false) {
|
||||
lbl_80450BB4 = true;
|
||||
}
|
||||
}
|
||||
|
||||
void mDoPrintf_vprintf_Interrupt(const char* format, __va_list_struct* list) {
|
||||
s32 enable;
|
||||
|
||||
enable = OSDisableInterrupts();
|
||||
if (lbl_80450BB5 == false) {
|
||||
lbl_80450BB5 = true;
|
||||
OSSwitchFiberEx((u32)format, (u32)list, 0, 0, (u32)&vprintf,
|
||||
(u32)&lbl_803DB740.stack[0x800]);
|
||||
lbl_80450BB5 = false;
|
||||
}
|
||||
OSRestoreInterrupts(enable);
|
||||
}
|
||||
|
||||
void mDoPrintf_vprintf_Thread(const char* format, __va_list_struct* list) {
|
||||
vprintf(format, list);
|
||||
}
|
||||
|
||||
void mDoPrintf_vprintf(const char* format, __va_list_struct* list) {
|
||||
OSThread* thread;
|
||||
u8* stack_pointer;
|
||||
|
||||
thread = mDoExt_GetCurrentRunningThread();
|
||||
if (thread == NULL) {
|
||||
mDoPrintf_vprintf_Interrupt(format, list);
|
||||
} else {
|
||||
stack_pointer = OSGetStackPointer();
|
||||
if ((stack_pointer < thread->stack_end + 0xa00) || (stack_pointer > thread->stack_base)) {
|
||||
mDoPrintf_vprintf_Interrupt(format, list);
|
||||
} else {
|
||||
mDoPrintf_vprintf_Thread(format, list);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
extern "C" {
|
||||
void mDoPrintf_VReport(const char* format, __va_list_struct* list) {
|
||||
OSThread* thread;
|
||||
|
||||
if (lbl_80450BB4 == false) {
|
||||
OSReportInit();
|
||||
}
|
||||
if ((lbl_80450B9C) || (lbl_80450B98 == false)) {
|
||||
thread = mDoExt_GetCurrentRunningThread();
|
||||
if ((lbl_80450BA0 == NULL) || (lbl_80450BA0 == thread)) {
|
||||
mDoPrintf_vprintf(format, list);
|
||||
lbl_80450BA4++; // increment print counts
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void OSVReport(const char* format, __va_list_struct* list) {
|
||||
mDoPrintf_VReport(format, list);
|
||||
}
|
||||
|
||||
asm void OSReport(char* fmt, ...) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_printf/asm/func_80006ABC.s"
|
||||
}
|
||||
|
||||
asm void OSReport_FatalError(char* fmt, ...) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_printf/asm/func_80006B3C.s"
|
||||
}
|
||||
|
||||
asm void OSReport_Error(char* fmt, ...) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_printf/asm/func_80006C0C.s"
|
||||
}
|
||||
|
||||
asm void OSReport_Warning(char* fmt, ...) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_printf/asm/func_80006CEC.s"
|
||||
}
|
||||
|
||||
asm void OSReport_System(char* fmt, ...) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_printf/asm/func_80006DCC.s"
|
||||
}
|
||||
|
||||
asm void OSPanic(char* file, s32 line, char* fmt, ...) {
|
||||
nofralloc
|
||||
#include "m_Do/m_Do_printf/asm/func_80006E7C.s"
|
||||
}
|
||||
}; // extern "C"
|
||||
|
||||
Reference in New Issue
Block a user