diff --git a/asm/f/op/draw/f_op_draw_iter.s b/asm/f/op/draw/f_op_draw_iter.s deleted file mode 100644 index ddb9bd8edf5..00000000000 --- a/asm/f/op/draw/f_op_draw_iter.s +++ /dev/null @@ -1,62 +0,0 @@ -.include "macros.inc" - -.section .text, "ax" # 80020400 - - -.global fopDwIt_GetTag -fopDwIt_GetTag: -/* 80020400 0001D340 80 8D 80 50 */ lwz r4, lbl_804505D0-_SDA_BASE_(r13) -/* 80020404 0001D344 38 6D 80 50 */ addi r3, r13, lbl_804505D0-_SDA_BASE_ -/* 80020408 0001D348 80 A3 00 04 */ lwz r5, 4(r3) -/* 8002040C 0001D34C 48 00 00 20 */ b lbl_8002042C -lbl_80020410: -/* 80020410 0001D350 80 6D 87 78 */ lwz r3, lbl_80450CF8-_SDA_BASE_(r13) -/* 80020414 0001D354 38 03 00 01 */ addi r0, r3, 1 -/* 80020418 0001D358 90 0D 87 78 */ stw r0, lbl_80450CF8-_SDA_BASE_(r13) -/* 8002041C 0001D35C 1C 00 00 0C */ mulli r0, r0, 0xc -/* 80020420 0001D360 7C 64 00 2E */ lwzx r3, r4, r0 -/* 80020424 0001D364 28 03 00 00 */ cmplwi r3, 0 -/* 80020428 0001D368 4C 82 00 20 */ bnelr -lbl_8002042C: -/* 8002042C 0001D36C 80 6D 87 78 */ lwz r3, lbl_80450CF8-_SDA_BASE_(r13) -/* 80020430 0001D370 38 03 00 01 */ addi r0, r3, 1 -/* 80020434 0001D374 7C 00 28 00 */ cmpw r0, r5 -/* 80020438 0001D378 41 80 FF D8 */ blt lbl_80020410 -/* 8002043C 0001D37C 38 60 00 00 */ li r3, 0 -/* 80020440 0001D380 4E 80 00 20 */ blr - -.global fopDwIt_Begin -fopDwIt_Begin: -/* 80020444 0001D384 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80020448 0001D388 7C 08 02 A6 */ mflr r0 -/* 8002044C 0001D38C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80020450 0001D390 80 6D 80 50 */ lwz r3, lbl_804505D0-_SDA_BASE_(r13) -/* 80020454 0001D394 80 63 00 00 */ lwz r3, 0(r3) -/* 80020458 0001D398 38 00 00 00 */ li r0, 0 -/* 8002045C 0001D39C 90 0D 87 78 */ stw r0, lbl_80450CF8-_SDA_BASE_(r13) -/* 80020460 0001D3A0 28 03 00 00 */ cmplwi r3, 0 -/* 80020464 0001D3A4 41 82 00 08 */ beq lbl_8002046C -/* 80020468 0001D3A8 48 00 00 08 */ b lbl_80020470 -lbl_8002046C: -/* 8002046C 0001D3AC 4B FF FF 95 */ bl fopDwIt_GetTag -lbl_80020470: -/* 80020470 0001D3B0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80020474 0001D3B4 7C 08 03 A6 */ mtlr r0 -/* 80020478 0001D3B8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8002047C 0001D3BC 4E 80 00 20 */ blr - -.global fopDwIt_Next -fopDwIt_Next: -/* 80020480 0001D3C0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80020484 0001D3C4 7C 08 02 A6 */ mflr r0 -/* 80020488 0001D3C8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8002048C 0001D3CC 80 63 00 08 */ lwz r3, 8(r3) -/* 80020490 0001D3D0 28 03 00 00 */ cmplwi r3, 0 -/* 80020494 0001D3D4 40 82 00 08 */ bne lbl_8002049C -/* 80020498 0001D3D8 4B FF FF 69 */ bl fopDwIt_GetTag -lbl_8002049C: -/* 8002049C 0001D3DC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800204A0 0001D3E0 7C 08 03 A6 */ mtlr r0 -/* 800204A4 0001D3E4 38 21 00 10 */ addi r1, r1, 0x10 -/* 800204A8 0001D3E8 4E 80 00 20 */ blr - diff --git a/include/f/f_op/f_op_draw_iter/asm/func_80020400.s b/include/f/f_op/f_op_draw_iter/asm/func_80020400.s new file mode 100644 index 00000000000..1f740a04da9 --- /dev/null +++ b/include/f/f_op/f_op_draw_iter/asm/func_80020400.s @@ -0,0 +1,19 @@ +/* 80020400 0001D340 80 8D 80 50 */ lwz r4, lbl_804505D0-_SDA_BASE_(r13) +/* 80020404 0001D344 38 6D 80 50 */ la r3, lbl_804505D0(r13) +/* 80020408 0001D348 80 A3 00 04 */ lwz r5, 4(r3) +/* 8002040C 0001D34C 48 00 00 20 */ b lbl_8002042C +lbl_80020410: +/* 80020410 0001D350 80 6D 87 78 */ lwz r3, lbl_80450CF8-_SDA_BASE_(r13) +/* 80020414 0001D354 38 03 00 01 */ addi r0, r3, 1 +/* 80020418 0001D358 90 0D 87 78 */ stw r0, lbl_80450CF8-_SDA_BASE_(r13) +/* 8002041C 0001D35C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80020420 0001D360 7C 64 00 2E */ lwzx r3, r4, r0 +/* 80020424 0001D364 28 03 00 00 */ cmplwi r3, 0 +/* 80020428 0001D368 4C 82 00 20 */ bnelr +lbl_8002042C: +/* 8002042C 0001D36C 80 6D 87 78 */ lwz r3, lbl_80450CF8-_SDA_BASE_(r13) +/* 80020430 0001D370 38 03 00 01 */ addi r0, r3, 1 +/* 80020434 0001D374 7C 00 28 00 */ cmpw r0, r5 +/* 80020438 0001D378 41 80 FF D8 */ blt lbl_80020410 +/* 8002043C 0001D37C 38 60 00 00 */ li r3, 0 +/* 80020440 0001D380 4E 80 00 20 */ blr diff --git a/include/f/f_op/f_op_draw_iter/asm/func_80020444.s b/include/f/f_op/f_op_draw_iter/asm/func_80020444.s new file mode 100644 index 00000000000..bc59f4ac5d6 --- /dev/null +++ b/include/f/f_op/f_op_draw_iter/asm/func_80020444.s @@ -0,0 +1,17 @@ +/* 80020444 0001D384 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80020448 0001D388 7C 08 02 A6 */ mflr r0 +/* 8002044C 0001D38C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80020450 0001D390 80 6D 80 50 */ lwz r3, lbl_804505D0-_SDA_BASE_(r13) +/* 80020454 0001D394 80 63 00 00 */ lwz r3, 0(r3) +/* 80020458 0001D398 38 00 00 00 */ li r0, 0 +/* 8002045C 0001D39C 90 0D 87 78 */ stw r0, lbl_80450CF8-_SDA_BASE_(r13) +/* 80020460 0001D3A0 28 03 00 00 */ cmplwi r3, 0 +/* 80020464 0001D3A4 41 82 00 08 */ beq lbl_8002046C +/* 80020468 0001D3A8 48 00 00 08 */ b lbl_80020470 +lbl_8002046C: +/* 8002046C 0001D3AC 4B FF FF 95 */ bl fopDwIt_GetTag +lbl_80020470: +/* 80020470 0001D3B0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80020474 0001D3B4 7C 08 03 A6 */ mtlr r0 +/* 80020478 0001D3B8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8002047C 0001D3BC 4E 80 00 20 */ blr diff --git a/include/f/f_op/f_op_draw_iter/asm/func_80020480.s b/include/f/f_op/f_op_draw_iter/asm/func_80020480.s new file mode 100644 index 00000000000..59ecf0c8f72 --- /dev/null +++ b/include/f/f_op/f_op_draw_iter/asm/func_80020480.s @@ -0,0 +1,12 @@ +/* 80020480 0001D3C0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80020484 0001D3C4 7C 08 02 A6 */ mflr r0 +/* 80020488 0001D3C8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8002048C 0001D3CC 80 63 00 08 */ lwz r3, 8(r3) +/* 80020490 0001D3D0 28 03 00 00 */ cmplwi r3, 0 +/* 80020494 0001D3D4 40 82 00 08 */ bne lbl_8002049C +/* 80020498 0001D3D8 4B FF FF 69 */ bl fopDwIt_GetTag +lbl_8002049C: +/* 8002049C 0001D3DC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 800204A0 0001D3E0 7C 08 03 A6 */ mtlr r0 +/* 800204A4 0001D3E4 38 21 00 10 */ addi r1, r1, 0x10 +/* 800204A8 0001D3E8 4E 80 00 20 */ blr diff --git a/obj_files.mk b/obj_files.mk index 4e30be5831b..c7425a30593 100644 --- a/obj_files.mk +++ b/obj_files.mk @@ -72,7 +72,7 @@ TEXT_O_FILES := \ $(BUILD_DIR)/asm/f/op/kankyo/f_op_kankyo_mng.o \ $(BUILD_DIR)/asm/sdata2/f_op_msg_mng.o \ $(BUILD_DIR)/asm/f/op/msg/f_op_msg_mng.o \ - $(BUILD_DIR)/asm/f/op/draw/f_op_draw_iter.o \ + $(BUILD_DIR)/src/f/f_op/f_op_draw_iter.o \ $(BUILD_DIR)/asm/f/op/draw/f_op_draw_tag.o \ $(BUILD_DIR)/asm/f/op/scene/f_op_scene_pause.o \ $(BUILD_DIR)/src/f/f_pc/f_pc_base.o \ diff --git a/src/f/f_op/f_op_draw_iter.cpp b/src/f/f_op/f_op_draw_iter.cpp index 4bf93c8658d..fa9af8cb5d7 100644 --- a/src/f/f_op/f_op_draw_iter.cpp +++ b/src/f/f_op/f_op_draw_iter.cpp @@ -1 +1,41 @@ -// ok +/* f_op_draw_iter.cpp autogenerated by split.py v0.4 at 2021-02-15 20:16:49.147351 */ + +#include "global.h" + +// additional symbols needed for f_op_draw_iter.cpp +// autogenerated by split.py v0.4 at 2021-02-15 20:16:49.147373 +extern "C" { + void fopDwIt_Begin(void); + void fopDwIt_GetTag(void); + void fopDwIt_Next(void); +} + +// additional symbols needed for f_op_draw_iter.cpp +// autogenerated by split.py v0.4 at 2021-02-15 20:16:49.147378 +extern u8 lbl_804505D0; +extern u8 lbl_80450CF8; + + +extern "C" { +// fopDwIt_GetTag__Fv +// fopDwIt_GetTag(void) +asm void fopDwIt_GetTag(void) { + nofralloc + #include "f/f_op/f_op_draw_iter/asm/func_80020400.s" +} + +// fopDwIt_Begin__Fv +// fopDwIt_Begin(void) +asm void fopDwIt_Begin(void) { + nofralloc + #include "f/f_op/f_op_draw_iter/asm/func_80020444.s" +} + +// fopDwIt_Next__FP16create_tag_class +// fopDwIt_Next(create_tag_class*) +asm void fopDwIt_Next(void) { + nofralloc + #include "f/f_op/f_op_draw_iter/asm/func_80020480.s" +} + +};