mirror of
https://github.com/pmret/papermario.git
synced 2024-11-08 12:02:30 +01:00
gfxRetrace_Callback
This commit is contained in:
parent
4ae0a926a3
commit
398fa6c695
1
.vscode/settings.json
vendored
1
.vscode/settings.json
vendored
@ -31,5 +31,6 @@
|
||||
},
|
||||
"files.associations": {
|
||||
"*.h": "c",
|
||||
"random": "c"
|
||||
},
|
||||
}
|
||||
|
@ -1,17 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
glabel gfxPreNMI_Callback
|
||||
/* 1B0C 8002670C 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 1B10 80026710 24020001 */ addiu $v0, $zero, 1
|
||||
/* 1B14 80026714 AFBF0010 */ sw $ra, 0x10($sp)
|
||||
/* 1B18 80026718 3C018007 */ lui $at, %hi(D_80073E00)
|
||||
/* 1B1C 8002671C AC223E00 */ sw $v0, %lo(D_80073E00)($at)
|
||||
/* 1B20 80026720 0C018028 */ jal nuContRmbForceStop
|
||||
/* 1B24 80026724 00000000 */ nop
|
||||
/* 1B28 80026728 8FBF0010 */ lw $ra, 0x10($sp)
|
||||
/* 1B2C 8002672C 03E00008 */ jr $ra
|
||||
/* 1B30 80026730 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
/* 1B34 80026734 00000000 */ nop
|
||||
/* 1B38 80026738 00000000 */ nop
|
||||
/* 1B3C 8002673C 00000000 */ nop
|
@ -1,73 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
glabel gfxRetrace_Callback
|
||||
/* 145C 8002605C 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 1460 80026060 AFB10014 */ sw $s1, 0x14($sp)
|
||||
/* 1464 80026064 3C118007 */ lui $s1, %hi(D_80073E00)
|
||||
/* 1468 80026068 26313E00 */ addiu $s1, $s1, %lo(D_80073E00)
|
||||
/* 146C 8002606C AFBF0018 */ sw $ra, 0x18($sp)
|
||||
/* 1470 80026070 AFB00010 */ sw $s0, 0x10($sp)
|
||||
/* 1474 80026074 8E230000 */ lw $v1, ($s1)
|
||||
/* 1478 80026078 10600022 */ beqz $v1, .L80026104
|
||||
/* 147C 8002607C 0080802D */ daddu $s0, $a0, $zero
|
||||
/* 1480 80026080 24020001 */ addiu $v0, $zero, 1
|
||||
/* 1484 80026084 14620016 */ bne $v1, $v0, .L800260E0
|
||||
/* 1488 80026088 00000000 */ nop
|
||||
/* 148C 8002608C 0C017CB4 */ jal nuGfxTaskAllEndWait
|
||||
/* 1490 80026090 00000000 */ nop
|
||||
/* 1494 80026094 16000012 */ bnez $s0, .L800260E0
|
||||
/* 1498 80026098 00000000 */ nop
|
||||
/* 149C 8002609C 0C019A6C */ jal osViGetCurrentFramebuffer
|
||||
/* 14A0 800260A0 00000000 */ nop
|
||||
/* 14A4 800260A4 3C10800A */ lui $s0, %hi(D_8009A680)
|
||||
/* 14A8 800260A8 2610A680 */ addiu $s0, $s0, %lo(D_8009A680)
|
||||
/* 14AC 800260AC 0200202D */ daddu $a0, $s0, $zero
|
||||
/* 14B0 800260B0 AE020008 */ sw $v0, 8($s0)
|
||||
/* 14B4 800260B4 AE020004 */ sw $v0, 4($s0)
|
||||
/* 14B8 800260B8 AE020000 */ sw $v0, ($s0)
|
||||
/* 14BC 800260BC 3C018007 */ lui $at, %hi(D_80073E04)
|
||||
/* 14C0 800260C0 AC223E04 */ sw $v0, %lo(D_80073E04)($at)
|
||||
/* 14C4 800260C4 0C017CBC */ jal nuGfxSetCfb
|
||||
/* 14C8 800260C8 24050003 */ addiu $a1, $zero, 3
|
||||
/* 14CC 800260CC 8E040000 */ lw $a0, ($s0)
|
||||
/* 14D0 800260D0 0C019C08 */ jal osViSwapBuffer
|
||||
/* 14D4 800260D4 00000000 */ nop
|
||||
/* 14D8 800260D8 24020002 */ addiu $v0, $zero, 2
|
||||
/* 14DC 800260DC AE220000 */ sw $v0, ($s1)
|
||||
.L800260E0:
|
||||
/* 14E0 800260E0 3C038007 */ lui $v1, %hi(D_80073E00)
|
||||
/* 14E4 800260E4 8C633E00 */ lw $v1, %lo(D_80073E00)($v1)
|
||||
/* 14E8 800260E8 24020002 */ addiu $v0, $zero, 2
|
||||
/* 14EC 800260EC 14620018 */ bne $v1, $v0, .L80026150
|
||||
/* 14F0 800260F0 00000000 */ nop
|
||||
/* 14F4 800260F4 0C009859 */ jal func_80026164
|
||||
/* 14F8 800260F8 00000000 */ nop
|
||||
/* 14FC 800260FC 08009854 */ j .L80026150
|
||||
/* 1500 80026100 00000000 */ nop
|
||||
.L80026104:
|
||||
/* 1504 80026104 3C038007 */ lui $v1, %hi(D_80073E0A)
|
||||
/* 1508 80026108 24633E0A */ addiu $v1, $v1, %lo(D_80073E0A)
|
||||
/* 150C 8002610C 94620000 */ lhu $v0, ($v1)
|
||||
/* 1510 80026110 38420001 */ xori $v0, $v0, 1
|
||||
/* 1514 80026114 1440000E */ bnez $v0, .L80026150
|
||||
/* 1518 80026118 A4620000 */ sh $v0, ($v1)
|
||||
/* 151C 8002611C 0C0099D0 */ jal step_game_loop
|
||||
/* 1520 80026120 00000000 */ nop
|
||||
/* 1524 80026124 3C038007 */ lui $v1, %hi(D_80073E08)
|
||||
/* 1528 80026128 24633E08 */ addiu $v1, $v1, %lo(D_80073E08)
|
||||
/* 152C 8002612C 24020001 */ addiu $v0, $zero, 1
|
||||
/* 1530 80026130 A4620000 */ sh $v0, ($v1)
|
||||
/* 1534 80026134 2A020003 */ slti $v0, $s0, 3
|
||||
/* 1538 80026138 10400005 */ beqz $v0, .L80026150
|
||||
/* 153C 8002613C 00000000 */ nop
|
||||
/* 1540 80026140 0C009A7B */ jal func_800269EC
|
||||
/* 1544 80026144 A4600000 */ sh $zero, ($v1)
|
||||
/* 1548 80026148 0C009AC2 */ jal gfx_draw_frame
|
||||
/* 154C 8002614C 00000000 */ nop
|
||||
.L80026150:
|
||||
/* 1550 80026150 8FBF0018 */ lw $ra, 0x18($sp)
|
||||
/* 1554 80026154 8FB10014 */ lw $s1, 0x14($sp)
|
||||
/* 1558 80026158 8FB00010 */ lw $s0, 0x10($sp)
|
||||
/* 155C 8002615C 03E00008 */ jr $ra
|
||||
/* 1560 80026160 27BD0020 */ addiu $sp, $sp, 0x20
|
52
asm/nonmatchings/code_23680/base_UnkNpcAIFunc1.s
generated
52
asm/nonmatchings/code_23680/base_UnkNpcAIFunc1.s
generated
@ -1,52 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
glabel base_UnkNpcAIFunc1
|
||||
/* 24F44 80049B44 27BDFFD8 */ addiu $sp, $sp, -0x28
|
||||
/* 24F48 80049B48 AFB3001C */ sw $s3, 0x1c($sp)
|
||||
/* 24F4C 80049B4C 0080982D */ daddu $s3, $a0, $zero
|
||||
/* 24F50 80049B50 AFBF0020 */ sw $ra, 0x20($sp)
|
||||
/* 24F54 80049B54 AFB20018 */ sw $s2, 0x18($sp)
|
||||
/* 24F58 80049B58 AFB10014 */ sw $s1, 0x14($sp)
|
||||
/* 24F5C 80049B5C AFB00010 */ sw $s0, 0x10($sp)
|
||||
/* 24F60 80049B60 8E720148 */ lw $s2, 0x148($s3)
|
||||
/* 24F64 80049B64 86440008 */ lh $a0, 8($s2)
|
||||
/* 24F68 80049B68 0C00EABB */ jal get_npc_unsafe
|
||||
/* 24F6C 80049B6C 00A0882D */ daddu $s1, $a1, $zero
|
||||
/* 24F70 80049B70 8E240008 */ lw $a0, 8($s1)
|
||||
/* 24F74 80049B74 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 24F78 80049B78 00041FC2 */ srl $v1, $a0, 0x1f
|
||||
/* 24F7C 80049B7C 00832021 */ addu $a0, $a0, $v1
|
||||
/* 24F80 80049B80 00042043 */ sra $a0, $a0, 1
|
||||
/* 24F84 80049B84 0C00A67F */ jal rand_int
|
||||
/* 24F88 80049B88 24840001 */ addiu $a0, $a0, 1
|
||||
/* 24F8C 80049B8C 8E230008 */ lw $v1, 8($s1)
|
||||
/* 24F90 80049B90 240400B4 */ addiu $a0, $zero, 0xb4
|
||||
/* 24F94 80049B94 00032FC2 */ srl $a1, $v1, 0x1f
|
||||
/* 24F98 80049B98 00651821 */ addu $v1, $v1, $a1
|
||||
/* 24F9C 80049B9C 00031843 */ sra $v1, $v1, 1
|
||||
/* 24FA0 80049BA0 00621821 */ addu $v1, $v1, $v0
|
||||
/* 24FA4 80049BA4 0C00A67F */ jal rand_int
|
||||
/* 24FA8 80049BA8 A603008E */ sh $v1, 0x8e($s0)
|
||||
/* 24FAC 80049BAC C60C000C */ lwc1 $f12, 0xc($s0)
|
||||
/* 24FB0 80049BB0 44820000 */ mtc1 $v0, $f0
|
||||
/* 24FB4 80049BB4 00000000 */ nop
|
||||
/* 24FB8 80049BB8 46800020 */ cvt.s.w $f0, $f0
|
||||
/* 24FBC 80049BBC 46006300 */ add.s $f12, $f12, $f0
|
||||
/* 24FC0 80049BC0 3C0142B4 */ lui $at, 0x42b4
|
||||
/* 24FC4 80049BC4 44810000 */ mtc1 $at, $f0
|
||||
/* 24FC8 80049BC8 0C00A6C9 */ jal clamp_angle
|
||||
/* 24FCC 80049BCC 46006301 */ sub.s $f12, $f12, $f0
|
||||
/* 24FD0 80049BD0 E600000C */ swc1 $f0, 0xc($s0)
|
||||
/* 24FD4 80049BD4 8E4200CC */ lw $v0, 0xcc($s2)
|
||||
/* 24FD8 80049BD8 8C420000 */ lw $v0, ($v0)
|
||||
/* 24FDC 80049BDC AE020028 */ sw $v0, 0x28($s0)
|
||||
/* 24FE0 80049BE0 24020003 */ addiu $v0, $zero, 3
|
||||
/* 24FE4 80049BE4 AE620070 */ sw $v0, 0x70($s3)
|
||||
/* 24FE8 80049BE8 8FBF0020 */ lw $ra, 0x20($sp)
|
||||
/* 24FEC 80049BEC 8FB3001C */ lw $s3, 0x1c($sp)
|
||||
/* 24FF0 80049BF0 8FB20018 */ lw $s2, 0x18($sp)
|
||||
/* 24FF4 80049BF4 8FB10014 */ lw $s1, 0x14($sp)
|
||||
/* 24FF8 80049BF8 8FB00010 */ lw $s0, 0x10($sp)
|
||||
/* 24FFC 80049BFC 03E00008 */ jr $ra
|
||||
/* 25000 80049C00 27BD0028 */ addiu $sp, $sp, 0x28
|
@ -1,6 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
glabel func_8006EF20
|
||||
/* 4A320 8006EF20 03E00008 */ jr $ra
|
||||
/* 4A324 8006EF24 00000000 */ nop
|
@ -1,6 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
glabel func_8006EF58
|
||||
/* 4A358 8006EF58 03E00008 */ jr $ra
|
||||
/* 4A35C 8006EF5C 00000000 */ nop
|
@ -1,6 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
glabel func_8006EF60
|
||||
/* 4A360 8006EF60 03E00008 */ jr $ra
|
||||
/* 4A364 8006EF64 00000000 */ nop
|
@ -1,6 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
glabel func_80072CEC
|
||||
/* 4E0EC 80072CEC 03E00008 */ jr $ra
|
||||
/* 4E0F0 80072CF0 00000000 */ nop
|
141
asm/nonmatchings/os/nusys/nuContPakMgr/contRmbControl.s
generated
141
asm/nonmatchings/os/nusys/nuContPakMgr/contRmbControl.s
generated
@ -1,141 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
glabel contRmbControl
|
||||
/* 3AD20 8005F920 27BDFFD8 */ addiu $sp, $sp, -0x28
|
||||
/* 3AD24 8005F924 AFB20018 */ sw $s2, 0x18($sp)
|
||||
/* 3AD28 8005F928 0080902D */ daddu $s2, $a0, $zero
|
||||
/* 3AD2C 8005F92C 00A0302D */ daddu $a2, $a1, $zero
|
||||
/* 3AD30 8005F930 AFB00010 */ sw $s0, 0x10($sp)
|
||||
/* 3AD34 8005F934 AFBF0020 */ sw $ra, 0x20($sp)
|
||||
/* 3AD38 8005F938 AFB3001C */ sw $s3, 0x1c($sp)
|
||||
/* 3AD3C 8005F93C AFB10014 */ sw $s1, 0x14($sp)
|
||||
/* 3AD40 8005F940 92430006 */ lbu $v1, 6($s2)
|
||||
/* 3AD44 8005F944 24130002 */ addiu $s3, $zero, 2
|
||||
/* 3AD48 8005F948 10730069 */ beq $v1, $s3, .L8005FAF0
|
||||
/* 3AD4C 8005F94C 0000802D */ daddu $s0, $zero, $zero
|
||||
/* 3AD50 8005F950 28620003 */ slti $v0, $v1, 3
|
||||
/* 3AD54 8005F954 10400005 */ beqz $v0, .L8005F96C
|
||||
/* 3AD58 8005F958 24020001 */ addiu $v0, $zero, 1
|
||||
/* 3AD5C 8005F95C 1062000A */ beq $v1, $v0, .L8005F988
|
||||
/* 3AD60 8005F960 0200102D */ daddu $v0, $s0, $zero
|
||||
/* 3AD64 8005F964 08017EBD */ j .L8005FAF4
|
||||
/* 3AD68 8005F968 00000000 */ nop
|
||||
.L8005F96C:
|
||||
/* 3AD6C 8005F96C 24020003 */ addiu $v0, $zero, 3
|
||||
/* 3AD70 8005F970 10620018 */ beq $v1, $v0, .L8005F9D4
|
||||
/* 3AD74 8005F974 24020004 */ addiu $v0, $zero, 4
|
||||
/* 3AD78 8005F978 10620048 */ beq $v1, $v0, .L8005FA9C
|
||||
/* 3AD7C 8005F97C 0200102D */ daddu $v0, $s0, $zero
|
||||
/* 3AD80 8005F980 08017EBD */ j .L8005FAF4
|
||||
/* 3AD84 8005F984 00000000 */ nop
|
||||
.L8005F988:
|
||||
/* 3AD88 8005F988 96420004 */ lhu $v0, 4($s2)
|
||||
/* 3AD8C 8005F98C 1040000C */ beqz $v0, .L8005F9C0
|
||||
/* 3AD90 8005F990 00062040 */ sll $a0, $a2, 1
|
||||
/* 3AD94 8005F994 00862021 */ addu $a0, $a0, $a2
|
||||
/* 3AD98 8005F998 00042080 */ sll $a0, $a0, 2
|
||||
/* 3AD9C 8005F99C 00862021 */ addu $a0, $a0, $a2
|
||||
/* 3ADA0 8005F9A0 000420C0 */ sll $a0, $a0, 3
|
||||
/* 3ADA4 8005F9A4 3C02800E */ lui $v0, %hi(nuContPfs)
|
||||
/* 3ADA8 8005F9A8 2442AAD8 */ addiu $v0, $v0, %lo(nuContPfs)
|
||||
/* 3ADAC 8005F9AC 00822021 */ addu $a0, $a0, $v0
|
||||
/* 3ADB0 8005F9B0 0C019F80 */ jal __osMotorAccess
|
||||
/* 3ADB4 8005F9B4 0000282D */ daddu $a1, $zero, $zero
|
||||
/* 3ADB8 8005F9B8 08017E71 */ j .L8005F9C4
|
||||
/* 3ADBC 8005F9BC 0040802D */ daddu $s0, $v0, $zero
|
||||
.L8005F9C0:
|
||||
/* 3ADC0 8005F9C0 A2530006 */ sb $s3, 6($s2)
|
||||
.L8005F9C4:
|
||||
/* 3ADC4 8005F9C4 96420004 */ lhu $v0, 4($s2)
|
||||
/* 3ADC8 8005F9C8 2442FFFF */ addiu $v0, $v0, -1
|
||||
/* 3ADCC 8005F9CC 08017EBC */ j .L8005FAF0
|
||||
/* 3ADD0 8005F9D0 A6420004 */ sh $v0, 4($s2)
|
||||
.L8005F9D4:
|
||||
/* 3ADD4 8005F9D4 96420002 */ lhu $v0, 2($s2)
|
||||
/* 3ADD8 8005F9D8 1040001F */ beqz $v0, .L8005FA58
|
||||
/* 3ADDC 8005F9DC 00062040 */ sll $a0, $a2, 1
|
||||
/* 3ADE0 8005F9E0 96420004 */ lhu $v0, 4($s2)
|
||||
/* 3ADE4 8005F9E4 96430000 */ lhu $v1, ($s2)
|
||||
/* 3ADE8 8005F9E8 00431021 */ addu $v0, $v0, $v1
|
||||
/* 3ADEC 8005F9EC 304300FF */ andi $v1, $v0, 0xff
|
||||
/* 3ADF0 8005F9F0 3042FFFF */ andi $v0, $v0, 0xffff
|
||||
/* 3ADF4 8005F9F4 00021202 */ srl $v0, $v0, 8
|
||||
/* 3ADF8 8005F9F8 1040000B */ beqz $v0, .L8005FA28
|
||||
/* 3ADFC 8005F9FC A6430004 */ sh $v1, 4($s2)
|
||||
/* 3AE00 8005FA00 00062040 */ sll $a0, $a2, 1
|
||||
/* 3AE04 8005FA04 00862021 */ addu $a0, $a0, $a2
|
||||
/* 3AE08 8005FA08 00042080 */ sll $a0, $a0, 2
|
||||
/* 3AE0C 8005FA0C 00862021 */ addu $a0, $a0, $a2
|
||||
/* 3AE10 8005FA10 000420C0 */ sll $a0, $a0, 3
|
||||
/* 3AE14 8005FA14 3C02800E */ lui $v0, %hi(nuContPfs)
|
||||
/* 3AE18 8005FA18 2442AAD8 */ addiu $v0, $v0, %lo(nuContPfs)
|
||||
/* 3AE1C 8005FA1C 00822021 */ addu $a0, $a0, $v0
|
||||
/* 3AE20 8005FA20 08017E92 */ j .L8005FA48
|
||||
/* 3AE24 8005FA24 24050001 */ addiu $a1, $zero, 1
|
||||
.L8005FA28:
|
||||
/* 3AE28 8005FA28 00862021 */ addu $a0, $a0, $a2
|
||||
/* 3AE2C 8005FA2C 00042080 */ sll $a0, $a0, 2
|
||||
/* 3AE30 8005FA30 00862021 */ addu $a0, $a0, $a2
|
||||
/* 3AE34 8005FA34 000420C0 */ sll $a0, $a0, 3
|
||||
/* 3AE38 8005FA38 3C02800E */ lui $v0, %hi(nuContPfs)
|
||||
/* 3AE3C 8005FA3C 2442AAD8 */ addiu $v0, $v0, %lo(nuContPfs)
|
||||
/* 3AE40 8005FA40 00822021 */ addu $a0, $a0, $v0
|
||||
/* 3AE44 8005FA44 0000282D */ daddu $a1, $zero, $zero
|
||||
.L8005FA48:
|
||||
/* 3AE48 8005FA48 0C019F80 */ jal __osMotorAccess
|
||||
/* 3AE4C 8005FA4C 00000000 */ nop
|
||||
/* 3AE50 8005FA50 08017EA3 */ j .L8005FA8C
|
||||
/* 3AE54 8005FA54 0040802D */ daddu $s0, $v0, $zero
|
||||
.L8005FA58:
|
||||
/* 3AE58 8005FA58 00862021 */ addu $a0, $a0, $a2
|
||||
/* 3AE5C 8005FA5C 00042080 */ sll $a0, $a0, 2
|
||||
/* 3AE60 8005FA60 00862021 */ addu $a0, $a0, $a2
|
||||
/* 3AE64 8005FA64 000420C0 */ sll $a0, $a0, 3
|
||||
/* 3AE68 8005FA68 3C02800E */ lui $v0, %hi(nuContPfs)
|
||||
/* 3AE6C 8005FA6C 2442AAD8 */ addiu $v0, $v0, %lo(nuContPfs)
|
||||
/* 3AE70 8005FA70 00822021 */ addu $a0, $a0, $v0
|
||||
/* 3AE74 8005FA74 0C019F80 */ jal __osMotorAccess
|
||||
/* 3AE78 8005FA78 0000282D */ daddu $a1, $zero, $zero
|
||||
/* 3AE7C 8005FA7C 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 3AE80 8005FA80 24020001 */ addiu $v0, $zero, 1
|
||||
/* 3AE84 8005FA84 A2420006 */ sb $v0, 6($s2)
|
||||
/* 3AE88 8005FA88 A6530004 */ sh $s3, 4($s2)
|
||||
.L8005FA8C:
|
||||
/* 3AE8C 8005FA8C 96420002 */ lhu $v0, 2($s2)
|
||||
/* 3AE90 8005FA90 2442FFFF */ addiu $v0, $v0, -1
|
||||
/* 3AE94 8005FA94 08017EBC */ j .L8005FAF0
|
||||
/* 3AE98 8005FA98 A6420002 */ sh $v0, 2($s2)
|
||||
.L8005FA9C:
|
||||
/* 3AE9C 8005FA9C 3C04800E */ lui $a0, %hi(nuSiMesgQ)
|
||||
/* 3AEA0 8005FAA0 2484AC78 */ addiu $a0, $a0, %lo(nuSiMesgQ)
|
||||
/* 3AEA4 8005FAA4 00061040 */ sll $v0, $a2, 1
|
||||
/* 3AEA8 8005FAA8 00461021 */ addu $v0, $v0, $a2
|
||||
/* 3AEAC 8005FAAC 00021080 */ sll $v0, $v0, 2
|
||||
/* 3AEB0 8005FAB0 00461021 */ addu $v0, $v0, $a2
|
||||
/* 3AEB4 8005FAB4 000210C0 */ sll $v0, $v0, 3
|
||||
/* 3AEB8 8005FAB8 3C03800E */ lui $v1, %hi(nuContPfs)
|
||||
/* 3AEBC 8005FABC 2463AAD8 */ addiu $v1, $v1, %lo(nuContPfs)
|
||||
/* 3AEC0 8005FAC0 00438821 */ addu $s1, $v0, $v1
|
||||
/* 3AEC4 8005FAC4 0C019FD1 */ jal osMotorInit
|
||||
/* 3AEC8 8005FAC8 0220282D */ daddu $a1, $s1, $zero
|
||||
/* 3AECC 8005FACC 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 3AED0 8005FAD0 16000005 */ bnez $s0, .L8005FAE8
|
||||
/* 3AED4 8005FAD4 24020001 */ addiu $v0, $zero, 1
|
||||
/* 3AED8 8005FAD8 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 3AEDC 8005FADC 0C019F80 */ jal __osMotorAccess
|
||||
/* 3AEE0 8005FAE0 0000282D */ daddu $a1, $zero, $zero
|
||||
/* 3AEE4 8005FAE4 24020001 */ addiu $v0, $zero, 1
|
||||
.L8005FAE8:
|
||||
/* 3AEE8 8005FAE8 A2420006 */ sb $v0, 6($s2)
|
||||
/* 3AEEC 8005FAEC A6530004 */ sh $s3, 4($s2)
|
||||
.L8005FAF0:
|
||||
/* 3AEF0 8005FAF0 0200102D */ daddu $v0, $s0, $zero
|
||||
.L8005FAF4:
|
||||
/* 3AEF4 8005FAF4 8FBF0020 */ lw $ra, 0x20($sp)
|
||||
/* 3AEF8 8005FAF8 8FB3001C */ lw $s3, 0x1c($sp)
|
||||
/* 3AEFC 8005FAFC 8FB20018 */ lw $s2, 0x18($sp)
|
||||
/* 3AF00 8005FB00 8FB10014 */ lw $s1, 0x14($sp)
|
||||
/* 3AF04 8005FB04 8FB00010 */ lw $s0, 0x10($sp)
|
||||
/* 3AF08 8005FB08 03E00008 */ jr $ra
|
||||
/* 3AF0C 8005FB0C 27BD0028 */ addiu $sp, $sp, 0x28
|
@ -37,6 +37,8 @@ s32 create_entity(StaticEntityData*, s32, s32, s32, s32, s32);
|
||||
void func_80070550(s32, f32, f32, f32, f32, f32, s32, s32);
|
||||
void func_802E263C(Entity* entity);
|
||||
|
||||
void step_game_loop(void);
|
||||
|
||||
void create_shadow_callback(Shadow* entity);
|
||||
void func_802E10F4(Entity* entity);
|
||||
void func_802E114C(void);
|
||||
|
@ -1,20 +1,28 @@
|
||||
#include "common.h"
|
||||
#include "nu/nusys.h"
|
||||
|
||||
void gfxRetrace_Callback(void);
|
||||
void gfxRetrace_Callback(s32);
|
||||
void gfxPreNMI_Callback(void);
|
||||
void func_80026164(void);
|
||||
|
||||
extern s32* D_80073E00;
|
||||
extern s32 D_80073E04;
|
||||
extern s16 D_80073E08;
|
||||
extern s16 D_80073E0A;
|
||||
extern s32* D_8009A680;
|
||||
|
||||
#ifdef NON_MATCHING
|
||||
// Control flow issue w/ PANIC
|
||||
void boot_main(void) {
|
||||
OSViMode* viMode;
|
||||
if (osTvType == OS_TV_NTSC) {
|
||||
viMode = &osViModeTable[56];
|
||||
viMode = &osViModeTable[OS_TV_NTSC];
|
||||
} else if (osTvType == OS_TV_MPAL) {
|
||||
viMode = &osViModeTable[57];
|
||||
viMode = &osViModeTable[OS_TV_MPAL];
|
||||
} else {
|
||||
PANIC();
|
||||
}
|
||||
|
||||
osViSetMode(viMode);
|
||||
|
||||
osViSetSpecialFeatures(OS_VI_GAMMA_OFF | OS_VI_GAMMA_DITHER_OFF | OS_VI_DIVOT_ON | OS_VI_DITHER_FILTER_ON);
|
||||
@ -41,8 +49,51 @@ void boot_main(void) {
|
||||
INCLUDE_ASM(void, "code_1370_len_7d0", boot_main, void);
|
||||
#endif
|
||||
|
||||
INCLUDE_ASM(void, "code_1370_len_7d0", gfxRetrace_Callback, void);
|
||||
void gfxRetrace_Callback(s32 arg0) {
|
||||
s32* temp_80073E00 = &D_80073E00;
|
||||
|
||||
INCLUDE_ASM(s32, "code_1370_len_7d0", func_80026164);
|
||||
if (*temp_80073E00 != 0) {
|
||||
if (*temp_80073E00 == 1) {
|
||||
nuGfxTaskAllEndWait();
|
||||
if (arg0 == 0) {
|
||||
void* fb = osViGetCurrentFramebuffer();
|
||||
s32* temp_8009A680 = &D_8009A680;
|
||||
|
||||
INCLUDE_ASM(void, "code_1370_len_7d0", gfxPreNMI_Callback, void);
|
||||
temp_8009A680[2] = fb;
|
||||
temp_8009A680[1] = fb;
|
||||
temp_8009A680[0] = fb;
|
||||
D_80073E04 = fb;
|
||||
nuGfxSetCfb(temp_8009A680, 3);
|
||||
osViSwapBuffer(*temp_8009A680);
|
||||
*temp_80073E00 = 2;
|
||||
}
|
||||
}
|
||||
if (D_80073E00 == 2) {
|
||||
func_80026164();
|
||||
}
|
||||
} else {
|
||||
s16* temp_80073E0A = &D_80073E0A;
|
||||
|
||||
*temp_80073E0A ^= 1;
|
||||
if (*temp_80073E0A == 0) {
|
||||
s16* temp_80073E08;
|
||||
|
||||
step_game_loop();
|
||||
temp_80073E08 = &D_80073E08;
|
||||
*temp_80073E08 = 1;
|
||||
|
||||
if (arg0 < 3) {
|
||||
*temp_80073E08 = 0;
|
||||
func_800269EC();
|
||||
gfx_draw_frame();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
INCLUDE_ASM(void, "code_1370_len_7d0", func_80026164);
|
||||
|
||||
void gfxPreNMI_Callback(void) {
|
||||
D_80073E00 = 1;
|
||||
nuContRmbForceStop();
|
||||
}
|
||||
|
@ -31,7 +31,7 @@ extern int D_802EB3D0[];
|
||||
extern u8 D_80074021;
|
||||
extern s32 D_8009A5D8;
|
||||
|
||||
INCLUDE_ASM(s32, "code_1b40_len_20b0", step_game_loop);
|
||||
INCLUDE_ASM(void, "code_1b40_len_20b0", step_game_loop);
|
||||
|
||||
INCLUDE_ASM(s32, "code_1b40_len_20b0", func_800269EC);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user