diff --git a/asm/non_matchings/menu/MenuBootLoop.s b/asm/non_matchings/menu/MenuBootLoop.s index 6027bf97..68cdeb1c 100644 --- a/asm/non_matchings/menu/MenuBootLoop.s +++ b/asm/non_matchings/menu/MenuBootLoop.s @@ -111,7 +111,7 @@ glabel menu_boot_loop /* 089394 80088794 AFAD0010 */ sw $t5, 0x10($sp) /* 089398 80088798 24A5F7DC */ addiu $a1, %lo(D_800DF7DC) # addiu $a1, $a1, -0x824 /* 08939C 8008879C 248463A0 */ addiu $a0, %lo(D_801263A0) # addiu $a0, $a0, 0x63a0 -/* 0893A0 800887A0 0C01E2AE */ jal func_80078AB8 +/* 0893A0 800887A0 0C01E2AE */ jal render_textured_rectangle /* 0893A4 800887A4 240600A0 */ li $a2, 160 /* 0893A8 800887A8 3C048012 */ lui $a0, %hi(D_801263A0) # $a0, 0x8012 /* 0893AC 800887AC 0C01ECF4 */ jal func_8007B3D0 diff --git a/asm/non_matchings/menu/draw_menu_element.s b/asm/non_matchings/menu/draw_menu_element.s index c44e8178..16917f3b 100644 --- a/asm/non_matchings/menu/draw_menu_element.s +++ b/asm/non_matchings/menu/draw_menu_element.s @@ -234,7 +234,7 @@ glabel L80082524 /* 08314C 8008254C 02403025 */ move $a2, $s2 /* 083150 80082550 24150001 */ li $s5, 1 /* 083154 80082554 026A3821 */ addu $a3, $s3, $t2 -/* 083158 80082558 0C01E2AE */ jal func_80078AB8 +/* 083158 80082558 0C01E2AE */ jal render_textured_rectangle /* 08315C 8008255C AFAE001C */ sw $t6, 0x1c($sp) /* 083160 80082560 8FA40070 */ lw $a0, 0x70($sp) /* 083164 80082564 100000B1 */ b .L8008282C diff --git a/asm/non_matchings/menu/func_8008377C.s b/asm/non_matchings/menu/func_8008377C.s index 2317e23c..c05c791b 100644 --- a/asm/non_matchings/menu/func_8008377C.s +++ b/asm/non_matchings/menu/func_8008377C.s @@ -67,7 +67,7 @@ glabel func_8008377C /* 08447C 8008387C AFAA0014 */ sw $t2, 0x14($sp) /* 084480 80083880 AFA90010 */ sw $t1, 0x10($sp) /* 084484 80083884 240600A0 */ li $a2, 160 -/* 084488 80083888 0C01E2AE */ jal func_80078AB8 +/* 084488 80083888 0C01E2AE */ jal render_textured_rectangle /* 08448C 8008388C 24070034 */ li $a3, 52 .L80083890: /* 084490 80083890 0C01BD32 */ jal func_8006F4C8 diff --git a/asm/non_matchings/menu/func_80084854.s b/asm/non_matchings/menu/func_80084854.s index 813324e0..612abf22 100644 --- a/asm/non_matchings/menu/func_80084854.s +++ b/asm/non_matchings/menu/func_80084854.s @@ -174,7 +174,7 @@ glabel func_80084854 /* 0856E8 80084AE8 AFAD0010 */ sw $t5, 0x10($sp) /* 0856EC 80084AEC 02002825 */ move $a1, $s0 /* 0856F0 80084AF0 02402025 */ move $a0, $s2 -/* 0856F4 80084AF4 0C01E2AE */ jal func_80078AB8 +/* 0856F4 80084AF4 0C01E2AE */ jal render_textured_rectangle /* 0856F8 80084AF8 24070078 */ li $a3, 120 /* 0856FC 80084AFC 3C06800E */ lui $a2, %hi(gMusicVolumeSliderValue) # $a2, 0x800e /* 085700 80084B00 8CC6FAC4 */ lw $a2, %lo(gMusicVolumeSliderValue)($a2) @@ -190,7 +190,7 @@ glabel func_80084854 /* 085728 80084B28 AFA80010 */ sw $t0, 0x10($sp) /* 08572C 80084B2C 02402025 */ move $a0, $s2 /* 085730 80084B30 02002825 */ move $a1, $s0 -/* 085734 80084B34 0C01E2AE */ jal func_80078AB8 +/* 085734 80084B34 0C01E2AE */ jal render_textured_rectangle /* 085738 80084B38 240700A0 */ li $a3, 160 /* 08573C 80084B3C 0C01ECF4 */ jal func_8007B3D0 /* 085740 80084B40 02402025 */ move $a0, $s2 diff --git a/asm/non_matchings/menu/func_800853D0.s b/asm/non_matchings/menu/func_800853D0.s index d0047b0b..c8c39bc1 100644 --- a/asm/non_matchings/menu/func_800853D0.s +++ b/asm/non_matchings/menu/func_800853D0.s @@ -443,7 +443,7 @@ glabel L80085828 /* 08663C 80085A3C AFB90010 */ sw $t9, 0x10($sp) /* 086640 80085A40 01402825 */ move $a1, $t2 /* 086644 80085A44 24C6003C */ addiu $a2, $a2, 0x3c -/* 086648 80085A48 0C01E2AE */ jal func_80078AB8 +/* 086648 80085A48 0C01E2AE */ jal render_textured_rectangle /* 08664C 80085A4C 24E70006 */ addiu $a3, $a3, 6 .L80085A50: /* 086650 80085A50 8FAD0060 */ lw $t5, 0x60($sp) diff --git a/asm/non_matchings/menu/func_80085B9C.s b/asm/non_matchings/menu/func_80085B9C.s index 5453afa8..224fc97a 100644 --- a/asm/non_matchings/menu/func_80085B9C.s +++ b/asm/non_matchings/menu/func_80085B9C.s @@ -133,7 +133,7 @@ glabel L80085C30 /* 086968 80085D68 248463A0 */ addiu $a0, %lo(D_801263A0) # addiu $a0, $a0, 0x63a0 /* 08696C 80085D6C 02202825 */ move $a1, $s1 /* 086970 80085D70 240600A0 */ li $a2, 160 -/* 086974 80085D74 0C01E2AE */ jal func_80078AB8 +/* 086974 80085D74 0C01E2AE */ jal render_textured_rectangle /* 086978 80085D78 02003825 */ move $a3, $s0 /* 08697C 80085D7C 26520001 */ addiu $s2, $s2, 1 /* 086980 80085D80 24010002 */ li $at, 2 diff --git a/asm/non_matchings/menu/func_80088938.s b/asm/non_matchings/menu/func_80088938.s index fbcffa09..3bd480e6 100644 --- a/asm/non_matchings/menu/func_80088938.s +++ b/asm/non_matchings/menu/func_80088938.s @@ -319,7 +319,7 @@ glabel func_80088938 /* 089A04 80088E04 AFAC0010 */ sw $t4, 0x10($sp) /* 089A08 80088E08 24A5043C */ addiu $a1, %lo(D_800E043C) # addiu $a1, $a1, 0x43c /* 089A0C 80088E0C 240600A0 */ li $a2, 160 -/* 089A10 80088E10 0C01E2AE */ jal func_80078AB8 +/* 089A10 80088E10 0C01E2AE */ jal render_textured_rectangle /* 089A14 80088E14 26A70008 */ addiu $a3, $s5, 8 /* 089A18 80088E18 3C048012 */ lui $a0, %hi(D_801263A0) # $a0, 0x8012 /* 089A1C 80088E1C 0C01ECF4 */ jal func_8007B3D0 diff --git a/asm/non_matchings/menu/func_8008A56C.s b/asm/non_matchings/menu/func_8008A56C.s index efa4c67a..e4e166dd 100644 --- a/asm/non_matchings/menu/func_8008A56C.s +++ b/asm/non_matchings/menu/func_8008A56C.s @@ -223,7 +223,7 @@ glabel func_8008A56C /* 08B4B4 8008A8B4 AFAF0010 */ sw $t7, 0x10($sp) /* 08B4B8 8008A8B8 24A5043C */ addiu $a1, %lo(D_800E043C) # addiu $a1, $a1, 0x43c /* 08B4BC 8008A8BC 240600A0 */ li $a2, 160 -/* 08B4C0 8008A8C0 0C01E2AE */ jal func_80078AB8 +/* 08B4C0 8008A8C0 0C01E2AE */ jal render_textured_rectangle /* 08B4C4 8008A8C4 26470008 */ addiu $a3, $s2, 8 .L8008A8C8: /* 08B4C8 8008A8C8 8FBF004C */ lw $ra, 0x4c($sp) diff --git a/asm/non_matchings/menu/func_8008FA54.s b/asm/non_matchings/menu/func_8008FA54.s index 5968b6b2..938f9fda 100644 --- a/asm/non_matchings/menu/func_8008FA54.s +++ b/asm/non_matchings/menu/func_8008FA54.s @@ -293,7 +293,7 @@ glabel func_8008FA54 /* 090A88 8008FE88 AFAD001C */ sw $t5, 0x1c($sp) /* 090A8C 8008FE8C AFA00018 */ sw $zero, 0x18($sp) /* 090A90 8008FE90 AFA00014 */ sw $zero, 0x14($sp) -/* 090A94 8008FE94 0C01E2AE */ jal func_80078AB8 +/* 090A94 8008FE94 0C01E2AE */ jal render_textured_rectangle /* 090A98 8008FE98 AFA00010 */ sw $zero, 0x10($sp) /* 090A9C 8008FE9C 860E0000 */ lh $t6, ($s0) /* 090AA0 8008FEA0 860F0002 */ lh $t7, 2($s0) @@ -310,7 +310,7 @@ glabel func_8008FA54 /* 090ACC 8008FECC AFA90018 */ sw $t1, 0x18($sp) /* 090AD0 8008FED0 AFA80014 */ sw $t0, 0x14($sp) /* 090AD4 8008FED4 AFB80010 */ sw $t8, 0x10($sp) -/* 090AD8 8008FED8 0C01E2AE */ jal func_80078AB8 +/* 090AD8 8008FED8 0C01E2AE */ jal render_textured_rectangle /* 090ADC 8008FEDC 02602025 */ move $a0, $s3 .L8008FEE0: /* 090AE0 8008FEE0 26310001 */ addiu $s1, $s1, 1 diff --git a/asm/non_matchings/menu/func_80090F30.s b/asm/non_matchings/menu/func_80090F30.s index 91a23d47..aded1ab9 100644 --- a/asm/non_matchings/menu/func_80090F30.s +++ b/asm/non_matchings/menu/func_80090F30.s @@ -478,7 +478,7 @@ glabel func_80090F30 /* 092238 80091638 248463A0 */ addiu $a0, %lo(D_801263A0) # addiu $a0, $a0, 0x63a0 /* 09223C 8009163C 24060088 */ li $a2, 136 /* 092240 80091640 24E70072 */ addiu $a3, $a3, 0x72 -/* 092244 80091644 0C01E2AE */ jal func_80078AB8 +/* 092244 80091644 0C01E2AE */ jal render_textured_rectangle /* 092248 80091648 AFAA001C */ sw $t2, 0x1c($sp) /* 09224C 8009164C 1000003A */ b .L80091738 /* 092250 80091650 00000000 */ nop @@ -496,7 +496,7 @@ glabel func_80090F30 /* 09227C 8009167C 24060088 */ li $a2, 136 /* 092280 80091680 0000A825 */ move $s5, $zero /* 092284 80091684 24E70072 */ addiu $a3, $a3, 0x72 -/* 092288 80091688 0C01E2AE */ jal func_80078AB8 +/* 092288 80091688 0C01E2AE */ jal render_textured_rectangle /* 09228C 8009168C AFB8001C */ sw $t8, 0x1c($sp) /* 092290 80091690 8FB70080 */ lw $s7, 0x80($sp) /* 092294 80091694 3C10800E */ lui $s0, %hi(D_800E0648) # $s0, 0x800e @@ -520,7 +520,7 @@ glabel func_80090F30 /* 0922D8 800916D8 248463A0 */ addiu $a0, %lo(D_801263A0) # addiu $a0, $a0, 0x63a0 /* 0922DC 800916DC 24060068 */ li $a2, 104 /* 0922E0 800916E0 02E03825 */ move $a3, $s7 -/* 0922E4 800916E4 0C01E2AE */ jal func_80078AB8 +/* 0922E4 800916E4 0C01E2AE */ jal render_textured_rectangle /* 0922E8 800916E8 AFA8001C */ sw $t0, 0x1c($sp) /* 0922EC 800916EC 1000000E */ b .L80091728 /* 0922F0 800916F0 26B50001 */ addiu $s5, $s5, 1 @@ -535,7 +535,7 @@ glabel func_80090F30 /* 092310 80091710 AFAA0010 */ sw $t2, 0x10($sp) /* 092314 80091714 24060068 */ li $a2, 104 /* 092318 80091718 02E03825 */ move $a3, $s7 -/* 09231C 8009171C 0C01E2AE */ jal func_80078AB8 +/* 09231C 8009171C 0C01E2AE */ jal render_textured_rectangle /* 092320 80091720 AFAD001C */ sw $t5, 0x1c($sp) /* 092324 80091724 26B50001 */ addiu $s5, $s5, 1 .L80091728: @@ -616,7 +616,7 @@ glabel func_80090F30 /* 092438 80091838 AFAF0010 */ sw $t7, 0x10($sp) /* 09243C 8009183C 248463A0 */ addiu $a0, %lo(D_801263A0) # addiu $a0, $a0, 0x63a0 /* 092440 80091840 030E3821 */ addu $a3, $t8, $t6 -/* 092444 80091844 0C01E2AE */ jal func_80078AB8 +/* 092444 80091844 0C01E2AE */ jal render_textured_rectangle /* 092448 80091848 AFA8001C */ sw $t0, 0x1c($sp) /* 09244C 8009184C 26B50001 */ addiu $s5, $s5, 1 /* 092450 80091850 02B7082A */ slt $at, $s5, $s7 @@ -686,7 +686,7 @@ glabel func_80090F30 /* 09253C 8009193C AFB80010 */ sw $t8, 0x10($sp) /* 092540 80091940 248463A0 */ addiu $a0, %lo(D_801263A0) # addiu $a0, $a0, 0x63a0 /* 092544 80091944 02E03825 */ move $a3, $s7 -/* 092548 80091948 0C01E2AE */ jal func_80078AB8 +/* 092548 80091948 0C01E2AE */ jal render_textured_rectangle /* 09254C 8009194C AFB9001C */ sw $t9, 0x1c($sp) /* 092550 80091950 1000002A */ b .L800919FC /* 092554 80091954 00000000 */ nop @@ -712,7 +712,7 @@ glabel func_80090F30 /* 0925A0 800919A0 AFAE0010 */ sw $t6, 0x10($sp) /* 0925A4 800919A4 248463A0 */ addiu $a0, %lo(D_801263A0) # addiu $a0, $a0, 0x63a0 /* 0925A8 800919A8 02E03825 */ move $a3, $s7 -/* 0925AC 800919AC 0C01E2AE */ jal func_80078AB8 +/* 0925AC 800919AC 0C01E2AE */ jal render_textured_rectangle /* 0925B0 800919B0 AFA9001C */ sw $t1, 0x1c($sp) /* 0925B4 800919B4 10000011 */ b .L800919FC /* 0925B8 800919B8 00000000 */ nop @@ -732,7 +732,7 @@ glabel func_80090F30 /* 0925EC 800919EC 25810001 */ addiu $at, $t4, 1 /* 0925F0 800919F0 00016843 */ sra $t5, $at, 1 .L800919F4: -/* 0925F4 800919F4 0C01E2AE */ jal func_80078AB8 +/* 0925F4 800919F4 0C01E2AE */ jal render_textured_rectangle /* 0925F8 800919F8 AFAD001C */ sw $t5, 0x1c($sp) .L800919FC: /* 0925FC 800919FC 3C02800E */ lui $v0, %hi(gNumberOfActivePlayers) # $v0, 0x800e @@ -784,7 +784,7 @@ glabel func_80090F30 /* 0926A4 80091AA4 AFA80018 */ sw $t0, 0x18($sp) /* 0926A8 80091AA8 AFAA0014 */ sw $t2, 0x14($sp) /* 0926AC 80091AAC AFA90010 */ sw $t1, 0x10($sp) -/* 0926B0 80091AB0 0C01E2AE */ jal func_80078AB8 +/* 0926B0 80091AB0 0C01E2AE */ jal render_textured_rectangle /* 0926B4 80091AB4 AFAB001C */ sw $t3, 0x1c($sp) /* 0926B8 80091AB8 3C02800E */ lui $v0, %hi(gNumberOfActivePlayers) # $v0, 0x800e /* 0926BC 80091ABC 8C42F4BC */ lw $v0, %lo(gNumberOfActivePlayers)($v0) @@ -810,7 +810,7 @@ glabel func_80090F30 /* 092708 80091B08 000DC080 */ sll $t8, $t5, 2 /* 09270C 80091B0C 00B82821 */ addu $a1, $a1, $t8 /* 092710 80091B10 8CA50648 */ lw $a1, %lo(D_800E0648)($a1) -/* 092714 80091B14 0C01E2AE */ jal func_80078AB8 +/* 092714 80091B14 0C01E2AE */ jal render_textured_rectangle /* 092718 80091B18 AFA9001C */ sw $t1, 0x1c($sp) /* 09271C 80091B1C 3C02800E */ lui $v0, %hi(gNumberOfActivePlayers) # $v0, 0x800e /* 092720 80091B20 8C42F4BC */ lw $v0, %lo(gNumberOfActivePlayers)($v0) @@ -842,7 +842,7 @@ glabel func_80090F30 /* 092784 80091B84 AFAF0018 */ sw $t7, 0x18($sp) /* 092788 80091B88 AFAE0014 */ sw $t6, 0x14($sp) /* 09278C 80091B8C AFB80010 */ sw $t8, 0x10($sp) -/* 092790 80091B90 0C01E2AE */ jal func_80078AB8 +/* 092790 80091B90 0C01E2AE */ jal render_textured_rectangle /* 092794 80091B94 AFB9001C */ sw $t9, 0x1c($sp) /* 092798 80091B98 3C028012 */ lui $v0, %hi(gPlayerSelectVehicle+1) # $v0, 0x8012 /* 09279C 80091B9C 804269C1 */ lb $v0, %lo(gPlayerSelectVehicle+1)($v0) @@ -867,7 +867,7 @@ glabel func_80090F30 /* 0927E4 80091BE4 AFAD0018 */ sw $t5, 0x18($sp) /* 0927E8 80091BE8 AFAC0014 */ sw $t4, 0x14($sp) /* 0927EC 80091BEC AFAB0010 */ sw $t3, 0x10($sp) -/* 0927F0 80091BF0 0C01E2AE */ jal func_80078AB8 +/* 0927F0 80091BF0 0C01E2AE */ jal render_textured_rectangle /* 0927F4 80091BF4 AFB8001C */ sw $t8, 0x1c($sp) .L80091BF8: /* 0927F8 80091BF8 3C048012 */ lui $a0, %hi(D_801263A0) # $a0, 0x8012 @@ -1175,7 +1175,7 @@ glabel func_80090F30 /* 092C70 80092070 248463A0 */ addiu $a0, %lo(D_801263A0) # addiu $a0, $a0, 0x63a0 /* 092C74 80092074 240600CC */ li $a2, 204 /* 092C78 80092078 24E7007A */ addiu $a3, $a3, 0x7a -/* 092C7C 8009207C 0C01E2AE */ jal func_80078AB8 +/* 092C7C 8009207C 0C01E2AE */ jal render_textured_rectangle /* 092C80 80092080 AFAF001C */ sw $t7, 0x1c($sp) /* 092C84 80092084 3C048012 */ lui $a0, %hi(D_801263A0) # $a0, 0x8012 /* 092C88 80092088 0C01ECF4 */ jal func_8007B3D0 diff --git a/asm/non_matchings/menu/func_80092E94.s b/asm/non_matchings/menu/func_80092E94.s index 81cd42f9..a8465f7c 100644 --- a/asm/non_matchings/menu/func_80092E94.s +++ b/asm/non_matchings/menu/func_80092E94.s @@ -118,7 +118,7 @@ glabel func_80092E94 /* 093C60 80093060 02402025 */ move $a0, $s2 /* 093C64 80093064 240600CC */ li $a2, 204 /* 093C68 80093068 AFAA001C */ sw $t2, 0x1c($sp) -/* 093C6C 8009306C 0C01E2AE */ jal func_80078AB8 +/* 093C6C 8009306C 0C01E2AE */ jal render_textured_rectangle /* 093C70 80093070 24E7007A */ addiu $a3, $a3, 0x7a .L80093074: /* 093C74 80093074 0C0310BB */ jal set_text_font @@ -287,7 +287,7 @@ glabel func_80092E94 /* 093EF8 800932F8 24A505B4 */ addiu $a1, %lo(D_800E05B4) # addiu $a1, $a1, 0x5b4 /* 093EFC 800932FC 02402025 */ move $a0, $s2 /* 093F00 80093300 24060088 */ li $a2, 136 -/* 093F04 80093304 0C01E2AE */ jal func_80078AB8 +/* 093F04 80093304 0C01E2AE */ jal render_textured_rectangle /* 093F08 80093308 24E70072 */ addiu $a3, $a3, 0x72 /* 093F0C 8009330C 8FB90060 */ lw $t9, 0x60($sp) /* 093F10 80093310 00008025 */ move $s0, $zero @@ -332,7 +332,7 @@ glabel func_80092E94 /* 093FA4 800933A4 AFA90010 */ sw $t1, 0x10($sp) /* 093FA8 800933A8 02402025 */ move $a0, $s2 /* 093FAC 800933AC 24060068 */ li $a2, 104 -/* 093FB0 800933B0 0C01E2AE */ jal func_80078AB8 +/* 093FB0 800933B0 0C01E2AE */ jal render_textured_rectangle /* 093FB4 800933B4 02203825 */ move $a3, $s1 /* 093FB8 800933B8 1000000E */ b .L800933F4 /* 093FBC 800933BC 26310018 */ addiu $s1, $s1, 0x18 @@ -347,7 +347,7 @@ glabel func_80092E94 /* 093FDC 800933DC 02402025 */ move $a0, $s2 /* 093FE0 800933E0 24060068 */ li $a2, 104 /* 093FE4 800933E4 02203825 */ move $a3, $s1 -/* 093FE8 800933E8 0C01E2AE */ jal func_80078AB8 +/* 093FE8 800933E8 0C01E2AE */ jal render_textured_rectangle /* 093FEC 800933EC AFA2001C */ sw $v0, 0x1c($sp) /* 093FF0 800933F0 26310018 */ addiu $s1, $s1, 0x18 .L800933F4: @@ -378,7 +378,7 @@ glabel func_80092E94 /* 094050 80093450 AFA90014 */ sw $t1, 0x14($sp) /* 094054 80093454 AFB90010 */ sw $t9, 0x10($sp) /* 094058 80093458 24060095 */ li $a2, 149 -/* 09405C 8009345C 0C01E2AE */ jal func_80078AB8 +/* 09405C 8009345C 0C01E2AE */ jal render_textured_rectangle /* 094060 80093460 02203825 */ move $a3, $s1 /* 094064 80093464 0C01ECF4 */ jal func_8007B3D0 /* 094068 80093468 02402025 */ move $a0, $s2 diff --git a/asm/non_matchings/menu/func_80096978.s b/asm/non_matchings/menu/func_80096978.s index f346d0e3..ea0a7e0f 100644 --- a/asm/non_matchings/menu/func_80096978.s +++ b/asm/non_matchings/menu/func_80096978.s @@ -148,7 +148,7 @@ glabel func_80096978 /* 0977A4 80096BA4 02203825 */ move $a3, $s1 /* 0977A8 80096BA8 AFA20018 */ sw $v0, 0x18($sp) /* 0977AC 80096BAC AFA20014 */ sw $v0, 0x14($sp) -/* 0977B0 80096BB0 0C01E2AE */ jal func_80078AB8 +/* 0977B0 80096BB0 0C01E2AE */ jal render_textured_rectangle /* 0977B4 80096BB4 AFA20010 */ sw $v0, 0x10($sp) /* 0977B8 80096BB8 3C08800E */ lui $t0, %hi(gNumberOfActivePlayers) # $t0, 0x800e /* 0977BC 80096BBC 8D08F4BC */ lw $t0, %lo(gNumberOfActivePlayers)($t0) diff --git a/asm/non_matchings/menu/func_80099E8C.s b/asm/non_matchings/menu/func_80099E8C.s index 7ea87bc9..1d1e9c75 100644 --- a/asm/non_matchings/menu/func_80099E8C.s +++ b/asm/non_matchings/menu/func_80099E8C.s @@ -304,7 +304,7 @@ glabel func_80099E8C /* 09AF00 8009A300 AFAF0010 */ sw $t7, 0x10($sp) /* 09AF04 8009A304 02E02025 */ move $a0, $s7 /* 09AF08 8009A308 24C60028 */ addiu $a2, $a2, 0x28 -/* 09AF0C 8009A30C 0C01E2AE */ jal func_80078AB8 +/* 09AF0C 8009A30C 0C01E2AE */ jal render_textured_rectangle /* 09AF10 8009A310 01D23821 */ addu $a3, $t6, $s2 /* 09AF14 8009A314 8FAA0070 */ lw $t2, 0x70($sp) /* 09AF18 8009A318 24010001 */ li $at, 1 @@ -561,7 +561,7 @@ glabel func_80099E8C /* 09B2E0 8009A6E0 26470003 */ addiu $a3, $s2, 3 /* 09B2E4 8009A6E4 AFA00010 */ sw $zero, 0x10($sp) /* 09B2E8 8009A6E8 AFA00014 */ sw $zero, 0x14($sp) -/* 09B2EC 8009A6EC 0C01E2AE */ jal func_80078AB8 +/* 09B2EC 8009A6EC 0C01E2AE */ jal render_textured_rectangle /* 09B2F0 8009A6F0 AFA00018 */ sw $zero, 0x18($sp) /* 09B2F4 8009A6F4 240F00FF */ li $t7, 255 /* 09B2F8 8009A6F8 241800FF */ li $t8, 255 @@ -574,7 +574,7 @@ glabel func_80099E8C /* 09B314 8009A714 02E02025 */ move $a0, $s7 /* 09B318 8009A718 02002825 */ move $a1, $s0 /* 09B31C 8009A71C 2406009F */ li $a2, 159 -/* 09B320 8009A720 0C01E2AE */ jal func_80078AB8 +/* 09B320 8009A720 0C01E2AE */ jal render_textured_rectangle /* 09B324 8009A724 26470001 */ addiu $a3, $s2, 1 /* 09B328 8009A728 3C028012 */ lui $v0, %hi(D_801263D8) # $v0, 0x8012 /* 09B32C 8009A72C 8C4263D8 */ lw $v0, %lo(D_801263D8)($v0) @@ -591,7 +591,7 @@ glabel func_80099E8C /* 09B354 8009A754 24070036 */ li $a3, 54 /* 09B358 8009A758 AFA00010 */ sw $zero, 0x10($sp) /* 09B35C 8009A75C AFA00014 */ sw $zero, 0x14($sp) -/* 09B360 8009A760 0C01E2AE */ jal func_80078AB8 +/* 09B360 8009A760 0C01E2AE */ jal render_textured_rectangle /* 09B364 8009A764 AFA00018 */ sw $zero, 0x18($sp) /* 09B368 8009A768 240A00FF */ li $t2, 255 /* 09B36C 8009A76C 240B00FF */ li $t3, 255 @@ -604,7 +604,7 @@ glabel func_80099E8C /* 09B388 8009A788 02E02025 */ move $a0, $s7 /* 09B38C 8009A78C 02002825 */ move $a1, $s0 /* 09B390 8009A790 2406009F */ li $a2, 159 -/* 09B394 8009A794 0C01E2AE */ jal func_80078AB8 +/* 09B394 8009A794 0C01E2AE */ jal render_textured_rectangle /* 09B398 8009A798 24070034 */ li $a3, 52 .L8009A79C: /* 09B39C 8009A79C 0C01ECF4 */ jal func_8007B3D0 diff --git a/asm/non_matchings/menu/menu_23_loop.s b/asm/non_matchings/menu/menu_23_loop.s index 0f7565b7..184d448e 100644 --- a/asm/non_matchings/menu/menu_23_loop.s +++ b/asm/non_matchings/menu/menu_23_loop.s @@ -120,7 +120,7 @@ glabel menu_23_loop /* 09BAB4 8009AEB4 AFB90010 */ sw $t9, 0x10($sp) /* 09BAB8 8009AEB8 02A02025 */ move $a0, $s5 /* 09BABC 8009AEBC 24060018 */ li $a2, 24 -/* 09BAC0 8009AEC0 0C01E2AE */ jal func_80078AB8 +/* 09BAC0 8009AEC0 0C01E2AE */ jal render_textured_rectangle /* 09BAC4 8009AEC4 02403825 */ move $a3, $s2 /* 09BAC8 8009AEC8 8E6B0000 */ lw $t3, ($s3) /* 09BACC 8009AECC 26100001 */ addiu $s0, $s0, 1 diff --git a/asm/non_matchings/menu/menu_credits_loop.s b/asm/non_matchings/menu/menu_credits_loop.s index 5e0fb133..f92285ce 100644 --- a/asm/non_matchings/menu/menu_credits_loop.s +++ b/asm/non_matchings/menu/menu_credits_loop.s @@ -127,7 +127,7 @@ glabel menu_credits_loop /* 09C0F4 8009B4F4 00006812 */ mflo $t5 /* 09C0F8 8009B4F8 000D7403 */ sra $t6, $t5, 0x10 /* 09C0FC 8009B4FC 01D23821 */ addu $a3, $t6, $s2 -/* 09C100 8009B500 0C01E2AE */ jal func_80078AB8 +/* 09C100 8009B500 0C01E2AE */ jal render_textured_rectangle /* 09C104 8009B504 24E7FFEC */ addiu $a3, $a3, -0x14 /* 09C108 8009B508 26100004 */ addiu $s0, $s0, 4 /* 09C10C 8009B50C 1616FFDE */ bne $s0, $s6, .L8009B488 diff --git a/asm/non_matchings/unknown_06B2B0/render.s b/asm/non_matchings/unknown_06B2B0/render.s index 3adb2f9e..0fb481a0 100644 --- a/asm/non_matchings/unknown_06B2B0/render.s +++ b/asm/non_matchings/unknown_06B2B0/render.s @@ -127,7 +127,7 @@ glabel render /* 06D3F4 8006C7F4 3C058012 */ lui $a1, %hi(D_80121208) # $a1, 0x8012 /* 06D3F8 8006C7F8 24A51208 */ addiu $a1, %lo(D_80121208) # addiu $a1, $a1, 0x1208 /* 06D3FC 8006C7FC 248411F8 */ addiu $a0, %lo(D_801211F8) # addiu $a0, $a0, 0x11f8 -/* 06D400 8006C800 0C01DEE7 */ jal func_80077B9C +/* 06D400 8006C800 0C01DEE7 */ jal render_background /* 06D404 8006C804 24060001 */ li $a2, 1 /* 06D408 8006C808 3C04800E */ lui $a0, %hi(D_800DD37C) # $a0, 0x800e /* 06D40C 8006C80C 3C05800E */ lui $a1, %hi(D_800DD404) # $a1, 0x800e diff --git a/asm/non_matchings/unknown_078050/func_80077A54.s b/asm/non_matchings/unknown_078050/func_80077A54.s deleted file mode 100644 index 82c62bd9..00000000 --- a/asm/non_matchings/unknown_078050/func_80077A54.s +++ /dev/null @@ -1,65 +0,0 @@ -glabel func_80077A54 -/* 078654 80077A54 3C0E800E */ lui $t6, %hi(D_800DE4DC) # $t6, 0x800e -/* 078658 80077A58 8DCEE4DC */ lw $t6, %lo(D_800DE4DC)($t6) -/* 07865C 80077A5C 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 078660 80077A60 AFBF0014 */ sw $ra, 0x14($sp) -/* 078664 80077A64 15C00003 */ bnez $t6, .L80077A74 -/* 078668 80077A68 AFA0001C */ sw $zero, 0x1c($sp) -/* 07866C 80077A6C 1000000B */ b .L80077A9C -/* 078670 80077A70 00001025 */ move $v0, $zero -.L80077A74: -/* 078674 80077A74 3C048012 */ lui $a0, %hi(D_80125ED8) # $a0, 0x8012 -/* 078678 80077A78 24845ED8 */ addiu $a0, %lo(D_80125ED8) # addiu $a0, $a0, 0x5ed8 -/* 07867C 80077A7C 27A5001C */ addiu $a1, $sp, 0x1c -/* 078680 80077A80 0C0322EC */ jal osRecvMesg -/* 078684 80077A84 24060001 */ li $a2, 1 -/* 078688 80077A88 8FAF001C */ lw $t7, 0x1c($sp) -/* 07868C 80077A8C 3C01800E */ lui $at, %hi(D_800DE4DC) # $at, 0x800e -/* 078690 80077A90 AC20E4DC */ sw $zero, %lo(D_800DE4DC)($at) -/* 078694 80077A94 8DE20004 */ lw $v0, 4($t7) -/* 078698 80077A98 00000000 */ nop -.L80077A9C: -/* 07869C 80077A9C 8FBF0014 */ lw $ra, 0x14($sp) -/* 0786A0 80077AA0 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0786A4 80077AA4 03E00008 */ jr $ra -/* 0786A8 80077AA8 00000000 */ nop - -/* 0786AC 80077AAC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0786B0 80077AB0 AFBF0014 */ sw $ra, 0x14($sp) -/* 0786B4 80077AB4 AFA40018 */ sw $a0, 0x18($sp) -/* 0786B8 80077AB8 AFA5001C */ sw $a1, 0x1c($sp) -/* 0786BC 80077ABC 0C034628 */ jal osWritebackDCacheAll -/* 0786C0 80077AC0 AFA60020 */ sw $a2, 0x20($sp) -/* 0786C4 80077AC4 0C034634 */ jal func_800D18D0 -/* 0786C8 80077AC8 00000000 */ nop -/* 0786CC 80077ACC 304E0100 */ andi $t6, $v0, 0x100 -/* 0786D0 80077AD0 11C00007 */ beqz $t6, .L80077AF0 -/* 0786D4 80077AD4 8FA7001C */ lw $a3, 0x1c($sp) -.L80077AD8: -/* 0786D8 80077AD8 0C034634 */ jal func_800D18D0 -/* 0786DC 80077ADC 00000000 */ nop -/* 0786E0 80077AE0 304F0100 */ andi $t7, $v0, 0x100 -/* 0786E4 80077AE4 15E0FFFC */ bnez $t7, .L80077AD8 -/* 0786E8 80077AE8 00000000 */ nop -/* 0786EC 80077AEC 8FA7001C */ lw $a3, 0x1c($sp) -.L80077AF0: -/* 0786F0 80077AF0 8FA40018 */ lw $a0, 0x18($sp) -/* 0786F4 80077AF4 0C034638 */ jal osDpSetNextBuffer -/* 0786F8 80077AF8 000737C3 */ sra $a2, $a3, 0x1f -/* 0786FC 80077AFC 0C034634 */ jal func_800D18D0 -/* 078700 80077B00 00000000 */ nop -/* 078704 80077B04 30590100 */ andi $t9, $v0, 0x100 -/* 078708 80077B08 13200007 */ beqz $t9, .L80077B28 -/* 07870C 80077B0C 8FBF0014 */ lw $ra, 0x14($sp) -.L80077B10: -/* 078710 80077B10 0C034634 */ jal func_800D18D0 -/* 078714 80077B14 00000000 */ nop -/* 078718 80077B18 30480100 */ andi $t0, $v0, 0x100 -/* 07871C 80077B1C 1500FFFC */ bnez $t0, .L80077B10 -/* 078720 80077B20 00000000 */ nop -/* 078724 80077B24 8FBF0014 */ lw $ra, 0x14($sp) -.L80077B28: -/* 078728 80077B28 27BD0018 */ addiu $sp, $sp, 0x18 -/* 07872C 80077B2C 03E00008 */ jr $ra -/* 078730 80077B30 00000000 */ nop - diff --git a/asm/non_matchings/unknown_078050/func_80077B5C.s b/asm/non_matchings/unknown_078050/func_80077B5C.s deleted file mode 100644 index 69407966..00000000 --- a/asm/non_matchings/unknown_078050/func_80077B5C.s +++ /dev/null @@ -1,18 +0,0 @@ -glabel func_80077B5C -/* 07875C 80077B5C 00047200 */ sll $t6, $a0, 8 -/* 078760 80077B60 0005C0C0 */ sll $t8, $a1, 3 -/* 078764 80077B64 331907C0 */ andi $t9, $t8, 0x7c0 -/* 078768 80077B68 31CFF800 */ andi $t7, $t6, 0xf800 -/* 07876C 80077B6C 00064883 */ sra $t1, $a2, 2 -/* 078770 80077B70 312A003E */ andi $t2, $t1, 0x3e -/* 078774 80077B74 01F94025 */ or $t0, $t7, $t9 -/* 078778 80077B78 010A5825 */ or $t3, $t0, $t2 -/* 07877C 80077B7C 356C0001 */ ori $t4, $t3, 1 -/* 078780 80077B80 3C03800E */ lui $v1, %hi(D_800DE4BC) # $v1, 0x800e -/* 078784 80077B84 2463E4BC */ addiu $v1, %lo(D_800DE4BC) # addiu $v1, $v1, -0x1b44 -/* 078788 80077B88 000C6C00 */ sll $t5, $t4, 0x10 -/* 07878C 80077B8C AC6C0000 */ sw $t4, ($v1) -/* 078790 80077B90 018D7025 */ or $t6, $t4, $t5 -/* 078794 80077B94 03E00008 */ jr $ra -/* 078798 80077B98 AC6E0000 */ sw $t6, ($v1) - diff --git a/asm/non_matchings/unknown_078050/func_80078054.s b/asm/non_matchings/unknown_078050/func_80078054.s deleted file mode 100644 index 5c48012d..00000000 --- a/asm/non_matchings/unknown_078050/func_80078054.s +++ /dev/null @@ -1,36 +0,0 @@ -glabel func_80078054 -/* 078C54 80078054 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 078C58 80078058 AFBF0014 */ sw $ra, 0x14($sp) -/* 078C5C 8007805C 0C01E948 */ jal get_video_width_and_height_as_s32 -/* 078C60 80078060 AFA40018 */ sw $a0, 0x18($sp) -/* 078C64 80078064 8FA50018 */ lw $a1, 0x18($sp) -/* 078C68 80078068 2458FFFF */ addiu $t8, $v0, -1 -/* 078C6C 8007806C 8CA30000 */ lw $v1, ($a1) -/* 078C70 80078070 33190FFF */ andi $t9, $t8, 0xfff -/* 078C74 80078074 246E0008 */ addiu $t6, $v1, 8 -/* 078C78 80078078 3C01FF10 */ lui $at, 0xff10 -/* 078C7C 8007807C ACAE0000 */ sw $t6, ($a1) -/* 078C80 80078080 03214025 */ or $t0, $t9, $at -/* 078C84 80078084 3C090100 */ lui $t1, 0x100 -/* 078C88 80078088 AC690004 */ sw $t1, 4($v1) -/* 078C8C 8007808C AC680000 */ sw $t0, ($v1) -/* 078C90 80078090 8CA30000 */ lw $v1, ($a1) -/* 078C94 80078094 3C0BFE00 */ lui $t3, 0xfe00 -/* 078C98 80078098 246A0008 */ addiu $t2, $v1, 8 -/* 078C9C 8007809C ACAA0000 */ sw $t2, ($a1) -/* 078CA0 800780A0 3C0C0200 */ lui $t4, 0x200 -/* 078CA4 800780A4 AC6C0004 */ sw $t4, 4($v1) -/* 078CA8 800780A8 AC6B0000 */ sw $t3, ($v1) -/* 078CAC 800780AC 8CA30000 */ lw $v1, ($a1) -/* 078CB0 800780B0 3C0F800E */ lui $t7, %hi(D_800DE520) # $t7, 0x800e -/* 078CB4 800780B4 246D0008 */ addiu $t5, $v1, 8 -/* 078CB8 800780B8 ACAD0000 */ sw $t5, ($a1) -/* 078CBC 800780BC 25EFE520 */ addiu $t7, %lo(D_800DE520) # addiu $t7, $t7, -0x1ae0 -/* 078CC0 800780C0 3C0E0600 */ lui $t6, 0x600 -/* 078CC4 800780C4 AC6E0000 */ sw $t6, ($v1) -/* 078CC8 800780C8 AC6F0004 */ sw $t7, 4($v1) -/* 078CCC 800780CC 8FBF0014 */ lw $ra, 0x14($sp) -/* 078CD0 800780D0 27BD0018 */ addiu $sp, $sp, 0x18 -/* 078CD4 800780D4 03E00008 */ jr $ra -/* 078CD8 800780D8 00000000 */ nop - diff --git a/asm/non_matchings/unknown_078050/func_800780DC.s b/asm/non_matchings/unknown_078050/func_800780DC.s deleted file mode 100644 index 6c349b17..00000000 --- a/asm/non_matchings/unknown_078050/func_800780DC.s +++ /dev/null @@ -1,11 +0,0 @@ -glabel func_800780DC -/* 078CDC 800780DC 8C830000 */ lw $v1, ($a0) -/* 078CE0 800780E0 3C18800E */ lui $t8, %hi(D_800DE4E0) # $t8, 0x800e -/* 078CE4 800780E4 246E0008 */ addiu $t6, $v1, 8 -/* 078CE8 800780E8 AC8E0000 */ sw $t6, ($a0) -/* 078CEC 800780EC 2718E4E0 */ addiu $t8, %lo(D_800DE4E0) # addiu $t8, $t8, -0x1b20 -/* 078CF0 800780F0 3C0F0600 */ lui $t7, 0x600 -/* 078CF4 800780F4 AC6F0000 */ sw $t7, ($v1) -/* 078CF8 800780F8 03E00008 */ jr $ra -/* 078CFC 800780FC AC780004 */ sw $t8, 4($v1) - diff --git a/asm/non_matchings/unknown_078050/func_80078190.s b/asm/non_matchings/unknown_078050/func_80078190.s index e18fff4a..9b5aad22 100644 --- a/asm/non_matchings/unknown_078050/func_80078190.s +++ b/asm/non_matchings/unknown_078050/func_80078190.s @@ -396,39 +396,3 @@ glabel func_80078190 /* 07936C 8007876C 8FB00018 */ lw $s0, 0x18($sp) /* 079370 80078770 03E00008 */ jr $ra /* 079374 80078774 27BD0040 */ addiu $sp, $sp, 0x40 - -/* 079378 80078778 00047E03 */ sra $t7, $a0, 0x18 -/* 07937C 8007877C 3C018012 */ lui $at, %hi(D_80125F30) # $at, 0x8012 -/* 079380 80078780 A02F5F30 */ sb $t7, %lo(D_80125F30)($at) -/* 079384 80078784 3C018012 */ lui $at, %hi(D_80125F31) # $at, 0x8012 -/* 079388 80078788 0004CC03 */ sra $t9, $a0, 0x10 -/* 07938C 8007878C A0395F31 */ sb $t9, %lo(D_80125F31)($at) -/* 079390 80078790 3C018012 */ lui $at, %hi(D_80125F32) # $at, 0x8012 -/* 079394 80078794 00044A03 */ sra $t1, $a0, 8 -/* 079398 80078798 A0295F32 */ sb $t1, %lo(D_80125F32)($at) -/* 07939C 8007879C 3C018012 */ lui $at, %hi(D_80125F33) # $at, 0x8012 -/* 0793A0 800787A0 A0245F33 */ sb $a0, %lo(D_80125F33)($at) -/* 0793A4 800787A4 3C018012 */ lui $at, %hi(D_80125F34) # $at, 0x8012 -/* 0793A8 800787A8 00056603 */ sra $t4, $a1, 0x18 -/* 0793AC 800787AC A02C5F34 */ sb $t4, %lo(D_80125F34)($at) -/* 0793B0 800787B0 3C018012 */ lui $at, %hi(D_80125F35) # $at, 0x8012 -/* 0793B4 800787B4 00057403 */ sra $t6, $a1, 0x10 -/* 0793B8 800787B8 A02E5F35 */ sb $t6, %lo(D_80125F35)($at) -/* 0793BC 800787BC 3C018012 */ lui $at, %hi(D_80125F36) # $at, 0x8012 -/* 0793C0 800787C0 0005C203 */ sra $t8, $a1, 8 -/* 0793C4 800787C4 A0385F36 */ sb $t8, %lo(D_80125F36)($at) -/* 0793C8 800787C8 3C018012 */ lui $at, %hi(D_80125F37) # $at, 0x8012 -/* 0793CC 800787CC A0255F37 */ sb $a1, %lo(D_80125F37)($at) -/* 0793D0 800787D0 3C018012 */ lui $at, %hi(D_80125F38) # $at, 0x8012 -/* 0793D4 800787D4 AC265F38 */ sw $a2, %lo(D_80125F38)($at) -/* 0793D8 800787D8 3C018012 */ lui $at, %hi(D_80125F3C) # $at, 0x8012 -/* 0793DC 800787DC AC275F3C */ sw $a3, %lo(D_80125F3C)($at) -/* 0793E0 800787E0 3C01800E */ lui $at, %hi(D_800DE4CC) # $at, 0x800e -/* 0793E4 800787E4 24080001 */ li $t0, 1 -/* 0793E8 800787E8 03E00008 */ jr $ra -/* 0793EC 800787EC AC28E4CC */ sw $t0, %lo(D_800DE4CC)($at) - -/* 0793F0 800787F0 3C01800E */ lui $at, %hi(D_800DE4CC) # $at, 0x800e -/* 0793F4 800787F4 03E00008 */ jr $ra -/* 0793F8 800787F8 AC20E4CC */ sw $zero, %lo(D_800DE4CC)($at) - diff --git a/asm/non_matchings/unknown_078050/func_80077B9C.s b/asm/non_matchings/unknown_078050/render_background.s similarity index 99% rename from asm/non_matchings/unknown_078050/func_80077B9C.s rename to asm/non_matchings/unknown_078050/render_background.s index 5c4004b3..43213722 100644 --- a/asm/non_matchings/unknown_078050/func_80077B9C.s +++ b/asm/non_matchings/unknown_078050/render_background.s @@ -1,4 +1,4 @@ -glabel func_80077B9C +glabel render_background /* 07879C 80077B9C 27BDFF60 */ addiu $sp, $sp, -0xa0 /* 0787A0 80077BA0 AFBF0024 */ sw $ra, 0x24($sp) /* 0787A4 80077BA4 AFB00020 */ sw $s0, 0x20($sp) diff --git a/asm/non_matchings/unknown_078050/func_80078AB8.s b/asm/non_matchings/unknown_078050/render_textured_rectangle.s similarity index 99% rename from asm/non_matchings/unknown_078050/func_80078AB8.s rename to asm/non_matchings/unknown_078050/render_textured_rectangle.s index 70fcc6d0..19081e13 100644 --- a/asm/non_matchings/unknown_078050/func_80078AB8.s +++ b/asm/non_matchings/unknown_078050/render_textured_rectangle.s @@ -1,4 +1,4 @@ -glabel func_80078AB8 +glabel render_textured_rectangle /* 0796B8 80078AB8 27BDFFD0 */ addiu $sp, $sp, -0x30 /* 0796BC 80078ABC AFBF002C */ sw $ra, 0x2c($sp) /* 0796C0 80078AC0 AFBE0028 */ sw $fp, 0x28($sp) diff --git a/asm/non_matchings/unknown_09F8F0/func_800A01A0.s b/asm/non_matchings/unknown_09F8F0/func_800A01A0.s index abc55436..883532f4 100644 --- a/asm/non_matchings/unknown_09F8F0/func_800A01A0.s +++ b/asm/non_matchings/unknown_09F8F0/func_800A01A0.s @@ -646,7 +646,7 @@ glabel func_800A01A0 /* 0A1718 800A0B18 AFA90010 */ sw $t1, 0x10($sp) /* 0A171C 800A0B1C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc /* 0A1720 800A0B20 00003025 */ move $a2, $zero -/* 0A1724 800A0B24 0C01E2AE */ jal func_80078AB8 +/* 0A1724 800A0B24 0C01E2AE */ jal render_textured_rectangle /* 0A1728 800A0B28 00003825 */ move $a3, $zero .L800A0B2C: /* 0A172C 800A0B2C 3C0B8012 */ lui $t3, %hi(D_80126CFC) # $t3, 0x8012 diff --git a/asm/non_matchings/unknown_09F8F0/func_800A8474.s b/asm/non_matchings/unknown_09F8F0/func_800A8474.s index 09d10dfa..4ab434a8 100644 --- a/asm/non_matchings/unknown_09F8F0/func_800A8474.s +++ b/asm/non_matchings/unknown_09F8F0/func_800A8474.s @@ -1271,7 +1271,7 @@ glabel func_800A8474 /* 0AA2FC 800A96FC AFAF0010 */ sw $t7, 0x10($sp) /* 0AA300 800A9700 02802025 */ move $a0, $s4 /* 0AA304 800A9704 00003025 */ move $a2, $zero -/* 0AA308 800A9708 0C01E2AE */ jal func_80078AB8 +/* 0AA308 800A9708 0C01E2AE */ jal render_textured_rectangle /* 0AA30C 800A970C 00003825 */ move $a3, $zero .L800A9710: /* 0AA310 800A9710 8E8B0000 */ lw $t3, ($s4) diff --git a/asm/non_matchings/unknown_09F8F0/func_800AA600.s b/asm/non_matchings/unknown_09F8F0/func_800AA600.s index 5c448e23..07132549 100644 --- a/asm/non_matchings/unknown_09F8F0/func_800AA600.s +++ b/asm/non_matchings/unknown_09F8F0/func_800AA600.s @@ -320,7 +320,7 @@ glabel func_800AA600 /* 0AB694 800AAA94 27A50088 */ addiu $a1, $sp, 0x88 /* 0AB698 800AAA98 00003025 */ move $a2, $zero /* 0AB69C 800AAA9C 00003825 */ move $a3, $zero -/* 0AB6A0 800AAAA0 0C01E2AE */ jal func_80078AB8 +/* 0AB6A0 800AAAA0 0C01E2AE */ jal render_textured_rectangle /* 0AB6A4 800AAAA4 AFA3001C */ sw $v1, 0x1c($sp) /* 0AB6A8 800AAAA8 1000000A */ b .L800AAAD4 /* 0AB6AC 800AAAAC 00000000 */ nop @@ -332,7 +332,7 @@ glabel func_800AA600 /* 0AB6C0 800AAAC0 AFAD0010 */ sw $t5, 0x10($sp) /* 0AB6C4 800AAAC4 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc /* 0AB6C8 800AAAC8 AFAE0018 */ sw $t6, 0x18($sp) -/* 0AB6CC 800AAACC 0C01E2AE */ jal func_80078AB8 +/* 0AB6CC 800AAACC 0C01E2AE */ jal render_textured_rectangle /* 0AB6D0 800AAAD0 AFA3001C */ sw $v1, 0x1c($sp) .L800AAAD4: /* 0AB6D4 800AAAD4 3C0F8000 */ lui $t7, %hi(osTvType) # $t7, 0x8000 @@ -480,7 +480,7 @@ glabel func_800AA600 /* 0AB8FC 800AACFC AFAB0014 */ sw $t3, 0x14($sp) /* 0AB900 800AAD00 27A50058 */ addiu $a1, $sp, 0x58 /* 0AB904 800AAD04 00003025 */ move $a2, $zero -/* 0AB908 800AAD08 0C01E2AE */ jal func_80078AB8 +/* 0AB908 800AAD08 0C01E2AE */ jal render_textured_rectangle /* 0AB90C 800AAD0C 00003825 */ move $a3, $zero /* 0AB910 800AAD10 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 /* 0AB914 800AAD14 0C01ECF4 */ jal func_8007B3D0 diff --git a/include/structs.h b/include/structs.h index 49a1df9e..a4c5dcc1 100644 --- a/include/structs.h +++ b/include/structs.h @@ -64,9 +64,8 @@ typedef struct TextureHeader { // 0x40 = U clamp flag. 0 = Wrap, 1 = Clamp // 0x80 = V clamp flag. 0 = Wrap, 1 = Clamp /* 0x08 */ s16 ciPaletteOffset; - /* 0x0A */ u8 unkA; - /* 0x0B */ u8 numberOfCommands; // initialized in RAM; Number of commands in the texture display list. (Usually 0x07) - /* 0x0C */ s32* cmd; // initialized in RAM; Pointer to texture display list. + /* 0x0A */ s16 numberOfCommands; // initialized in RAM; Number of commands in the texture display list. (Usually 0x07) + /* 0x0C */ s32* cmd; // initialized in RAM; Pointer to texture display list. /* 0x10 */ u8 unk10; /* 0x11 */ u8 unk11; /* 0x12 */ u16 numOfTextures; // For animated textures, static textures are just 0x01. Each texture has it's own header. @@ -82,6 +81,13 @@ typedef struct TextureHeader { /* 0x1F */ u8 unk1F; } TextureHeader; +// Probably not unqiue to the boot menu. +typedef struct DrawTexture { + TextureHeader *texture; // Pointer to texture to draw. + s16 xOffset; // Offset from the center of the screen. + s16 yOffset; // Offset from the center of the screen. +} DrawTexture; + /* Size: 0x18 bytes */ typedef struct Racer { /* 0x00 */ u32 trophy_points; diff --git a/src/menu.c b/src/menu.c index 2f7d26fd..6b1f829e 100644 --- a/src/menu.c +++ b/src/menu.c @@ -378,7 +378,7 @@ s16 D_800DF7C4[12] = { 0x58, 0x59, 0x5A, -1 }; -MenuBootDrawTexture D_800DF7DC[12] = { +DrawTexture D_800DF7DC[12] = { { NULL, -75, -32 }, { NULL, -60, -32 }, { NULL, -45, -32 }, @@ -2570,7 +2570,7 @@ s32 menu_boot_loop(s32 arg0) { } if (phi_v1 < 0x12C) { - func_80078AB8(&D_801263A0, &D_800DF7DC, 0xA0, phi_v1, 0xFF, 0xFF, 0xFF, 0xFF); + render_textured_rectangle(&D_801263A0, &D_800DF7DC, 0xA0, phi_v1, 0xFF, 0xFF, 0xFF, 0xFF); func_8007B3D0(&D_801263A0); } diff --git a/src/menu.h b/src/menu.h index 69dcfb31..3b57298f 100644 --- a/src/menu.h +++ b/src/menu.h @@ -186,20 +186,13 @@ extern s32 D_800DF7AC; // Version text shown on the title screen? See 1:15 in https://www.youtube.com/watch?v=OHSCLcA74ao. extern char gVersionDisplayText[20]; -// Probably not unqiue to the boot menu. -typedef struct MenuBootDrawTexture { - u32* texture; // Pointer to texture to draw. TODO: Make structure for texture header. - s16 xOffset; // Offset from the center of the screen. - s16 yOffset; // Offset from the center of the screen. -} MenuBootDrawTexture; - extern s16 D_800DF7C4[12]; -extern MenuBootDrawTexture D_800DF7DC[12]; +extern DrawTexture D_800DF7DC[12]; /* Size: 0x30 bytes */ typedef struct unk800DF83C { - char* unk0; // Pointer to ascii text. + char *unk0; // Pointer to ascii text. f32 unk4; f32 unk8; f32 unkC; diff --git a/src/unknown_06B2B0.c b/src/unknown_06B2B0.c index 9f9833dc..a4fbc1b5 100644 --- a/src/unknown_06B2B0.c +++ b/src/unknown_06B2B0.c @@ -818,7 +818,7 @@ void render(void) { set_rsp_segment(&D_801211F8, 4, gVideoLastFramebuffer - 0x500); func_800780DC(&D_801211F8); func_80078054(&D_801211F8); - func_80077B9C(&D_801211F8, &D_80121208, 1); + render_background(&D_801211F8, &D_80121208, 1); D_800DD37C = func_8006A1C4(D_800DD37C, D_800DD404); if (func_800B76DC() != 0) { render_epc_lock_up_display(); diff --git a/src/unknown_078050.c b/src/unknown_078050.c index e6dbb8ac..5afbc593 100644 --- a/src/unknown_078050.c +++ b/src/unknown_078050.c @@ -4,6 +4,7 @@ #include "unknown_078050.h" #include "types.h" +#include "structs.h" #include "macros.h" #include "libultra_internal.h" @@ -24,7 +25,12 @@ u32 D_800DE4C4 = 0; u32 D_800DE4C8 = 0; s32 D_800DE4CC = 0; -u32 D_800DE4D0 = 0; +typedef union { + void (*function)(Gfx*, s32); + void *ptr; +} unk800DE4D0; + +unk800DE4D0 D_800DE4D0 = { 0 }; s32 D_800DE4D4 = 0; s32 D_800DE4D8 = 0; s32 D_800DE4DC = 0; @@ -154,14 +160,14 @@ OSMesg D_80125EF0; s32 D_80125EF8[6]; OSMesg D_80125F10; s32 D_80125F18[6]; -s8 D_80125F30; -s8 D_80125F31; -s8 D_80125F32; -s8 D_80125F33; -s8 D_80125F34; -s8 D_80125F35; -s8 D_80125F36; -s8 D_80125F37; +u8 D_80125F30; +u8 D_80125F31; +u8 D_80125F32; +u8 D_80125F33; +u8 D_80125F34; +u8 D_80125F35; +u8 D_80125F36; +u8 D_80125F37; s32 D_80125F38; s32 D_80125F3C; s32 D_80125F40[56]; @@ -171,7 +177,23 @@ u32 D_80126100; /*******************************/ GLOBAL_ASM("asm/non_matchings/unknown_078050/setupOSTasks.s") -GLOBAL_ASM("asm/non_matchings/unknown_078050/func_80077A54.s") + +s32 func_80077A54(void) { + OSMesg *sp1C = NULL; + if (D_800DE4DC == 0) { + return 0; + } + osRecvMesg(&D_80125ED8, &sp1C, 1); + D_800DE4DC = 0; + return sp1C[1]; +} + +void func_80077AAC(void *bufPtr, s32 arg1, s32 arg2) { + osWritebackDCacheAll(); + while (func_800D18D0() & 0x100) {} + osDpSetNextBuffer(bufPtr, arg1); + while (func_800D18D0() & 0x100) {} +} void func_80077B34(u8 arg0, u8 arg1, u8 arg2){ D_800DE4B0 = arg0; @@ -179,38 +201,90 @@ void func_80077B34(u8 arg0, u8 arg1, u8 arg2){ D_800DE4B8 = arg2; } -GLOBAL_ASM("asm/non_matchings/unknown_078050/func_80077B5C.s") -GLOBAL_ASM("asm/non_matchings/unknown_078050/func_80077B9C.s") -GLOBAL_ASM("asm/non_matchings/unknown_078050/func_80078054.s") - - - -#if 1 -GLOBAL_ASM("asm/non_matchings/unknown_078050/func_800780DC.s") -#else -typedef struct{ - u32 unk00; - u32* unk04; -} struct_800780DC_a0; - -void func_800780DC(struct_800780DC_a0** arg0){ - u32* tmp2= D_800DE4E0; - struct_800780DC_a0* tmp = *arg0; - - - *arg0 = *arg0 + 1; - tmp->unk00 = 0x6000000; - tmp->unk04 = tmp2; +void func_80077B5C(s32 red, s32 green, s32 blue) { + D_800DE4BC = ((red << 8) & 0xF800) | ((green * 8) & 0x7C0) | ((blue >> 2) & 0x3E) | 1; + D_800DE4BC |= (D_800DE4BC << 0x10); } + +#ifdef NON_MATCHING +// Stack issues +void render_background(Gfx **dlist, s32 arg1, s32 arg2) { + s32 sp90; + s32 sp8C; + s32 sp88; + s32 sp84; + s32 w, h; + s32 rgba16Color; + s32 widthAndHeight; + + widthAndHeight = get_video_width_and_height_as_s32(); + w = widthAndHeight & 0xFFFF; + h = widthAndHeight >> 0x10; + + gDPPipeSync((*dlist)++) + gDPSetScissor((*dlist)++, 0, 0, 0, w - 1, h - 1) + gDPSetCycleType((*dlist)++, G_CYC_FILL) + gDPSetColorImage((*dlist)++, G_IM_FMT_RGBA, G_IM_SIZ_16b, w, 0x02000000) + gDPSetFillColor((*dlist)++, 0xFFFCFFFC) + gDPFillRectangle((*dlist)++, 0, 0, w - 1, h - 1) + gDPPipeSync((*dlist)++) + gDPSetColorImage((*dlist)++, G_IM_FMT_RGBA, G_IM_SIZ_16b, w, 0x01000000) + if (arg2) { + if (func_80066910(0)) { + if (D_800DE4CC) { + func_800787FC(dlist); + } else if (D_800DE4C4 != 0) { + func_80078190(dlist); + } else if (D_800DE4D0.ptr != NULL) { + D_800DE4D0.function(dlist, arg1); + } else { + gDPSetFillColor((*dlist)++, D_800DE4BC) + gDPFillRectangle((*dlist)++, 0, 0, w - 1, h - 1) + } + if (func_80066BA8(0, &sp90, &sp8C, &sp88, &sp84)) { + gDPSetCycleType((*dlist)++, G_CYC_1CYCLE) + gDPSetPrimColor((*dlist)++, 0, 0, D_800DE4B0, D_800DE4B4, D_800DE4B8, 0xFF) + gDPSetCombineMode((*dlist)++, G_CC_PRIMITIVE, G_CC_PRIMITIVE) + gDPSetRenderMode((*dlist)++, G_RM_OPA_SURF, G_RM_OPA_SURF2) + gDPFillRectangle((*dlist)++, sp84, sp88, sp8C, sp90) + } + } else if (D_800DE4CC) { + func_800787FC(dlist); + } else if (D_800DE4C4 != 0) { + func_80078190(dlist); + } else if (D_800DE4D0.ptr != NULL) { + D_800DE4D0.function(dlist, arg1); + } else { + // Also has an issue here. + rgba16Color = ((D_800DE4B0 << 8) & 0xF800) | ((D_800DE4B4 * 8) & 0x7C0) | ((D_800DE4B8 >> 2) & 0x3E) | 1; + rgba16Color |= rgba16Color << 0x10; + gDPSetFillColor((*dlist)++, rgba16Color) + gDPFillRectangle((*dlist)++, 0, 0, w - 1, h - 1) + } + } + gDPPipeSync((*dlist)++) + func_80067A3C(dlist); +} +#else +GLOBAL_ASM("asm/non_matchings/unknown_078050/render_background.s") #endif +void func_80078054(Gfx **dlist) { + s32 width = get_video_width_and_height_as_s32() & 0xFFF; + gDPSetColorImage((*dlist)++, G_IM_FMT_RGBA, G_IM_SIZ_16b, width, 0x01000000) + gDPSetDepthImage((*dlist)++, 0x2000000) + gSPDisplayList((*dlist)++, D_800DE520) +} + +void func_800780DC(Gfx** dlist){ + gSPDisplayList((*dlist)++, D_800DE4E0) +} void func_80078100(void){ D_80126100 = func_8007957C(); osCreateMesgQueue(&D_80125EA0, &D_80125EB8,1); osCreateMesgQueue(&D_80125EC0, &D_80125EF0,8); osCreateMesgQueue(&D_80125ED8, &D_80125F10,8); - } void func_80078170(u32 arg0, u32 arg1, u32 arg2){ @@ -219,13 +293,76 @@ void func_80078170(u32 arg0, u32 arg1, u32 arg2){ D_800DE4C0 = arg2 << 2; } - GLOBAL_ASM("asm/non_matchings/unknown_078050/func_80078190.s") + +// Unused +void func_80078778(s32 arg0, s32 arg1, s32 arg2, s32 arg3) { + D_80125F30 = (arg0 >> 24) & 0xFF; + D_80125F31 = (arg0 >> 16) & 0xFF; + D_80125F32 = (arg0 >> 8) & 0xFF; + D_80125F33 = arg0 & 0xFF; + D_80125F34 = (arg1 >> 24) & 0xFF; + D_80125F35 = (arg1 >> 16) & 0xFF; + D_80125F36 = (arg1 >> 8) & 0xFF; + D_80125F37 = arg1 & 0xFF; + D_80125F38 = arg2; + D_80125F3C = arg3; + D_800DE4CC = 1; +} + +// Unused +void func_800787F0(void) { + D_800DE4CC = 0; +} + GLOBAL_ASM("asm/non_matchings/unknown_078050/func_800787FC.s") void func_80078AAC(u32 arg0){ - D_800DE4D0 = arg0; + D_800DE4D0.ptr = arg0; } -GLOBAL_ASM("asm/non_matchings/unknown_078050/func_80078AB8.s") +#ifdef NON_MATCHING + +// Regalloc & stack issues. +void render_textured_rectangle(Gfx **dlist, DrawTexture *arg1, s32 arg2, s32 arg3, u8 red, u8 green, u8 blue, u8 alpha) { + TextureHeader *tex; + DrawTexture *phi_t2; + s32 x0, y0; + s32 x1, y1; + s32 u, v; + + gSPDisplayList((*dlist)++, D_800DE628) + gDPSetPrimColor((*dlist)++, 0, 0, red, green, blue, alpha) + tex = arg1->texture; + while (tex != NULL) { + x0 = (arg1->xOffset * 4) + (arg2 * 4); + y0 = (arg1->yOffset * 4) + (arg3 * 4); + x1 = (tex->width * 4) + x0; + y1 = (tex->height * 4) + y0; + if (x1 > 0) { + u = 0; + if (y1 > 0) { + v = 0; + if (x0 < 0) { + u = -(x0 * 8); + x0 = 0; + } + if (y0 < 0) { + v = -(y0 * 8); + y0 = 0; + } + gDkrDmaDisplayList((*dlist)++, tex->cmd + 0x80000000, tex->numberOfCommands) + gSPTextureRectangle((*dlist)++, x0, y0, x1, y1, 0, u, v, 1024, 1024) + } + } + arg1++; + tex = arg1->texture; + } + gDPPipeSync((*dlist)++) + gDPSetPrimColor((*dlist)++, 0, 0, 255, 255, 255, 255) +} +#else +GLOBAL_ASM("asm/non_matchings/unknown_078050/render_textured_rectangle.s") +#endif + GLOBAL_ASM("asm/non_matchings/unknown_078050/func_80078D00.s") diff --git a/src/unknown_078050.h b/src/unknown_078050.h index 6c4561bf..077300ae 100644 --- a/src/unknown_078050.h +++ b/src/unknown_078050.h @@ -16,7 +16,6 @@ extern u32 D_800DE4C4; extern u32 D_800DE4C8; extern s32 D_800DE4CC; -extern u32 D_800DE4D0; extern s32 D_800DE4D4; extern s32 D_800DE4D8; extern s32 D_800DE4DC;