1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2024-11-25 01:34:18 +00:00

Decompile z_oceff_wipe (#122)

* Decompile z_oceff_wipe

- z_oceff_wipe: OK
- z_oceff_wipe2: OK
- z_oceff_wipe3: OK
- z_oceff_wipe4: OK
- Add patched libmalloc to ido 7 to prevent segfaults
- Add CUR_CAM macro

* Rename CUR_CAM to ACTIVE_CAM

* Fixes in PR #122
This commit is contained in:
Random 2020-05-09 22:58:02 +02:00 committed by GitHub
parent 4c68c61df5
commit 40836f5d82
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
56 changed files with 978 additions and 1670 deletions

View file

@ -1,21 +0,0 @@
glabel OceffWipe_Destroy
/* 00070 80BA8E00 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 00074 80BA8E04 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00078 80BA8E08 AFA40020 */ sw $a0, 0x0020($sp)
/* 0007C 80BA8E0C 8CA21C44 */ lw $v0, 0x1C44($a1) ## 00001C44
/* 00080 80BA8E10 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 00084 80BA8E14 0C021DB2 */ jal func_800876C8
/* 00088 80BA8E18 AFA20018 */ sw $v0, 0x0018($sp)
/* 0008C 80BA8E1C 3C0E8016 */ lui $t6, %hi(gSaveContext+0x13c8)
/* 00090 80BA8E20 85CEFA28 */ lh $t6, %lo(gSaveContext+0x13c8)($t6)
/* 00094 80BA8E24 8FA20018 */ lw $v0, 0x0018($sp)
/* 00098 80BA8E28 51C00005 */ beql $t6, $zero, .L80BA8E40
/* 0009C 80BA8E2C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 000A0 80BA8E30 904F0692 */ lbu $t7, 0x0692($v0) ## 00000692
/* 000A4 80BA8E34 35F80040 */ ori $t8, $t7, 0x0040 ## $t8 = 00000040
/* 000A8 80BA8E38 A0580692 */ sb $t8, 0x0692($v0) ## 00000692
/* 000AC 80BA8E3C 8FBF0014 */ lw $ra, 0x0014($sp)
.L80BA8E40:
/* 000B0 80BA8E40 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 000B4 80BA8E44 03E00008 */ jr $ra
/* 000B8 80BA8E48 00000000 */ nop

View file

@ -1,288 +0,0 @@
.rdata
glabel D_80BA9AE0
.asciz "../z_oceff_wipe.c"
.balign 4
glabel D_80BA9AF4
.asciz "../z_oceff_wipe.c"
.balign 4
glabel D_80BA9B08
.asciz "../z_oceff_wipe.c"
.balign 4
.late_rodata
glabel D_80BA9B1C
.float 0.1
.text
glabel OceffWipe_Draw
/* 0011C 80BA8EAC 27BDFF48 */ addiu $sp, $sp, 0xFF48 ## $sp = FFFFFF48
/* 00120 80BA8EB0 AFBF003C */ sw $ra, 0x003C($sp)
/* 00124 80BA8EB4 AFB10038 */ sw $s1, 0x0038($sp)
/* 00128 80BA8EB8 AFB00034 */ sw $s0, 0x0034($sp)
/* 0012C 80BA8EBC AFA400B8 */ sw $a0, 0x00B8($sp)
/* 00130 80BA8EC0 8CAE009C */ lw $t6, 0x009C($a1) ## 0000009C
/* 00134 80BA8EC4 27B80094 */ addiu $t8, $sp, 0x0094 ## $t8 = FFFFFFDC
/* 00138 80BA8EC8 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 0013C 80BA8ECC 31CF00FF */ andi $t7, $t6, 0x00FF ## $t7 = 00000000
/* 00140 80BA8ED0 AFAF00B4 */ sw $t7, 0x00B4($sp)
/* 00144 80BA8ED4 84B907A0 */ lh $t9, 0x07A0($a1) ## 000007A0
/* 00148 80BA8ED8 27A40084 */ addiu $a0, $sp, 0x0084 ## $a0 = FFFFFFCC
/* 0014C 80BA8EDC 00195880 */ sll $t3, $t9, 2
/* 00150 80BA8EE0 00AB6021 */ addu $t4, $a1, $t3
/* 00154 80BA8EE4 8D8D0790 */ lw $t5, 0x0790($t4) ## 00000790
/* 00158 80BA8EE8 8DAF005C */ lw $t7, 0x005C($t5) ## 0000005C
/* 0015C 80BA8EEC AF0F0000 */ sw $t7, 0x0000($t8) ## FFFFFFDC
/* 00160 80BA8EF0 8DAE0060 */ lw $t6, 0x0060($t5) ## 00000060
/* 00164 80BA8EF4 AF0E0004 */ sw $t6, 0x0004($t8) ## FFFFFFE0
/* 00168 80BA8EF8 8DAF0064 */ lw $t7, 0x0064($t5) ## 00000064
/* 0016C 80BA8EFC AF0F0008 */ sw $t7, 0x0008($t8) ## FFFFFFE4
/* 00170 80BA8F00 84B907A0 */ lh $t9, 0x07A0($a1) ## 000007A0
/* 00174 80BA8F04 00195880 */ sll $t3, $t9, 2
/* 00178 80BA8F08 00AB6021 */ addu $t4, $a1, $t3
/* 0017C 80BA8F0C 0C016BED */ jal func_8005AFB4
/* 00180 80BA8F10 8D850790 */ lw $a1, 0x0790($t4) ## 00000790
/* 00184 80BA8F14 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
/* 00188 80BA8F18 3C0680BB */ lui $a2, %hi(D_80BA9AE0) ## $a2 = 80BB0000
/* 0018C 80BA8F1C 24C69AE0 */ addiu $a2, $a2, %lo(D_80BA9AE0) ## $a2 = 80BA9AE0
/* 00190 80BA8F20 27A40070 */ addiu $a0, $sp, 0x0070 ## $a0 = FFFFFFB8
/* 00194 80BA8F24 2407015A */ addiu $a3, $zero, 0x015A ## $a3 = 0000015A
/* 00198 80BA8F28 0C031AB1 */ jal Graph_OpenDisps
/* 0019C 80BA8F2C 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
/* 001A0 80BA8F30 8FAA00B8 */ lw $t2, 0x00B8($sp)
/* 001A4 80BA8F34 8542014C */ lh $v0, 0x014C($t2) ## 0000014C
/* 001A8 80BA8F38 28410020 */ slti $at, $v0, 0x0020
/* 001AC 80BA8F3C 1020000B */ beq $at, $zero, .L80BA8F6C
/* 001B0 80BA8F40 00402025 */ or $a0, $v0, $zero ## $a0 = 00000000
/* 001B4 80BA8F44 00042640 */ sll $a0, $a0, 25
/* 001B8 80BA8F48 0C01DE1C */ jal Math_Sins
## sins?
/* 001BC 80BA8F4C 00042403 */ sra $a0, $a0, 16
/* 001C0 80BA8F50 3C0144AF */ lui $at, 0x44AF ## $at = 44AF0000
/* 001C4 80BA8F54 44812000 */ mtc1 $at, $f4 ## $f4 = 1400.00
/* 001C8 80BA8F58 8FAA00B8 */ lw $t2, 0x00B8($sp)
/* 001CC 80BA8F5C 46040182 */ mul.s $f6, $f0, $f4
/* 001D0 80BA8F60 E7A600AC */ swc1 $f6, 0x00AC($sp)
/* 001D4 80BA8F64 10000005 */ beq $zero, $zero, .L80BA8F7C
/* 001D8 80BA8F68 8542014C */ lh $v0, 0x014C($t2) ## 0000014C
.L80BA8F6C:
/* 001DC 80BA8F6C 3C0144AF */ lui $at, 0x44AF ## $at = 44AF0000
/* 001E0 80BA8F70 44814000 */ mtc1 $at, $f8 ## $f8 = 1400.00
/* 001E4 80BA8F74 00000000 */ nop
/* 001E8 80BA8F78 E7A800AC */ swc1 $f8, 0x00AC($sp)
.L80BA8F7C:
/* 001EC 80BA8F7C 28410050 */ slti $at, $v0, 0x0050
/* 001F0 80BA8F80 1420000E */ bne $at, $zero, .L80BA8FBC
/* 001F4 80BA8F84 3C0380BB */ lui $v1, %hi(D_80BA96E0) ## $v1 = 80BB0000
/* 001F8 80BA8F88 A3A000A4 */ sb $zero, 0x00A4($sp)
/* 001FC 80BA8F8C 854D014C */ lh $t5, 0x014C($t2) ## 0000014C
/* 00200 80BA8F90 24020064 */ addiu $v0, $zero, 0x0064 ## $v0 = 00000064
/* 00204 80BA8F94 004D7023 */ subu $t6, $v0, $t5
/* 00208 80BA8F98 000E78C0 */ sll $t7, $t6, 3
/* 0020C 80BA8F9C A3AF00A5 */ sb $t7, 0x00A5($sp)
/* 00210 80BA8FA0 8559014C */ lh $t9, 0x014C($t2) ## 0000014C
/* 00214 80BA8FA4 00595823 */ subu $t3, $v0, $t9
/* 00218 80BA8FA8 000B6080 */ sll $t4, $t3, 2
/* 0021C 80BA8FAC 018B6023 */ subu $t4, $t4, $t3
/* 00220 80BA8FB0 000C6080 */ sll $t4, $t4, 2
/* 00224 80BA8FB4 10000006 */ beq $zero, $zero, .L80BA8FD0
/* 00228 80BA8FB8 A3AC00A6 */ sb $t4, 0x00A6($sp)
.L80BA8FBC:
/* 0022C 80BA8FBC 241800A0 */ addiu $t8, $zero, 0x00A0 ## $t8 = 000000A0
/* 00230 80BA8FC0 240D00FF */ addiu $t5, $zero, 0x00FF ## $t5 = 000000FF
/* 00234 80BA8FC4 A3A000A4 */ sb $zero, 0x00A4($sp)
/* 00238 80BA8FC8 A3B800A5 */ sb $t8, 0x00A5($sp)
/* 0023C 80BA8FCC A3AD00A6 */ sb $t5, 0x00A6($sp)
.L80BA8FD0:
/* 00240 80BA8FD0 3C0480BB */ lui $a0, %hi(D_80BA9AA0) ## $a0 = 80BB0000
/* 00244 80BA8FD4 3C0980BB */ lui $t1, %hi(D_80BA9AB4) ## $t1 = 80BB0000
/* 00248 80BA8FD8 25299AB4 */ addiu $t1, $t1, %lo(D_80BA9AB4) ## $t1 = 80BA9AB4
/* 0024C 80BA8FDC 24849AA0 */ addiu $a0, $a0, %lo(D_80BA9AA0) ## $a0 = 80BA9AA0
/* 00250 80BA8FE0 246396E0 */ addiu $v1, $v1, %lo(D_80BA96E0) ## $v1 = 80BA96E0
/* 00254 80BA8FE4 27A200A4 */ addiu $v0, $sp, 0x00A4 ## $v0 = FFFFFFEC
.L80BA8FE8:
/* 00258 80BA8FE8 90850000 */ lbu $a1, 0x0000($a0) ## 80BA9AA0
/* 0025C 80BA8FEC 90860001 */ lbu $a2, 0x0001($a0) ## 80BA9AA1
/* 00260 80BA8FF0 90870002 */ lbu $a3, 0x0002($a0) ## 80BA9AA2
/* 00264 80BA8FF4 30AE00F0 */ andi $t6, $a1, 0x00F0 ## $t6 = 00000000
/* 00268 80BA8FF8 000E7903 */ sra $t7, $t6, 4
/* 0026C 80BA8FFC 004FC821 */ addu $t9, $v0, $t7
/* 00270 80BA9000 30AC000F */ andi $t4, $a1, 0x000F ## $t4 = 00000000
/* 00274 80BA9004 932B0000 */ lbu $t3, 0x0000($t9) ## 00000000
/* 00278 80BA9008 004CC021 */ addu $t8, $v0, $t4
/* 0027C 80BA900C 930D0000 */ lbu $t5, 0x0000($t8) ## 000000A0
/* 00280 80BA9010 30CE00F0 */ andi $t6, $a2, 0x00F0 ## $t6 = 00000000
/* 00284 80BA9014 000E7903 */ sra $t7, $t6, 4
/* 00288 80BA9018 004FC821 */ addu $t9, $v0, $t7
/* 0028C 80BA901C 30CC000F */ andi $t4, $a2, 0x000F ## $t4 = 00000000
/* 00290 80BA9020 A06B000F */ sb $t3, 0x000F($v1) ## 80BA96EF
/* 00294 80BA9024 932B0000 */ lbu $t3, 0x0000($t9) ## 00000000
/* 00298 80BA9028 004CC021 */ addu $t8, $v0, $t4
/* 0029C 80BA902C A06D001F */ sb $t5, 0x001F($v1) ## 80BA96FF
/* 002A0 80BA9030 930D0000 */ lbu $t5, 0x0000($t8) ## 000000A0
/* 002A4 80BA9034 30EE00F0 */ andi $t6, $a3, 0x00F0 ## $t6 = 00000000
/* 002A8 80BA9038 000E7903 */ sra $t7, $t6, 4
/* 002AC 80BA903C 90880003 */ lbu $t0, 0x0003($a0) ## 80BA9AA3
/* 002B0 80BA9040 004FC821 */ addu $t9, $v0, $t7
/* 002B4 80BA9044 30EC000F */ andi $t4, $a3, 0x000F ## $t4 = 00000000
/* 002B8 80BA9048 A06B002F */ sb $t3, 0x002F($v1) ## 80BA970F
/* 002BC 80BA904C 932B0000 */ lbu $t3, 0x0000($t9) ## 00000000
/* 002C0 80BA9050 004CC021 */ addu $t8, $v0, $t4
/* 002C4 80BA9054 A06D003F */ sb $t5, 0x003F($v1) ## 80BA971F
/* 002C8 80BA9058 930D0000 */ lbu $t5, 0x0000($t8) ## 000000A0
/* 002CC 80BA905C 310E00F0 */ andi $t6, $t0, 0x00F0 ## $t6 = 00000000
/* 002D0 80BA9060 000E7903 */ sra $t7, $t6, 4
/* 002D4 80BA9064 310C000F */ andi $t4, $t0, 0x000F ## $t4 = 00000000
/* 002D8 80BA9068 A06B004F */ sb $t3, 0x004F($v1) ## 80BA972F
/* 002DC 80BA906C 004CC021 */ addu $t8, $v0, $t4
/* 002E0 80BA9070 004FC821 */ addu $t9, $v0, $t7
/* 002E4 80BA9074 A06D005F */ sb $t5, 0x005F($v1) ## 80BA973F
/* 002E8 80BA9078 930D0000 */ lbu $t5, 0x0000($t8) ## 000000A0
/* 002EC 80BA907C 932B0000 */ lbu $t3, 0x0000($t9) ## 00000000
/* 002F0 80BA9080 24840004 */ addiu $a0, $a0, 0x0004 ## $a0 = 80BA9AA4
/* 002F4 80BA9084 24630080 */ addiu $v1, $v1, 0x0080 ## $v1 = 80BA9760
/* 002F8 80BA9088 A06DFFFF */ sb $t5, -0x0001($v1) ## 80BA975F
/* 002FC 80BA908C 1489FFD6 */ bne $a0, $t1, .L80BA8FE8
/* 00300 80BA9090 A06BFFEF */ sb $t3, -0x0011($v1) ## 80BA974F
/* 00304 80BA9094 0C024F61 */ jal func_80093D84
/* 00308 80BA9098 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 0030C 80BA909C C7AA0094 */ lwc1 $f10, 0x0094($sp)
/* 00310 80BA90A0 C7B00084 */ lwc1 $f16, 0x0084($sp)
/* 00314 80BA90A4 C7A6009C */ lwc1 $f6, 0x009C($sp)
/* 00318 80BA90A8 C7A8008C */ lwc1 $f8, 0x008C($sp)
/* 0031C 80BA90AC 46105300 */ add.s $f12, $f10, $f16
/* 00320 80BA90B0 C7B20098 */ lwc1 $f18, 0x0098($sp)
/* 00324 80BA90B4 C7A40088 */ lwc1 $f4, 0x0088($sp)
/* 00328 80BA90B8 46083280 */ add.s $f10, $f6, $f8
/* 0032C 80BA90BC 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 00330 80BA90C0 46049380 */ add.s $f14, $f18, $f4
/* 00334 80BA90C4 44065000 */ mfc1 $a2, $f10
/* 00338 80BA90C8 0C034261 */ jal Matrix_Translate
/* 0033C 80BA90CC 00000000 */ nop
/* 00340 80BA90D0 3C0180BB */ lui $at, %hi(D_80BA9B1C) ## $at = 80BB0000
/* 00344 80BA90D4 C42C9B1C */ lwc1 $f12, %lo(D_80BA9B1C)($at)
/* 00348 80BA90D8 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 0034C 80BA90DC 44066000 */ mfc1 $a2, $f12
/* 00350 80BA90E0 0C0342A3 */ jal Matrix_Scale
/* 00354 80BA90E4 46006386 */ mov.s $f14, $f12
/* 00358 80BA90E8 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 0035C 80BA90EC 34211DA0 */ ori $at, $at, 0x1DA0 ## $at = 00011DA0
/* 00360 80BA90F0 0C0347F5 */ jal func_800D1FD4
/* 00364 80BA90F4 02212021 */ addu $a0, $s1, $at
/* 00368 80BA90F8 C7B000AC */ lwc1 $f16, 0x00AC($sp)
/* 0036C 80BA90FC 44806000 */ mtc1 $zero, $f12 ## $f12 = 0.00
/* 00370 80BA9100 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 00374 80BA9104 46008487 */ neg.s $f18, $f16
/* 00378 80BA9108 46006386 */ mov.s $f14, $f12
/* 0037C 80BA910C 44069000 */ mfc1 $a2, $f18
/* 00380 80BA9110 0C034261 */ jal Matrix_Translate
/* 00384 80BA9114 00000000 */ nop
/* 00388 80BA9118 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 0038C 80BA911C 3C0FDA38 */ lui $t7, 0xDA38 ## $t7 = DA380000
/* 00390 80BA9120 35EF0003 */ ori $t7, $t7, 0x0003 ## $t7 = DA380003
/* 00394 80BA9124 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008
/* 00398 80BA9128 AE0E02D0 */ sw $t6, 0x02D0($s0) ## 000002D0
/* 0039C 80BA912C AC4F0000 */ sw $t7, 0x0000($v0) ## 00000000
/* 003A0 80BA9130 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 003A4 80BA9134 3C0580BB */ lui $a1, %hi(D_80BA9AF4) ## $a1 = 80BB0000
/* 003A8 80BA9138 24A59AF4 */ addiu $a1, $a1, %lo(D_80BA9AF4) ## $a1 = 80BA9AF4
/* 003AC 80BA913C 24060177 */ addiu $a2, $zero, 0x0177 ## $a2 = 00000177
/* 003B0 80BA9140 0C0346A2 */ jal Matrix_NewMtx
/* 003B4 80BA9144 AFA2006C */ sw $v0, 0x006C($sp)
/* 003B8 80BA9148 8FA3006C */ lw $v1, 0x006C($sp)
/* 003BC 80BA914C 3C18FA00 */ lui $t8, 0xFA00 ## $t8 = FA000000
/* 003C0 80BA9150 3C0DAAFF */ lui $t5, 0xAAFF ## $t5 = AAFF0000
/* 003C4 80BA9154 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 003C8 80BA9158 8FB900B8 */ lw $t9, 0x00B8($sp)
/* 003CC 80BA915C 3C0CFA00 */ lui $t4, 0xFA00 ## $t4 = FA000000
/* 003D0 80BA9160 3C08DE00 */ lui $t0, 0xDE00 ## $t0 = DE000000
/* 003D4 80BA9164 872B001C */ lh $t3, 0x001C($t9) ## 0000001C
/* 003D8 80BA9168 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 003DC 80BA916C 51600011 */ beql $t3, $zero, .L80BA91B4
/* 003E0 80BA9170 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 003E4 80BA9174 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 003E8 80BA9178 35ADFFFF */ ori $t5, $t5, 0xFFFF ## $t5 = AAFFFFFF
/* 003EC 80BA917C 3C190096 */ lui $t9, 0x0096 ## $t9 = 00960000
/* 003F0 80BA9180 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
/* 003F4 80BA9184 AE0C02D0 */ sw $t4, 0x02D0($s0) ## 000002D0
/* 003F8 80BA9188 AC4D0004 */ sw $t5, 0x0004($v0) ## 00000004
/* 003FC 80BA918C AC580000 */ sw $t8, 0x0000($v0) ## 00000000
/* 00400 80BA9190 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00404 80BA9194 3739FF80 */ ori $t9, $t9, 0xFF80 ## $t9 = 0096FF80
/* 00408 80BA9198 3C0FFB00 */ lui $t7, 0xFB00 ## $t7 = FB000000
/* 0040C 80BA919C 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008
/* 00410 80BA91A0 AE0E02D0 */ sw $t6, 0x02D0($s0) ## 000002D0
/* 00414 80BA91A4 AC590004 */ sw $t9, 0x0004($v0) ## 00000004
/* 00418 80BA91A8 1000000F */ beq $zero, $zero, .L80BA91E8
/* 0041C 80BA91AC AC4F0000 */ sw $t7, 0x0000($v0) ## 00000000
/* 00420 80BA91B0 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
.L80BA91B4:
/* 00424 80BA91B4 2418C8FF */ addiu $t8, $zero, 0xC8FF ## $t8 = FFFFC8FF
/* 00428 80BA91B8 3C0F6400 */ lui $t7, 0x6400 ## $t7 = 64000000
/* 0042C 80BA91BC 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008
/* 00430 80BA91C0 AE0B02D0 */ sw $t3, 0x02D0($s0) ## 000002D0
/* 00434 80BA91C4 AC580004 */ sw $t8, 0x0004($v0) ## 00000004
/* 00438 80BA91C8 AC4C0000 */ sw $t4, 0x0000($v0) ## 00000000
/* 0043C 80BA91CC 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00440 80BA91D0 35EFFF80 */ ori $t7, $t7, 0xFF80 ## $t7 = 6400FF80
/* 00444 80BA91D4 3C0EFB00 */ lui $t6, 0xFB00 ## $t6 = FB000000
/* 00448 80BA91D8 244D0008 */ addiu $t5, $v0, 0x0008 ## $t5 = 00000008
/* 0044C 80BA91DC AE0D02D0 */ sw $t5, 0x02D0($s0) ## 000002D0
/* 00450 80BA91E0 AC4F0004 */ sw $t7, 0x0004($v0) ## 00000004
/* 00454 80BA91E4 AC4E0000 */ sw $t6, 0x0000($v0) ## 00000000
.L80BA91E8:
/* 00458 80BA91E8 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 0045C 80BA91EC 3C0B80BB */ lui $t3, %hi(D_80BA9960) ## $t3 = 80BB0000
/* 00460 80BA91F0 256B9960 */ addiu $t3, $t3, %lo(D_80BA9960) ## $t3 = 80BA9960
/* 00464 80BA91F4 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000008
/* 00468 80BA91F8 AE1902D0 */ sw $t9, 0x02D0($s0) ## 000002D0
/* 0046C 80BA91FC AC480000 */ sw $t0, 0x0000($v0) ## 00000000
/* 00470 80BA9200 AC4B0004 */ sw $t3, 0x0004($v0) ## 00000004
/* 00474 80BA9204 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00478 80BA9208 8FA900B4 */ lw $t1, 0x00B4($sp)
/* 0047C 80BA920C 24190020 */ addiu $t9, $zero, 0x0020 ## $t9 = 00000020
/* 00480 80BA9210 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
/* 00484 80BA9214 AE0C02D0 */ sw $t4, 0x02D0($s0) ## 000002D0
/* 00488 80BA9218 AC480000 */ sw $t0, 0x0000($v0) ## 00000000
/* 0048C 80BA921C 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 00490 80BA9220 00090823 */ subu $at, $zero, $t1
/* 00494 80BA9224 00013840 */ sll $a3, $at, 1
/* 00498 80BA9228 24180020 */ addiu $t8, $zero, 0x0020 ## $t8 = 00000020
/* 0049C 80BA922C 240D0020 */ addiu $t5, $zero, 0x0020 ## $t5 = 00000020
/* 004A0 80BA9230 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
/* 004A4 80BA9234 240F0020 */ addiu $t7, $zero, 0x0020 ## $t7 = 00000020
/* 004A8 80BA9238 00093023 */ subu $a2, $zero, $t1
/* 004AC 80BA923C AFA6001C */ sw $a2, 0x001C($sp)
/* 004B0 80BA9240 AFAF0024 */ sw $t7, 0x0024($sp)
/* 004B4 80BA9244 AFAE0018 */ sw $t6, 0x0018($sp)
/* 004B8 80BA9248 AFAD0014 */ sw $t5, 0x0014($sp)
/* 004BC 80BA924C AFB80010 */ sw $t8, 0x0010($sp)
/* 004C0 80BA9250 AFA70020 */ sw $a3, 0x0020($sp)
/* 004C4 80BA9254 AFB90028 */ sw $t9, 0x0028($sp)
/* 004C8 80BA9258 0C0253D0 */ jal Gfx_TwoTexScroll
/* 004CC 80BA925C AFA20054 */ sw $v0, 0x0054($sp)
/* 004D0 80BA9260 8FA30054 */ lw $v1, 0x0054($sp)
/* 004D4 80BA9264 3C1880BB */ lui $t8, %hi(D_80BA99E8) ## $t8 = 80BB0000
/* 004D8 80BA9268 271899E8 */ addiu $t8, $t8, %lo(D_80BA99E8) ## $t8 = 80BA99E8
/* 004DC 80BA926C AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 004E0 80BA9270 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 004E4 80BA9274 3C0CDE00 */ lui $t4, 0xDE00 ## $t4 = DE000000
/* 004E8 80BA9278 3C0680BB */ lui $a2, %hi(D_80BA9B08) ## $a2 = 80BB0000
/* 004EC 80BA927C 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008
/* 004F0 80BA9280 AE0B02D0 */ sw $t3, 0x02D0($s0) ## 000002D0
/* 004F4 80BA9284 AC580004 */ sw $t8, 0x0004($v0) ## 00000004
/* 004F8 80BA9288 AC4C0000 */ sw $t4, 0x0000($v0) ## 00000000
/* 004FC 80BA928C 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
/* 00500 80BA9290 24C69B08 */ addiu $a2, $a2, %lo(D_80BA9B08) ## $a2 = 80BA9B08
/* 00504 80BA9294 27A40070 */ addiu $a0, $sp, 0x0070 ## $a0 = FFFFFFB8
/* 00508 80BA9298 0C031AD5 */ jal Graph_CloseDisps
/* 0050C 80BA929C 2407018E */ addiu $a3, $zero, 0x018E ## $a3 = 0000018E
/* 00510 80BA92A0 8FBF003C */ lw $ra, 0x003C($sp)
/* 00514 80BA92A4 8FB00034 */ lw $s0, 0x0034($sp)
/* 00518 80BA92A8 8FB10038 */ lw $s1, 0x0038($sp)
/* 0051C 80BA92AC 03E00008 */ jr $ra
/* 00520 80BA92B0 27BD00B8 */ addiu $sp, $sp, 0x00B8 ## $sp = 00000000
/* 00524 80BA92B4 00000000 */ nop
/* 00528 80BA92B8 00000000 */ nop
/* 0052C 80BA92BC 00000000 */ nop

View file

@ -1,37 +0,0 @@
.rdata
glabel D_80BA9AC0
.asciz " WIPE arg_data = %d\n"
.balign 4
.text
glabel OceffWipe_Init
/* 00000 80BA8D90 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00004 80BA8D94 AFA5001C */ sw $a1, 0x001C($sp)
/* 00008 80BA8D98 AFBF0014 */ sw $ra, 0x0014($sp)
/* 0000C 80BA8D9C 3C053DCC */ lui $a1, 0x3DCC ## $a1 = 3DCC0000
/* 00010 80BA8DA0 34A5CCCD */ ori $a1, $a1, 0xCCCD ## $a1 = 3DCCCCCD
/* 00014 80BA8DA4 0C00B58B */ jal Actor_SetScale
/* 00018 80BA8DA8 AFA40018 */ sw $a0, 0x0018($sp)
/* 0001C 80BA8DAC 8FA60018 */ lw $a2, 0x0018($sp)
/* 00020 80BA8DB0 8FA2001C */ lw $v0, 0x001C($sp)
/* 00024 80BA8DB4 3C0480BB */ lui $a0, %hi(D_80BA9AC0) ## $a0 = 80BB0000
/* 00028 80BA8DB8 A4C0014C */ sh $zero, 0x014C($a2) ## 0000014C
/* 0002C 80BA8DBC 844E07A0 */ lh $t6, 0x07A0($v0) ## 000007A0
/* 00030 80BA8DC0 24849AC0 */ addiu $a0, $a0, %lo(D_80BA9AC0) ## $a0 = 80BA9AC0
/* 00034 80BA8DC4 84C5001C */ lh $a1, 0x001C($a2) ## 0000001C
/* 00038 80BA8DC8 000E7880 */ sll $t7, $t6, 2
/* 0003C 80BA8DCC 004FC021 */ addu $t8, $v0, $t7
/* 00040 80BA8DD0 8F190790 */ lw $t9, 0x0790($t8) ## 00000790
/* 00044 80BA8DD4 8F29005C */ lw $t1, 0x005C($t9) ## 0000005C
/* 00048 80BA8DD8 ACC90024 */ sw $t1, 0x0024($a2) ## 00000024
/* 0004C 80BA8DDC 8F280060 */ lw $t0, 0x0060($t9) ## 00000060
/* 00050 80BA8DE0 ACC80028 */ sw $t0, 0x0028($a2) ## 00000028
/* 00054 80BA8DE4 8F290064 */ lw $t1, 0x0064($t9) ## 00000064
/* 00058 80BA8DE8 0C00084C */ jal osSyncPrintf
/* 0005C 80BA8DEC ACC9002C */ sw $t1, 0x002C($a2) ## 0000002C
/* 00060 80BA8DF0 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00064 80BA8DF4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00068 80BA8DF8 03E00008 */ jr $ra
/* 0006C 80BA8DFC 00000000 */ nop

View file

@ -1,28 +0,0 @@
glabel OceffWipe_Update
/* 000BC 80BA8E4C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 000C0 80BA8E50 AFBF0014 */ sw $ra, 0x0014($sp)
/* 000C4 80BA8E54 84AE07A0 */ lh $t6, 0x07A0($a1) ## 000007A0
/* 000C8 80BA8E58 8482014C */ lh $v0, 0x014C($a0) ## 0000014C
/* 000CC 80BA8E5C 000E7880 */ sll $t7, $t6, 2
/* 000D0 80BA8E60 00AFC021 */ addu $t8, $a1, $t7
/* 000D4 80BA8E64 8F190790 */ lw $t9, 0x0790($t8) ## 00000790
/* 000D8 80BA8E68 28410064 */ slti $at, $v0, 0x0064
/* 000DC 80BA8E6C 244A0001 */ addiu $t2, $v0, 0x0001 ## $t2 = 00000001
/* 000E0 80BA8E70 8F29005C */ lw $t1, 0x005C($t9) ## 0000005C
/* 000E4 80BA8E74 AC890024 */ sw $t1, 0x0024($a0) ## 00000024
/* 000E8 80BA8E78 8F280060 */ lw $t0, 0x0060($t9) ## 00000060
/* 000EC 80BA8E7C AC880028 */ sw $t0, 0x0028($a0) ## 00000028
/* 000F0 80BA8E80 8F290064 */ lw $t1, 0x0064($t9) ## 00000064
/* 000F4 80BA8E84 10200003 */ beq $at, $zero, .L80BA8E94
/* 000F8 80BA8E88 AC89002C */ sw $t1, 0x002C($a0) ## 0000002C
/* 000FC 80BA8E8C 10000003 */ beq $zero, $zero, .L80BA8E9C
/* 00100 80BA8E90 A48A014C */ sh $t2, 0x014C($a0) ## 0000014C
.L80BA8E94:
/* 00104 80BA8E94 0C00B55C */ jal Actor_Kill
/* 00108 80BA8E98 00000000 */ nop
.L80BA8E9C:
/* 0010C 80BA8E9C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00110 80BA8EA0 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00114 80BA8EA4 03E00008 */ jr $ra
/* 00118 80BA8EA8 00000000 */ nop

View file

@ -1,21 +0,0 @@
glabel OceffWipe2_Destroy
/* 00070 80BA9C20 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 00074 80BA9C24 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00078 80BA9C28 AFA40020 */ sw $a0, 0x0020($sp)
/* 0007C 80BA9C2C 8CA21C44 */ lw $v0, 0x1C44($a1) ## 00001C44
/* 00080 80BA9C30 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 00084 80BA9C34 0C021DB2 */ jal func_800876C8
/* 00088 80BA9C38 AFA20018 */ sw $v0, 0x0018($sp)
/* 0008C 80BA9C3C 3C0E8016 */ lui $t6, %hi(gSaveContext+0x13c8)
/* 00090 80BA9C40 85CEFA28 */ lh $t6, %lo(gSaveContext+0x13c8)($t6)
/* 00094 80BA9C44 8FA20018 */ lw $v0, 0x0018($sp)
/* 00098 80BA9C48 51C00005 */ beql $t6, $zero, .L80BA9C60
/* 0009C 80BA9C4C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 000A0 80BA9C50 904F0692 */ lbu $t7, 0x0692($v0) ## 00000692
/* 000A4 80BA9C54 35F80040 */ ori $t8, $t7, 0x0040 ## $t8 = 00000040
/* 000A8 80BA9C58 A0580692 */ sb $t8, 0x0692($v0) ## 00000692
/* 000AC 80BA9C5C 8FBF0014 */ lw $ra, 0x0014($sp)
.L80BA9C60:
/* 000B0 80BA9C60 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 000B4 80BA9C64 03E00008 */ jr $ra
/* 000B8 80BA9C68 00000000 */ nop

View file

@ -1,237 +0,0 @@
.rdata
glabel D_80BAB2C0
.asciz "../z_oceff_wipe2.c"
.balign 4
glabel D_80BAB2D4
.asciz "../z_oceff_wipe2.c"
.balign 4
glabel D_80BAB2E8
.asciz "../z_oceff_wipe2.c"
.balign 4
.late_rodata
glabel D_80BAB2FC
.float 1330.0
glabel D_80BAB300
.float 1330.0
glabel D_80BAB304
.float 0.1
.text
glabel OceffWipe2_Draw
/* 0011C 80BA9CCC 27BDFF50 */ addiu $sp, $sp, 0xFF50 ## $sp = FFFFFF50
/* 00120 80BA9CD0 AFBF003C */ sw $ra, 0x003C($sp)
/* 00124 80BA9CD4 AFB10038 */ sw $s1, 0x0038($sp)
/* 00128 80BA9CD8 AFB00034 */ sw $s0, 0x0034($sp)
/* 0012C 80BA9CDC 8CAE009C */ lw $t6, 0x009C($a1) ## 0000009C
/* 00130 80BA9CE0 27B8008C */ addiu $t8, $sp, 0x008C ## $t8 = FFFFFFDC
/* 00134 80BA9CE4 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 00138 80BA9CE8 31CF00FF */ andi $t7, $t6, 0x00FF ## $t7 = 00000000
/* 0013C 80BA9CEC AFAF00AC */ sw $t7, 0x00AC($sp)
/* 00140 80BA9CF0 84B907A0 */ lh $t9, 0x07A0($a1) ## 000007A0
/* 00144 80BA9CF4 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
/* 00148 80BA9CF8 27A4007C */ addiu $a0, $sp, 0x007C ## $a0 = FFFFFFCC
/* 0014C 80BA9CFC 00195080 */ sll $t2, $t9, 2
/* 00150 80BA9D00 00AA5821 */ addu $t3, $a1, $t2
/* 00154 80BA9D04 8D6C0790 */ lw $t4, 0x0790($t3) ## 00000790
/* 00158 80BA9D08 8D8E005C */ lw $t6, 0x005C($t4) ## 0000005C
/* 0015C 80BA9D0C AF0E0000 */ sw $t6, 0x0000($t8) ## FFFFFFDC
/* 00160 80BA9D10 8D8D0060 */ lw $t5, 0x0060($t4) ## 00000060
/* 00164 80BA9D14 AF0D0004 */ sw $t5, 0x0004($t8) ## FFFFFFE0
/* 00168 80BA9D18 8D8E0064 */ lw $t6, 0x0064($t4) ## 00000064
/* 0016C 80BA9D1C AF0E0008 */ sw $t6, 0x0008($t8) ## FFFFFFE4
/* 00170 80BA9D20 84AF07A0 */ lh $t7, 0x07A0($a1) ## 000007A0
/* 00174 80BA9D24 000FC880 */ sll $t9, $t7, 2
/* 00178 80BA9D28 00B95021 */ addu $t2, $a1, $t9
/* 0017C 80BA9D2C 8D450790 */ lw $a1, 0x0790($t2) ## 00000790
/* 00180 80BA9D30 0C016BED */ jal func_8005AFB4
/* 00184 80BA9D34 AFA600B0 */ sw $a2, 0x00B0($sp)
/* 00188 80BA9D38 8FA600B0 */ lw $a2, 0x00B0($sp)
/* 0018C 80BA9D3C 84D0014C */ lh $s0, 0x014C($a2) ## 0000014C
/* 00190 80BA9D40 2A010020 */ slti $at, $s0, 0x0020
/* 00194 80BA9D44 1020000C */ beq $at, $zero, .L80BA9D78
/* 00198 80BA9D48 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0019C 80BA9D4C 00042640 */ sll $a0, $a0, 25
/* 001A0 80BA9D50 00042403 */ sra $a0, $a0, 16
/* 001A4 80BA9D54 0C01DE1C */ jal Math_Sins
## sins?
/* 001A8 80BA9D58 AFA600B0 */ sw $a2, 0x00B0($sp)
/* 001AC 80BA9D5C 3C0180BB */ lui $at, %hi(D_80BAB2FC) ## $at = 80BB0000
/* 001B0 80BA9D60 C424B2FC */ lwc1 $f4, %lo(D_80BAB2FC)($at)
/* 001B4 80BA9D64 8FA600B0 */ lw $a2, 0x00B0($sp)
/* 001B8 80BA9D68 46040182 */ mul.s $f6, $f0, $f4
/* 001BC 80BA9D6C E7A600A4 */ swc1 $f6, 0x00A4($sp)
/* 001C0 80BA9D70 10000004 */ beq $zero, $zero, .L80BA9D84
/* 001C4 80BA9D74 84D0014C */ lh $s0, 0x014C($a2) ## 0000014C
.L80BA9D78:
/* 001C8 80BA9D78 3C0180BB */ lui $at, %hi(D_80BAB300) ## $at = 80BB0000
/* 001CC 80BA9D7C C428B300 */ lwc1 $f8, %lo(D_80BAB300)($at)
/* 001D0 80BA9D80 E7A800A4 */ swc1 $f8, 0x00A4($sp)
.L80BA9D84:
/* 001D4 80BA9D84 2A010050 */ slti $at, $s0, 0x0050
/* 001D8 80BA9D88 14200009 */ bne $at, $zero, .L80BA9DB0
/* 001DC 80BA9D8C 3C0280BB */ lui $v0, %hi(D_80BAB17F) ## $v0 = 80BB0000
/* 001E0 80BA9D90 00101823 */ subu $v1, $zero, $s0
/* 001E4 80BA9D94 00600821 */ addu $at, $v1, $zero
/* 001E8 80BA9D98 00031880 */ sll $v1, $v1, 2
/* 001EC 80BA9D9C 00611823 */ subu $v1, $v1, $at
/* 001F0 80BA9DA0 00031880 */ sll $v1, $v1, 2
/* 001F4 80BA9DA4 246304B0 */ addiu $v1, $v1, 0x04B0 ## $v1 = 000004B0
/* 001F8 80BA9DA8 10000002 */ beq $zero, $zero, .L80BA9DB4
/* 001FC 80BA9DAC 306300FF */ andi $v1, $v1, 0x00FF ## $v1 = 000000B0
.L80BA9DB0:
/* 00200 80BA9DB0 240300FF */ addiu $v1, $zero, 0x00FF ## $v1 = 000000FF
.L80BA9DB4:
/* 00204 80BA9DB4 3C0180BB */ lui $at, %hi(D_80BAB17F) ## $at = 80BB0000
/* 00208 80BA9DB8 A023B17F */ sb $v1, %lo(D_80BAB17F)($at)
/* 0020C 80BA9DBC 9042B17F */ lbu $v0, %lo(D_80BAB17F)($v0)
/* 00210 80BA9DC0 3C0180BB */ lui $at, %hi(D_80BAB15F) ## $at = 80BB0000
/* 00214 80BA9DC4 3C0680BB */ lui $a2, %hi(D_80BAB2C0) ## $a2 = 80BB0000
/* 00218 80BA9DC8 A022B15F */ sb $v0, %lo(D_80BAB15F)($at)
/* 0021C 80BA9DCC 3C0180BB */ lui $at, %hi(D_80BAB13F) ## $at = 80BB0000
/* 00220 80BA9DD0 A022B13F */ sb $v0, %lo(D_80BAB13F)($at)
/* 00224 80BA9DD4 3C0180BB */ lui $at, %hi(D_80BAB12F) ## $at = 80BB0000
/* 00228 80BA9DD8 A022B12F */ sb $v0, %lo(D_80BAB12F)($at)
/* 0022C 80BA9DDC 3C0180BB */ lui $at, %hi(D_80BAB10F) ## $at = 80BB0000
/* 00230 80BA9DE0 A022B10F */ sb $v0, %lo(D_80BAB10F)($at)
/* 00234 80BA9DE4 3C0180BB */ lui $at, %hi(D_80BAB0EF) ## $at = 80BB0000
/* 00238 80BA9DE8 A022B0EF */ sb $v0, %lo(D_80BAB0EF)($at)
/* 0023C 80BA9DEC 3C0180BB */ lui $at, %hi(D_80BAB0CF) ## $at = 80BB0000
/* 00240 80BA9DF0 A022B0CF */ sb $v0, %lo(D_80BAB0CF)($at)
/* 00244 80BA9DF4 3C0180BB */ lui $at, %hi(D_80BAB0AF) ## $at = 80BB0000
/* 00248 80BA9DF8 A022B0AF */ sb $v0, %lo(D_80BAB0AF)($at)
/* 0024C 80BA9DFC 3C0180BB */ lui $at, %hi(D_80BAB08F) ## $at = 80BB0000
/* 00250 80BA9E00 A022B08F */ sb $v0, %lo(D_80BAB08F)($at)
/* 00254 80BA9E04 3C0180BB */ lui $at, %hi(D_80BAB06F) ## $at = 80BB0000
/* 00258 80BA9E08 A022B06F */ sb $v0, %lo(D_80BAB06F)($at)
/* 0025C 80BA9E0C 3C0180BB */ lui $at, %hi(D_80BAB04F) ## $at = 80BB0000
/* 00260 80BA9E10 A022B04F */ sb $v0, %lo(D_80BAB04F)($at)
/* 00264 80BA9E14 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
/* 00268 80BA9E18 24C6B2C0 */ addiu $a2, $a2, %lo(D_80BAB2C0) ## $a2 = 80BAB2C0
/* 0026C 80BA9E1C 27A40068 */ addiu $a0, $sp, 0x0068 ## $a0 = FFFFFFB8
/* 00270 80BA9E20 24070186 */ addiu $a3, $zero, 0x0186 ## $a3 = 00000186
/* 00274 80BA9E24 0C031AB1 */ jal Graph_OpenDisps
/* 00278 80BA9E28 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
/* 0027C 80BA9E2C 0C024F61 */ jal func_80093D84
/* 00280 80BA9E30 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 00284 80BA9E34 C7AA008C */ lwc1 $f10, 0x008C($sp)
/* 00288 80BA9E38 C7B0007C */ lwc1 $f16, 0x007C($sp)
/* 0028C 80BA9E3C C7A60094 */ lwc1 $f6, 0x0094($sp)
/* 00290 80BA9E40 C7A80084 */ lwc1 $f8, 0x0084($sp)
/* 00294 80BA9E44 46105300 */ add.s $f12, $f10, $f16
/* 00298 80BA9E48 C7B20090 */ lwc1 $f18, 0x0090($sp)
/* 0029C 80BA9E4C C7A40080 */ lwc1 $f4, 0x0080($sp)
/* 002A0 80BA9E50 46083280 */ add.s $f10, $f6, $f8
/* 002A4 80BA9E54 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 002A8 80BA9E58 46049380 */ add.s $f14, $f18, $f4
/* 002AC 80BA9E5C 44065000 */ mfc1 $a2, $f10
/* 002B0 80BA9E60 0C034261 */ jal Matrix_Translate
/* 002B4 80BA9E64 00000000 */ nop
/* 002B8 80BA9E68 3C0180BB */ lui $at, %hi(D_80BAB304) ## $at = 80BB0000
/* 002BC 80BA9E6C C42CB304 */ lwc1 $f12, %lo(D_80BAB304)($at)
/* 002C0 80BA9E70 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 002C4 80BA9E74 44066000 */ mfc1 $a2, $f12
/* 002C8 80BA9E78 0C0342A3 */ jal Matrix_Scale
/* 002CC 80BA9E7C 46006386 */ mov.s $f14, $f12
/* 002D0 80BA9E80 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 002D4 80BA9E84 34211DA0 */ ori $at, $at, 0x1DA0 ## $at = 00011DA0
/* 002D8 80BA9E88 0C0347F5 */ jal func_800D1FD4
/* 002DC 80BA9E8C 02212021 */ addu $a0, $s1, $at
/* 002E0 80BA9E90 C7B000A4 */ lwc1 $f16, 0x00A4($sp)
/* 002E4 80BA9E94 44806000 */ mtc1 $zero, $f12 ## $f12 = 0.00
/* 002E8 80BA9E98 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 002EC 80BA9E9C 46008487 */ neg.s $f18, $f16
/* 002F0 80BA9EA0 46006386 */ mov.s $f14, $f12
/* 002F4 80BA9EA4 44069000 */ mfc1 $a2, $f18
/* 002F8 80BA9EA8 0C034261 */ jal Matrix_Translate
/* 002FC 80BA9EAC 00000000 */ nop
/* 00300 80BA9EB0 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00304 80BA9EB4 3C18DA38 */ lui $t8, 0xDA38 ## $t8 = DA380000
/* 00308 80BA9EB8 37180003 */ ori $t8, $t8, 0x0003 ## $t8 = DA380003
/* 0030C 80BA9EBC 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008
/* 00310 80BA9EC0 AE0B02D0 */ sw $t3, 0x02D0($s0) ## 000002D0
/* 00314 80BA9EC4 AC580000 */ sw $t8, 0x0000($v0) ## 00000000
/* 00318 80BA9EC8 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 0031C 80BA9ECC 3C0580BB */ lui $a1, %hi(D_80BAB2D4) ## $a1 = 80BB0000
/* 00320 80BA9ED0 24A5B2D4 */ addiu $a1, $a1, %lo(D_80BAB2D4) ## $a1 = 80BAB2D4
/* 00324 80BA9ED4 24060190 */ addiu $a2, $zero, 0x0190 ## $a2 = 00000190
/* 00328 80BA9ED8 0C0346A2 */ jal Matrix_NewMtx
/* 0032C 80BA9EDC AFA20064 */ sw $v0, 0x0064($sp)
/* 00330 80BA9EE0 8FA30064 */ lw $v1, 0x0064($sp)
/* 00334 80BA9EE4 3C0DFA00 */ lui $t5, 0xFA00 ## $t5 = FA000000
/* 00338 80BA9EE8 240EAAFF */ addiu $t6, $zero, 0xAAFF ## $t6 = FFFFAAFF
/* 0033C 80BA9EEC AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 00340 80BA9EF0 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00344 80BA9EF4 3C0AFF64 */ lui $t2, 0xFF64 ## $t2 = FF640000
/* 00348 80BA9EF8 354A0080 */ ori $t2, $t2, 0x0080 ## $t2 = FF640080
/* 0034C 80BA9EFC 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
/* 00350 80BA9F00 AE0C02D0 */ sw $t4, 0x02D0($s0) ## 000002D0
/* 00354 80BA9F04 AC4D0000 */ sw $t5, 0x0000($v0) ## 00000000
/* 00358 80BA9F08 AC4E0004 */ sw $t6, 0x0004($v0) ## 00000004
/* 0035C 80BA9F0C 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00360 80BA9F10 3C19FB00 */ lui $t9, 0xFB00 ## $t9 = FB000000
/* 00364 80BA9F14 3C1880BB */ lui $t8, %hi(D_80BAB190) ## $t8 = 80BB0000
/* 00368 80BA9F18 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 00000008
/* 0036C 80BA9F1C AE0F02D0 */ sw $t7, 0x02D0($s0) ## 000002D0
/* 00370 80BA9F20 AC590000 */ sw $t9, 0x0000($v0) ## 00000000
/* 00374 80BA9F24 AC4A0004 */ sw $t2, 0x0004($v0) ## 00000004
/* 00378 80BA9F28 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 0037C 80BA9F2C 2718B190 */ addiu $t8, $t8, %lo(D_80BAB190) ## $t8 = 80BAB190
/* 00380 80BA9F30 3C08DE00 */ lui $t0, 0xDE00 ## $t0 = DE000000
/* 00384 80BA9F34 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008
/* 00388 80BA9F38 AE0B02D0 */ sw $t3, 0x02D0($s0) ## 000002D0
/* 0038C 80BA9F3C AC480000 */ sw $t0, 0x0000($v0) ## 00000000
/* 00390 80BA9F40 AC580004 */ sw $t8, 0x0004($v0) ## 00000004
/* 00394 80BA9F44 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00398 80BA9F48 8FA900AC */ lw $t1, 0x00AC($sp)
/* 0039C 80BA9F4C 240A0040 */ addiu $t2, $zero, 0x0040 ## $t2 = 00000040
/* 003A0 80BA9F50 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
/* 003A4 80BA9F54 AE0C02D0 */ sw $t4, 0x02D0($s0) ## 000002D0
/* 003A8 80BA9F58 AC480000 */ sw $t0, 0x0000($v0) ## 00000000
/* 003AC 80BA9F5C 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 003B0 80BA9F60 00090823 */ subu $at, $zero, $t1
/* 003B4 80BA9F64 00013880 */ sll $a3, $at, 2
/* 003B8 80BA9F68 00E13823 */ subu $a3, $a3, $at
/* 003BC 80BA9F6C 00093080 */ sll $a2, $t1, 2
/* 003C0 80BA9F70 00073840 */ sll $a3, $a3, 1
/* 003C4 80BA9F74 24190040 */ addiu $t9, $zero, 0x0040 ## $t9 = 00000040
/* 003C8 80BA9F78 240F0001 */ addiu $t7, $zero, 0x0001 ## $t7 = 00000001
/* 003CC 80BA9F7C 240E0040 */ addiu $t6, $zero, 0x0040 ## $t6 = 00000040
/* 003D0 80BA9F80 240D0040 */ addiu $t5, $zero, 0x0040 ## $t5 = 00000040
/* 003D4 80BA9F84 00C93023 */ subu $a2, $a2, $t1
/* 003D8 80BA9F88 00063040 */ sll $a2, $a2, 1
/* 003DC 80BA9F8C AFAD0010 */ sw $t5, 0x0010($sp)
/* 003E0 80BA9F90 AFAE0014 */ sw $t6, 0x0014($sp)
/* 003E4 80BA9F94 AFAF0018 */ sw $t7, 0x0018($sp)
/* 003E8 80BA9F98 AFB90024 */ sw $t9, 0x0024($sp)
/* 003EC 80BA9F9C AFA7001C */ sw $a3, 0x001C($sp)
/* 003F0 80BA9FA0 AFAA0028 */ sw $t2, 0x0028($sp)
/* 003F4 80BA9FA4 AFA00020 */ sw $zero, 0x0020($sp)
/* 003F8 80BA9FA8 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 003FC 80BA9FAC 0C0253D0 */ jal Gfx_TwoTexScroll
/* 00400 80BA9FB0 AFA20054 */ sw $v0, 0x0054($sp)
/* 00404 80BA9FB4 8FA30054 */ lw $v1, 0x0054($sp)
/* 00408 80BA9FB8 3C0C80BB */ lui $t4, %hi(D_80BAB238) ## $t4 = 80BB0000
/* 0040C 80BA9FBC 258CB238 */ addiu $t4, $t4, %lo(D_80BAB238) ## $t4 = 80BAB238
/* 00410 80BA9FC0 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 00414 80BA9FC4 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00418 80BA9FC8 3C18DE00 */ lui $t8, 0xDE00 ## $t8 = DE000000
/* 0041C 80BA9FCC 3C0680BB */ lui $a2, %hi(D_80BAB2E8) ## $a2 = 80BB0000
/* 00420 80BA9FD0 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008
/* 00424 80BA9FD4 AE0B02D0 */ sw $t3, 0x02D0($s0) ## 000002D0
/* 00428 80BA9FD8 AC4C0004 */ sw $t4, 0x0004($v0) ## 00000004
/* 0042C 80BA9FDC AC580000 */ sw $t8, 0x0000($v0) ## 00000000
/* 00430 80BA9FE0 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
/* 00434 80BA9FE4 24C6B2E8 */ addiu $a2, $a2, %lo(D_80BAB2E8) ## $a2 = 80BAB2E8
/* 00438 80BA9FE8 27A40068 */ addiu $a0, $sp, 0x0068 ## $a0 = FFFFFFB8
/* 0043C 80BA9FEC 0C031AD5 */ jal Graph_CloseDisps
/* 00440 80BA9FF0 240701A1 */ addiu $a3, $zero, 0x01A1 ## $a3 = 000001A1
/* 00444 80BA9FF4 8FBF003C */ lw $ra, 0x003C($sp)
/* 00448 80BA9FF8 8FB00034 */ lw $s0, 0x0034($sp)
/* 0044C 80BA9FFC 8FB10038 */ lw $s1, 0x0038($sp)
/* 00450 80BAA000 03E00008 */ jr $ra
/* 00454 80BAA004 27BD00B0 */ addiu $sp, $sp, 0x00B0 ## $sp = 00000000
/* 00458 80BAA008 00000000 */ nop
/* 0045C 80BAA00C 00000000 */ nop

View file

@ -1,37 +0,0 @@
.rdata
glabel D_80BAB2A0
.asciz " WIPE2 arg_data = %d\n"
.balign 4
.text
glabel OceffWipe2_Init
/* 00000 80BA9BB0 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00004 80BA9BB4 AFA5001C */ sw $a1, 0x001C($sp)
/* 00008 80BA9BB8 AFBF0014 */ sw $ra, 0x0014($sp)
/* 0000C 80BA9BBC 3C053DCC */ lui $a1, 0x3DCC ## $a1 = 3DCC0000
/* 00010 80BA9BC0 34A5CCCD */ ori $a1, $a1, 0xCCCD ## $a1 = 3DCCCCCD
/* 00014 80BA9BC4 0C00B58B */ jal Actor_SetScale
/* 00018 80BA9BC8 AFA40018 */ sw $a0, 0x0018($sp)
/* 0001C 80BA9BCC 8FA60018 */ lw $a2, 0x0018($sp)
/* 00020 80BA9BD0 8FA2001C */ lw $v0, 0x001C($sp)
/* 00024 80BA9BD4 3C0480BB */ lui $a0, %hi(D_80BAB2A0) ## $a0 = 80BB0000
/* 00028 80BA9BD8 A4C0014C */ sh $zero, 0x014C($a2) ## 0000014C
/* 0002C 80BA9BDC 844E07A0 */ lh $t6, 0x07A0($v0) ## 000007A0
/* 00030 80BA9BE0 2484B2A0 */ addiu $a0, $a0, %lo(D_80BAB2A0) ## $a0 = 80BAB2A0
/* 00034 80BA9BE4 84C5001C */ lh $a1, 0x001C($a2) ## 0000001C
/* 00038 80BA9BE8 000E7880 */ sll $t7, $t6, 2
/* 0003C 80BA9BEC 004FC021 */ addu $t8, $v0, $t7
/* 00040 80BA9BF0 8F190790 */ lw $t9, 0x0790($t8) ## 00000790
/* 00044 80BA9BF4 8F29005C */ lw $t1, 0x005C($t9) ## 0000005C
/* 00048 80BA9BF8 ACC90024 */ sw $t1, 0x0024($a2) ## 00000024
/* 0004C 80BA9BFC 8F280060 */ lw $t0, 0x0060($t9) ## 00000060
/* 00050 80BA9C00 ACC80028 */ sw $t0, 0x0028($a2) ## 00000028
/* 00054 80BA9C04 8F290064 */ lw $t1, 0x0064($t9) ## 00000064
/* 00058 80BA9C08 0C00084C */ jal osSyncPrintf
/* 0005C 80BA9C0C ACC9002C */ sw $t1, 0x002C($a2) ## 0000002C
/* 00060 80BA9C10 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00064 80BA9C14 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00068 80BA9C18 03E00008 */ jr $ra
/* 0006C 80BA9C1C 00000000 */ nop

View file

@ -1,28 +0,0 @@
glabel OceffWipe2_Update
/* 000BC 80BA9C6C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 000C0 80BA9C70 AFBF0014 */ sw $ra, 0x0014($sp)
/* 000C4 80BA9C74 84AE07A0 */ lh $t6, 0x07A0($a1) ## 000007A0
/* 000C8 80BA9C78 8482014C */ lh $v0, 0x014C($a0) ## 0000014C
/* 000CC 80BA9C7C 000E7880 */ sll $t7, $t6, 2
/* 000D0 80BA9C80 00AFC021 */ addu $t8, $a1, $t7
/* 000D4 80BA9C84 8F190790 */ lw $t9, 0x0790($t8) ## 00000790
/* 000D8 80BA9C88 28410064 */ slti $at, $v0, 0x0064
/* 000DC 80BA9C8C 244A0001 */ addiu $t2, $v0, 0x0001 ## $t2 = 00000001
/* 000E0 80BA9C90 8F29005C */ lw $t1, 0x005C($t9) ## 0000005C
/* 000E4 80BA9C94 AC890024 */ sw $t1, 0x0024($a0) ## 00000024
/* 000E8 80BA9C98 8F280060 */ lw $t0, 0x0060($t9) ## 00000060
/* 000EC 80BA9C9C AC880028 */ sw $t0, 0x0028($a0) ## 00000028
/* 000F0 80BA9CA0 8F290064 */ lw $t1, 0x0064($t9) ## 00000064
/* 000F4 80BA9CA4 10200003 */ beq $at, $zero, .L80BA9CB4
/* 000F8 80BA9CA8 AC89002C */ sw $t1, 0x002C($a0) ## 0000002C
/* 000FC 80BA9CAC 10000003 */ beq $zero, $zero, .L80BA9CBC
/* 00100 80BA9CB0 A48A014C */ sh $t2, 0x014C($a0) ## 0000014C
.L80BA9CB4:
/* 00104 80BA9CB4 0C00B55C */ jal Actor_Kill
/* 00108 80BA9CB8 00000000 */ nop
.L80BA9CBC:
/* 0010C 80BA9CBC 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00110 80BA9CC0 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00114 80BA9CC4 03E00008 */ jr $ra
/* 00118 80BA9CC8 00000000 */ nop

View file

@ -1,21 +0,0 @@
glabel OceffWipe3_Destroy
/* 00070 80BAB460 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 00074 80BAB464 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00078 80BAB468 AFA40020 */ sw $a0, 0x0020($sp)
/* 0007C 80BAB46C 8CA21C44 */ lw $v0, 0x1C44($a1) ## 00001C44
/* 00080 80BAB470 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 00084 80BAB474 0C021DB2 */ jal func_800876C8
/* 00088 80BAB478 AFA20018 */ sw $v0, 0x0018($sp)
/* 0008C 80BAB47C 3C0E8016 */ lui $t6, %hi(gSaveContext+0x13c8)
/* 00090 80BAB480 85CEFA28 */ lh $t6, %lo(gSaveContext+0x13c8)($t6)
/* 00094 80BAB484 8FA20018 */ lw $v0, 0x0018($sp)
/* 00098 80BAB488 51C00005 */ beql $t6, $zero, .L80BAB4A0
/* 0009C 80BAB48C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 000A0 80BAB490 904F0692 */ lbu $t7, 0x0692($v0) ## 00000692
/* 000A4 80BAB494 35F80040 */ ori $t8, $t7, 0x0040 ## $t8 = 00000040
/* 000A8 80BAB498 A0580692 */ sb $t8, 0x0692($v0) ## 00000692
/* 000AC 80BAB49C 8FBF0014 */ lw $ra, 0x0014($sp)
.L80BAB4A0:
/* 000B0 80BAB4A0 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 000B4 80BAB4A4 03E00008 */ jr $ra
/* 000B8 80BAB4A8 00000000 */ nop

View file

@ -1,237 +0,0 @@
.rdata
glabel D_80BACAE0
.asciz "../z_oceff_wipe3.c"
.balign 4
glabel D_80BACAF4
.asciz "../z_oceff_wipe3.c"
.balign 4
glabel D_80BACB08
.asciz "../z_oceff_wipe3.c"
.balign 4
.late_rodata
glabel D_80BACB1C
.float 1330.0
glabel D_80BACB20
.float 1330.0
glabel D_80BACB24
.float 0.1
.text
glabel OceffWipe3_Draw
/* 0011C 80BAB50C 27BDFF50 */ addiu $sp, $sp, 0xFF50 ## $sp = FFFFFF50
/* 00120 80BAB510 AFBF003C */ sw $ra, 0x003C($sp)
/* 00124 80BAB514 AFB10038 */ sw $s1, 0x0038($sp)
/* 00128 80BAB518 AFB00034 */ sw $s0, 0x0034($sp)
/* 0012C 80BAB51C 8CAE009C */ lw $t6, 0x009C($a1) ## 0000009C
/* 00130 80BAB520 27B8008C */ addiu $t8, $sp, 0x008C ## $t8 = FFFFFFDC
/* 00134 80BAB524 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 00138 80BAB528 31CF0FFF */ andi $t7, $t6, 0x0FFF ## $t7 = 00000000
/* 0013C 80BAB52C AFAF00AC */ sw $t7, 0x00AC($sp)
/* 00140 80BAB530 84B907A0 */ lh $t9, 0x07A0($a1) ## 000007A0
/* 00144 80BAB534 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
/* 00148 80BAB538 27A4007C */ addiu $a0, $sp, 0x007C ## $a0 = FFFFFFCC
/* 0014C 80BAB53C 00195080 */ sll $t2, $t9, 2
/* 00150 80BAB540 00AA5821 */ addu $t3, $a1, $t2
/* 00154 80BAB544 8D6C0790 */ lw $t4, 0x0790($t3) ## 00000790
/* 00158 80BAB548 8D8E005C */ lw $t6, 0x005C($t4) ## 0000005C
/* 0015C 80BAB54C AF0E0000 */ sw $t6, 0x0000($t8) ## FFFFFFDC
/* 00160 80BAB550 8D8D0060 */ lw $t5, 0x0060($t4) ## 00000060
/* 00164 80BAB554 AF0D0004 */ sw $t5, 0x0004($t8) ## FFFFFFE0
/* 00168 80BAB558 8D8E0064 */ lw $t6, 0x0064($t4) ## 00000064
/* 0016C 80BAB55C AF0E0008 */ sw $t6, 0x0008($t8) ## FFFFFFE4
/* 00170 80BAB560 84AF07A0 */ lh $t7, 0x07A0($a1) ## 000007A0
/* 00174 80BAB564 000FC880 */ sll $t9, $t7, 2
/* 00178 80BAB568 00B95021 */ addu $t2, $a1, $t9
/* 0017C 80BAB56C 8D450790 */ lw $a1, 0x0790($t2) ## 00000790
/* 00180 80BAB570 0C016BED */ jal func_8005AFB4
/* 00184 80BAB574 AFA600B0 */ sw $a2, 0x00B0($sp)
/* 00188 80BAB578 8FA600B0 */ lw $a2, 0x00B0($sp)
/* 0018C 80BAB57C 84D0014C */ lh $s0, 0x014C($a2) ## 0000014C
/* 00190 80BAB580 2A010020 */ slti $at, $s0, 0x0020
/* 00194 80BAB584 1020000C */ beq $at, $zero, .L80BAB5B8
/* 00198 80BAB588 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0019C 80BAB58C 00042640 */ sll $a0, $a0, 25
/* 001A0 80BAB590 00042403 */ sra $a0, $a0, 16
/* 001A4 80BAB594 0C01DE1C */ jal Math_Sins
## sins?
/* 001A8 80BAB598 AFA600B0 */ sw $a2, 0x00B0($sp)
/* 001AC 80BAB59C 3C0180BB */ lui $at, %hi(D_80BACB1C) ## $at = 80BB0000
/* 001B0 80BAB5A0 C424CB1C */ lwc1 $f4, %lo(D_80BACB1C)($at)
/* 001B4 80BAB5A4 8FA600B0 */ lw $a2, 0x00B0($sp)
/* 001B8 80BAB5A8 46040182 */ mul.s $f6, $f0, $f4
/* 001BC 80BAB5AC E7A600A4 */ swc1 $f6, 0x00A4($sp)
/* 001C0 80BAB5B0 10000004 */ beq $zero, $zero, .L80BAB5C4
/* 001C4 80BAB5B4 84D0014C */ lh $s0, 0x014C($a2) ## 0000014C
.L80BAB5B8:
/* 001C8 80BAB5B8 3C0180BB */ lui $at, %hi(D_80BACB20) ## $at = 80BB0000
/* 001CC 80BAB5BC C428CB20 */ lwc1 $f8, %lo(D_80BACB20)($at)
/* 001D0 80BAB5C0 E7A800A4 */ swc1 $f8, 0x00A4($sp)
.L80BAB5C4:
/* 001D4 80BAB5C4 2A010050 */ slti $at, $s0, 0x0050
/* 001D8 80BAB5C8 14200009 */ bne $at, $zero, .L80BAB5F0
/* 001DC 80BAB5CC 3C0280BB */ lui $v0, %hi(D_80BAC9CF) ## $v0 = 80BB0000
/* 001E0 80BAB5D0 00101823 */ subu $v1, $zero, $s0
/* 001E4 80BAB5D4 00600821 */ addu $at, $v1, $zero
/* 001E8 80BAB5D8 00031880 */ sll $v1, $v1, 2
/* 001EC 80BAB5DC 00611823 */ subu $v1, $v1, $at
/* 001F0 80BAB5E0 00031880 */ sll $v1, $v1, 2
/* 001F4 80BAB5E4 246304B0 */ addiu $v1, $v1, 0x04B0 ## $v1 = 000004B0
/* 001F8 80BAB5E8 10000002 */ beq $zero, $zero, .L80BAB5F4
/* 001FC 80BAB5EC 306300FF */ andi $v1, $v1, 0x00FF ## $v1 = 000000B0
.L80BAB5F0:
/* 00200 80BAB5F0 240300FF */ addiu $v1, $zero, 0x00FF ## $v1 = 000000FF
.L80BAB5F4:
/* 00204 80BAB5F4 3C0180BB */ lui $at, %hi(D_80BAC9CF) ## $at = 80BB0000
/* 00208 80BAB5F8 A023C9CF */ sb $v1, %lo(D_80BAC9CF)($at)
/* 0020C 80BAB5FC 9042C9CF */ lbu $v0, %lo(D_80BAC9CF)($v0)
/* 00210 80BAB600 3C0180BB */ lui $at, %hi(D_80BAC9AF) ## $at = 80BB0000
/* 00214 80BAB604 3C0680BB */ lui $a2, %hi(D_80BACAE0) ## $a2 = 80BB0000
/* 00218 80BAB608 A022C9AF */ sb $v0, %lo(D_80BAC9AF)($at)
/* 0021C 80BAB60C 3C0180BB */ lui $at, %hi(D_80BAC98F) ## $at = 80BB0000
/* 00220 80BAB610 A022C98F */ sb $v0, %lo(D_80BAC98F)($at)
/* 00224 80BAB614 3C0180BB */ lui $at, %hi(D_80BAC96F) ## $at = 80BB0000
/* 00228 80BAB618 A022C96F */ sb $v0, %lo(D_80BAC96F)($at)
/* 0022C 80BAB61C 3C0180BB */ lui $at, %hi(D_80BAC94F) ## $at = 80BB0000
/* 00230 80BAB620 A022C94F */ sb $v0, %lo(D_80BAC94F)($at)
/* 00234 80BAB624 3C0180BB */ lui $at, %hi(D_80BAC92F) ## $at = 80BB0000
/* 00238 80BAB628 A022C92F */ sb $v0, %lo(D_80BAC92F)($at)
/* 0023C 80BAB62C 3C0180BB */ lui $at, %hi(D_80BAC90F) ## $at = 80BB0000
/* 00240 80BAB630 A022C90F */ sb $v0, %lo(D_80BAC90F)($at)
/* 00244 80BAB634 3C0180BB */ lui $at, %hi(D_80BAC8EF) ## $at = 80BB0000
/* 00248 80BAB638 A022C8EF */ sb $v0, %lo(D_80BAC8EF)($at)
/* 0024C 80BAB63C 3C0180BB */ lui $at, %hi(D_80BAC8CF) ## $at = 80BB0000
/* 00250 80BAB640 A022C8CF */ sb $v0, %lo(D_80BAC8CF)($at)
/* 00254 80BAB644 3C0180BB */ lui $at, %hi(D_80BAC8AF) ## $at = 80BB0000
/* 00258 80BAB648 A022C8AF */ sb $v0, %lo(D_80BAC8AF)($at)
/* 0025C 80BAB64C 3C0180BB */ lui $at, %hi(D_80BAC88F) ## $at = 80BB0000
/* 00260 80BAB650 A022C88F */ sb $v0, %lo(D_80BAC88F)($at)
/* 00264 80BAB654 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
/* 00268 80BAB658 24C6CAE0 */ addiu $a2, $a2, %lo(D_80BACAE0) ## $a2 = 80BACAE0
/* 0026C 80BAB65C 27A40068 */ addiu $a0, $sp, 0x0068 ## $a0 = FFFFFFB8
/* 00270 80BAB660 24070157 */ addiu $a3, $zero, 0x0157 ## $a3 = 00000157
/* 00274 80BAB664 0C031AB1 */ jal Graph_OpenDisps
/* 00278 80BAB668 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
/* 0027C 80BAB66C 0C024F61 */ jal func_80093D84
/* 00280 80BAB670 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 00284 80BAB674 C7AA008C */ lwc1 $f10, 0x008C($sp)
/* 00288 80BAB678 C7B0007C */ lwc1 $f16, 0x007C($sp)
/* 0028C 80BAB67C C7A60094 */ lwc1 $f6, 0x0094($sp)
/* 00290 80BAB680 C7A80084 */ lwc1 $f8, 0x0084($sp)
/* 00294 80BAB684 46105300 */ add.s $f12, $f10, $f16
/* 00298 80BAB688 C7B20090 */ lwc1 $f18, 0x0090($sp)
/* 0029C 80BAB68C C7A40080 */ lwc1 $f4, 0x0080($sp)
/* 002A0 80BAB690 46083280 */ add.s $f10, $f6, $f8
/* 002A4 80BAB694 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 002A8 80BAB698 46049380 */ add.s $f14, $f18, $f4
/* 002AC 80BAB69C 44065000 */ mfc1 $a2, $f10
/* 002B0 80BAB6A0 0C034261 */ jal Matrix_Translate
/* 002B4 80BAB6A4 00000000 */ nop
/* 002B8 80BAB6A8 3C0180BB */ lui $at, %hi(D_80BACB24) ## $at = 80BB0000
/* 002BC 80BAB6AC C42CCB24 */ lwc1 $f12, %lo(D_80BACB24)($at)
/* 002C0 80BAB6B0 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 002C4 80BAB6B4 44066000 */ mfc1 $a2, $f12
/* 002C8 80BAB6B8 0C0342A3 */ jal Matrix_Scale
/* 002CC 80BAB6BC 46006386 */ mov.s $f14, $f12
/* 002D0 80BAB6C0 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 002D4 80BAB6C4 34211DA0 */ ori $at, $at, 0x1DA0 ## $at = 00011DA0
/* 002D8 80BAB6C8 0C0347F5 */ jal func_800D1FD4
/* 002DC 80BAB6CC 02212021 */ addu $a0, $s1, $at
/* 002E0 80BAB6D0 C7B000A4 */ lwc1 $f16, 0x00A4($sp)
/* 002E4 80BAB6D4 44806000 */ mtc1 $zero, $f12 ## $f12 = 0.00
/* 002E8 80BAB6D8 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 002EC 80BAB6DC 46008487 */ neg.s $f18, $f16
/* 002F0 80BAB6E0 46006386 */ mov.s $f14, $f12
/* 002F4 80BAB6E4 44069000 */ mfc1 $a2, $f18
/* 002F8 80BAB6E8 0C034261 */ jal Matrix_Translate
/* 002FC 80BAB6EC 00000000 */ nop
/* 00300 80BAB6F0 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00304 80BAB6F4 3C18DA38 */ lui $t8, 0xDA38 ## $t8 = DA380000
/* 00308 80BAB6F8 37180003 */ ori $t8, $t8, 0x0003 ## $t8 = DA380003
/* 0030C 80BAB6FC 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008
/* 00310 80BAB700 AE0B02D0 */ sw $t3, 0x02D0($s0) ## 000002D0
/* 00314 80BAB704 AC580000 */ sw $t8, 0x0000($v0) ## 00000000
/* 00318 80BAB708 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 0031C 80BAB70C 3C0580BB */ lui $a1, %hi(D_80BACAF4) ## $a1 = 80BB0000
/* 00320 80BAB710 24A5CAF4 */ addiu $a1, $a1, %lo(D_80BACAF4) ## $a1 = 80BACAF4
/* 00324 80BAB714 24060161 */ addiu $a2, $zero, 0x0161 ## $a2 = 00000161
/* 00328 80BAB718 0C0346A2 */ jal Matrix_NewMtx
/* 0032C 80BAB71C AFA20064 */ sw $v0, 0x0064($sp)
/* 00330 80BAB720 8FA30064 */ lw $v1, 0x0064($sp)
/* 00334 80BAB724 3C0DFA00 */ lui $t5, 0xFA00 ## $t5 = FA000000
/* 00338 80BAB728 240EAAFF */ addiu $t6, $zero, 0xAAFF ## $t6 = FFFFAAFF
/* 0033C 80BAB72C AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 00340 80BAB730 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00344 80BAB734 3C0A64C8 */ lui $t2, 0x64C8 ## $t2 = 64C80000
/* 00348 80BAB738 354A0080 */ ori $t2, $t2, 0x0080 ## $t2 = 64C80080
/* 0034C 80BAB73C 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
/* 00350 80BAB740 AE0C02D0 */ sw $t4, 0x02D0($s0) ## 000002D0
/* 00354 80BAB744 AC4D0000 */ sw $t5, 0x0000($v0) ## 00000000
/* 00358 80BAB748 AC4E0004 */ sw $t6, 0x0004($v0) ## 00000004
/* 0035C 80BAB74C 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00360 80BAB750 3C19FB00 */ lui $t9, 0xFB00 ## $t9 = FB000000
/* 00364 80BAB754 3C1880BB */ lui $t8, %hi(D_80BAC9D0) ## $t8 = 80BB0000
/* 00368 80BAB758 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 00000008
/* 0036C 80BAB75C AE0F02D0 */ sw $t7, 0x02D0($s0) ## 000002D0
/* 00370 80BAB760 AC590000 */ sw $t9, 0x0000($v0) ## 00000000
/* 00374 80BAB764 AC4A0004 */ sw $t2, 0x0004($v0) ## 00000004
/* 00378 80BAB768 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 0037C 80BAB76C 2718C9D0 */ addiu $t8, $t8, %lo(D_80BAC9D0) ## $t8 = 80BAC9D0
/* 00380 80BAB770 3C08DE00 */ lui $t0, 0xDE00 ## $t0 = DE000000
/* 00384 80BAB774 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008
/* 00388 80BAB778 AE0B02D0 */ sw $t3, 0x02D0($s0) ## 000002D0
/* 0038C 80BAB77C AC480000 */ sw $t0, 0x0000($v0) ## 00000000
/* 00390 80BAB780 AC580004 */ sw $t8, 0x0004($v0) ## 00000004
/* 00394 80BAB784 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00398 80BAB788 8FA900AC */ lw $t1, 0x00AC($sp)
/* 0039C 80BAB78C 24180040 */ addiu $t8, $zero, 0x0040 ## $t8 = 00000040
/* 003A0 80BAB790 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
/* 003A4 80BAB794 AE0C02D0 */ sw $t4, 0x02D0($s0) ## 000002D0
/* 003A8 80BAB798 AC480000 */ sw $t0, 0x0000($v0) ## 00000000
/* 003AC 80BAB79C 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 003B0 80BAB7A0 00090823 */ subu $at, $zero, $t1
/* 003B4 80BAB7A4 00013880 */ sll $a3, $at, 2
/* 003B8 80BAB7A8 00093080 */ sll $a2, $t1, 2
/* 003BC 80BAB7AC 00E13823 */ subu $a3, $a3, $at
/* 003C0 80BAB7B0 000150C0 */ sll $t2, $at, 3
/* 003C4 80BAB7B4 240B0040 */ addiu $t3, $zero, 0x0040 ## $t3 = 00000040
/* 003C8 80BAB7B8 240F0001 */ addiu $t7, $zero, 0x0001 ## $t7 = 00000001
/* 003CC 80BAB7BC 240E0040 */ addiu $t6, $zero, 0x0040 ## $t6 = 00000040
/* 003D0 80BAB7C0 240D0040 */ addiu $t5, $zero, 0x0040 ## $t5 = 00000040
/* 003D4 80BAB7C4 00C93023 */ subu $a2, $a2, $t1
/* 003D8 80BAB7C8 0009C8C0 */ sll $t9, $t1, 3
/* 003DC 80BAB7CC AFB9001C */ sw $t9, 0x001C($sp)
/* 003E0 80BAB7D0 00063080 */ sll $a2, $a2, 2
/* 003E4 80BAB7D4 AFAD0010 */ sw $t5, 0x0010($sp)
/* 003E8 80BAB7D8 AFAE0014 */ sw $t6, 0x0014($sp)
/* 003EC 80BAB7DC AFAF0018 */ sw $t7, 0x0018($sp)
/* 003F0 80BAB7E0 AFAB0024 */ sw $t3, 0x0024($sp)
/* 003F4 80BAB7E4 AFAA0020 */ sw $t2, 0x0020($sp)
/* 003F8 80BAB7E8 00073880 */ sll $a3, $a3, 2
/* 003FC 80BAB7EC AFB80028 */ sw $t8, 0x0028($sp)
/* 00400 80BAB7F0 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00404 80BAB7F4 0C0253D0 */ jal Gfx_TwoTexScroll
/* 00408 80BAB7F8 AFA20054 */ sw $v0, 0x0054($sp)
/* 0040C 80BAB7FC 8FA30054 */ lw $v1, 0x0054($sp)
/* 00410 80BAB800 3C0E80BB */ lui $t6, %hi(D_80BACA58) ## $t6 = 80BB0000
/* 00414 80BAB804 25CECA58 */ addiu $t6, $t6, %lo(D_80BACA58) ## $t6 = 80BACA58
/* 00418 80BAB808 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 0041C 80BAB80C 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00420 80BAB810 3C0DDE00 */ lui $t5, 0xDE00 ## $t5 = DE000000
/* 00424 80BAB814 3C0680BB */ lui $a2, %hi(D_80BACB08) ## $a2 = 80BB0000
/* 00428 80BAB818 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
/* 0042C 80BAB81C AE0C02D0 */ sw $t4, 0x02D0($s0) ## 000002D0
/* 00430 80BAB820 AC4E0004 */ sw $t6, 0x0004($v0) ## 00000004
/* 00434 80BAB824 AC4D0000 */ sw $t5, 0x0000($v0) ## 00000000
/* 00438 80BAB828 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
/* 0043C 80BAB82C 24C6CB08 */ addiu $a2, $a2, %lo(D_80BACB08) ## $a2 = 80BACB08
/* 00440 80BAB830 27A40068 */ addiu $a0, $sp, 0x0068 ## $a0 = FFFFFFB8
/* 00444 80BAB834 0C031AD5 */ jal Graph_CloseDisps
/* 00448 80BAB838 24070172 */ addiu $a3, $zero, 0x0172 ## $a3 = 00000172
/* 0044C 80BAB83C 8FBF003C */ lw $ra, 0x003C($sp)
/* 00450 80BAB840 8FB00034 */ lw $s0, 0x0034($sp)
/* 00454 80BAB844 8FB10038 */ lw $s1, 0x0038($sp)
/* 00458 80BAB848 03E00008 */ jr $ra
/* 0045C 80BAB84C 27BD00B0 */ addiu $sp, $sp, 0x00B0 ## $sp = 00000000

View file

@ -1,37 +0,0 @@
.rdata
glabel D_80BACAC0
.asciz " WIPE2 arg_data = %d\n"
.balign 4
.text
glabel OceffWipe3_Init
/* 00000 80BAB3F0 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00004 80BAB3F4 AFA5001C */ sw $a1, 0x001C($sp)
/* 00008 80BAB3F8 AFBF0014 */ sw $ra, 0x0014($sp)
/* 0000C 80BAB3FC 3C053DCC */ lui $a1, 0x3DCC ## $a1 = 3DCC0000
/* 00010 80BAB400 34A5CCCD */ ori $a1, $a1, 0xCCCD ## $a1 = 3DCCCCCD
/* 00014 80BAB404 0C00B58B */ jal Actor_SetScale
/* 00018 80BAB408 AFA40018 */ sw $a0, 0x0018($sp)
/* 0001C 80BAB40C 8FA60018 */ lw $a2, 0x0018($sp)
/* 00020 80BAB410 8FA2001C */ lw $v0, 0x001C($sp)
/* 00024 80BAB414 3C0480BB */ lui $a0, %hi(D_80BACAC0) ## $a0 = 80BB0000
/* 00028 80BAB418 A4C0014C */ sh $zero, 0x014C($a2) ## 0000014C
/* 0002C 80BAB41C 844E07A0 */ lh $t6, 0x07A0($v0) ## 000007A0
/* 00030 80BAB420 2484CAC0 */ addiu $a0, $a0, %lo(D_80BACAC0) ## $a0 = 80BACAC0
/* 00034 80BAB424 84C5001C */ lh $a1, 0x001C($a2) ## 0000001C
/* 00038 80BAB428 000E7880 */ sll $t7, $t6, 2
/* 0003C 80BAB42C 004FC021 */ addu $t8, $v0, $t7
/* 00040 80BAB430 8F190790 */ lw $t9, 0x0790($t8) ## 00000790
/* 00044 80BAB434 8F29005C */ lw $t1, 0x005C($t9) ## 0000005C
/* 00048 80BAB438 ACC90024 */ sw $t1, 0x0024($a2) ## 00000024
/* 0004C 80BAB43C 8F280060 */ lw $t0, 0x0060($t9) ## 00000060
/* 00050 80BAB440 ACC80028 */ sw $t0, 0x0028($a2) ## 00000028
/* 00054 80BAB444 8F290064 */ lw $t1, 0x0064($t9) ## 00000064
/* 00058 80BAB448 0C00084C */ jal osSyncPrintf
/* 0005C 80BAB44C ACC9002C */ sw $t1, 0x002C($a2) ## 0000002C
/* 00060 80BAB450 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00064 80BAB454 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00068 80BAB458 03E00008 */ jr $ra
/* 0006C 80BAB45C 00000000 */ nop

View file

@ -1,28 +0,0 @@
glabel OceffWipe3_Update
/* 000BC 80BAB4AC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 000C0 80BAB4B0 AFBF0014 */ sw $ra, 0x0014($sp)
/* 000C4 80BAB4B4 84AE07A0 */ lh $t6, 0x07A0($a1) ## 000007A0
/* 000C8 80BAB4B8 8482014C */ lh $v0, 0x014C($a0) ## 0000014C
/* 000CC 80BAB4BC 000E7880 */ sll $t7, $t6, 2
/* 000D0 80BAB4C0 00AFC021 */ addu $t8, $a1, $t7
/* 000D4 80BAB4C4 8F190790 */ lw $t9, 0x0790($t8) ## 00000790
/* 000D8 80BAB4C8 28410064 */ slti $at, $v0, 0x0064
/* 000DC 80BAB4CC 244A0001 */ addiu $t2, $v0, 0x0001 ## $t2 = 00000001
/* 000E0 80BAB4D0 8F29005C */ lw $t1, 0x005C($t9) ## 0000005C
/* 000E4 80BAB4D4 AC890024 */ sw $t1, 0x0024($a0) ## 00000024
/* 000E8 80BAB4D8 8F280060 */ lw $t0, 0x0060($t9) ## 00000060
/* 000EC 80BAB4DC AC880028 */ sw $t0, 0x0028($a0) ## 00000028
/* 000F0 80BAB4E0 8F290064 */ lw $t1, 0x0064($t9) ## 00000064
/* 000F4 80BAB4E4 10200003 */ beq $at, $zero, .L80BAB4F4
/* 000F8 80BAB4E8 AC89002C */ sw $t1, 0x002C($a0) ## 0000002C
/* 000FC 80BAB4EC 10000003 */ beq $zero, $zero, .L80BAB4FC
/* 00100 80BAB4F0 A48A014C */ sh $t2, 0x014C($a0) ## 0000014C
.L80BAB4F4:
/* 00104 80BAB4F4 0C00B55C */ jal Actor_Kill
/* 00108 80BAB4F8 00000000 */ nop
.L80BAB4FC:
/* 0010C 80BAB4FC 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00110 80BAB500 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00114 80BAB504 03E00008 */ jr $ra
/* 00118 80BAB508 00000000 */ nop

View file

@ -1,10 +0,0 @@
glabel OceffWipe4_Destroy
/* 00070 80BACC80 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00074 80BACC84 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00078 80BACC88 AFA40018 */ sw $a0, 0x0018($sp)
/* 0007C 80BACC8C 0C021DB2 */ jal func_800876C8
/* 00080 80BACC90 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 00084 80BACC94 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00088 80BACC98 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 0008C 80BACC9C 03E00008 */ jr $ra
/* 00090 80BACCA0 00000000 */ nop

View file

@ -1,243 +0,0 @@
.rdata
glabel D_80BADB80
.asciz "../z_oceff_wipe4.c"
.balign 4
glabel D_80BADB94
.asciz "../z_oceff_wipe4.c"
.balign 4
glabel D_80BADBA8
.asciz "../z_oceff_wipe4.c"
.balign 4
.late_rodata
glabel D_80BADBBC
.float 1330.0
glabel D_80BADBC0
.float 1330.0
glabel D_80BADBC4
.float 0.1
.text
glabel OceffWipe4_Draw
/* 000F4 80BACD04 27BDFF50 */ addiu $sp, $sp, 0xFF50 ## $sp = FFFFFF50
/* 000F8 80BACD08 AFBF003C */ sw $ra, 0x003C($sp)
/* 000FC 80BACD0C AFB10038 */ sw $s1, 0x0038($sp)
/* 00100 80BACD10 AFB00034 */ sw $s0, 0x0034($sp)
/* 00104 80BACD14 AFA400B0 */ sw $a0, 0x00B0($sp)
/* 00108 80BACD18 8CAE009C */ lw $t6, 0x009C($a1) ## 0000009C
/* 0010C 80BACD1C 27B8008C */ addiu $t8, $sp, 0x008C ## $t8 = FFFFFFDC
/* 00110 80BACD20 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 00114 80BACD24 31CF0FFF */ andi $t7, $t6, 0x0FFF ## $t7 = 00000000
/* 00118 80BACD28 AFAF00AC */ sw $t7, 0x00AC($sp)
/* 0011C 80BACD2C 84B907A0 */ lh $t9, 0x07A0($a1) ## 000007A0
/* 00120 80BACD30 27A4007C */ addiu $a0, $sp, 0x007C ## $a0 = FFFFFFCC
/* 00124 80BACD34 00195080 */ sll $t2, $t9, 2
/* 00128 80BACD38 00AA5821 */ addu $t3, $a1, $t2
/* 0012C 80BACD3C 8D6C0790 */ lw $t4, 0x0790($t3) ## 00000790
/* 00130 80BACD40 8D8E005C */ lw $t6, 0x005C($t4) ## 0000005C
/* 00134 80BACD44 AF0E0000 */ sw $t6, 0x0000($t8) ## FFFFFFDC
/* 00138 80BACD48 8D8D0060 */ lw $t5, 0x0060($t4) ## 00000060
/* 0013C 80BACD4C AF0D0004 */ sw $t5, 0x0004($t8) ## FFFFFFE0
/* 00140 80BACD50 8D8E0064 */ lw $t6, 0x0064($t4) ## 00000064
/* 00144 80BACD54 AF0E0008 */ sw $t6, 0x0008($t8) ## FFFFFFE4
/* 00148 80BACD58 84AF07A0 */ lh $t7, 0x07A0($a1) ## 000007A0
/* 0014C 80BACD5C 000FC880 */ sll $t9, $t7, 2
/* 00150 80BACD60 00B95021 */ addu $t2, $a1, $t9
/* 00154 80BACD64 0C016BED */ jal func_8005AFB4
/* 00158 80BACD68 8D450790 */ lw $a1, 0x0790($t2) ## 00000790
/* 0015C 80BACD6C 8FA900B0 */ lw $t1, 0x00B0($sp)
/* 00160 80BACD70 8523014C */ lh $v1, 0x014C($t1) ## 0000014C
/* 00164 80BACD74 28610010 */ slti $at, $v1, 0x0010
/* 00168 80BACD78 1020000B */ beq $at, $zero, .L80BACDA8
/* 0016C 80BACD7C 00602025 */ or $a0, $v1, $zero ## $a0 = 00000000
/* 00170 80BACD80 00042680 */ sll $a0, $a0, 26
/* 00174 80BACD84 0C01DE1C */ jal Math_Sins
## sins?
/* 00178 80BACD88 00042403 */ sra $a0, $a0, 16
/* 0017C 80BACD8C 3C0180BB */ lui $at, %hi(D_80BADBBC) ## $at = 80BB0000
/* 00180 80BACD90 C424DBBC */ lwc1 $f4, %lo(D_80BADBBC)($at)
/* 00184 80BACD94 8FAB00B0 */ lw $t3, 0x00B0($sp)
/* 00188 80BACD98 46040182 */ mul.s $f6, $f0, $f4
/* 0018C 80BACD9C E7A600A4 */ swc1 $f6, 0x00A4($sp)
/* 00190 80BACDA0 10000004 */ beq $zero, $zero, .L80BACDB4
/* 00194 80BACDA4 8563014C */ lh $v1, 0x014C($t3) ## 0000014C
.L80BACDA8:
/* 00198 80BACDA8 3C0180BB */ lui $at, %hi(D_80BADBC0) ## $at = 80BB0000
/* 0019C 80BACDAC C428DBC0 */ lwc1 $f8, %lo(D_80BADBC0)($at)
/* 001A0 80BACDB0 E7A800A4 */ swc1 $f8, 0x00A4($sp)
.L80BACDB4:
/* 001A4 80BACDB4 2861001E */ slti $at, $v1, 0x001E
/* 001A8 80BACDB8 14200009 */ bne $at, $zero, .L80BACDE0
/* 001AC 80BACDBC 3C0280BB */ lui $v0, %hi(D_80BAD9CF) ## $v0 = 80BB0000
/* 001B0 80BACDC0 00034023 */ subu $t0, $zero, $v1
/* 001B4 80BACDC4 01000821 */ addu $at, $t0, $zero
/* 001B8 80BACDC8 00084080 */ sll $t0, $t0, 2
/* 001BC 80BACDCC 01014023 */ subu $t0, $t0, $at
/* 001C0 80BACDD0 00084080 */ sll $t0, $t0, 2
/* 001C4 80BACDD4 25080258 */ addiu $t0, $t0, 0x0258 ## $t0 = 00000258
/* 001C8 80BACDD8 10000002 */ beq $zero, $zero, .L80BACDE4
/* 001CC 80BACDDC 310800FF */ andi $t0, $t0, 0x00FF ## $t0 = 00000058
.L80BACDE0:
/* 001D0 80BACDE0 240800FF */ addiu $t0, $zero, 0x00FF ## $t0 = 000000FF
.L80BACDE4:
/* 001D4 80BACDE4 3C0180BB */ lui $at, %hi(D_80BAD9CF) ## $at = 80BB0000
/* 001D8 80BACDE8 A028D9CF */ sb $t0, %lo(D_80BAD9CF)($at)
/* 001DC 80BACDEC 9042D9CF */ lbu $v0, %lo(D_80BAD9CF)($v0)
/* 001E0 80BACDF0 3C0180BB */ lui $at, %hi(D_80BAD9AF) ## $at = 80BB0000
/* 001E4 80BACDF4 3C0680BB */ lui $a2, %hi(D_80BADB80) ## $a2 = 80BB0000
/* 001E8 80BACDF8 A022D9AF */ sb $v0, %lo(D_80BAD9AF)($at)
/* 001EC 80BACDFC 3C0180BB */ lui $at, %hi(D_80BAD98F) ## $at = 80BB0000
/* 001F0 80BACE00 A022D98F */ sb $v0, %lo(D_80BAD98F)($at)
/* 001F4 80BACE04 3C0180BB */ lui $at, %hi(D_80BAD96F) ## $at = 80BB0000
/* 001F8 80BACE08 A022D96F */ sb $v0, %lo(D_80BAD96F)($at)
/* 001FC 80BACE0C 3C0180BB */ lui $at, %hi(D_80BAD94F) ## $at = 80BB0000
/* 00200 80BACE10 A022D94F */ sb $v0, %lo(D_80BAD94F)($at)
/* 00204 80BACE14 3C0180BB */ lui $at, %hi(D_80BAD92F) ## $at = 80BB0000
/* 00208 80BACE18 A022D92F */ sb $v0, %lo(D_80BAD92F)($at)
/* 0020C 80BACE1C 3C0180BB */ lui $at, %hi(D_80BAD90F) ## $at = 80BB0000
/* 00210 80BACE20 A022D90F */ sb $v0, %lo(D_80BAD90F)($at)
/* 00214 80BACE24 3C0180BB */ lui $at, %hi(D_80BAD8EF) ## $at = 80BB0000
/* 00218 80BACE28 A022D8EF */ sb $v0, %lo(D_80BAD8EF)($at)
/* 0021C 80BACE2C 3C0180BB */ lui $at, %hi(D_80BAD8CF) ## $at = 80BB0000
/* 00220 80BACE30 A022D8CF */ sb $v0, %lo(D_80BAD8CF)($at)
/* 00224 80BACE34 3C0180BB */ lui $at, %hi(D_80BAD8AF) ## $at = 80BB0000
/* 00228 80BACE38 A022D8AF */ sb $v0, %lo(D_80BAD8AF)($at)
/* 0022C 80BACE3C 3C0180BB */ lui $at, %hi(D_80BAD88F) ## $at = 80BB0000
/* 00230 80BACE40 A022D88F */ sb $v0, %lo(D_80BAD88F)($at)
/* 00234 80BACE44 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
/* 00238 80BACE48 24C6DB80 */ addiu $a2, $a2, %lo(D_80BADB80) ## $a2 = 80BADB80
/* 0023C 80BACE4C 27A40068 */ addiu $a0, $sp, 0x0068 ## $a0 = FFFFFFB8
/* 00240 80BACE50 2407013A */ addiu $a3, $zero, 0x013A ## $a3 = 0000013A
/* 00244 80BACE54 0C031AB1 */ jal Graph_OpenDisps
/* 00248 80BACE58 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
/* 0024C 80BACE5C 0C024F61 */ jal func_80093D84
/* 00250 80BACE60 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 00254 80BACE64 C7AA008C */ lwc1 $f10, 0x008C($sp)
/* 00258 80BACE68 C7B0007C */ lwc1 $f16, 0x007C($sp)
/* 0025C 80BACE6C C7A60094 */ lwc1 $f6, 0x0094($sp)
/* 00260 80BACE70 C7A80084 */ lwc1 $f8, 0x0084($sp)
/* 00264 80BACE74 46105300 */ add.s $f12, $f10, $f16
/* 00268 80BACE78 C7B20090 */ lwc1 $f18, 0x0090($sp)
/* 0026C 80BACE7C C7A40080 */ lwc1 $f4, 0x0080($sp)
/* 00270 80BACE80 46083280 */ add.s $f10, $f6, $f8
/* 00274 80BACE84 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 00278 80BACE88 46049380 */ add.s $f14, $f18, $f4
/* 0027C 80BACE8C 44065000 */ mfc1 $a2, $f10
/* 00280 80BACE90 0C034261 */ jal Matrix_Translate
/* 00284 80BACE94 00000000 */ nop
/* 00288 80BACE98 3C0180BB */ lui $at, %hi(D_80BADBC4) ## $at = 80BB0000
/* 0028C 80BACE9C C42CDBC4 */ lwc1 $f12, %lo(D_80BADBC4)($at)
/* 00290 80BACEA0 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 00294 80BACEA4 44066000 */ mfc1 $a2, $f12
/* 00298 80BACEA8 0C0342A3 */ jal Matrix_Scale
/* 0029C 80BACEAC 46006386 */ mov.s $f14, $f12
/* 002A0 80BACEB0 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 002A4 80BACEB4 34211DA0 */ ori $at, $at, 0x1DA0 ## $at = 00011DA0
/* 002A8 80BACEB8 0C0347F5 */ jal func_800D1FD4
/* 002AC 80BACEBC 02212021 */ addu $a0, $s1, $at
/* 002B0 80BACEC0 C7B000A4 */ lwc1 $f16, 0x00A4($sp)
/* 002B4 80BACEC4 44806000 */ mtc1 $zero, $f12 ## $f12 = 0.00
/* 002B8 80BACEC8 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 002BC 80BACECC 46008487 */ neg.s $f18, $f16
/* 002C0 80BACED0 46006386 */ mov.s $f14, $f12
/* 002C4 80BACED4 44069000 */ mfc1 $a2, $f18
/* 002C8 80BACED8 0C034261 */ jal Matrix_Translate
/* 002CC 80BACEDC 00000000 */ nop
/* 002D0 80BACEE0 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 002D4 80BACEE4 3C0CDA38 */ lui $t4, 0xDA38 ## $t4 = DA380000
/* 002D8 80BACEE8 358C0003 */ ori $t4, $t4, 0x0003 ## $t4 = DA380003
/* 002DC 80BACEEC 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008
/* 002E0 80BACEF0 AE1802D0 */ sw $t8, 0x02D0($s0) ## 000002D0
/* 002E4 80BACEF4 AC4C0000 */ sw $t4, 0x0000($v0) ## 00000000
/* 002E8 80BACEF8 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 002EC 80BACEFC 3C0580BB */ lui $a1, %hi(D_80BADB94) ## $a1 = 80BB0000
/* 002F0 80BACF00 24A5DB94 */ addiu $a1, $a1, %lo(D_80BADB94) ## $a1 = 80BADB94
/* 002F4 80BACF04 24060144 */ addiu $a2, $zero, 0x0144 ## $a2 = 00000144
/* 002F8 80BACF08 0C0346A2 */ jal Matrix_NewMtx
/* 002FC 80BACF0C AFA20064 */ sw $v0, 0x0064($sp)
/* 00300 80BACF10 8FA30064 */ lw $v1, 0x0064($sp)
/* 00304 80BACF14 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 00308 80BACF18 3C0C80BB */ lui $t4, %hi(D_80BADAA0) ## $t4 = 80BB0000
/* 0030C 80BACF1C AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 00310 80BACF20 8FAD00B0 */ lw $t5, 0x00B0($sp)
/* 00314 80BACF24 3C08DE00 */ lui $t0, 0xDE00 ## $t0 = DE000000
/* 00318 80BACF28 3C1980BB */ lui $t9, %hi(D_80BADA38) ## $t9 = 80BB0000
/* 0031C 80BACF2C 85AE001C */ lh $t6, 0x001C($t5) ## 0000001C
/* 00320 80BACF30 258CDAA0 */ addiu $t4, $t4, %lo(D_80BADAA0) ## $t4 = 80BADAA0
/* 00324 80BACF34 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00328 80BACF38 55C1000A */ bnel $t6, $at, .L80BACF64
/* 0032C 80BACF3C 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00330 80BACF40 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00334 80BACF44 3C08DE00 */ lui $t0, 0xDE00 ## $t0 = DE000000
/* 00338 80BACF48 2739DA38 */ addiu $t9, $t9, %lo(D_80BADA38) ## $t9 = 80BADA38
/* 0033C 80BACF4C 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 00000008
/* 00340 80BACF50 AE0F02D0 */ sw $t7, 0x02D0($s0) ## 000002D0
/* 00344 80BACF54 AC590004 */ sw $t9, 0x0004($v0) ## 00000004
/* 00348 80BACF58 10000008 */ beq $zero, $zero, .L80BACF7C
/* 0034C 80BACF5C AC480000 */ sw $t0, 0x0000($v0) ## 00000000
/* 00350 80BACF60 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
.L80BACF64:
/* 00354 80BACF64 3C0B80BB */ lui $t3, %hi(D_80BAD9D0) ## $t3 = 80BB0000
/* 00358 80BACF68 256BD9D0 */ addiu $t3, $t3, %lo(D_80BAD9D0) ## $t3 = 80BAD9D0
/* 0035C 80BACF6C 244A0008 */ addiu $t2, $v0, 0x0008 ## $t2 = 00000008
/* 00360 80BACF70 AE0A02D0 */ sw $t2, 0x02D0($s0) ## 000002D0
/* 00364 80BACF74 AC4B0004 */ sw $t3, 0x0004($v0) ## 00000004
/* 00368 80BACF78 AC480000 */ sw $t0, 0x0000($v0) ## 00000000
.L80BACF7C:
/* 0036C 80BACF7C 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00370 80BACF80 240E0020 */ addiu $t6, $zero, 0x0020 ## $t6 = 00000020
/* 00374 80BACF84 240F0040 */ addiu $t7, $zero, 0x0040 ## $t7 = 00000040
/* 00378 80BACF88 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008
/* 0037C 80BACF8C AE1802D0 */ sw $t8, 0x02D0($s0) ## 000002D0
/* 00380 80BACF90 AC480000 */ sw $t0, 0x0000($v0) ## 00000000
/* 00384 80BACF94 AC4C0004 */ sw $t4, 0x0004($v0) ## 00000004
/* 00388 80BACF98 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 0038C 80BACF9C 8FA900AC */ lw $t1, 0x00AC($sp)
/* 00390 80BACFA0 24180020 */ addiu $t8, $zero, 0x0020 ## $t8 = 00000020
/* 00394 80BACFA4 244D0008 */ addiu $t5, $v0, 0x0008 ## $t5 = 00000008
/* 00398 80BACFA8 AE0D02D0 */ sw $t5, 0x02D0($s0) ## 000002D0
/* 0039C 80BACFAC AC480000 */ sw $t0, 0x0000($v0) ## 00000000
/* 003A0 80BACFB0 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 003A4 80BACFB4 24190001 */ addiu $t9, $zero, 0x0001 ## $t9 = 00000001
/* 003A8 80BACFB8 240B0020 */ addiu $t3, $zero, 0x0020 ## $t3 = 00000020
/* 003AC 80BACFBC 00090823 */ subu $at, $zero, $t1
/* 003B0 80BACFC0 00095023 */ subu $t2, $zero, $t1
/* 003B4 80BACFC4 AFAA001C */ sw $t2, 0x001C($sp)
/* 003B8 80BACFC8 00013840 */ sll $a3, $at, 1
/* 003BC 80BACFCC AFAB0024 */ sw $t3, 0x0024($sp)
/* 003C0 80BACFD0 AFB90018 */ sw $t9, 0x0018($sp)
/* 003C4 80BACFD4 AFB80028 */ sw $t8, 0x0028($sp)
/* 003C8 80BACFD8 AFAF0014 */ sw $t7, 0x0014($sp)
/* 003CC 80BACFDC AFAE0010 */ sw $t6, 0x0010($sp)
/* 003D0 80BACFE0 AFA20054 */ sw $v0, 0x0054($sp)
/* 003D4 80BACFE4 AFA90020 */ sw $t1, 0x0020($sp)
/* 003D8 80BACFE8 0C0253D0 */ jal Gfx_TwoTexScroll
/* 003DC 80BACFEC 00093040 */ sll $a2, $t1, 1
/* 003E0 80BACFF0 8FA30054 */ lw $v1, 0x0054($sp)
/* 003E4 80BACFF4 3C0D80BB */ lui $t5, %hi(D_80BADAF8) ## $t5 = 80BB0000
/* 003E8 80BACFF8 3C08DE00 */ lui $t0, 0xDE00 ## $t0 = DE000000
/* 003EC 80BACFFC AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 003F0 80BAD000 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 003F4 80BAD004 25ADDAF8 */ addiu $t5, $t5, %lo(D_80BADAF8) ## $t5 = 80BADAF8
/* 003F8 80BAD008 3C0680BB */ lui $a2, %hi(D_80BADBA8) ## $a2 = 80BB0000
/* 003FC 80BAD00C 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
/* 00400 80BAD010 AE0C02D0 */ sw $t4, 0x02D0($s0) ## 000002D0
/* 00404 80BAD014 AC4D0004 */ sw $t5, 0x0004($v0) ## 00000004
/* 00408 80BAD018 AC480000 */ sw $t0, 0x0000($v0) ## 00000000
/* 0040C 80BAD01C 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
/* 00410 80BAD020 24C6DBA8 */ addiu $a2, $a2, %lo(D_80BADBA8) ## $a2 = 80BADBA8
/* 00414 80BAD024 27A40068 */ addiu $a0, $sp, 0x0068 ## $a0 = FFFFFFB8
/* 00418 80BAD028 0C031AD5 */ jal Graph_CloseDisps
/* 0041C 80BAD02C 24070158 */ addiu $a3, $zero, 0x0158 ## $a3 = 00000158
/* 00420 80BAD030 8FBF003C */ lw $ra, 0x003C($sp)
/* 00424 80BAD034 8FB00034 */ lw $s0, 0x0034($sp)
/* 00428 80BAD038 8FB10038 */ lw $s1, 0x0038($sp)
/* 0042C 80BAD03C 03E00008 */ jr $ra
/* 00430 80BAD040 27BD00B0 */ addiu $sp, $sp, 0x00B0 ## $sp = 00000000
/* 00434 80BAD044 00000000 */ nop
/* 00438 80BAD048 00000000 */ nop
/* 0043C 80BAD04C 00000000 */ nop

View file

@ -1,37 +0,0 @@
.rdata
glabel D_80BADB60
.asciz " WIPE4 arg_data = %d\n"
.balign 4
.text
glabel OceffWipe4_Init
/* 00000 80BACC10 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00004 80BACC14 AFA5001C */ sw $a1, 0x001C($sp)
/* 00008 80BACC18 AFBF0014 */ sw $ra, 0x0014($sp)
/* 0000C 80BACC1C 3C053DCC */ lui $a1, 0x3DCC ## $a1 = 3DCC0000
/* 00010 80BACC20 34A5CCCD */ ori $a1, $a1, 0xCCCD ## $a1 = 3DCCCCCD
/* 00014 80BACC24 0C00B58B */ jal Actor_SetScale
/* 00018 80BACC28 AFA40018 */ sw $a0, 0x0018($sp)
/* 0001C 80BACC2C 8FA60018 */ lw $a2, 0x0018($sp)
/* 00020 80BACC30 8FA2001C */ lw $v0, 0x001C($sp)
/* 00024 80BACC34 3C0480BB */ lui $a0, %hi(D_80BADB60) ## $a0 = 80BB0000
/* 00028 80BACC38 A4C0014C */ sh $zero, 0x014C($a2) ## 0000014C
/* 0002C 80BACC3C 844E07A0 */ lh $t6, 0x07A0($v0) ## 000007A0
/* 00030 80BACC40 2484DB60 */ addiu $a0, $a0, %lo(D_80BADB60) ## $a0 = 80BADB60
/* 00034 80BACC44 84C5001C */ lh $a1, 0x001C($a2) ## 0000001C
/* 00038 80BACC48 000E7880 */ sll $t7, $t6, 2
/* 0003C 80BACC4C 004FC021 */ addu $t8, $v0, $t7
/* 00040 80BACC50 8F190790 */ lw $t9, 0x0790($t8) ## 00000790
/* 00044 80BACC54 8F29005C */ lw $t1, 0x005C($t9) ## 0000005C
/* 00048 80BACC58 ACC90024 */ sw $t1, 0x0024($a2) ## 00000024
/* 0004C 80BACC5C 8F280060 */ lw $t0, 0x0060($t9) ## 00000060
/* 00050 80BACC60 ACC80028 */ sw $t0, 0x0028($a2) ## 00000028
/* 00054 80BACC64 8F290064 */ lw $t1, 0x0064($t9) ## 00000064
/* 00058 80BACC68 0C00084C */ jal osSyncPrintf
/* 0005C 80BACC6C ACC9002C */ sw $t1, 0x002C($a2) ## 0000002C
/* 00060 80BACC70 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00064 80BACC74 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00068 80BACC78 03E00008 */ jr $ra
/* 0006C 80BACC7C 00000000 */ nop

View file

@ -1,28 +0,0 @@
glabel OceffWipe4_Update
/* 00094 80BACCA4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00098 80BACCA8 AFBF0014 */ sw $ra, 0x0014($sp)
/* 0009C 80BACCAC 84AE07A0 */ lh $t6, 0x07A0($a1) ## 000007A0
/* 000A0 80BACCB0 8482014C */ lh $v0, 0x014C($a0) ## 0000014C
/* 000A4 80BACCB4 000E7880 */ sll $t7, $t6, 2
/* 000A8 80BACCB8 00AFC021 */ addu $t8, $a1, $t7
/* 000AC 80BACCBC 8F190790 */ lw $t9, 0x0790($t8) ## 00000790
/* 000B0 80BACCC0 28410032 */ slti $at, $v0, 0x0032
/* 000B4 80BACCC4 244A0001 */ addiu $t2, $v0, 0x0001 ## $t2 = 00000001
/* 000B8 80BACCC8 8F29005C */ lw $t1, 0x005C($t9) ## 0000005C
/* 000BC 80BACCCC AC890024 */ sw $t1, 0x0024($a0) ## 00000024
/* 000C0 80BACCD0 8F280060 */ lw $t0, 0x0060($t9) ## 00000060
/* 000C4 80BACCD4 AC880028 */ sw $t0, 0x0028($a0) ## 00000028
/* 000C8 80BACCD8 8F290064 */ lw $t1, 0x0064($t9) ## 00000064
/* 000CC 80BACCDC 10200003 */ beq $at, $zero, .L80BACCEC
/* 000D0 80BACCE0 AC89002C */ sw $t1, 0x002C($a0) ## 0000002C
/* 000D4 80BACCE4 10000003 */ beq $zero, $zero, .L80BACCF4
/* 000D8 80BACCE8 A48A014C */ sh $t2, 0x014C($a0) ## 0000014C
.L80BACCEC:
/* 000DC 80BACCEC 0C00B55C */ jal Actor_Kill
/* 000E0 80BACCF0 00000000 */ nop
.L80BACCF4:
/* 000E4 80BACCF4 8FBF0014 */ lw $ra, 0x0014($sp)
/* 000E8 80BACCF8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 000EC 80BACCFC 03E00008 */ jr $ra
/* 000F0 80BACD00 00000000 */ nop

View file

@ -1,36 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purposee registers
.section .data
glabel Oceff_Wipe_InitVars
.word 0x018A0700, 0x02000010, 0x00010000, 0x00000150
.word OceffWipe_Init
.word OceffWipe_Destroy
.word OceffWipe_Update
.word OceffWipe_Draw
glabel D_80BA92E0
.word 0x354D5AAC, 0xA5561C01, 0x124688B5, 0x74583231, 0x313D71D6, 0x9F5B3507, 0x104089AD, 0x748F440C, 0x408176AC, 0xB4661301, 0x2261C0BE, 0x49392533, 0x2C497FC4, 0x80451D06, 0x2466BBD0, 0x9CB85411, 0x40A09DA3, 0xB37F210B, 0x3D8AEAC7, 0x3F241930, 0x2F5591A7, 0x6441080F, 0x4191E8DB, 0xB7A76B18, 0x4094BAA0, 0x76532D22, 0x60BAFEE8, 0x8253545F, 0x6078A896, 0x73540723, 0x66C2FEBB, 0x87888723, 0x4B87C79E, 0x33123048, 0x88E3FFFC, 0xD39F7E72, 0x8DA2AE80, 0xA77B1940, 0x90EBFFA9, 0x6289973E, 0x6F9ACD83, 0x2D104B7F, 0xAEEBFDF3, 0xD8B26772, 0xA7C7AD77, 0xB1B34A61, 0xB0F8FFD5, 0x9496986B, 0x9EC6D25D, 0x503E85B3, 0xC0C1E1EE, 0xBD9B618E, 0xBFE4A975, 0x86E18B86, 0xABCFF7F2, 0xBC837E69, 0xB5EFE465, 0x5B66BACB, 0xC794AADC, 0xAC8982AE, 0xD3F59754, 0x65E2AAAD, 0x8C85D0E1, 0xAF634D39, 0xC7E2EDA3, 0x527ECACF, 0xBF777FC0, 0xA284A5A5, 0xE3FE8A2F, 0x60CCAFBE, 0x7164B8BA, 0x97553A2B, 0xE8BCBCDA, 0x76A1BBBA, 0x844D83BD, 0x9C6B875B, 0xD9FFAA3F, 0x6AC9B59B, 0x6592BD94, 0x956D3D3B, 0xFFA773D3, 0xB5B9AB90, 0x4033A0BC, 0x873E3E1D, 0xB5FFE48D, 0x8CC9A761, 0x62CBAF79, 0x98883457, 0xF3766FAF, 0xD5B2A26B, 0x44549D8B, 0x56232221, 0x7DFFF2DD, 0xC6B68840, 0x4ECCA267, 0x696D296E, 0xA8328AAD, 0xD3998447, 0x5E7D8C5B, 0x391F1E35, 0x4EF6CDD3, 0xDD9B6C2D, 0x27A09571, 0x37443656, 0x4C1265C9, 0xCA91612E, 0x3B5A7A65, 0x2F4F3421, 0x36EAC380, 0xB6814A1B, 0x0C607075, 0x5860803B, 0x27102CCD, 0xC9A87A47, 0x16204B80, 0x44B3860F, 0x28DAE042, 0x7F773710, 0x0235616D, 0xA089BE60, 0x34161EBC, 0xBBAAA972, 0x172A3B91, 0x96F6C319, 0x21B7F02A, 0x618F662A, 0x02327A8C, 0x97577B5C, 0x48171FB3, 0xA090AF87, 0x1F65609D, 0xD8FFD41E, 0x177CC522, 0x69A8A462, 0x0D3A93B6, 0x4F0C1821, 0x39151CA7, 0x928EAA9A, 0x33919BAF, 0xEBFBDA23, 0x093B6937, 0x80AEA66C, 0x304491C7, 0x3A031710, 0x16162197, 0x9B9FB5BA, 0x4C95CED8, 0xF8F0D425, 0x05144066, 0x84B17F5A, 0x725E8DCD, 0x5D376910, 0x19183886, 0xA3A1C4C6, 0x6584D1F1, 0xFFFABF12, 0x0E123F77, 0x88AF6881, 0xB97F98BB, 0x879BBC23, 0x4A20557C, 0x9BA5D0BB, 0x7583C6E0, 0xFEFFB322, 0x34283976, 0x95B06EB8, 0xE29B999F, 0xBDE9E582, 0x814C5C82, 0xA1C0ECBE, 0x789ED6B2, 0xF4FFD78F, 0x73324087, 0xA0C26FAB, 0xE0B1A5B9, 0xF2FFFADE, 0xAC906A89, 0xB3DDFFCB, 0x86B8CD75, 0xDFFFF1D7, 0x8F31579C, 0xAFDE7B87, 0xC8BAB4EB, 0xF0F2FFE4, 0xB29B798B, 0xC3F4FFD2, 0xA0A17C32, 0xA9FFE8BD, 0x784D7A91, 0xC7F5AB9B, 0xBEBB86D9, 0xB0BCF9D4, 0x835C4C70, 0xD8FFFFD7, 0xA2682907, 0x68FFE29F, 0x61707B7A, 0xE5FFE7C8, 0xCCC33C8E, 0x768CE0C7, 0x51281940, 0xCBFFFFCB, 0x87450C00, 0x4BF3D58E, 0x6D767B92, 0xFAFFFFC8, 0xC7BF175B, 0x708BBA9A, 0x3A161542, 0xB4FFF5A9, 0x6D39090C, 0x50D8BC86, 0x897AA1C8, 0xFFFFF4A1, 0x8C880B50, 0x91A49762, 0x2D0C1E78, 0xD4FFD97F, 0x58351E23, 0x6BB49283, 0x9B95C9EE, 0xFFFFD377, 0x4336075E, 0xBFB27641, 0x1B0224B5, 0xFCF7AC55, 0x41384344, 0x8FA06468, 0x9FB5DBFD, 0xFFF1A553, 0x190B1275, 0xCCA75D3A, 0x0C042ED9, 0xFFD97C33, 0x28405669, 0xB0914C3A, 0x9199C6FF, 0xFECF7835, 0x080C308B, 0xB38F6D47, 0x0A0D3DDB, 0xF3A75519, 0x1341558E, 0xBE7B4321, 0x6B4D94F8, 0xE4AC591A, 0x02175096, 0x8E7A9145, 0x1D224BBF, 0xC1723508, 0x0D3E5FA5, 0xA568351E, 0x422B6EE0, 0xBB85480B, 0x04256799, 0x716D6D21
glabel D_80BA96E0
.word 0xFF5B00E3, 0x00000000, 0x04CD0400, 0xFFFFFF00, 0xFF32011B, 0x012C0000, 0x04CD0200, 0xFFFFFFA0, 0x0000015E, 0x012C0000, 0x04000200, 0xFFFFFFA0, 0x00000118, 0x00000000, 0x04000400, 0xFFFFFF00, 0xFEDA0195, 0x03E80000, 0x04CD0000, 0xFFFFFFFF, 0x000001F4, 0x03E80000, 0x04000000, 0xFFFFFFFF, 0xFEF60057, 0x00000000, 0x059A0400, 0xFFFFFF00, 0xFEB3006C, 0x012C0000, 0x059A0200, 0xFFFFFFA0, 0xFE24009B, 0x03E80000, 0x059A0000, 0xFFFFFFFF, 0xFEF6FFA9, 0x00000000, 0x06660400, 0xFFFFFF00, 0xFEB3FF94, 0x012C0000, 0x06660200, 0xFFFFFFA0, 0xFE24FF65, 0x03E80000, 0x06660000, 0xFFFFFFFF, 0xFF5BFF1D, 0x00000000, 0x07330400, 0xFFFFFF00, 0xFF32FEE5, 0x012C0000, 0x07330200, 0xFFFFFFA0, 0xFEDAFE6B, 0x03E80000, 0x07330000, 0xFFFFFFFF, 0x0000FEE8, 0x00000000, 0x08000400, 0xFFFFFF00, 0x0000FEA2, 0x012C0000, 0x08000200, 0xFFFFFFA0, 0x0000FE0C, 0x03E80000, 0x08000000, 0xFFFFFFFF, 0x00A5FF1D, 0x00000000, 0x00CD0400, 0xFFFFFF00, 0x00CEFEE5, 0x012C0000, 0x00CD0200, 0xFFFFFFA0, 0x0000FEA2, 0x012C0000, 0x00000200, 0xFFFFFFA0, 0x0000FEE8, 0x00000000, 0x00000400, 0xFFFFFF00, 0x0126FE6B, 0x03E80000, 0x00CD0000, 0xFFFFFFFF, 0x0000FE0C, 0x03E80000, 0x00000000, 0xFFFFFFFF, 0x010AFFA9, 0x00000000, 0x019A0400, 0xFFFFFF00, 0x014DFF94, 0x012C0000, 0x019A0200, 0xFFFFFFA0, 0x01DCFF65, 0x03E80000, 0x019A0000, 0xFFFFFFFF, 0x010A0057, 0x00000000, 0x02660400, 0xFFFFFF00, 0x014D006C, 0x012C0000, 0x02660200, 0xFFFFFFA0, 0x01DC009B, 0x03E80000, 0x02660000, 0xFFFFFFFF, 0x00A500E3, 0x00000000, 0x03330400, 0xFFFFFF00, 0x00CE011B, 0x012C0000, 0x03330200, 0xFFFFFFA0
glabel D_80BA98E0
.word 0x00CE011B, 0x012C0000, 0x03330200, 0xFFFFFFA0, 0x01260195, 0x03E80000, 0x03330000, 0xFFFFFFFF, 0x01DC009B, 0x03E80000, 0x02660000, 0xFFFFFFFF, 0x014D006C, 0x012C0000, 0x02660200, 0xFFFFFFA0, 0x00000118, 0x00000000, 0x04000400, 0xFFFFFF00, 0x0000015E, 0x012C0000, 0x04000200, 0xFFFFFFA0, 0x00A500E3, 0x00000000, 0x03330400, 0xFFFFFF00, 0x000001F4, 0x03E80000, 0x04000000, 0xFFFFFFFF
glabel D_80BA9960
.word 0xE7000000, 0x00000000, 0xE3001001, 0x00000000, 0xD7000002, 0xFFFFFFFF, 0xFD900000
.word D_80BA92E0
.word 0xF5900000, 0x07014051, 0xE6000000, 0x00000000, 0xF3000000, 0x071FF200, 0xE7000000, 0x00000000, 0xF5880800, 0x00014051, 0xF2000000, 0x0007C07C, 0xE8000000, 0x00000000, 0xF5880800, 0x01017C50, 0xF2000000, 0x0107C07C, 0xFC262A60, 0x3510937F, 0xE200001C, 0x0C1841C8, 0xD9F0FBFF, 0x00000000, 0xDF000000, 0x00000000
glabel D_80BA99E8
.word 0x01020040
.word D_80BA96E0
.word 0x06000204, 0x00000406, 0x0602080A, 0x00020A04, 0x060C0E02, 0x000C0200, 0x060E1008, 0x000E0802, 0x0612140E, 0x00120E0C, 0x06141610, 0x0014100E, 0x06181A14, 0x00181412, 0x061A1C16, 0x001A1614, 0x061E201A, 0x001E1A18, 0x0620221C, 0x00201C1A, 0x06242628, 0x0024282A, 0x06262C2E, 0x00262E28, 0x06303226, 0x00302624, 0x0632342C, 0x00322C26, 0x06363832, 0x00363230, 0x06383A34, 0x00383432, 0x063C3E38, 0x003C3836, 0x01008010
.word D_80BA98E0
.word 0x06000204, 0x00000406, 0x06080A00, 0x0008000C, 0x060A0E02, 0x000A0200, 0xDF000000, 0x00000000
glabel D_80BA9AA0
.word 0x01102201, 0x20120120, 0x12011022, 0x01201201, 0x12210102
glabel D_80BA9AB4
.word 0x00000000, 0x00000000, 0x00000000

View file

@ -1,11 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purposee registers
.section .rodata
glabel D_80BA9B20
.incbin "baserom/ovl_Oceff_Wipe", 0xD90, 0x00000090

File diff suppressed because one or more lines are too long

View file

@ -1,11 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purposee registers
.section .rodata
glabel D_80BAB310
.incbin "baserom/ovl_Oceff_Wipe2", 0x1760, 0x000000E0

File diff suppressed because one or more lines are too long

View file

@ -1,11 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purposee registers
.section .rodata
glabel D_80BACB30
.incbin "baserom/ovl_Oceff_Wipe3", 0x1740, 0x000000E0

File diff suppressed because one or more lines are too long

View file

@ -1,11 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purposee registers
.section .rodata
glabel D_80BADBD0
.incbin "baserom/ovl_Oceff_Wipe4", 0xFC0, 0x000000F0

View file

@ -655,7 +655,7 @@ s32 func_8005AA90(Camera*, s32, Vec3f*);
// ? func_8005AC6C(?);
// ? func_8005AD40(?);
// ? func_8005AE64(?);
// ? func_8005AFB4(?);
Vec3f* func_8005AFB4(Vec3f* dst, Camera* camera);
// ? func_8005B044(?);
// ? func_8005B1A4(?);
DamageTable* DamageTable_Get(s32 index);

View file

@ -21,6 +21,8 @@
#define PLAYER ((Player*)globalCtx->actorCtx.actorList[ACTORTYPE_PLAYER].first)
#define ACTIVE_CAM globalCtx->cameraPtrs[globalCtx->activeCamera]
#define YEARS_CHILD 5
#define YEARS_ADULT 17
#define LINK_IS_CHILD (gSaveContext.linkAge != 0)

View file

@ -164,7 +164,7 @@ typedef struct {
/* 0x13C4 */ s16 dogParams;
/* 0x13C6 */ char unk_13C6[0x0001];
/* 0x13C7 */ u8 unk_13C7;
/* 0x13C8 */ u16 nayrusLoveTimer;
/* 0x13C8 */ s16 nayrusLoveTimer;
/* 0x13CA */ char unk_13CA[0x0002];
/* 0x13CC */ s16 rupeeAccumulator;
/* 0x13CE */ s16 timer1State;

12
spec
View file

@ -3830,29 +3830,25 @@ endseg
beginseg
name "ovl_Oceff_Wipe"
include "build/src/overlays/actors/ovl_Oceff_Wipe/z_oceff_wipe.o"
include "build/data/overlays/actors/z_oceff_wipe.data.o"
include "build/data/overlays/actors/z_oceff_wipe.reloc.o"
include "build/src/overlays/actors/ovl_Oceff_Wipe/z_oceff_wipe_reloc.o"
endseg
beginseg
name "ovl_Oceff_Wipe2"
include "build/src/overlays/actors/ovl_Oceff_Wipe2/z_oceff_wipe2.o"
include "build/data/overlays/actors/z_oceff_wipe2.data.o"
include "build/data/overlays/actors/z_oceff_wipe2.reloc.o"
include "build/src/overlays/actors/ovl_Oceff_Wipe2/z_oceff_wipe2_reloc.o"
endseg
beginseg
name "ovl_Oceff_Wipe3"
include "build/src/overlays/actors/ovl_Oceff_Wipe3/z_oceff_wipe3.o"
include "build/data/overlays/actors/z_oceff_wipe3.data.o"
include "build/data/overlays/actors/z_oceff_wipe3.reloc.o"
include "build/src/overlays/actors/ovl_Oceff_Wipe3/z_oceff_wipe3_reloc.o"
endseg
beginseg
name "ovl_Oceff_Wipe4"
include "build/src/overlays/actors/ovl_Oceff_Wipe4/z_oceff_wipe4.o"
include "build/data/overlays/actors/z_oceff_wipe4.data.o"
include "build/data/overlays/actors/z_oceff_wipe4.reloc.o"
include "build/src/overlays/actors/ovl_Oceff_Wipe4/z_oceff_wipe4_reloc.o"
endseg
beginseg

View file

@ -265,7 +265,7 @@ void func_80064824(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase*
break;
case 16:
if (sp3F != 0) {
D_8015FCCA = Quake_Add(globalCtx->cameraPtrs[globalCtx->activeCamera], 6);
D_8015FCCA = Quake_Add(ACTIVE_CAM, 6);
Quake_SetSpeed(D_8015FCCA, 0x7FFF);
Quake_SetQuakeValues(D_8015FCCA, 4, 0, 1000, 0);
Quake_SetCountdown(D_8015FCCA, 800);

View file

@ -15,7 +15,7 @@ s16 D_801614C8;
u64 D_801614D0[0xA00];
void func_800BC450(GlobalContext* globalCtx) {
func_8005A7A8(globalCtx->cameraPtrs[globalCtx->activeCamera], globalCtx->unk_1242B - 1);
func_8005A7A8(ACTIVE_CAM, globalCtx->unk_1242B - 1);
}
void func_800BC490(GlobalContext* globalCtx, s16 point) {
@ -1238,9 +1238,9 @@ void Gameplay_Draw(GlobalContext* globalCtx) {
if ((HREG(80) != 10) || (HREG(83) != 0)) {
if (globalCtx->skyboxCtx.unk_140 != 0) {
if (globalCtx->cameraPtrs[globalCtx->activeCamera]->unk_142 != 0x19) {
if (ACTIVE_CAM->unk_142 != 0x19) {
Vec3f sp74;
func_8005AFB4(&sp74, globalCtx->cameraPtrs[globalCtx->activeCamera]);
func_8005AFB4(&sp74, ACTIVE_CAM);
func_800B10C4(&globalCtx->skyboxCtx, gfxCtx, globalCtx->skyboxId, 0,
globalCtx->view.eye.x + sp74.x, globalCtx->view.eye.y + sp74.y,
globalCtx->view.eye.z + sp74.z);
@ -1322,7 +1322,7 @@ void Gameplay_Draw(GlobalContext* globalCtx) {
if (globalCtx->view.unk_124 != 0) {
Vec3s sp50;
func_800591EC(&sp50, globalCtx->cameraPtrs[globalCtx->activeCamera]);
func_800591EC(&sp50, ACTIVE_CAM);
func_800AB944(&globalCtx->view);
globalCtx->view.unk_124 = 0;
if ((globalCtx->skyboxId != 0) && (globalCtx->skyboxId != 0x1D) && !globalCtx->envCtx.skyDisabled) {
@ -1330,7 +1330,7 @@ void Gameplay_Draw(GlobalContext* globalCtx) {
}
}
func_80059EC8(globalCtx->cameraPtrs[globalCtx->activeCamera]);
func_80059EC8(ACTIVE_CAM);
Graph_CloseDisps(dispRefs, gfxCtx, "../z_play.c", 4508);
}

View file

@ -343,7 +343,7 @@ void func_80096680(GlobalContext* globalCtx, Room* room, u32 flags) {
gfxCtx = globalCtx->state.gfxCtx;
Graph_OpenDisps(dispRefs, globalCtx->state.gfxCtx, "../z_room.c", 628);
camera = globalCtx->cameraPtrs[globalCtx->activeCamera];
camera = ACTIVE_CAM;
polygon1 = &room->mesh->polygon1;
sp9C = (camera->unk_142 ^ 25) == 0;
polygonDlist = SEGMENTED_TO_VIRTUAL(polygon1->dlist);
@ -405,7 +405,7 @@ BgImage* func_80096A74(PolygonType1* polygon1, GlobalContext* globalCtx) {
BgImage* bgImage;
s32 i;
camera = globalCtx->cameraPtrs[globalCtx->activeCamera];
camera = ACTIVE_CAM;
camId = camera->unk_148;
camId2 = func_80041C10(&globalCtx->colCtx, camId, 50)->unk_0E;
if (camId2 >= 0) {
@ -449,7 +449,7 @@ void func_80096B6C(GlobalContext* globalCtx, Room* room, u32 flags) {
gfxCtx = globalCtx->state.gfxCtx;
Graph_OpenDisps(dispRefs, globalCtx->state.gfxCtx, "../z_room.c", 752);
camera = globalCtx->cameraPtrs[globalCtx->activeCamera];
camera = ACTIVE_CAM;
sp98 = (camera->unk_142 ^ 25) == 0;
polygon1 = &room->mesh->polygon1;
polygonDlist = SEGMENTED_TO_VIRTUAL(polygon1->dlist);

View file

@ -1499,14 +1499,14 @@ void func_8009BEEC(GlobalContext* globalCtx) {
s32 var;
if (globalCtx->gameplayFrames % 128 == 13) {
var = Quake_Add(globalCtx->cameraPtrs[globalCtx->activeCamera], 2);
var = Quake_Add(ACTIVE_CAM, 2);
Quake_SetSpeed(var, 10000);
Quake_SetQuakeValues(var, 4, 0, 0, 0);
Quake_SetCountdown(var, 127);
}
if ((globalCtx->gameplayFrames % 64 == 0) && (Math_Rand_ZeroOne() > 0.6f)) {
var = Quake_Add(globalCtx->cameraPtrs[globalCtx->activeCamera], 3);
var = Quake_Add(ACTIVE_CAM, 3);
Quake_SetSpeed(var, 32000.0f + (Math_Rand_ZeroOne() * 3000.0f));
Quake_SetQuakeValues(var, 10.0f - (Math_Rand_ZeroOne() * 9.0f), 0, 0, 0);
Quake_SetCountdown(var, 48.0f - (Math_Rand_ZeroOne() * 15.0f));

View file

@ -220,7 +220,7 @@ void func_8086C29C(BgBdanObjects* this, GlobalContext* globalCtx) {
if (this->unk_16A != 0) {
this->unk_16A -= 1;
if (this->unk_16A == 0) {
temp = Quake_Add(globalCtx->cameraPtrs[globalCtx->activeCamera], 1);
temp = Quake_Add(ACTIVE_CAM, 1);
Quake_SetSpeed(temp, 0x3A98);
Quake_SetQuakeValues(temp, 0, 1, 0xFA, 1);
Quake_SetCountdown(temp, 0xA);
@ -234,7 +234,7 @@ void func_8086C29C(BgBdanObjects* this, GlobalContext* globalCtx) {
BgBdanObjects_SetContactRu1(this, 4);
this->unk_16A = 0xA;
this->actionFunc = func_8086C55C;
func_8005B1A4(globalCtx->cameraPtrs[globalCtx->activeCamera]);
func_8005B1A4(ACTIVE_CAM);
}
}

View file

@ -105,7 +105,7 @@ void func_80899950(BgJyaKanaami* this, GlobalContext* globalCtx) {
if (Math_ApproxUpdateScaledS(&this->actor.posRot.rot.x, 0x4000, this->unk_168)) {
func_80899A08(this);
Audio_PlayActorSound2(&this->actor, NA_SE_EV_TRAP_BOUND);
var = Quake_Add(globalCtx->cameraPtrs[globalCtx->activeCamera], 3);
var = Quake_Add(ACTIVE_CAM, 3);
Quake_SetSpeed(var, 25000);
Quake_SetQuakeValues(var, 2, 0, 0, 0);
Quake_SetCountdown(var, 0x10);

View file

@ -117,7 +117,7 @@ void func_808B318C(BgSpot12Gate* this, GlobalContext* globalCtx) {
Math_ApproxF(&thisx->velocity.y, 1.6f, 0.03f);
if (Math_ApproxF(&thisx->posRot.pos.y, thisx->initPosRot.pos.y + 200.0f, thisx->velocity.y)) {
func_808B3274(this);
var = Quake_Add(globalCtx->cameraPtrs[globalCtx->activeCamera], 3);
var = Quake_Add(ACTIVE_CAM, 3);
Quake_SetSpeed(var, -0x3CB0);
Quake_SetQuakeValues(var, 3, 0, 0, 0);
Quake_SetCountdown(var, 0xC);

View file

@ -60,9 +60,7 @@ void func_808B7478(Actor* thisx, GlobalContext* globalCtx) {
Graph_OpenDisps(dispRefs, globalCtx->state.gfxCtx, "../z_bg_spot17_funen.c", 153);
func_80093D84(globalCtx->state.gfxCtx);
Matrix_RotateY((s16)(func_8005A9F4(globalCtx->cameraPtrs[globalCtx->activeCamera]) - thisx->shape.rot.y + 0x8000) *
9.58738019108e-05f,
MTXMODE_APPLY);
Matrix_RotateY((s16)(func_8005A9F4(ACTIVE_CAM) - thisx->shape.rot.y + 0x8000) * 9.58738019108e-05f, MTXMODE_APPLY);
gSPMatrix(gfxCtx->polyXlu.p++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_spot17_funen.c", 161),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);

View file

@ -159,7 +159,7 @@ void DoorAna_Update(Actor* thisx, GlobalContext* globalCtx) {
this->actionFunc(this, globalCtx);
// changes the grottos facing angle based on camera angle
this->actor.shape.rot.y = func_8005A9F4(globalCtx->cameraPtrs[globalCtx->activeCamera]) + 0x8000;
this->actor.shape.rot.y = func_8005A9F4(ACTIVE_CAM) + 0x8000;
}
void DoorAna_Draw(Actor* thisx, GlobalContext* globalCtx) {

View file

@ -436,7 +436,7 @@ void EnMa1_Draw(Actor* thisx, GlobalContext* globalCtx) {
Gfx* dispRefs[5];
Graph_OpenDisps(dispRefs, globalCtx->state.gfxCtx, "../z_en_ma1.c", 1226);
camera = globalCtx->cameraPtrs[globalCtx->activeCamera];
camera = ACTIVE_CAM;
someFloat = Math_Vec3f_DistXZ(&this->actor.posRot.pos, &camera->eye);
func_800F6268(someFloat, 0x2F);
func_80093D18(globalCtx->state.gfxCtx);

View file

@ -401,7 +401,7 @@ void EnMa2_Draw(Actor* thisx, GlobalContext* globalCtx) {
Gfx* dispRefs[5];
Graph_OpenDisps(dispRefs, globalCtx->state.gfxCtx, "../z_en_ma2.c", 955);
camera = globalCtx->cameraPtrs[globalCtx->activeCamera];
camera = ACTIVE_CAM;
someFloat = Math_Vec3f_DistXZ(&this->actor.posRot.pos, &camera->eye);
func_800F6268(someFloat, 0x2F);
func_80093D18(globalCtx->state.gfxCtx);

View file

@ -99,21 +99,16 @@ s32 D_80AF087C = 0;
u32 D_80AF1938 = 0;
EnRu1ActionFunc D_80AF193C[] = {
func_80AEC0B4, func_80AEC100, func_80AEC130, func_80AEC17C,
func_80AEC1D4, func_80AEC244, func_80AEC2C0, func_80AECA94,
func_80AECAB4, func_80AECAD4, func_80AECB18, func_80AECB60,
func_80AECBB8, func_80AECC1C, func_80AECC84, func_80AED304,
func_80AED324, func_80AED344, func_80AED374, func_80AED3A4,
func_80AED3E0, func_80AED414, func_80AEF29C, func_80AEF2AC,
func_80AEF2D0, func_80AEF354, func_80AEF3A8, func_80AEEBD4,
func_80AEEC5C, func_80AEECF0, func_80AEED58, func_80AEEDCC,
func_80AEEE34, func_80AEEE9C, func_80AEEF08, func_80AEEF5C,
func_80AEF9D8, func_80AEFA2C, func_80AEFAAC, func_80AEFB04,
func_80AEFB68, func_80AEFCE8, func_80AEFBC8, func_80AEFC24,
func_80AEFECC, func_80AEFF40,
func_80AEC0B4, func_80AEC100, func_80AEC130, func_80AEC17C, func_80AEC1D4, func_80AEC244, func_80AEC2C0,
func_80AECA94, func_80AECAB4, func_80AECAD4, func_80AECB18, func_80AECB60, func_80AECBB8, func_80AECC1C,
func_80AECC84, func_80AED304, func_80AED324, func_80AED344, func_80AED374, func_80AED3A4, func_80AED3E0,
func_80AED414, func_80AEF29C, func_80AEF2AC, func_80AEF2D0, func_80AEF354, func_80AEF3A8, func_80AEEBD4,
func_80AEEC5C, func_80AEECF0, func_80AEED58, func_80AEEDCC, func_80AEEE34, func_80AEEE9C, func_80AEEF08,
func_80AEEF5C, func_80AEF9D8, func_80AEFA2C, func_80AEFAAC, func_80AEFB04, func_80AEFB68, func_80AEFCE8,
func_80AEFBC8, func_80AEFC24, func_80AEFECC, func_80AEFF40,
};
EnRu1PreLimbDrawFunc D_80AF19F4[]= {
EnRu1PreLimbDrawFunc D_80AF19F4[] = {
func_80AF0278,
};

View file

@ -61,11 +61,9 @@ static u32 D_80AF4118 = 0;
#include "z_en_ru2_cutscene_data.c"
static EnRu2ActionFunc D_80AF50BC[] = {
func_80AF2CB4, func_80AF2CD4, func_80AF2CF4, func_80AF2D2C,
func_80AF2D6C, func_80AF2DAC, func_80AF2DEC, func_80AF3144,
func_80AF3174, func_80AF31C8, func_80AF3604, func_80AF3624,
func_80AF366C, func_80AF36AC, func_80AF3BC8, func_80AF3C04,
func_80AF3C64, func_80AF3CB8, func_80AF3D0C, func_80AF3D60,
func_80AF2CB4, func_80AF2CD4, func_80AF2CF4, func_80AF2D2C, func_80AF2D6C, func_80AF2DAC, func_80AF2DEC,
func_80AF3144, func_80AF3174, func_80AF31C8, func_80AF3604, func_80AF3624, func_80AF366C, func_80AF36AC,
func_80AF3BC8, func_80AF3C04, func_80AF3C64, func_80AF3CB8, func_80AF3D0C, func_80AF3D60,
};
static EnRu2DrawFunc D_80AF510C[] = {
@ -672,7 +670,7 @@ void func_80AF39DC(EnRu2* this, GlobalContext* globalCtx) {
if (this->unk_2C2 % 6 == 3) {
player = PLAYER;
osSyncPrintf("うおりゃー! \n");
func_8005B1A4(globalCtx->cameraPtrs[globalCtx->activeCamera]);
func_8005B1A4(ACTIVE_CAM);
player->actor.posRot.pos.x = 820.0f;
player->actor.posRot.pos.y = 0.0f;
player->actor.posRot.pos.z = 180.0f;
@ -683,7 +681,7 @@ void func_80AF39DC(EnRu2* this, GlobalContext* globalCtx) {
this->unk_2C3 = dialogState;
if (func_8010BDBC(msgCtx) == 2) {
this->action = 18;
func_8005B1A4(globalCtx->cameraPtrs[globalCtx->activeCamera]);
func_8005B1A4(ACTIVE_CAM);
}
}

View file

@ -517,15 +517,12 @@ void EnWallmas_Update(Actor* thisx, GlobalContext* globalCtx) {
EnWallmas_ColUpdate(this, globalCtx);
this->actionFunc(this, globalCtx);
if ((this->actionFunc == EnWallmas_WaitToDrop) ||
(this->actionFunc == EnWallmas_WaitForProximity) ||
(this->actionFunc == EnWallmas_TakePlayer) ||
(this->actionFunc == EnWallmas_WaitForSwitchFlag)) {
if ((this->actionFunc == EnWallmas_WaitToDrop) || (this->actionFunc == EnWallmas_WaitForProximity) ||
(this->actionFunc == EnWallmas_TakePlayer) || (this->actionFunc == EnWallmas_WaitForSwitchFlag)) {
return;
}
if ((this->actionFunc != EnWallmas_ReturnToCeiling) &&
(this->actionFunc != EnWallmas_TakePlayer)) {
if ((this->actionFunc != EnWallmas_ReturnToCeiling) && (this->actionFunc != EnWallmas_TakePlayer)) {
Actor_MoveForward(&this->actor);
}
@ -563,8 +560,7 @@ void EnWallmas_DrawXlu(EnWallmas* this, GlobalContext* globalCtx) {
f32 xzScale;
Gfx* dispRefs[3];
if ((this->actor.floorPoly == NULL) ||
((this->timer >= 0x51) && (this->actionFunc != EnWallmas_Stun))) {
if ((this->actor.floorPoly == NULL) || ((this->timer >= 0x51) && (this->actionFunc != EnWallmas_Stun))) {
return;
}
@ -578,10 +574,8 @@ void EnWallmas_DrawXlu(EnWallmas* this, GlobalContext* globalCtx) {
func_80038A28(this->actor.floorPoly, this->actor.posRot.pos.x, this->actor.unk_80, this->actor.posRot.pos.z, &mf);
Matrix_Mult(&mf, MTXMODE_NEW);
if ((this->actionFunc != EnWallmas_WaitToDrop) &&
(this->actionFunc != EnWallmas_ReturnToCeiling) &&
(this->actionFunc != EnWallmas_TakePlayer) &&
(this->actionFunc != EnWallmas_WaitForSwitchFlag)) {
if ((this->actionFunc != EnWallmas_WaitToDrop) && (this->actionFunc != EnWallmas_ReturnToCeiling) &&
(this->actionFunc != EnWallmas_TakePlayer) && (this->actionFunc != EnWallmas_WaitForSwitchFlag)) {
xzScale = this->actor.scale.x * 50.0f;
} else {
xzScale = ((0x50 - this->timer) >= 0x51 ? 0x50 : (0x50 - this->timer)) * TIMER_SCALE;

View file

@ -5,6 +5,7 @@
*/
#include "z_oceff_wipe.h"
#include <vt.h>
#define FLAGS 0x02000010
@ -15,7 +16,6 @@ void OceffWipe_Destroy(Actor* thisx, GlobalContext* globalCtx);
void OceffWipe_Update(Actor* thisx, GlobalContext* globalCtx);
void OceffWipe_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Oceff_Wipe_InitVars = {
ACTOR_OCEFF_WIPE,
ACTORTYPE_ITEMACTION,
@ -27,11 +27,104 @@ const ActorInit Oceff_Wipe_InitVars = {
(ActorFunc)OceffWipe_Update,
(ActorFunc)OceffWipe_Draw,
};
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Oceff_Wipe/OceffWipe_Init.s")
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Oceff_Wipe/OceffWipe_Destroy.s")
#include "z_oceff_wipe_gfx.c"
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Oceff_Wipe/OceffWipe_Update.s")
u8 sOceffWipeAlphaIndices[] = {
0x01, 0x10, 0x22, 0x01, 0x20, 0x12, 0x01, 0x20, 0x12, 0x01,
0x10, 0x22, 0x01, 0x20, 0x12, 0x01, 0x12, 0x21, 0x01, 0x02,
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Oceff_Wipe/OceffWipe_Draw.s")
void OceffWipe_Init(Actor* thisx, GlobalContext* globalCtx) {
OceffWipe* this = THIS;
Actor_SetScale(&this->actor, 0.1f);
this->counter = 0;
this->actor.posRot.pos = ACTIVE_CAM->eye;
osSyncPrintf(VT_FGCOL(CYAN) " WIPE arg_data = %d\n" VT_RST, this->actor.params);
}
void OceffWipe_Destroy(Actor* thisx, GlobalContext* globalCtx) {
OceffWipe* this = THIS;
Player* player = PLAYER;
func_800876C8(globalCtx);
if (gSaveContext.nayrusLoveTimer) {
player->unk_692 |= 0x40;
}
}
void OceffWipe_Update(Actor* thisx, GlobalContext* globalCtx) {
OceffWipe* this = THIS;
this->actor.posRot.pos = ACTIVE_CAM->eye;
if (this->counter < 100) {
this->counter++;
} else {
Actor_Kill(&this->actor);
}
}
void OceffWipe_Draw(Actor* thisx, GlobalContext* globalCtx) {
u32 scroll;
OceffWipe* this = THIS;
f32 z;
GraphicsContext* gfxCtx;
u8 alphaTable[3];
s32 i;
Vec3f eye;
Vtx(*vtxPtr)[2];
Vec3f vec;
Gfx* dispRefs[5];
scroll = globalCtx->state.frames & 0xFF;
eye = ACTIVE_CAM->eye;
func_8005AFB4(&vec, ACTIVE_CAM);
gfxCtx = globalCtx->state.gfxCtx;
Graph_OpenDisps(dispRefs, globalCtx->state.gfxCtx, "../z_oceff_wipe.c", 346);
if (this->counter < 32) {
z = Math_Sins(this->counter << 9) * 1400;
} else {
z = 1400;
}
if (this->counter >= 80) {
alphaTable[0] = 0;
alphaTable[1] = (0x64 - this->counter) * 8;
alphaTable[2] = (0x64 - this->counter) * 12;
} else {
alphaTable[0] = 0;
alphaTable[1] = 0xA0;
alphaTable[2] = 0xFF;
}
for (i = 0; i < 20; i++) {
vtxPtr = (Vtx(*)[2])vertices;
vtxPtr[i][0].v.cn[3] = alphaTable[((sOceffWipeAlphaIndices[i] & 0xF0) >> 4)];
vtxPtr[i][1].v.cn[3] = alphaTable[sOceffWipeAlphaIndices[i] & 0xF];
}
func_80093D84(globalCtx->state.gfxCtx);
Matrix_Translate(eye.x + vec.x, eye.y + vec.y, eye.z + vec.z, MTXMODE_NEW);
Matrix_Scale(0.1f, 0.1f, 0.1f, MTXMODE_APPLY);
func_800D1FD4(&globalCtx->mf_11DA0);
Matrix_Translate(0.0f, 0.0f, -z, MTXMODE_APPLY);
gSPMatrix(gfxCtx->polyXlu.p++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_oceff_wipe.c", 375),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
if (this->actor.params) {
gDPSetPrimColor(gfxCtx->polyXlu.p++, 0x00, 0x00, 0xAA, 0xFF, 0xFF, 0xFF);
gDPSetEnvColor(gfxCtx->polyXlu.p++, 0x00, 0x96, 0xFF, 0x80);
} else {
gDPSetPrimColor(gfxCtx->polyXlu.p++, 0x00, 0x00, 0xFF, 0xFF, 0xC8, 0xFF);
gDPSetEnvColor(gfxCtx->polyXlu.p++, 100, 0x00, 0xFF, 0x80);
}
gSPDisplayList(gfxCtx->polyXlu.p++, textureDL);
gSPDisplayList(gfxCtx->polyXlu.p++, Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, 0 - scroll, scroll * (-2), 32, 32,
1, 0 - scroll, scroll * (-2), 32, 32));
gSPDisplayList(gfxCtx->polyXlu.p++, frustrumDl);
Graph_CloseDisps(dispRefs, globalCtx->state.gfxCtx, "../z_oceff_wipe.c", 398);
}

View file

@ -8,7 +8,7 @@ struct OceffWipe;
typedef struct OceffWipe {
/* 0x0000 */ Actor actor;
/* 0x014C */ char unk_14C[0x4];
/* 0x014C */ s16 counter;
} OceffWipe; // size = 0x0150
extern const ActorInit Oceff_Wipe_InitVars;

View file

@ -0,0 +1,101 @@
#include "z_oceff_wipe.h"
static u32 tex0[] = {
0x354D5AAC, 0xA5561C01, 0x124688B5, 0x74583231, 0x313D71D6, 0x9F5B3507, 0x104089AD, 0x748F440C, 0x408176AC,
0xB4661301, 0x2261C0BE, 0x49392533, 0x2C497FC4, 0x80451D06, 0x2466BBD0, 0x9CB85411, 0x40A09DA3, 0xB37F210B,
0x3D8AEAC7, 0x3F241930, 0x2F5591A7, 0x6441080F, 0x4191E8DB, 0xB7A76B18, 0x4094BAA0, 0x76532D22, 0x60BAFEE8,
0x8253545F, 0x6078A896, 0x73540723, 0x66C2FEBB, 0x87888723, 0x4B87C79E, 0x33123048, 0x88E3FFFC, 0xD39F7E72,
0x8DA2AE80, 0xA77B1940, 0x90EBFFA9, 0x6289973E, 0x6F9ACD83, 0x2D104B7F, 0xAEEBFDF3, 0xD8B26772, 0xA7C7AD77,
0xB1B34A61, 0xB0F8FFD5, 0x9496986B, 0x9EC6D25D, 0x503E85B3, 0xC0C1E1EE, 0xBD9B618E, 0xBFE4A975, 0x86E18B86,
0xABCFF7F2, 0xBC837E69, 0xB5EFE465, 0x5B66BACB, 0xC794AADC, 0xAC8982AE, 0xD3F59754, 0x65E2AAAD, 0x8C85D0E1,
0xAF634D39, 0xC7E2EDA3, 0x527ECACF, 0xBF777FC0, 0xA284A5A5, 0xE3FE8A2F, 0x60CCAFBE, 0x7164B8BA, 0x97553A2B,
0xE8BCBCDA, 0x76A1BBBA, 0x844D83BD, 0x9C6B875B, 0xD9FFAA3F, 0x6AC9B59B, 0x6592BD94, 0x956D3D3B, 0xFFA773D3,
0xB5B9AB90, 0x4033A0BC, 0x873E3E1D, 0xB5FFE48D, 0x8CC9A761, 0x62CBAF79, 0x98883457, 0xF3766FAF, 0xD5B2A26B,
0x44549D8B, 0x56232221, 0x7DFFF2DD, 0xC6B68840, 0x4ECCA267, 0x696D296E, 0xA8328AAD, 0xD3998447, 0x5E7D8C5B,
0x391F1E35, 0x4EF6CDD3, 0xDD9B6C2D, 0x27A09571, 0x37443656, 0x4C1265C9, 0xCA91612E, 0x3B5A7A65, 0x2F4F3421,
0x36EAC380, 0xB6814A1B, 0x0C607075, 0x5860803B, 0x27102CCD, 0xC9A87A47, 0x16204B80, 0x44B3860F, 0x28DAE042,
0x7F773710, 0x0235616D, 0xA089BE60, 0x34161EBC, 0xBBAAA972, 0x172A3B91, 0x96F6C319, 0x21B7F02A, 0x618F662A,
0x02327A8C, 0x97577B5C, 0x48171FB3, 0xA090AF87, 0x1F65609D, 0xD8FFD41E, 0x177CC522, 0x69A8A462, 0x0D3A93B6,
0x4F0C1821, 0x39151CA7, 0x928EAA9A, 0x33919BAF, 0xEBFBDA23, 0x093B6937, 0x80AEA66C, 0x304491C7, 0x3A031710,
0x16162197, 0x9B9FB5BA, 0x4C95CED8, 0xF8F0D425, 0x05144066, 0x84B17F5A, 0x725E8DCD, 0x5D376910, 0x19183886,
0xA3A1C4C6, 0x6584D1F1, 0xFFFABF12, 0x0E123F77, 0x88AF6881, 0xB97F98BB, 0x879BBC23, 0x4A20557C, 0x9BA5D0BB,
0x7583C6E0, 0xFEFFB322, 0x34283976, 0x95B06EB8, 0xE29B999F, 0xBDE9E582, 0x814C5C82, 0xA1C0ECBE, 0x789ED6B2,
0xF4FFD78F, 0x73324087, 0xA0C26FAB, 0xE0B1A5B9, 0xF2FFFADE, 0xAC906A89, 0xB3DDFFCB, 0x86B8CD75, 0xDFFFF1D7,
0x8F31579C, 0xAFDE7B87, 0xC8BAB4EB, 0xF0F2FFE4, 0xB29B798B, 0xC3F4FFD2, 0xA0A17C32, 0xA9FFE8BD, 0x784D7A91,
0xC7F5AB9B, 0xBEBB86D9, 0xB0BCF9D4, 0x835C4C70, 0xD8FFFFD7, 0xA2682907, 0x68FFE29F, 0x61707B7A, 0xE5FFE7C8,
0xCCC33C8E, 0x768CE0C7, 0x51281940, 0xCBFFFFCB, 0x87450C00, 0x4BF3D58E, 0x6D767B92, 0xFAFFFFC8, 0xC7BF175B,
0x708BBA9A, 0x3A161542, 0xB4FFF5A9, 0x6D39090C, 0x50D8BC86, 0x897AA1C8, 0xFFFFF4A1, 0x8C880B50, 0x91A49762,
0x2D0C1E78, 0xD4FFD97F, 0x58351E23, 0x6BB49283, 0x9B95C9EE, 0xFFFFD377, 0x4336075E, 0xBFB27641, 0x1B0224B5,
0xFCF7AC55, 0x41384344, 0x8FA06468, 0x9FB5DBFD, 0xFFF1A553, 0x190B1275, 0xCCA75D3A, 0x0C042ED9, 0xFFD97C33,
0x28405669, 0xB0914C3A, 0x9199C6FF, 0xFECF7835, 0x080C308B, 0xB38F6D47, 0x0A0D3DDB, 0xF3A75519, 0x1341558E,
0xBE7B4321, 0x6B4D94F8, 0xE4AC591A, 0x02175096, 0x8E7A9145, 0x1D224BBF, 0xC1723508, 0x0D3E5FA5, 0xA568351E,
0x422B6EE0, 0xBB85480B, 0x04256799, 0x716D6D21,
};
static Vtx vertices[] = {
VTX(-165, 227, 0, 1229, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(-206, 283, 300, 1229, 512, 0xFF, 0xFF, 0xFF, 0xA0),
VTX(0, 350, 300, 1024, 512, 0xFF, 0xFF, 0xFF, 0xA0), VTX(0, 280, 0, 1024, 1024, 0xFF, 0xFF, 0xFF, 0x00),
VTX(-294, 405, 1000, 1229, 0, 0xFF, 0xFF, 0xFF, 0xFF), VTX(0, 500, 1000, 1024, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(-266, 87, 0, 1434, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(-333, 108, 300, 1434, 512, 0xFF, 0xFF, 0xFF, 0xA0),
VTX(-476, 155, 1000, 1434, 0, 0xFF, 0xFF, 0xFF, 0xFF), VTX(-266, -87, 0, 1638, 1024, 0xFF, 0xFF, 0xFF, 0x00),
VTX(-333, -108, 300, 1638, 512, 0xFF, 0xFF, 0xFF, 0xA0), VTX(-476, -155, 1000, 1638, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(-165, -227, 0, 1843, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(-206, -283, 300, 1843, 512, 0xFF, 0xFF, 0xFF, 0xA0),
VTX(-294, -405, 1000, 1843, 0, 0xFF, 0xFF, 0xFF, 0xFF), VTX(0, -280, 0, 2048, 1024, 0xFF, 0xFF, 0xFF, 0x00),
VTX(0, -350, 300, 2048, 512, 0xFF, 0xFF, 0xFF, 0xA0), VTX(0, -500, 1000, 2048, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(165, -227, 0, 205, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(206, -283, 300, 205, 512, 0xFF, 0xFF, 0xFF, 0xA0),
VTX(0, -350, 300, 0, 512, 0xFF, 0xFF, 0xFF, 0xA0), VTX(0, -280, 0, 0, 1024, 0xFF, 0xFF, 0xFF, 0x00),
VTX(294, -405, 1000, 205, 0, 0xFF, 0xFF, 0xFF, 0xFF), VTX(0, -500, 1000, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(266, -87, 0, 410, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(333, -108, 300, 410, 512, 0xFF, 0xFF, 0xFF, 0xA0),
VTX(476, -155, 1000, 410, 0, 0xFF, 0xFF, 0xFF, 0xFF), VTX(266, 87, 0, 614, 1024, 0xFF, 0xFF, 0xFF, 0x00),
VTX(333, 108, 300, 614, 512, 0xFF, 0xFF, 0xFF, 0xA0), VTX(476, 155, 1000, 614, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(165, 227, 0, 819, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(206, 283, 300, 819, 512, 0xFF, 0xFF, 0xFF, 0xA0),
VTX(206, 283, 300, 819, 512, 0xFF, 0xFF, 0xFF, 0xA0), VTX(294, 405, 1000, 819, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(476, 155, 1000, 614, 0, 0xFF, 0xFF, 0xFF, 0xFF), VTX(333, 108, 300, 614, 512, 0xFF, 0xFF, 0xFF, 0xA0),
VTX(0, 280, 0, 1024, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(0, 350, 300, 1024, 512, 0xFF, 0xFF, 0xFF, 0xA0),
VTX(165, 227, 0, 819, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(0, 500, 1000, 1024, 0, 0xFF, 0xFF, 0xFF, 0xFF),
};
static Gfx textureDL[] = {
gsDPPipeSync(),
gsDPSetTextureLUT(G_TT_NONE),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
gsDPLoadTextureBlock(tex0, G_IM_FMT_I, G_IM_SIZ_8b, 32, 32, 0, G_TX_NOMIRROR | G_TX_NOMIRROR,
G_TX_NOMIRROR | G_TX_NOMIRROR, 5, 5, 1, 0),
gsDPTileSync(),
gsDPSetTile(G_IM_FMT_I, G_IM_SIZ_8b, 4, 0x0, 1, 0, G_TX_NOMIRROR | G_TX_NOMIRROR, 5, 15,
G_TX_NOMIRROR | G_TX_NOMIRROR, 5, 0),
gsDPSetTileSize(1, 0, 0, (31 << 2), (31 << 2)),
gsDPSetCombineLERP(TEXEL1, PRIMITIVE, ENV_ALPHA, TEXEL0, TEXEL1, TEXEL0, ENVIRONMENT, TEXEL0, PRIMITIVE,
ENVIRONMENT, COMBINED, ENVIRONMENT, COMBINED, 0, SHADE, 0),
gsDPSetRenderMode(AA_EN | IM_RD | CLR_ON_CVG | CVG_DST_WRAP | ZMODE_OPA | FORCE_BL |
GBL_c1(G_BL_CLR_IN, G_BL_0, G_BL_CLR_IN, G_BL_1),
G_RM_AA_XLU_SURF2),
gsSPClearGeometryMode(G_TEXTURE_ENABLE | G_CULL_BACK | G_FOG | G_LIGHTING | G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR),
gsSPEndDisplayList(),
};
static Gfx frustrumDl[] = {
gsSPVertex(vertices, 32, 0),
gsSP2Triangles(0, 1, 2, 0, 0, 2, 3, 0),
gsSP2Triangles(1, 4, 5, 0, 1, 5, 2, 0),
gsSP2Triangles(6, 7, 1, 0, 6, 1, 0, 0),
gsSP2Triangles(7, 8, 4, 0, 7, 4, 1, 0),
gsSP2Triangles(9, 10, 7, 0, 9, 7, 6, 0),
gsSP2Triangles(10, 11, 8, 0, 10, 8, 7, 0),
gsSP2Triangles(12, 13, 10, 0, 12, 10, 9, 0),
gsSP2Triangles(13, 14, 11, 0, 13, 11, 10, 0),
gsSP2Triangles(15, 16, 13, 0, 15, 13, 12, 0),
gsSP2Triangles(16, 17, 14, 0, 16, 14, 13, 0),
gsSP2Triangles(18, 19, 20, 0, 18, 20, 21, 0),
gsSP2Triangles(19, 22, 23, 0, 19, 23, 20, 0),
gsSP2Triangles(24, 25, 19, 0, 24, 19, 18, 0),
gsSP2Triangles(25, 26, 22, 0, 25, 22, 19, 0),
gsSP2Triangles(27, 28, 25, 0, 27, 25, 24, 0),
gsSP2Triangles(28, 29, 26, 0, 28, 26, 25, 0),
gsSP2Triangles(30, 31, 28, 0, 30, 28, 27, 0),
gsSPVertex(vertices + 32, 8, 0),
gsSP2Triangles(0, 1, 2, 0, 0, 2, 3, 0),
gsSP2Triangles(4, 5, 0, 0, 4, 0, 6, 0),
gsSP2Triangles(5, 7, 1, 0, 5, 1, 0, 0),
gsSPEndDisplayList(),
};

View file

@ -5,6 +5,7 @@
*/
#include "z_oceff_wipe2.h"
#include <vt.h>
#define FLAGS 0x02000010
@ -15,7 +16,6 @@ void OceffWipe2_Destroy(Actor* thisx, GlobalContext* globalCtx);
void OceffWipe2_Update(Actor* thisx, GlobalContext* globalCtx);
void OceffWipe2_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Oceff_Wipe2_InitVars = {
ACTOR_OCEFF_WIPE2,
ACTORTYPE_ITEMACTION,
@ -27,11 +27,88 @@ const ActorInit Oceff_Wipe2_InitVars = {
(ActorFunc)OceffWipe2_Update,
(ActorFunc)OceffWipe2_Draw,
};
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Oceff_Wipe2/OceffWipe2_Init.s")
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Oceff_Wipe2/OceffWipe2_Destroy.s")
#include "z_oceff_wipe2_gfx.c"
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Oceff_Wipe2/OceffWipe2_Update.s")
void OceffWipe2_Init(Actor* thisx, GlobalContext* globalCtx) {
OceffWipe2* this = THIS;
Actor_SetScale(&this->actor, 0.1f);
this->counter = 0;
this->actor.posRot.pos = ACTIVE_CAM->eye;
osSyncPrintf(VT_FGCOL(CYAN) " WIPE2 arg_data = %d\n" VT_RST, this->actor.params);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Oceff_Wipe2/OceffWipe2_Draw.s")
void OceffWipe2_Destroy(Actor* thisx, GlobalContext* globalCtx) {
OceffWipe2* this = THIS;
Player* player = PLAYER;
func_800876C8(globalCtx);
if (gSaveContext.nayrusLoveTimer) {
player->unk_692 |= 0x40;
}
}
void OceffWipe2_Update(Actor* thisx, GlobalContext* globalCtx) {
OceffWipe2* this = THIS;
this->actor.posRot.pos = ACTIVE_CAM->eye;
if (this->counter < 100) {
this->counter++;
} else {
Actor_Kill(&this->actor);
}
}
void OceffWipe2_Draw(Actor* thisx, GlobalContext* globalCtx) {
u32 scroll;
OceffWipe2* this;
f32 z;
GraphicsContext* gfxCtx;
u8 alpha;
u32 pad1;
Vec3f eye;
Vtx* vtxPtr;
Vec3f vec;
Gfx* dispRefs[5];
this = THIS;
scroll = globalCtx->state.frames & 0xFF;
eye = ACTIVE_CAM->eye;
func_8005AFB4(&vec, ACTIVE_CAM);
if (this->counter < 32) {
z = Math_Sins(this->counter << 9) * 1330;
} else {
z = 1330;
}
vtxPtr = vertices;
if (this->counter >= 80) {
alpha = 12 * (100 - this->counter);
} else {
alpha = 0xFF;
}
vtxPtr[1].v.cn[3] = vtxPtr[3].v.cn[3] = vtxPtr[5].v.cn[3] = vtxPtr[7].v.cn[3] = vtxPtr[9].v.cn[3] = vtxPtr[11].v.cn[3] =
vtxPtr[13].v.cn[3] = vtxPtr[15].v.cn[3] = vtxPtr[16].v.cn[3] = vtxPtr[18].v.cn[3] = vtxPtr[20].v.cn[3] = alpha;
gfxCtx = globalCtx->state.gfxCtx;
Graph_OpenDisps(dispRefs, globalCtx->state.gfxCtx, "../z_oceff_wipe2.c", 390);
func_80093D84(globalCtx->state.gfxCtx);
Matrix_Translate(eye.x + vec.x, eye.y + vec.y, eye.z + vec.z, MTXMODE_NEW);
Matrix_Scale(0.1f, 0.1f, 0.1f, MTXMODE_APPLY);
func_800D1FD4(&globalCtx->mf_11DA0);
Matrix_Translate(0.0f, 0.0f, -z, MTXMODE_APPLY);
gSPMatrix(gfxCtx->polyXlu.p++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_oceff_wipe2.c", 400),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gDPSetPrimColor(gfxCtx->polyXlu.p++, 0x00, 0x00, 0xFF, 0xFF, 0xAA, 0xFF);
gDPSetEnvColor(gfxCtx->polyXlu.p++, 0xFF, 0x64, 0x00, 0x80);
gSPDisplayList(gfxCtx->polyXlu.p++, textureDl);
gSPDisplayList(gfxCtx->polyXlu.p++, Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, scroll * 6, scroll * (-6), 64, 64,
1, scroll * (-6), 0, 64, 64));
gSPDisplayList(gfxCtx->polyXlu.p++, frustrumDl);
Graph_CloseDisps(dispRefs, globalCtx->state.gfxCtx, "../z_oceff_wipe2.c", 417);
}

View file

@ -8,8 +8,7 @@ struct OceffWipe2;
typedef struct OceffWipe2 {
/* 0x0000 */ Actor actor;
/* 0x014C */ s16 unk_14C;
/* 0x014E */ s16 unk_14E;
/* 0x014C */ s16 counter;
} OceffWipe2; // size = 0x0150
extern const ActorInit Oceff_Wipe2_InitVars;

View file

@ -0,0 +1,181 @@
#include "z_oceff_wipe2.h"
static u32 tex0[] = {
0x55211122, 0x22223333, 0x34444444, 0x44555566, 0x66666666, 0x66665555, 0x55554446, 0x99864323, 0x54211222,
0x22223333, 0x44444444, 0x45555566, 0x66666666, 0x66666666, 0x66555458, 0xa9742224, 0x63212222, 0x22233334,
0x44444445, 0x55555566, 0x66666666, 0x66666666, 0x66665569, 0xb9532225, 0x53222222, 0x22333344, 0x44445555,
0x55555566, 0x66666666, 0x66666777, 0x77766569, 0xb9432235, 0x52222222, 0x33333444, 0x44445555, 0x55555556,
0x66666666, 0x66666777, 0x77776668, 0xb9432236, 0x42222333, 0x33344444, 0x44455544, 0x44555556, 0x66666666,
0x66666777, 0x77776667, 0xa9432346, 0x42223334, 0x44444444, 0x55555444, 0x44455556, 0x66666666, 0x66666777,
0x77776666, 0x89532356, 0x32333444, 0x44555555, 0x55554444, 0x44445555, 0x66666666, 0x66666677, 0x77776655,
0x68532366, 0x43334445, 0x55555555, 0x55554444, 0x44444555, 0x66666666, 0x66666667, 0x77776655, 0x56633476,
0x64444555, 0x66666666, 0x65555444, 0x44444455, 0x56666666, 0x66666666, 0x66666655, 0x45533477, 0x88654556,
0x67777776, 0x66555444, 0x44444445, 0x56666666, 0x66666666, 0x66666554, 0x44333578, 0x99975566, 0x77788777,
0x76655444, 0x43334445, 0x55666666, 0x66666666, 0x66665554, 0x43323578, 0x99aa6667, 0x78888887, 0x77665544,
0x43333444, 0x55666666, 0x66666556, 0x66655554, 0x43323578, 0x89ab8667, 0x88888888, 0x87765544, 0x43333344,
0x45566676, 0x66666555, 0x55555544, 0x43322478, 0x89ab8667, 0x88899988, 0x88776554, 0x43333334, 0x45566677,
0x66666555, 0x55555444, 0x33322357, 0x78996667, 0x88999998, 0x88876654, 0x43333333, 0x44556667, 0x76666555,
0x55544444, 0x33222235, 0x46655567, 0x88899999, 0x88877655, 0x43333333, 0x44556667, 0x76666555, 0x55444443,
0x33222223, 0x23334567, 0x78899999, 0x98887665, 0x44333333, 0x44578767, 0x77666555, 0x54444443, 0x33222222,
0x22234456, 0x78889999, 0x99887765, 0x44333333, 0x457bc866, 0x77666655, 0x54444433, 0x33222222, 0x22233456,
0x77889999, 0x99888766, 0x54433334, 0x69bdda76, 0x77766655, 0x54444333, 0x33222222, 0x22223445, 0x67888999,
0x99988776, 0x54433458, 0xacdeeb77, 0x77776665, 0x54444333, 0x33222222, 0x22223345, 0x67788999, 0x99988876,
0x5544579b, 0xcdeefd87, 0x77777665, 0x55444333, 0x33222222, 0x22222344, 0x56778899, 0x99988876, 0x65689abc,
0xcddded97, 0x77777666, 0x55444433, 0x33322222, 0x22222334, 0x55678889, 0x99998877, 0x89abbccc, 0xcb99cd98,
0x77777766, 0x65544443, 0x33322222, 0x22222233, 0x45677888, 0x9999888a, 0xcdddcccb, 0x9777beb8, 0x88887776,
0x65554444, 0x33332222, 0x22222233, 0x44567788, 0x9999989d, 0xffeedb97, 0x6667aed9, 0x88888777, 0x66655544,
0x44333222, 0x22222223, 0x34566788, 0x8999989c, 0xfffda866, 0x66779eea, 0x88888877, 0x76665554, 0x44433332,
0x22222223, 0x34456778, 0x8999989b, 0xffd97666, 0x67789eea, 0x99988887, 0x77666555, 0x54444333, 0x32222222,
0x33455678, 0x8899999a, 0xed976667, 0x7788aeea, 0x99988887, 0x77766665, 0x55544433, 0x33322222, 0x33445677,
0x8889999a, 0xee977777, 0x78889dec, 0x99988888, 0x77776666, 0x65555444, 0x43332222, 0x33445567, 0x8889999a,
0xeea88788, 0x88889ced, 0xbaa98887, 0x77776666, 0x66655544, 0x44433333, 0x33345567, 0x7888999a, 0xeeb98888,
0x88899aef, 0xeeeca877, 0x77776666, 0x66665555, 0x54443333, 0x33344566, 0x78889999, 0xcec98888, 0x89999aef,
0xffffda87, 0x77666666, 0x66666655, 0x55544433, 0x33444566, 0x77889999, 0xbeea9999, 0x99999aef, 0xfffffd97,
0x66666666, 0x66666666, 0x65554444, 0x44444556, 0x77888999, 0xaeea9999, 0x999999bf, 0xfffffea6, 0x65555555,
0x66666666, 0x66555544, 0x44444556, 0x67888999, 0xaeea9999, 0x999999ad, 0xfffffe96, 0x55555555, 0x55556666,
0x66665555, 0x44445556, 0x67788899, 0xaeeb9999, 0x9999999a, 0xdeeeeb75, 0x44444444, 0x55555566, 0x66666655,
0x55555556, 0x67788889, 0xadecaaa9, 0x99999988, 0x99aa9654, 0x44444444, 0x44455555, 0x56666666, 0x55555556,
0x67778889, 0x9cffeeeb, 0xa9999888, 0x77766544, 0x43333333, 0x44444555, 0x55666666, 0x66555566, 0x66778888,
0x9aefffff, 0xda998888, 0x77655443, 0x33333333, 0x33344455, 0x55666666, 0x66665566, 0x66777888, 0x8aefffff,
0xfda88888, 0x76655443, 0x33222222, 0x33334444, 0x55566666, 0x66666666, 0x66677888, 0x89cfffff, 0xffb98887,
0x76654433, 0x32222222, 0x22333444, 0x55566666, 0x66666666, 0x66677788, 0x88aeffff, 0xffc98887, 0x76654433,
0x22222222, 0x22233344, 0x45566666, 0x66666556, 0x66667778, 0x889befff, 0xfda88877, 0x76654433, 0x22222222,
0x22223344, 0x45556666, 0x66665555, 0x56666777, 0x8889acee, 0xda888877, 0x76554433, 0x22222222, 0x22223334,
0x45555666, 0x66655555, 0x55566677, 0x78888999, 0x98888777, 0x66554432, 0x22221111, 0x22222334, 0x44555666,
0x65555555, 0x55556667, 0x77888888, 0x88887777, 0x66554332, 0x22211111, 0x12222333, 0x44555555, 0x55555444,
0x45555666, 0x77788888, 0x88887777, 0x66544332, 0x22211111, 0x11222333, 0x44555555, 0x55544444, 0x44455566,
0x67778888, 0x88887776, 0x65544332, 0x22211111, 0x11222233, 0x44455555, 0x55444444, 0x44444556, 0x66777888,
0x88887776, 0x65544322, 0x22211111, 0x11222233, 0x34455555, 0x54444333, 0x33444455, 0x66677788, 0x88887766,
0x55443322, 0x22111111, 0x11122223, 0x34455555, 0x44443333, 0x33344445, 0x56677778, 0x88877766, 0x55443322,
0x22111111, 0x11122223, 0x34445555, 0x44433333, 0x33334445, 0x55667777, 0x88777766, 0x54433222, 0x21111111,
0x11112222, 0x33444444, 0x44333332, 0x23333444, 0x55566777, 0x77777665, 0x54433222, 0x21111111, 0x11112222,
0x33344444, 0x43333222, 0x22333344, 0x45566677, 0x77777665, 0x54332222, 0x11111111, 0x11112222, 0x23444444,
0x33332222, 0x22233334, 0x44556667, 0x77776665, 0x44332221, 0x11111111, 0x11111222, 0x23564333, 0x33332222,
0x22233334, 0x44555666, 0x77776655, 0x44332221, 0x11111111, 0x11111222, 0x46763333, 0x33322222, 0x22233334,
0x44455666, 0x67766655, 0x44332222, 0x21111111, 0x11111122, 0x67743333, 0x33222222, 0x22233334, 0x44455566,
0x66666655, 0x44332222, 0x22211111, 0x11112235, 0x77632222, 0x22222222, 0x22333334, 0x44455566, 0x66666655,
0x44333222, 0x22222222, 0x11223466, 0x77532222, 0x22222222, 0x23333344, 0x44455566, 0x66666655, 0x54433332,
0x22222222, 0x22346677, 0x76422222, 0x22222223, 0x33333444, 0x44455566, 0x66666665, 0x55444333, 0x33322222,
0x24567777, 0x66322222, 0x22222233, 0x33334444, 0x44455556, 0x66666665, 0x55544444, 0x43333323, 0x46777766,
0x65211222, 0x22222333, 0x33444444, 0x44555556, 0x66666666, 0x55555544, 0x44443334, 0x78876544,
};
static u32 tex1[] = {
0x64446975, 0x568a8666, 0x66667777, 0x77777777, 0x76666666, 0x66666555, 0x55797444, 0x68644468, 0x44469755,
0x58a86667, 0x77777777, 0x77777777, 0x76666666, 0x66666555, 0x57975446, 0x86444686, 0x44697555, 0x8a877777,
0x77777777, 0x77777777, 0x76666666, 0x66666655, 0x79755568, 0x64446864, 0x46875558, 0xa8777777, 0x77777777,
0x77777777, 0x76666666, 0x66666668, 0xa7555797, 0x44468644, 0x6865557a, 0x86777777, 0x77777777, 0x77777777,
0x76666666, 0x6666668a, 0x85557975, 0x45686444, 0x864557a8, 0x66777777, 0x77777777, 0x77777777, 0x76666666,
0x666668a8, 0x66689755, 0x57974446, 0x64457976, 0x67777777, 0x77777777, 0x77777777, 0x76666666, 0x66668a86,
0x668a8655, 0x79755578, 0x44479756, 0x66777777, 0x77777777, 0x77777777, 0x66666666, 0x6668a866, 0x68a86668,
0xa8555797, 0x44797556, 0x66777777, 0x77777777, 0x77777777, 0x66666555, 0x568a8666, 0x8b97668a, 0x86657975,
0x46975556, 0x66677777, 0x77777777, 0x77777776, 0x66665555, 0x68a86669, 0xb97779b9, 0x76689754, 0x69655555,
0x66677777, 0x77777777, 0x77777776, 0x66655555, 0x7a86669b, 0x97779b97, 0x778a8555, 0x86444555, 0x66667777,
0x77667777, 0x77777766, 0x66555557, 0xa86669b9, 0x788aca87, 0x79b86557, 0x64444555, 0x66666666, 0x66667777,
0x77777766, 0x65555579, 0x86669b98, 0x88aca888, 0x9b966579, 0x44444555, 0x56666666, 0x66667777, 0x77777666,
0x55555797, 0x6669b988, 0x8aca888a, 0xc9766797, 0x44444555, 0x56666666, 0x66667777, 0x77777666, 0x55557975,
0x568b9888, 0xadb888ac, 0xa7768974, 0x44444555, 0x55666666, 0x66677777, 0x77776665, 0x55579755, 0x68b9788a,
0xdb888bca, 0x8778a754, 0x44444555, 0x55566666, 0x66677777, 0x77766665, 0x55797556, 0x8b9788ad, 0xb888bda8,
0x778a7544, 0x44444555, 0x55555666, 0x66677777, 0x77766655, 0x57975558, 0xa9778adb, 0x888bda88, 0x79a85544,
0x44444455, 0x55555666, 0x66677777, 0x77766655, 0x7975557a, 0x8778ada8, 0x88bdb888, 0x9b855444, 0x44444455,
0x55555666, 0x66777777, 0x77766667, 0x975557a8, 0x778acb88, 0x8bda8889, 0xb8655444, 0x44444455, 0x55555666,
0x66777777, 0x77766689, 0x75557a86, 0x77aca888, 0xbdb888ab, 0x96555444, 0x44444555, 0x55555666, 0x67777777,
0x777768a8, 0x55579866, 0x79ca888b, 0xdb888ab9, 0x65554444, 0x44444555, 0x55556666, 0x67777777, 0x77779a86,
0x55797667, 0x9ca888bd, 0xb888ab96, 0x65544444, 0x44445555, 0x55566667, 0x77778888, 0x8779b966, 0x68a86669,
0xba888bdb, 0x888ac976, 0x55544444, 0x44445555, 0x55666667, 0x77788888, 0x88ab9766, 0x8a86668b, 0x9888bdb8,
0x88ac9766, 0x55444444, 0x44555555, 0x66666677, 0x77888888, 0x8aca7779, 0xa86668b9, 0x888bdb88, 0x8ac97665,
0x55444444, 0x44555556, 0x66666777, 0x78888888, 0xaca8879b, 0x96668b97, 0x88adb888, 0xaca77665, 0x54444444,
0x55555666, 0x66677777, 0x8888888b, 0xda888ac9, 0x7779b978, 0x8adb888a, 0xca776655, 0x54444444, 0x55566666,
0x67777777, 0x888888bd, 0xb888aca7, 0x779b9788, 0xada888ac, 0xa7766555, 0x54444455, 0x55666667, 0x77777778,
0x88888bdb, 0x888aca88, 0x8aca888a, 0xcb888aca, 0x87766555, 0x44444555, 0x66666777, 0x77777778, 0x8888adb8,
0x88bda888, 0xaca888ad, 0xa888bda8, 0x77666555, 0x54455555, 0x66667777, 0x77777777, 0x788aca88, 0x8bdb888a,
0xca888adb, 0x888bda87, 0x77665555, 0x55555566, 0x66677777, 0x77777777, 0x78aca888, 0xbdb888bd, 0xa888adb8,
0x88bda887, 0x77665555, 0x55555666, 0x77777777, 0x77777777, 0x79ba888a, 0xdb888bdb, 0x888bdb88, 0x8bda8887,
0x76665555, 0x55556666, 0x77777776, 0x66666667, 0x9b9778ac, 0xa888bdb8, 0x88bdb888, 0xbdb88887, 0x76665555,
0x55666666, 0x77766666, 0x66666668, 0xa9777aca, 0x888bdb88, 0x8bdb888b, 0xdb888877, 0x76666555, 0x66666677,
0x76666666, 0x6666668a, 0x86679ba8, 0x88bdb888, 0xbdb888bd, 0xb8888877, 0x76666666, 0x66667777, 0x66666665,
0x555557a8, 0x6669b978, 0x8adb888b, 0xdb888bdb, 0x88888777, 0x76666666, 0x66677777, 0x66666555, 0x55557975,
0x568a9778, 0xaca888bd, 0xb888bdb8, 0x88888777, 0x76666666, 0x67777776, 0x66655555, 0x55579755, 0x58a8677a,
0xca888ada, 0x888bdb88, 0x88888777, 0x76666667, 0x77777766, 0x66555555, 0x55797555, 0x7986679c, 0xa888aca8,
0x88ada888, 0x88887777, 0x76666777, 0x77777766, 0x65555544, 0x46864457, 0x976669b9, 0x888aca88, 0x8aca8888,
0x88877777, 0x76667777, 0x77777666, 0x55555444, 0x68644479, 0x75568b97, 0x78aca888, 0xaca88888, 0x88877777,
0x76667777, 0x77777666, 0x55554446, 0x86444687, 0x5558a977, 0x8aca888a, 0xca888888, 0x88777777, 0x66667777,
0x77776666, 0x55554468, 0x64446865, 0x557a8777, 0xaca888ac, 0xa8888888, 0x87777766, 0x66666777, 0x77776666,
0x55544686, 0x44468644, 0x57986679, 0xba888aca, 0x88888888, 0x77777666, 0x66666677, 0x77766666, 0x55546864,
0x44686444, 0x7976669b, 0x9888aca8, 0x88888887, 0x77776666, 0x66666667, 0x77766666, 0x55568644, 0x46864446,
0x975568b9, 0x778aca88, 0x88888877, 0x77666666, 0x66666666, 0x66666666, 0x55786444, 0x68644468, 0x75558a97,
0x77aca888, 0x88888777, 0x76666666, 0x66666666, 0x66666665, 0x57964446, 0x86444686, 0x4557a867, 0x79ca8888,
0x88887777, 0x66666555, 0x55556666, 0x66666665, 0x79744468, 0x64446864, 0x45798667, 0x9b988888, 0x88877776,
0x66665555, 0x55555666, 0x66666655, 0x97444686, 0x44468644, 0x47975668, 0xb9778888, 0x88877776, 0x66655555,
0x55555566, 0x66666657, 0x74446864, 0x44686444, 0x6975568a, 0x97778888, 0x88777766, 0x66555555, 0x55555556,
0x66666679, 0x44468644, 0x46864446, 0x864557a8, 0x67777888, 0x77777666, 0x65555555, 0x45555555, 0x66666797,
0x44686444, 0x68644468, 0x64457986, 0x67777777, 0x77776666, 0x55555544, 0x44555555, 0x56668975, 0x46864446,
0x86444686, 0x44479756, 0x66777777, 0x77766666, 0x55555544, 0x44455555, 0x55579754, 0x68644468, 0x64446864,
0x44697556, 0x66777777, 0x77766665, 0x55555544, 0x44445555, 0x55797544, 0x86444686, 0x44468644, 0x46875556,
0x66777777, 0x77666665, 0x55555544, 0x44444555, 0x57975446, 0x64446864, 0x44686444, 0x68655556, 0x66777777,
0x77666665, 0x55555544, 0x44444555, 0x79754468, 0x44468644, 0x46864446, 0x87555556, 0x66777777, 0x76666665,
0x55555554, 0x44444457, 0x97544686, 0x44686444, 0x68644469, 0x75555566, 0x66777777, 0x76666665, 0x55555554,
0x44444479, 0x74446864, 0x46864446, 0x86445797, 0x55555666, 0x67777777, 0x76666665, 0x55555555, 0x55444686,
0x44468644, 0x68644469, 0x75557975, 0x55666666, 0x67777777, 0x76666666, 0x65555555, 0x55557864, 0x44686444,
0x86444687, 0x55579866, 0x66666666, 0x77777777, 0x76666666, 0x66555555, 0x55579644, 0x46864446,
};
static Vtx vertices[] = {
VTX(88, 121, 0, 1638, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(243, 176, 1000, 1434, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(143, 46, 0, 1229, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(300, 0, 1000, 1024, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(0, 150, 0, 2048, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(93, 285, 1000, 1843, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(-88, 121, 0, 2458, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(-93, 285, 1000, 2253, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(-143, 46, 0, 2867, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(-243, 176, 1000, 2662, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(-143, -46, 0, 3277, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(-300, 0, 1000, 3072, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(-88, -121, 0, 3686, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(-243, -176, 1000, 3482, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(0, -150, 0, 4096, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(-93, -285, 1000, 3891, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(93, -285, 1000, 4301, 0, 0xFF, 0xFF, 0xFF, 0xFF), VTX(143, -46, 0, 819, 2048, 0xFF, 0xFF, 0xFF, 0x00),
VTX(243, -176, 1000, 614, 0, 0xFF, 0xFF, 0xFF, 0xFF), VTX(88, -121, 0, 410, 2048, 0xFF, 0xFF, 0xFF, 0x00),
VTX(93, -285, 1000, 205, 0, 0xFF, 0xFF, 0xFF, 0xFF), VTX(0, -150, 0, 0, 2048, 0xFF, 0xFF, 0xFF, 0x00),
};
static Gfx textureDl[] = {
gsDPPipeSync(),
gsDPSetTextureLUT(G_TT_NONE),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
gsDPSetTextureImage(G_IM_FMT_I, G_IM_SIZ_16b, 1, tex0),
gsDPSetTile(G_IM_FMT_I, G_IM_SIZ_16b, 0, 0x0, G_TX_LOADTILE, 0, G_TX_NOMIRROR | G_TX_NOMIRROR, 6, 14,
G_TX_NOMIRROR | G_TX_NOMIRROR, 6, 14),
gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 1023, 512),
gsDPPipeSync(),
gsDPSetTile(G_IM_FMT_I, G_IM_SIZ_4b, 4, 0x0, G_TX_RENDERTILE, 0, G_TX_NOMIRROR | G_TX_NOMIRROR, 6, 14,
G_TX_NOMIRROR | G_TX_NOMIRROR, 6, 14),
gsDPSetTileSize(G_TX_RENDERTILE, 0, 0, (63 << 2), (63 << 2)),
gsDPSetTextureImage(G_IM_FMT_I, G_IM_SIZ_16b, 1, tex1),
gsDPSetTile(G_IM_FMT_I, G_IM_SIZ_16b, 0, 0x100, G_TX_LOADTILE, 0, G_TX_NOMIRROR | G_TX_NOMIRROR, 6, 14,
G_TX_NOMIRROR | G_TX_NOMIRROR, 6, 1),
gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 1023, 512),
gsDPPipeSync(),
gsDPSetTile(G_IM_FMT_I, G_IM_SIZ_4b, 4, 0x100, 1, 0, G_TX_NOMIRROR | G_TX_NOMIRROR, 6, 14,
G_TX_NOMIRROR | G_TX_NOMIRROR, 6, 1),
gsDPSetTileSize(1, 0, 0, (63 << 2), (63 << 2)),
gsDPSetCombineLERP(TEXEL1, PRIMITIVE, ENV_ALPHA, TEXEL0, TEXEL1, 0, ENVIRONMENT, TEXEL0, PRIMITIVE, ENVIRONMENT,
COMBINED, ENVIRONMENT, COMBINED, 0, SHADE, 0),
gsDPSetRenderMode(AA_EN | IM_RD | CLR_ON_CVG | CVG_DST_WRAP | ZMODE_OPA | FORCE_BL |
GBL_c1(G_BL_CLR_IN, G_BL_0, G_BL_CLR_IN, G_BL_1),
G_RM_AA_XLU_SURF2),
gsSPClearGeometryMode(G_TEXTURE_ENABLE | G_CULL_BACK | G_FOG | G_LIGHTING | G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR),
gsSPEndDisplayList(),
};
static Gfx frustrumDl[] = {
gsSPVertex(&vertices, 22, 0),
gsSP2Triangles(0, 1, 2, 0, 1, 3, 2, 0),
gsSP2Triangles(4, 5, 0, 0, 5, 1, 0, 0),
gsSP2Triangles(6, 7, 4, 0, 7, 5, 4, 0),
gsSP2Triangles(8, 9, 6, 0, 9, 7, 6, 0),
gsSP2Triangles(10, 11, 8, 0, 11, 9, 8, 0),
gsSP2Triangles(12, 13, 10, 0, 13, 11, 10, 0),
gsSP2Triangles(14, 15, 12, 0, 15, 13, 12, 0),
gsSP2Triangles(16, 15, 14, 0, 17, 18, 19, 0),
gsSP2Triangles(18, 20, 19, 0, 2, 3, 17, 0),
gsSP2Triangles(3, 18, 17, 0, 19, 20, 21, 0),
gsSPEndDisplayList(),
};

View file

@ -5,6 +5,7 @@
*/
#include "z_oceff_wipe3.h"
#include <vt.h>
#define FLAGS 0x02000010
@ -15,7 +16,6 @@ void OceffWipe3_Destroy(Actor* thisx, GlobalContext* globalCtx);
void OceffWipe3_Update(Actor* thisx, GlobalContext* globalCtx);
void OceffWipe3_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Oceff_Wipe3_InitVars = {
ACTOR_OCEFF_WIPE3,
ACTORTYPE_ITEMACTION,
@ -27,11 +27,90 @@ const ActorInit Oceff_Wipe3_InitVars = {
(ActorFunc)OceffWipe3_Update,
(ActorFunc)OceffWipe3_Draw,
};
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Oceff_Wipe3/OceffWipe3_Init.s")
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Oceff_Wipe3/OceffWipe3_Destroy.s")
#include "z_oceff_wipe3_gfx.c"
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Oceff_Wipe3/OceffWipe3_Update.s")
void OceffWipe3_Init(Actor* thisx, GlobalContext* globalCtx) {
OceffWipe3* this = THIS;
Actor_SetScale(&this->actor, 0.1f);
this->counter = 0;
this->actor.posRot.pos = ACTIVE_CAM->eye;
// it's actually WIPE3...
osSyncPrintf(VT_FGCOL(CYAN) " WIPE2 arg_data = %d\n" VT_RST, this->actor.params);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Oceff_Wipe3/OceffWipe3_Draw.s")
void OceffWipe3_Destroy(Actor* thisx, GlobalContext* globalCtx) {
OceffWipe3* this = THIS;
Player* player = PLAYER;
func_800876C8(globalCtx);
if (gSaveContext.nayrusLoveTimer) {
player->unk_692 |= 0x40;
}
}
void OceffWipe3_Update(Actor* thisx, GlobalContext* globalCtx) {
OceffWipe3* this = THIS;
this->actor.posRot.pos = ACTIVE_CAM->eye;
if (this->counter < 100) {
this->counter++;
} else {
Actor_Kill(&this->actor);
}
}
void OceffWipe3_Draw(Actor* thisx, GlobalContext* globalCtx) {
u32 scroll;
OceffWipe3* this;
f32 z;
GraphicsContext* gfxCtx;
u8 alpha;
u32 pad1;
Vec3f eye;
Vtx* vtxPtr;
Vec3f vec;
Gfx* dispRefs[5];
this = THIS;
scroll = globalCtx->state.frames & 0xFFF;
eye = ACTIVE_CAM->eye;
func_8005AFB4(&vec, ACTIVE_CAM);
if (this->counter < 32) {
z = Math_Sins(this->counter << 9) * 1330;
} else {
z = 1330;
}
vtxPtr = vertices;
if (this->counter >= 80) {
alpha = 12 * (100 - this->counter);
} else {
alpha = 0xFF;
}
vtxPtr[1].v.cn[3] = vtxPtr[3].v.cn[3] = vtxPtr[5].v.cn[3] = vtxPtr[7].v.cn[3] = vtxPtr[9].v.cn[3] = vtxPtr[11].v.cn[3] =
vtxPtr[13].v.cn[3] = vtxPtr[15].v.cn[3] = vtxPtr[17].v.cn[3] = vtxPtr[19].v.cn[3] = vtxPtr[21].v.cn[3] = alpha;
gfxCtx = globalCtx->state.gfxCtx;
Graph_OpenDisps(dispRefs, globalCtx->state.gfxCtx, "../z_oceff_wipe3.c", 343);
func_80093D84(globalCtx->state.gfxCtx);
Matrix_Translate(eye.x + vec.x, eye.y + vec.y, eye.z + vec.z, MTXMODE_NEW);
Matrix_Scale(0.1f, 0.1f, 0.1f, MTXMODE_APPLY);
func_800D1FD4(&globalCtx->mf_11DA0);
Matrix_Translate(0.0f, 0.0f, -z, MTXMODE_APPLY);
gSPMatrix(gfxCtx->polyXlu.p++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_oceff_wipe3.c", 353),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gDPSetPrimColor(gfxCtx->polyXlu.p++, 0x00, 0x00, 0xFF, 0xFF, 0xAA, 0xFF);
gDPSetEnvColor(gfxCtx->polyXlu.p++, 0x64, 0xC8, 0x00, 0x80);
gSPDisplayList(gfxCtx->polyXlu.p++, textureDl);
gSPDisplayList(gfxCtx->polyXlu.p++, Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, scroll * 12, scroll * (-12), 64,
64, 1, scroll * 8, scroll * (-8), 64, 64));
gSPDisplayList(gfxCtx->polyXlu.p++, frustrumDl);
Graph_CloseDisps(dispRefs, globalCtx->state.gfxCtx, "../z_oceff_wipe3.c", 370);
}

View file

@ -8,8 +8,7 @@ struct OceffWipe3;
typedef struct OceffWipe3 {
/* 0x0000 */ Actor actor;
/* 0x014C */ s16 unk_14C;
/* 0x014E */ s16 unk_14E;
/* 0x014C */ s16 counter;
} OceffWipe3; // size = 0x0150
extern const ActorInit Oceff_Wipe3_InitVars;

View file

@ -0,0 +1,166 @@
#include "z_oceff_wipe3.h"
static u32 tex0[] = {
0x91A69C82, 0x9CAC7448, 0x4246484B, 0x4D505153, 0x53545454, 0x54545556, 0x57585859, 0x59595857, 0x56545350,
0x4F4E4C4C, 0x4C4B4A49, 0x49474544, 0x42403E3C, 0x3D549BB3, 0xB4B4B3B3, 0xB2AD966F, 0xAEB3B2A8, 0x98B19B62,
0x4F4B4C4F, 0x51535556, 0x56565656, 0x56565656, 0x57585859, 0x59595857, 0x56545350, 0x4F4E4D4C, 0x4C4B4B4A,
0x4A484644, 0x43403F3C, 0x3B416EA7, 0xB4B4B3AD, 0xA5937E98, 0xB5B5B6B8, 0xB5B9B3A5, 0x895D5154, 0x56585A5B,
0x5B5A5A59, 0x58585757, 0x57585859, 0x58585857, 0x56545351, 0x504E4E4C, 0x4C4C4C4B, 0x4B494846, 0x4442403E,
0x3C3B4985, 0xADB5B097, 0x818EA5B0, 0xB6B6B8B9, 0xB2A18A94, 0xA1735859, 0x5B5D5F5F, 0x5F5E5D5B, 0x5A595857,
0x57575858, 0x58585857, 0x56545250, 0x504E4E4D, 0x4D4D4D4C, 0x4C4B4A48, 0x46444240, 0x3E3C3E55, 0x90B0B4AB,
0xAAAEB3B4, 0xB7B6B2A7, 0x825C5057, 0x686B5B5B, 0x5D606161, 0x605F5E5C, 0x5A595756, 0x56575758, 0x58585857,
0x56545250, 0x4F4E4D4D, 0x4D4D4D4D, 0x4C4B4A49, 0x48464442, 0x413F3E40, 0x5890ADB4, 0xB6B6B6B6, 0xACA38862,
0x4B44464B, 0x5158595C, 0x5F616262, 0x615F5E5C, 0x5A585656, 0x56565758, 0x58585857, 0x5653514F, 0x4E4C4C4C,
0x4C4C4C4D, 0x4C4C4C4A, 0x4A494846, 0x45444241, 0x43527C9F, 0xACAFAEAE, 0x6A53463F, 0x3F42464C, 0x4F55585C,
0x5E616161, 0x605F5D5B, 0x59575656, 0x56565758, 0x58595857, 0x5552504E, 0x4C4B4A4B, 0x4A4B4C4C, 0x4C4D4C4C,
0x4C4B4A49, 0x49484645, 0x44434A58, 0x6E797977, 0x3F3A393B, 0x3E42454B, 0x4F54585C, 0x5E606060, 0x5F5D5C59,
0x57565556, 0x56575859, 0x59595856, 0x54514F4C, 0x4B494848, 0x494A4B4C, 0x4C4E4E4E, 0x4F4F4F4F, 0x4F4E4D4B,
0x49474444, 0x46454342, 0x3838393B, 0x3D41444A, 0x4E53565A, 0x5C5E5E5E, 0x5D5C5A58, 0x56555556, 0x5658595A,
0x5A595855, 0x53504E4B, 0x49484747, 0x48494A4C, 0x4D4E5051, 0x52535354, 0x54535250, 0x4E4B4845, 0x423E3C3A,
0x3838393A, 0x3C404449, 0x4D525558, 0x5A5C5C5C, 0x5B595856, 0x56555556, 0x57595A5A, 0x5A595754, 0x514E4B48,
0x47454545, 0x46484A4C, 0x4E515355, 0x56585A5B, 0x5B5A5956, 0x54504D48, 0x45403D3B, 0x3838383A, 0x3B3F4348,
0x4C505457, 0x58595A5A, 0x58585656, 0x55565657, 0x585A5B5B, 0x5A585652, 0x4F4C4946, 0x45444444, 0x46484A4D,
0x4F535658, 0x5A5D5E5F, 0x605F5E5B, 0x5854504A, 0x46413E3B, 0x38383839, 0x3A3E4246, 0x4A4F5254, 0x56565656,
0x56555555, 0x55565758, 0x5A5B5C5B, 0x5A575450, 0x4D484644, 0x42424244, 0x46484B4F, 0x52575A5E, 0x60626465,
0x66656460, 0x5D58534D, 0x48423E3B, 0x38373738, 0x3A3E4146, 0x494E5053, 0x54545454, 0x54545454, 0x5557585A,
0x5B5C5C5B, 0x5955524E, 0x4B464442, 0x41414244, 0x46494D52, 0x555A5E62, 0x64676869, 0x69686763, 0x605A544E,
0x49423E3B, 0x37363638, 0x3A3D4045, 0x484B4E50, 0x50515252, 0x52535354, 0x56585A5B, 0x5C5C5C5A, 0x57534F4A,
0x48444240, 0x40404144, 0x474C4F55, 0x595F6266, 0x686B6C6C, 0x6C6B6A66, 0x625B564E, 0x49423D3A, 0x36363637,
0x3A3D4044, 0x464A4C4E, 0x4E4F5050, 0x51525355, 0x56585A5C, 0x5D5C5B58, 0x56514D48, 0x4642403F, 0x3F404145,
0x484D5258, 0x5C626669, 0x6B6C6D6D, 0x6D6C6A66, 0x625B564E, 0x48413C39, 0x35353537, 0x393C3F42, 0x4548494B,
0x4C4D4E4F, 0x50525356, 0x575A5B5D, 0x5D5C5A56, 0x534E4B46, 0x43403F3E, 0x3E404246, 0x4A50555C, 0x6066696C,
0x6D6E6E6E, 0x6E6D6B66, 0x615A544C, 0x463F3B38, 0x35353537, 0x393C3E42, 0x44464849, 0x4A4B4C4E, 0x4F525356,
0x585B5C5D, 0x5C5B5955, 0x524D4944, 0x42403E3E, 0x3E404348, 0x4C53585E, 0x63686B6D, 0x6E6E6E6E, 0x6E6D6B66,
0x6059524A, 0x443E3A37, 0x34353537, 0x393B3D40, 0x42444547, 0x484A4B4D, 0x4F525457, 0x595C5D5D, 0x5C5A5853,
0x504B4844, 0x413F3E3E, 0x3F42454A, 0x4F565C62, 0x666A6C6E, 0x6E6E6E6E, 0x6E6C6963, 0x5E564F47, 0x423C3836,
0x34343537, 0x383B3D40, 0x41434446, 0x47494A4D, 0x4F525458, 0x5A5C5D5D, 0x5C5A5753, 0x504B4743, 0x413E3E3E,
0x3F43464C, 0x51585E64, 0x686C6D6E, 0x6E6E6E6E, 0x6D6B6761, 0x5B534D45, 0x403B3836, 0x34343537, 0x383B3C3F,
0x40424345, 0x46494A4E, 0x50545659, 0x5B5D5E5D, 0x5C5A5753, 0x504B494C, 0x514C4440, 0x4044484E, 0x545C6167,
0x6A6D6E6E, 0x6E6E6E6D, 0x6C68645D, 0x574F4942, 0x3D393635, 0x34343536, 0x383A3C3F, 0x40424245, 0x46494B4E,
0x5154575A, 0x5C5E5E5E, 0x5D5A5854, 0x504D537B, 0xA0936C4F, 0x45464A50, 0x565D6268, 0x6C6E6E6E, 0x6E6E6E6C,
0x6A66615A, 0x544C4640, 0x3C383634, 0x34343537, 0x393B3D3F, 0x40424346, 0x474A4D50, 0x53575A5D, 0x5E60605F,
0x5E5C5A56, 0x535775B1, 0xBDBBAF8C, 0x5F4D4D52, 0x5860656A, 0x6C6E6E6E, 0x6E6E6D6B, 0x68625D55, 0x4F47423C,
0x39363534, 0x34353638, 0x3A3C3E40, 0x41434447, 0x494C4E52, 0x54585B5E, 0x60626261, 0x605E5C58, 0x5B79B1C2,
0xACB6C0BB, 0xA3705454, 0x5A61666B, 0x6D6E6E6E, 0x6E6D6C69, 0x655E5952, 0x4C45403B, 0x38353434, 0x3536373A,
0x3B3E3F42, 0x43454749, 0x4B4F5155, 0x585C5E61, 0x63646464, 0x6361605E, 0x75B3CDCA, 0xB69FBFC6, 0xC1AD6E5A,
0x5C63686C, 0x6D6E6E6E, 0x6E6C6A65, 0x605A544C, 0x47403C38, 0x36343434, 0x3637393B, 0x3D3F4144, 0x4547494C,
0x4E515358, 0x5A5E6063, 0x65666666, 0x66646370, 0xAAD0D4D0, 0xC195BFC6, 0xB7C4A469, 0x5F64686C, 0x6D6E6E6E,
0x6D6B6862, 0x5D565049, 0x443E3A37, 0x35343434, 0x38393B3E, 0x40424547, 0x494B4D50, 0x5255575B, 0x5D616366,
0x686A6A6A, 0x69686E9A, 0xD0DAD4D3, 0xC8A1C1C0, 0x9FC8C686, 0x66676A6D, 0x6D6E6E6D, 0x6C68645E, 0x58514C45,
0x403B3936, 0x35353536, 0x3A3B3E40, 0x4346484A, 0x4C4E5052, 0x54585A5D, 0x60636668, 0x6A6C6C6C, 0x6B6C83CA,
0xE1DAC3CA, 0xCBB0B1AA, 0xADD0D3A9, 0x6F686B6E, 0x6E6E6E6C, 0x6A66625B, 0x554E4942, 0x3E3A3836, 0x36363637,
0x3E3F4245, 0x474A4C4F, 0x50525456, 0x585C5D60, 0x6266686A, 0x6C6D6E6E, 0x6D75ABDF, 0xE7E0C7AC, 0xBDB59F9B,
0xC9DADAC3, 0x766A6C6E, 0x6E6E6D6B, 0x68625D56, 0x514A453F, 0x3C383736, 0x3637393A, 0x41424549, 0x4B4E4F52,
0x53555659, 0x5B5E5F62, 0x6466696B, 0x6C6E6E6E, 0x6F80CCE8, 0xE9E6DECB, 0xADA086B8, 0xD9DAD4CF, 0x7C6C6D6E,
0x6E6E6C69, 0x66605A53, 0x4E47433E, 0x3B383837, 0x38393B3D, 0x46484A4E, 0x50525356, 0x5658595C, 0x5D5F6163,
0x6567696B, 0x6C6E6E6E, 0x7397DEEC, 0xE9E8E7E1, 0xD7C5A5D3, 0xDDC6C8D3, 0x846E6E6E, 0x6E6D6B66, 0x625C5650,
0x4B45413D, 0x3B393939, 0x3A3D3F41, 0x4A4C4E51, 0x53555658, 0x585A5B5C, 0x5D5F6162, 0x6466686A, 0x6C6D6E6E,
0x76ABE4E9, 0xD7E2E8E7, 0xE6D9B6DB, 0xD5B2DADA, 0x896F6E6E, 0x6E6C6964, 0x605A544E, 0x4944403D, 0x3B3A3A3B,
0x3D404345, 0x4E505255, 0x56585859, 0x5A5A5B5C, 0x5C5E5F60, 0x62646568, 0x696B6C6E, 0x77AEE5E5, 0xBDC4DEE8,
0xEAE0BBD3, 0xBDCAE7DA, 0x826E6E6E, 0x6D6A6762, 0x5E57524C, 0x4743403E, 0x3D3C3D3F, 0x4245484A, 0x52535557,
0x58585859, 0x59595A5A, 0x5A5C5C5E, 0x5F616265, 0x676A6B6D, 0x77ADE5EC, 0xDFC3BED8, 0xE1DCB3BB, 0xC2E3EACD,
0x7E6E6E6E, 0x6C696660, 0x5C55514B, 0x4743413F, 0x3E3F4043, 0x45494C4E, 0x55565758, 0x58575757, 0x57575757,
0x57585859, 0x5A5C5E61, 0x6367696C, 0x74A5E3EE, 0xEDE5D6BE, 0xBDC09EB6, 0xE0EDE6B2, 0x786E6E6D, 0x6C68645E,
0x5A54504A, 0x47444241, 0x42434548, 0x4A4E5152, 0x57575757, 0x56565655, 0x54545454, 0x54545456, 0x56595B5E,
0x6064676A, 0x6F8EDBED, 0xEEEEEBE5, 0xE0CAB4DC, 0xEDEDDA8F, 0x716E6E6C, 0x6A66625D, 0x59534F4B, 0x48454444,
0x4446484C, 0x4E515355, 0x57565655, 0x53525250, 0x504F4F4E, 0x4E4E4F50, 0x5154565A, 0x5C616469, 0x6B7CC0E7,
0xEEEEEEEE, 0xEAD2C7E7, 0xEEE6B77A, 0x6E6E6D6B, 0x6964615B, 0x58524F4C, 0x4A484748, 0x494B4D50, 0x53545656,
0x55555452, 0x504F4E4D, 0x4C4C4B4A, 0x4A4A4B4C, 0x4E505256, 0x5A5F6367, 0x6A708FD0, 0xEAEEEEEE, 0xE8CCD3E9,
0xEBD18A70, 0x6E6E6D6A, 0x6763605B, 0x5753504D, 0x4C4A4A4B, 0x4C4F5154, 0x55565757, 0x5352504E, 0x4C4A4948,
0x47464544, 0x44454647, 0x494C4E53, 0x565C6066, 0x696C7396, 0xD1EAEEEE, 0xE6C3E2EC, 0xDAA0766E, 0x6E6D6B68,
0x66625E5A, 0x5653504F, 0x4E4E4E50, 0x51545557, 0x58585756, 0x51504E4B, 0x49474644, 0x44434241, 0x41424244,
0x46494C51, 0x555B5F64, 0x676B6C75, 0x96D0E7ED, 0xE7CAE4DA, 0xA57A6F6E, 0x6D6C6A67, 0x64605E59, 0x56545250,
0x50505153, 0x54565758, 0x58575655, 0x4E4C4A47, 0x4542413F, 0x3F3E3E3D, 0x3D3E3E40, 0x43464A4F, 0x53595D62,
0x66696B6D, 0x738EBFDD, 0xE8E4D5A3, 0x7A6E6D6D, 0x6C6A6865, 0x625E5C58, 0x56545352, 0x52545456, 0x58595A59,
0x58565452, 0x4C4A4844, 0x42403E3C, 0x3C3B3B3A, 0x3A3B3C3E, 0x4144484E, 0x52585C61, 0x64686A6C, 0x6C6F7C9F,
0xD4DEA579, 0x6D6C6D6C, 0x6B696764, 0x615E5B58, 0x56545454, 0x54565758, 0x595A5A59, 0x58555250, 0x4A484441,
0x3F3C3B39, 0x39383838, 0x38393A3C, 0x3F43464C, 0x50565A60, 0x6366686A, 0x6A6A6B77, 0xA9D0876D, 0x6C6C6B6A,
0x69666562, 0x5F5C5A57, 0x56545454, 0x5657585A, 0x5A5A5A58, 0x5754514E, 0x4846433F, 0x3D3A3A38, 0x37363636,
0x3637393B, 0x3E42464C, 0x50565A5F, 0x62666768, 0x6868686E, 0x94C7856C, 0x6A6B6A69, 0x68656360, 0x5E5B5857,
0x55545455, 0x5658595A, 0x5A5A5A58, 0x56524F4C, 0x4744413D, 0x3A383736, 0x35343434, 0x3536373A, 0x3D42454B,
0x4F55595E, 0x61646566, 0x6767686D, 0x8BA87A6A, 0x6A696866, 0x6563605D, 0x5B585655, 0x54545454, 0x56585959,
0x5A595856, 0x54514E4B, 0x4643403C, 0x39373635, 0x34343434, 0x3435373A, 0x3C41444A, 0x4E54585D, 0x60636466,
0x66676769, 0x6E736C69, 0x69686865, 0x64605E5B, 0x59565553, 0x53535354, 0x55565858, 0x59585756, 0x54504D4A,
0x44423E3A, 0x38353434, 0x33333333, 0x34343639, 0x3B404449, 0x4E54585C, 0x5F626365, 0x66676768, 0x68696968,
0x68676563, 0x605D5B58, 0x56535251, 0x50505152, 0x53555657, 0x57565654, 0x524F4C49, 0x44413E39, 0x37353433,
0x33333333, 0x33343638, 0x3B3F4349, 0x4D53565B, 0x5E616265, 0x65676768, 0x69696968, 0x67656460, 0x5E5B5855,
0x5351504F, 0x4E4E4F50, 0x52535455, 0x56555553, 0x524E4C49, 0x42403C38, 0x36343333, 0x33333333, 0x33343537,
0x3A3E4247, 0x4C51555A, 0x5C606264, 0x65676768, 0x69696867, 0x6663615D, 0x5B575451, 0x504E4C4C, 0x4B4B4C4D,
0x4E505253, 0x53545452, 0x514E4B48, 0x413F3B37, 0x36343333, 0x33333333, 0x33343537, 0x393D4046, 0x4A505458,
0x5B5F6164, 0x65676868, 0x69686866, 0x64615F5B, 0x5854524F, 0x4D4B4A49, 0x4848494A, 0x4C4E4F51, 0x52535352,
0x504D4A47, 0x403D3A36, 0x35343333, 0x33333333, 0x33343436, 0x383C3F44, 0x484D5156, 0x5A5E6063, 0x65676868,
0x68686664, 0x625E5C58, 0x54504E4B, 0x4A474645, 0x45454647, 0x484B4D4F, 0x50525251, 0x504C4845, 0x3E3C3936,
0x34333333, 0x33333333, 0x33333436, 0x373B3E43, 0x464C4F55, 0x585C6063, 0x64666768, 0x68666562, 0x605C5955,
0x524E4C49, 0x47454443, 0x43434445, 0x46494B4E, 0x4F515150, 0x4E4B4744, 0x3D3A3735, 0x34333333, 0x33333333,
0x33333435, 0x36393C40, 0x44494D52, 0x565A5E61, 0x64666666, 0x6664625F, 0x5C585652, 0x4F4B4946, 0x44424040,
0x40404042, 0x4446494C, 0x4E4F4F4E, 0x4D494542, 0x3B393634, 0x33323333, 0x33333333, 0x33333334, 0x36383A3F,
0x42474B50, 0x54595C60, 0x62656566, 0x6462605C, 0x5A56534F, 0x4C494744, 0x42403E3E, 0x3D3E3F41, 0x4245484A,
0x4C4E4E4D, 0x4B474440, 0x39383634, 0x33323333, 0x33333333, 0x33333334, 0x3537393C, 0x4044484E, 0x52575A5E,
0x61636463, 0x62605D59, 0x5652504C, 0x4A474441, 0x403D3C3B, 0x3B3C3C3E, 0x40434750, 0x585E5E5D, 0x5952483F,
0x3C373534, 0x33333333, 0x33333333, 0x33333333, 0x3436383B, 0x3E43474D, 0x5056595D, 0x60626261, 0x605D5B57,
0x54504E4A, 0x48454340, 0x3E3C3B3A, 0x3A3A3B3D, 0x3F4A5E80, 0xA1B2B6B5, 0xAB937350, 0x553D3533, 0x33333333,
0x33333333, 0x33333333, 0x3335373A, 0x3D42464B, 0x4F54585C, 0x5E5F605F, 0x5D5A5854, 0x524E4C49, 0x4643413F,
0x3E3B3A39, 0x39393A3E, 0x4F7AA5B9, 0xBEB5C1C4, 0xC0B4AC93, 0x94654033, 0x33333333, 0x33333333, 0x33323233,
0x3335363A, 0x3C40444A, 0x4E54575B, 0x5D5E5E5D, 0x5C595653, 0x504D4A48, 0x4643413E, 0x3D3B3A38, 0x38383C57,
0x8EB0BEC2, 0xBB99A5BD, 0xBA9DA0AE, 0xAF9F6B3F, 0x34333333, 0x33333333, 0x33333334, 0x3436373A, 0x3C40444A,
0x4E53565A, 0x5B5C5C5B, 0x5A575451, 0x4E4B4A47, 0x4542413E, 0x3D3B3A38, 0x38384691, 0xB2B4B5B5, 0xB7AA87A9,
0xBAAA83A2, 0xAAB2A06A, 0x3D333332, 0x33333333, 0x33343434, 0x3536383B, 0x3D41454A, 0x4E53565A, 0x5B5C5C5A,
0x58565450, 0x4E4B4946, 0x4542413F, 0x3D3C3A39, 0x38384796, 0xB1958F8C, 0x94A19686, 0xADB39A89, 0x9BB0B19D,
0x5B373333, 0x34343434, 0x35363637, 0x38393B3D, 0x4044474C, 0x4F545659, 0x5A5B5B59, 0x57555350, 0x4D4A4946,
0x45434240, 0x3E3C3B3A, 0x39384179, 0xAFB2B1AE, 0xA2947E63, 0x92A9A584, 0x80AAB3AE, 0x8B463434, 0x34353636,
0x3738393A, 0x3B3C3E40, 0x4346494E, 0x50545659, 0x5A5A5A58, 0x5754524F, 0x4D4A4947, 0x46444341, 0x3F3E3C3B,
0x3A3A3C59, 0xA4B8B9B8, 0xB3A78F73, 0x8382928E, 0x6FA2B2B3, 0xA6693C36, 0x3738393A, 0x3C3D3E40, 0x40424345,
0x484A4D50, 0x53565759, 0x5A5A5958, 0x5754524F, 0x4D4B4A48, 0x47464543, 0x42403F3D, 0x3C3B3A46, 0x83B1B7B5,
0xA58A87A3, 0xABA58E75, 0x6185A7B2, 0xB08F4738, 0x3A3C3D3F, 0x40424445, 0x4648484A, 0x4C4E5052, 0x54575859,
0x5A5A5958, 0x56545250, 0x4E4C4A49, 0x48474645, 0x44424140, 0x3E3D3B3D, 0x5BA4B6B0, 0x919AA9B3, 0xB4B2A685,
0x657C88A0, 0xB0A5583D, 0x3C3F4143, 0x4547484A, 0x4B4C4D4E, 0x4F505254, 0x55585859, 0x5A5A5958, 0x56545250,
0x4E4C4B4A, 0x49484846, 0x45444241, 0x3F3E3C3B, 0x4681AFB4, 0xAEB0B3B3, 0xB3B19A68,
};
static Vtx vertices[] = {
VTX(88, 121, 0, 1638, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(243, 176, 1000, 1434, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(143, 46, 0, 1229, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(300, 0, 1000, 1024, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(0, 150, 0, 2048, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(93, 285, 1000, 1843, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(-88, 121, 0, 2458, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(-93, 285, 1000, 2253, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(-143, 46, 0, 2867, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(-243, 176, 1000, 2662, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(-143, -46, 0, 3277, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(-300, 0, 1000, 3072, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(-88, -121, 0, 3686, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(-243, -176, 1000, 3482, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(0, -150, 0, 4096, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(-93, -285, 1000, 3891, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(88, -121, 0, 410, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(93, -285, 1000, 205, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(0, -150, 0, 0, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(93, -285, 1000, 4301, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(143, -46, 0, 819, 2048, 0xFF, 0xFF, 0xFF, 0x00), VTX(243, -176, 1000, 614, 0, 0xFF, 0xFF, 0xFF, 0xFF),
};
static Gfx textureDl[] = {
gsDPPipeSync(),
gsDPSetTextureLUT(G_TT_NONE),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
gsDPLoadTextureBlock(tex0, G_IM_FMT_I, G_IM_SIZ_8b, 64, 64, 0, G_TX_NOMIRROR | G_TX_NOMIRROR,
G_TX_NOMIRROR | G_TX_NOMIRROR, 6, 6, 14, 14),
gsDPTileSync(),
gsDPSetTile(G_IM_FMT_I, G_IM_SIZ_8b, 8, 0x0, 1, 0, G_TX_NOMIRROR | G_TX_NOMIRROR, 6, 14,
G_TX_NOMIRROR | G_TX_NOMIRROR, 6, 14),
gsDPSetTileSize(1, 0, 0, (63 << 2), (63 << 2)),
gsDPSetCombineLERP(TEXEL1, PRIMITIVE, ENV_ALPHA, TEXEL0, TEXEL1, 0, ENVIRONMENT, TEXEL0, PRIMITIVE, ENVIRONMENT,
COMBINED, ENVIRONMENT, COMBINED, 0, SHADE, 0),
gsDPSetRenderMode(AA_EN | IM_RD | CLR_ON_CVG | CVG_DST_WRAP | ZMODE_OPA | FORCE_BL |
GBL_c1(G_BL_CLR_IN, G_BL_0, G_BL_CLR_IN, G_BL_1),
G_RM_AA_XLU_SURF2),
gsSPClearGeometryMode(G_TEXTURE_ENABLE | G_CULL_BACK | G_FOG | G_LIGHTING | G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR),
gsSPEndDisplayList(),
};
static Gfx frustrumDl[] = {
gsSPVertex(vertices, 22, 0),
gsSP2Triangles(0, 1, 2, 0, 1, 3, 2, 0),
gsSP2Triangles(4, 5, 0, 0, 5, 1, 0, 0),
gsSP2Triangles(6, 7, 4, 0, 7, 5, 4, 0),
gsSP2Triangles(8, 9, 6, 0, 9, 7, 6, 0),
gsSP2Triangles(10, 11, 8, 0, 11, 9, 8, 0),
gsSP2Triangles(12, 13, 10, 0, 13, 11, 10, 0),
gsSP2Triangles(14, 15, 12, 0, 15, 13, 12, 0),
gsSP2Triangles(16, 17, 18, 0, 19, 15, 14, 0),
gsSP2Triangles(20, 21, 16, 0, 21, 17, 16, 0),
gsSP2Triangles(2, 3, 20, 0, 3, 21, 20, 0),
gsSPEndDisplayList(),
};

View file

@ -5,6 +5,7 @@
*/
#include "z_oceff_wipe4.h"
#include <vt.h>
#define FLAGS 0x02000010
@ -15,7 +16,6 @@ void OceffWipe4_Destroy(Actor* thisx, GlobalContext* globalCtx);
void OceffWipe4_Update(Actor* thisx, GlobalContext* globalCtx);
void OceffWipe4_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Oceff_Wipe4_InitVars = {
ACTOR_OCEFF_WIPE4,
ACTORTYPE_ITEMACTION,
@ -27,11 +27,88 @@ const ActorInit Oceff_Wipe4_InitVars = {
(ActorFunc)OceffWipe4_Update,
(ActorFunc)OceffWipe4_Draw,
};
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Oceff_Wipe4/OceffWipe4_Init.s")
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Oceff_Wipe4/OceffWipe4_Destroy.s")
#include "z_oceff_wipe4_gfx.c"
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Oceff_Wipe4/OceffWipe4_Update.s")
void OceffWipe4_Init(Actor* thisx, GlobalContext* globalCtx) {
OceffWipe4* this = THIS;
Actor_SetScale(&this->actor, 0.1f);
this->counter = 0;
this->actor.posRot.pos = ACTIVE_CAM->eye;
osSyncPrintf(VT_FGCOL(CYAN) " WIPE4 arg_data = %d\n" VT_RST, this->actor.params);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Oceff_Wipe4/OceffWipe4_Draw.s")
void OceffWipe4_Destroy(Actor* thisx, GlobalContext* globalCtx) {
OceffWipe4* this = THIS;
func_800876C8(globalCtx);
}
void OceffWipe4_Update(Actor* thisx, GlobalContext* globalCtx) {
OceffWipe4* this = THIS;
this->actor.posRot.pos = ACTIVE_CAM->eye;
if (this->counter < 50) {
this->counter++;
} else {
Actor_Kill(&this->actor);
}
}
void OceffWipe4_Draw(Actor* thisx, GlobalContext* globalCtx) {
u32 scroll;
OceffWipe4* this;
f32 z;
GraphicsContext* gfxCtx;
u8 alpha;
u32 pad1;
Vec3f eye;
Vtx* vtxPtr;
Vec3f vec;
Gfx* dispRefs[5];
this = THIS;
scroll = globalCtx->state.frames & 0xFFF;
eye = ACTIVE_CAM->eye;
func_8005AFB4(&vec, ACTIVE_CAM);
if (this->counter < 16) {
z = Math_Sins(this->counter << 10) * 1330;
} else {
z = 1330;
}
vtxPtr = vertices;
if (this->counter >= 30) {
alpha = 12 * (50 - this->counter);
} else {
alpha = 0xFF;
}
vtxPtr[1].v.cn[3] = vtxPtr[3].v.cn[3] = vtxPtr[5].v.cn[3] = vtxPtr[7].v.cn[3] = vtxPtr[9].v.cn[3] = vtxPtr[11].v.cn[3] =
vtxPtr[13].v.cn[3] = vtxPtr[15].v.cn[3] = vtxPtr[17].v.cn[3] = vtxPtr[19].v.cn[3] = vtxPtr[21].v.cn[3] = alpha;
gfxCtx = globalCtx->state.gfxCtx;
Graph_OpenDisps(dispRefs, globalCtx->state.gfxCtx, "../z_oceff_wipe4.c", 314);
func_80093D84(globalCtx->state.gfxCtx);
Matrix_Translate(eye.x + vec.x, eye.y + vec.y, eye.z + vec.z, MTXMODE_NEW);
Matrix_Scale(0.1f, 0.1f, 0.1f, MTXMODE_APPLY);
func_800D1FD4(&globalCtx->mf_11DA0);
Matrix_Translate(0.0f, 0.0f, -z, MTXMODE_APPLY);
gSPMatrix(gfxCtx->polyXlu.p++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_oceff_wipe4.c", 324),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
if (this->actor.params == 1) {
gSPDisplayList(gfxCtx->polyXlu.p++, textureDl1);
} else {
gSPDisplayList(gfxCtx->polyXlu.p++, textureDl0);
}
gSPDisplayList(gfxCtx->polyXlu.p++, textureDl2);
gSPDisplayList(gfxCtx->polyXlu.p++, Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, scroll * 2, scroll * (-2), 32, 64,
1, scroll * (-1), scroll, 32, 32));
gSPDisplayList(gfxCtx->polyXlu.p++, frustrumDl);
Graph_CloseDisps(dispRefs, globalCtx->state.gfxCtx, "../z_oceff_wipe4.c", 344);
}

View file

@ -8,8 +8,7 @@ struct OceffWipe4;
typedef struct OceffWipe4 {
/* 0x0000 */ Actor actor;
/* 0x014C */ s16 unk_14C;
/* 0x014E */ char unk_14E[0x2];
/* 0x014C */ s16 counter;
} OceffWipe4; // size = 0x0150
extern const ActorInit Oceff_Wipe4_InitVars;

View file

@ -0,0 +1,127 @@
#include "z_oceff_wipe4.h"
extern u8 D_04032C90[];
static u32 tex0[] = {
0x00061507, 0x00000000, 0x295a2b08, 0x10030f03, 0x0d070006, 0x00031625, 0x3f230012, 0x79590000, 0x00102c2a,
0x254a1b0e, 0xaff66600, 0x00467e29, 0x08020000, 0x03383e0b, 0x0501000a, 0x31211c05, 0x00031c27, 0x4ca92f13,
0xb2ef5500, 0x057ebf37, 0x00000000, 0x0e493f13, 0x00000002, 0x335c3e03, 0x00000e07, 0x3c761200, 0x447e2200,
0x00426710, 0x00000000, 0x071c2208, 0x00000168, 0xe18f0f00, 0x00060e00, 0x0a100000, 0x0514022d, 0x1b020400,
0x00000000, 0x093a3f0a, 0x050010ae, 0xda360000, 0x00070500, 0x00000000, 0x00001461, 0x3e050024, 0x24000000,
0x184e3755, 0x9132043c, 0x2f000000, 0x12020a54, 0x3c000200, 0x00000f3e, 0x2b041159, 0x2c000000, 0x030b22ce,
0xf9420000, 0x00000301, 0x371160ef, 0xac6d2b00, 0x00000008, 0x05000d27, 0x06000000, 0x00001a91, 0x760b0000,
0x000b030a, 0x747db0bd, 0xbda31d00, 0x00000000, 0x00000000, 0x00000511, 0x01000209, 0x03020015, 0x583a0010,
0xc1e0892d, 0x532d0000, 0x03160600, 0x00050001, 0x15142e4e, 0x07000500, 0x100d004c, 0xb65c001b, 0xb2df9417,
0x00000020, 0x57420400, 0x45882f00, 0x18093b3e, 0x01182f0d, 0x1405003f, 0xb75b001e, 0x5dc2e14f, 0x00000161,
0xbc4a005a, 0xecf84a00, 0x0011330f, 0x0044591c, 0x01001c7c, 0xb122001f, 0x5de4ff71, 0x00000177, 0xba3218d9,
0xffc41700, 0x1e7b5a1c, 0x2b769635, 0x0044d5fa, 0x9e000530, 0xc7ffce35, 0x00000035, 0x663441cf, 0xc9380000,
0x3d733c28, 0x3e709726, 0x0086faf1, 0x9b170d4c, 0xc9812700, 0x000e1a02, 0x4c642544, 0x2b000000, 0x0d0e0508,
0x0a252f03, 0x00335297, 0xc75b014e, 0x77470600, 0x00160f00, 0x3a350016, 0x29070000, 0x0c3a3911, 0x00000003,
0x0100004b, 0x8f4b051c, 0x7f6c1c00, 0x00000000, 0x00000437, 0x2e030001, 0x2a6e6b2c, 0x0604000e, 0x0b000004,
0x19350814, 0x3e63813d, 0x13000000, 0x00000117, 0x06000000, 0x14362911, 0x312e021f, 0x13000000, 0x010c000c,
0x10b9ef72, 0x2d010000, 0x040c0c10, 0x02000000, 0x33410306, 0x3b30071d, 0x07000000, 0x00000000, 0x1bc2a129,
0x0d000000, 0x050e1112, 0x0100002e, 0xd2c22e00, 0x21593403, 0x00000000, 0x01010000, 0x0e451b00, 0x00000000,
0x0000060d, 0x00000061, 0xffea2e00, 0x3da04200, 0x00000000, 0x06140b00, 0x00040200, 0x00000000, 0x00061b0c,
0x00000037, 0x8d620500, 0x2a8f5801, 0x00000000, 0x082e3404, 0x00000000, 0x00000003, 0x0a201b02, 0x00000000,
0x06000000, 0x11826503, 0x00060400, 0x07303402, 0x07010007, 0x2f1e0b0a, 0x09080000, 0x03000000, 0x00000000,
0x07452500, 0x0e361100, 0x000b0a00, 0x06000018, 0x3e170600, 0x00060f0d, 0x3e190000, 0x00000000, 0x00000000,
0x21360700, 0x00000000, 0x00000007, 0x09000000, 0x0a857124, 0x703c0000, 0x01000000, 0x00000000, 0x08050000,
0x00000000, 0x00000000, 0x00000000, 0x32d97112, 0x4a1b0001, 0x02050000, 0x00000000, 0x021a0a00, 0x00000613,
0x07000000, 0x00000000, 0x1e5d1700, 0x04000000, 0x37550400, 0x00000000, 0x14300600, 0x00003e5b, 0x08000000,
0x00000000, 0x2f2f0000, 0x00000007, 0x90840300, 0x0f070000, 0x06070000, 0x00055a62, 0x00000000, 0x00000020,
0xa77b0700, 0x0106000f, 0x612d0006, 0x1b030000, 0x00000001, 0x0000211a, 0x00000000, 0x0000002e, 0x944a0103,
0x3b390200, 0x04000011, 0x14000005, 0x302f0d10, 0x01000000, 0x00000000, 0x00000009, 0x10000015, 0x5d290000,
0x00000015, 0x09000027, 0x73510f09, 0x37410700, 0x00061408, 0x00000000, 0x25582d09, 0x12020e03, 0x0c070007,
0x00031627, 0x41240011, 0x795b0000, 0x00102d29, 0x244b1c0d, 0xb0f76600, 0x00467c28, 0x08020000, 0x02383e0b,
0x0401000a, 0x32231c04, 0x00031b28, 0x4ca83112, 0xb2ef5500, 0x057ebe38, 0x00000000, 0x0d493d13, 0x00000002,
0x325c3f03, 0x00000e08, 0x3d761200, 0x457f2200, 0x0043660f, 0x00000000, 0x071d2208, 0x00000168, 0xe1901000,
0x00070e00, 0x09110000, 0x0515022d, 0x1b020400, 0x00000000, 0x093b3e09, 0x050011ae, 0xd9370000, 0x00070500,
0x00000000, 0x00001462, 0x3e050024, 0x25000000, 0x184e3554, 0x9431043c, 0x2e000000, 0x12010955, 0x3c000300,
0x0000103e, 0x2b04115a, 0x2d000000, 0x030b22ce, 0xf9420000, 0x00000301, 0x361161ef, 0xac6b2b00, 0x00000008,
0x05000d27, 0x07000000, 0x00001a8f, 0x760b0000, 0x000b030a, 0x727db1bd, 0xbca21c00, 0x00000000, 0x00000000,
0x00000610, 0x00000208, 0x03030016, 0x57390010, 0xc1e1892e, 0x522c0000, 0x03160600, 0x00060001, 0x14142f4e,
0x07000500, 0x100e004b, 0xb55c001b, 0xb0dd9416, 0x0000001f, 0x57430500, 0x468a3000, 0x16093b3e, 0x01192f0d,
0x1405003e, 0xb65b001d, 0x5cc1e04e, 0x0000005e, 0xbc4b0058, 0xebfa4b00, 0x0011340e, 0x0045591c, 0x02001c7c,
0xb223001e, 0x5ce5ff71, 0x00000176, 0xb93216d8, 0xffc21700, 0x1d7b5b1c, 0x2b759636, 0x0041d4fc, 0x9d000530,
0xc7ffce36, 0x00000036, 0x663540ce, 0xc6360000, 0x3c743e29, 0x3e719827, 0x0085faf0, 0x9b160d4e, 0xc9812600,
0x000f1a03, 0x4b642646, 0x2b000000, 0x0d0e0608, 0x0a253002, 0x00345299, 0xc85b014e, 0x75470600, 0x00160f00,
0x39350015, 0x29070000, 0x0c3a3911, 0x00000003, 0x0100004b, 0x914b051e, 0x7d6c1c01, 0x00000000, 0x00000437,
0x2e030001, 0x2a6f6a2a, 0x0604000e, 0x0b000003, 0x1a350814, 0x3e63813e, 0x13000000, 0x00000118, 0x07000000,
0x13382911, 0x302e0320, 0x14000000, 0x010d000c, 0x0fb9ee73, 0x2f000000, 0x040b0c11, 0x02000000, 0x36440307,
0x3b30071d, 0x07000000, 0x00000000, 0x1abf9f29, 0x0e000000, 0x050f1112, 0x0100002d, 0xd3c42b00, 0x22593404,
0x00000000, 0x01010000, 0x0e451b00, 0x00000000, 0x0000070c, 0x00000061, 0xffed2f00, 0x3ea04300, 0x00000000,
0x05140b00, 0x00030200, 0x00000000, 0x00061c0b, 0x00000037, 0x8f640500, 0x2a8f5901, 0x00000000, 0x082d3504,
0x00000000, 0x00010003, 0x0a201b02, 0x00000000, 0x07000000, 0x11826503, 0x00050400, 0x072f3503, 0x07010007,
0x2f1e0c0b, 0x09080000, 0x03000000, 0x00000000, 0x07462500, 0x0e361100, 0x000b0900, 0x04000018, 0x3e160600,
0x00060f0b, 0x3d190000, 0x00000000, 0x00000000, 0x21370600, 0x00000000, 0x00000007, 0x09000000, 0x0b866f22,
0x713c0000, 0x02000000, 0x00000000, 0x08060000, 0x00000000, 0x00000000, 0x00000000, 0x30d76f12, 0x4b1a0001,
0x02050000, 0x00000000, 0x021a0a00, 0x00000714, 0x08000000, 0x00000000, 0x1e5c1700, 0x03000000, 0x36560400,
0x00000000, 0x15300600, 0x00003f5d, 0x07000000, 0x00000000, 0x2e2f0000, 0x00000008, 0x8f840300, 0x0f060000,
0x06070000, 0x00065b61, 0x00000000, 0x00000020, 0xa67c0700, 0x0006000e, 0x612d0006, 0x1b030000, 0x00000001,
0x0001211b, 0x00000000, 0x0000002f, 0x93490103, 0x3b390200, 0x04000011, 0x13000005, 0x2f2e0c11, 0x02000000,
0x00000000, 0x00000008, 0x14030015, 0x5d2c0000, 0x00000115, 0x08000027, 0x724f0f0a, 0x353d0600,
};
static Vtx vertices[] = {
VTX(88, 121, 0, 819, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(243, 176, 1000, 717, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(143, 46, 0, 614, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(300, 0, 1000, 512, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(0, 150, 0, 1024, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(93, 285, 1000, 922, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(-88, 121, 0, 1229, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(-93, 285, 1000, 1126, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(-143, 46, 0, 1434, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(-243, 176, 1000, 1331, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(-143, -46, 0, 1638, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(-300, 0, 1000, 1536, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(-88, -121, 0, 1843, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(-243, -176, 1000, 1741, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(0, -150, 0, 2048, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(-93, -285, 1000, 1946, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(88, -121, 0, 205, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(93, -285, 1000, 102, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(0, -150, 0, 0, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(93, -285, 1000, 2150, 0, 0xFF, 0xFF, 0xFF, 0xFF),
VTX(143, -46, 0, 410, 1024, 0xFF, 0xFF, 0xFF, 0x00), VTX(243, -176, 1000, 307, 0, 0xFF, 0xFF, 0xFF, 0xFF),
};
static Gfx textureDl0[] = {
gsDPPipeSync(),
gsDPSetTextureLUT(G_TT_NONE),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
gsDPLoadMultiBlock(D_04032C90, 0x100, 1, G_IM_FMT_I, G_IM_SIZ_8b, 32, 32, 0, G_TX_NOMIRROR | G_TX_NOMIRROR,
G_TX_NOMIRROR | G_TX_NOMIRROR, 5, 5, 1, 15),
gsDPSetPrimColor(0x00, 0x00, 170, 255, 255, 255),
gsDPSetEnvColor(0, 150, 0, 128),
gsSPEndDisplayList(),
};
static Gfx textureDl1[] = {
gsDPPipeSync(),
gsDPSetTextureLUT(G_TT_NONE),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
gsDPLoadMultiBlock(D_04032C90, 0x100, 1, G_IM_FMT_I, G_IM_SIZ_8b, 32, 32, 0, G_TX_NOMIRROR | G_TX_NOMIRROR,
G_TX_NOMIRROR | G_TX_NOMIRROR, 5, 5, 1, 0),
gsDPSetPrimColor(0x00, 0x00, 255, 170, 255, 255),
gsDPSetEnvColor(120, 0, 100, 128),
gsSPEndDisplayList(),
};
static Gfx textureDl2[] = {
gsDPPipeSync(),
gsDPLoadTextureBlock(tex0, G_IM_FMT_I, G_IM_SIZ_8b, 32, 64, 0, G_TX_NOMIRROR | G_TX_NOMIRROR,
G_TX_NOMIRROR | G_TX_NOMIRROR, 5, 6, 14, 1),
gsDPSetCombineLERP(TEXEL0, PRIMITIVE, ENV_ALPHA, TEXEL1, TEXEL0, 0, ENVIRONMENT, TEXEL1, PRIMITIVE, ENVIRONMENT,
COMBINED, ENVIRONMENT, COMBINED, 0, SHADE, 0),
gsDPSetRenderMode(AA_EN | IM_RD | CLR_ON_CVG | CVG_DST_WRAP | ZMODE_OPA | FORCE_BL |
GBL_c1(G_BL_CLR_IN, G_BL_0, G_BL_CLR_IN, G_BL_1),
G_RM_AA_XLU_SURF2),
gsSPClearGeometryMode(G_TEXTURE_ENABLE | G_CULL_BACK | G_FOG | G_LIGHTING | G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR),
//! @bug : gsSPEndDisplayList() is missing so the next dlist will execute as well
};
static Gfx frustrumDl[] = {
gsSPVertex(vertices, 22, 0),
gsSP2Triangles(0, 1, 2, 0, 1, 3, 2, 0),
gsSP2Triangles(4, 5, 0, 0, 5, 1, 0, 0),
gsSP2Triangles(6, 7, 4, 0, 7, 5, 4, 0),
gsSP2Triangles(8, 9, 6, 0, 9, 7, 6, 0),
gsSP2Triangles(10, 11, 8, 0, 11, 9, 8, 0),
gsSP2Triangles(12, 13, 10, 0, 13, 11, 10, 0),
gsSP2Triangles(14, 15, 12, 0, 15, 13, 12, 0),
gsSP2Triangles(16, 17, 18, 0, 19, 15, 14, 0),
gsSP2Triangles(20, 21, 16, 0, 21, 17, 16, 0),
gsSP2Triangles(2, 3, 20, 0, 3, 21, 20, 0),
gsSPEndDisplayList(),
};

View file

@ -545,3 +545,6 @@ D_06003858 = 0x06003858;
// z_en_floormas
D_06002158 = 0x06002158;
D_060039B0 = 0x060039B0;
// z_oceff_wipe4
D_04032C90 = 0x04032C90;