mirror of
https://github.com/zeldaret/oot.git
synced 2024-11-11 03:39:59 +00:00
Finished
This commit is contained in:
parent
61a32a5820
commit
bb5ce4a656
4 changed files with 30 additions and 97 deletions
|
@ -1,59 +0,0 @@
|
||||||
.rdata
|
|
||||||
|
|
||||||
glabel D_80978658
|
|
||||||
.asciz "../z_demo_geff.c"
|
|
||||||
.balign 4
|
|
||||||
|
|
||||||
glabel D_8097866C
|
|
||||||
.asciz "../z_demo_geff.c"
|
|
||||||
.balign 4
|
|
||||||
|
|
||||||
.text
|
|
||||||
|
|
||||||
glabel func_80977F80
|
|
||||||
/* 00140 80977F80 27BDFFB8 */ addiu $sp, $sp, 0xFFB8 ## $sp = FFFFFFB8
|
|
||||||
/* 00144 80977F84 AFBF0014 */ sw $ra, 0x0014($sp)
|
|
||||||
/* 00148 80977F88 AFA40048 */ sw $a0, 0x0048($sp)
|
|
||||||
/* 0014C 80977F8C AFA5004C */ sw $a1, 0x004C($sp)
|
|
||||||
/* 00150 80977F90 8C8F0154 */ lw $t7, 0x0154($a0) ## 00000154
|
|
||||||
/* 00154 80977F94 3C068098 */ lui $a2, %hi(D_80978658) ## $a2 = 80980000
|
|
||||||
/* 00158 80977F98 24C68658 */ addiu $a2, $a2, %lo(D_80978658) ## $a2 = 80978658
|
|
||||||
/* 0015C 80977F9C AFAF003C */ sw $t7, 0x003C($sp)
|
|
||||||
/* 00160 80977FA0 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
|
|
||||||
/* 00164 80977FA4 27A40024 */ addiu $a0, $sp, 0x0024 ## $a0 = FFFFFFDC
|
|
||||||
/* 00168 80977FA8 240700CC */ addiu $a3, $zero, 0x00CC ## $a3 = 000000CC
|
|
||||||
/* 0016C 80977FAC 0C031AB1 */ jal func_800C6AC4
|
|
||||||
/* 00170 80977FB0 AFA50038 */ sw $a1, 0x0038($sp)
|
|
||||||
/* 00174 80977FB4 8FA50038 */ lw $a1, 0x0038($sp)
|
|
||||||
/* 00178 80977FB8 8FA6004C */ lw $a2, 0x004C($sp)
|
|
||||||
/* 0017C 80977FBC 3C08DB06 */ lui $t0, 0xDB06 ## $t0 = DB060000
|
|
||||||
/* 00180 80977FC0 8CA302C0 */ lw $v1, 0x02C0($a1) ## 000002C0
|
|
||||||
/* 00184 80977FC4 35080018 */ ori $t0, $t0, 0x0018 ## $t0 = DB060018
|
|
||||||
/* 00188 80977FC8 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
|
||||||
/* 0018C 80977FCC 24790008 */ addiu $t9, $v1, 0x0008 ## $t9 = 00000008
|
|
||||||
/* 00190 80977FD0 ACB902C0 */ sw $t9, 0x02C0($a1) ## 000002C0
|
|
||||||
/* 00194 80977FD4 AC680000 */ sw $t0, 0x0000($v1) ## 00000000
|
|
||||||
/* 00198 80977FD8 8FA9003C */ lw $t1, 0x003C($sp)
|
|
||||||
/* 0019C 80977FDC 240700D4 */ addiu $a3, $zero, 0x00D4 ## $a3 = 000000D4
|
|
||||||
/* 001A0 80977FE0 00095100 */ sll $t2, $t1, 4
|
|
||||||
/* 001A4 80977FE4 01495021 */ addu $t2, $t2, $t1
|
|
||||||
/* 001A8 80977FE8 000A5080 */ sll $t2, $t2, 2
|
|
||||||
/* 001AC 80977FEC 00CA2021 */ addu $a0, $a2, $t2
|
|
||||||
/* 001B0 80977FF0 00812021 */ addu $a0, $a0, $at
|
|
||||||
/* 001B4 80977FF4 8C8B17B4 */ lw $t3, 0x17B4($a0) ## 000017B4
|
|
||||||
/* 001B8 80977FF8 3C018000 */ lui $at, 0x8000 ## $at = 80000000
|
|
||||||
/* 001BC 80977FFC 3C068098 */ lui $a2, %hi(D_8097866C) ## $a2 = 80980000
|
|
||||||
/* 001C0 80978000 AC6B0004 */ sw $t3, 0x0004($v1) ## 00000004
|
|
||||||
/* 001C4 80978004 8C8C17B4 */ lw $t4, 0x17B4($a0) ## 000017B4
|
|
||||||
/* 001C8 80978008 27A40024 */ addiu $a0, $sp, 0x0024 ## $a0 = FFFFFFDC
|
|
||||||
/* 001CC 8097800C 24C6866C */ addiu $a2, $a2, %lo(D_8097866C) ## $a2 = 8097866C
|
|
||||||
/* 001D0 80978010 01816821 */ addu $t5, $t4, $at
|
|
||||||
/* 001D4 80978014 3C018016 */ lui $at, 0x8016 ## $at = 80160000
|
|
||||||
/* 001D8 80978018 0C031AD5 */ jal func_800C6B54
|
|
||||||
/* 001DC 8097801C AC2D6FC0 */ sw $t5, 0x6FC0($at) ## 80166FC0
|
|
||||||
/* 001E0 80978020 8FBF0014 */ lw $ra, 0x0014($sp)
|
|
||||||
/* 001E4 80978024 27BD0048 */ addiu $sp, $sp, 0x0048 ## $sp = 00000000
|
|
||||||
/* 001E8 80978028 03E00008 */ jr $ra
|
|
||||||
/* 001EC 8097802C 00000000 */ nop
|
|
||||||
|
|
||||||
|
|
|
@ -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_809787C0
|
|
||||||
|
|
||||||
.incbin "baserom/ovl_Demo_Geff", 0x980, 0x00000170
|
|
2
spec
2
spec
|
@ -1789,7 +1789,7 @@ endseg
|
||||||
beginseg
|
beginseg
|
||||||
name "ovl_Demo_Geff"
|
name "ovl_Demo_Geff"
|
||||||
include "build/src/overlays/actors/ovl_Demo_Geff/z_demo_geff.o"
|
include "build/src/overlays/actors/ovl_Demo_Geff/z_demo_geff.o"
|
||||||
include "build/data/overlays/actors/z_demo_geff.reloc.o"
|
include "build/src/overlays/actors/ovl_Demo_Geff/z_demo_geff_reloc.o"
|
||||||
endseg
|
endseg
|
||||||
|
|
||||||
beginseg
|
beginseg
|
||||||
|
|
|
@ -11,18 +11,18 @@
|
||||||
#define ROOM 0x00
|
#define ROOM 0x00
|
||||||
#define FLAGS 0x00000030
|
#define FLAGS 0x00000030
|
||||||
|
|
||||||
void DemoGeff_Init(DemoGeff* this, GlobalContext* globalCtx);
|
static void DemoGeff_Init(DemoGeff* this, GlobalContext* globalCtx);
|
||||||
void DemoGeff_Destroy(DemoGeff* this, GlobalContext* globalCtx);
|
static void DemoGeff_Destroy(DemoGeff* this, GlobalContext* globalCtx);
|
||||||
void DemoGeff_Update(DemoGeff* this, GlobalContext* globalCtx);
|
static void DemoGeff_Update(DemoGeff* this, GlobalContext* globalCtx);
|
||||||
void DemoGeff_Draw(DemoGeff* this, GlobalContext* globalCtx);
|
static void DemoGeff_Draw(DemoGeff* this, GlobalContext* globalCtx);
|
||||||
|
|
||||||
void DemoGeff_SetScale(DemoGeff* this, GlobalContext* globalCtx);
|
static void DemoGeff_SetScale(DemoGeff* this, GlobalContext* globalCtx);
|
||||||
|
|
||||||
void func_809783D4(DemoGeff* this, GlobalContext* globalCtx);
|
static void func_809783D4(DemoGeff* this, GlobalContext* globalCtx);
|
||||||
void func_80978308(DemoGeff* this, GlobalContext* globalCtx);
|
static void func_80978308(DemoGeff* this, GlobalContext* globalCtx);
|
||||||
|
|
||||||
void func_809784D4(DemoGeff* this, GlobalContext* globalCtx);
|
static void func_809784D4(DemoGeff* this, GlobalContext* globalCtx);
|
||||||
void func_80978344(DemoGeff* this, GlobalContext* globalCtx);
|
static void func_80978344(DemoGeff* this, GlobalContext* globalCtx);
|
||||||
|
|
||||||
s16 objectIds[] = { OBJECT_GEFF, OBJECT_GEFF, OBJECT_GEFF, OBJECT_GEFF, OBJECT_GEFF, OBJECT_GEFF, OBJECT_GEFF,
|
s16 objectIds[] = { OBJECT_GEFF, OBJECT_GEFF, OBJECT_GEFF, OBJECT_GEFF, OBJECT_GEFF, OBJECT_GEFF, OBJECT_GEFF,
|
||||||
OBJECT_GEFF, OBJECT_GEFF, OBJECT_UNSET_0, };
|
OBJECT_GEFF, OBJECT_GEFF, OBJECT_UNSET_0, };
|
||||||
|
@ -49,11 +49,11 @@ const ActorInit Demo_Geff_InitVars =
|
||||||
|
|
||||||
extern UNK_TYPE D_06000EA0;
|
extern UNK_TYPE D_06000EA0;
|
||||||
|
|
||||||
void DemoGeff_Destroy(DemoGeff* this, GlobalContext* globalCtx) {
|
static void DemoGeff_Destroy(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void DemoGeff_Init(DemoGeff* this, GlobalContext* globalCtx) {
|
static void DemoGeff_Init(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
if (this->actor.params < 0 || this->actor.params >= 9) {
|
if (this->actor.params < 0 || this->actor.params >= 9) {
|
||||||
osSyncPrintf(VT_FGCOL(RED) "Demo_Geff_Actor_ct:arg_dataがおかしい!!!!!!!!!!!!\n" VT_RST);
|
osSyncPrintf(VT_FGCOL(RED) "Demo_Geff_Actor_ct:arg_dataがおかしい!!!!!!!!!!!!\n" VT_RST);
|
||||||
Actor_Kill(&this->actor);
|
Actor_Kill(&this->actor);
|
||||||
|
@ -63,7 +63,7 @@ void DemoGeff_Init(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
this->drawConfig = 0;
|
this->drawConfig = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80977EA8(GlobalContext* globalCtx, u32 dlist) {
|
static void func_80977EA8(GlobalContext* globalCtx, u32 dlist) {
|
||||||
GraphicsContext* gfxCtx = globalCtx->state.gfxCtx;
|
GraphicsContext* gfxCtx = globalCtx->state.gfxCtx;
|
||||||
s16 pad;
|
s16 pad;
|
||||||
Gfx* gfxArr[4];
|
Gfx* gfxArr[4];
|
||||||
|
@ -79,8 +79,7 @@ void func_80977EA8(GlobalContext* globalCtx, u32 dlist) {
|
||||||
func_800C6B54(gfxArr, gfxCtx, "../z_demo_geff.c", 188);
|
func_800C6B54(gfxArr, gfxCtx, "../z_demo_geff.c", 188);
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Geff/func_80977F80.s")
|
static void func_80977F80(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
/*void func_80977F80(DemoGeff* this, GlobalContext* globalCtx) {
|
|
||||||
s32 pad[2];
|
s32 pad[2];
|
||||||
s32 objBankIndex = this->objBankIndex;
|
s32 objBankIndex = this->objBankIndex;
|
||||||
GraphicsContext* gfxCtx = globalCtx->state.gfxCtx;
|
GraphicsContext* gfxCtx = globalCtx->state.gfxCtx;
|
||||||
|
@ -92,10 +91,14 @@ void func_80977EA8(GlobalContext* globalCtx, u32 dlist) {
|
||||||
gSPSegment(gfxCtx->polyOpa.p++, 0x06, globalCtx->objectCtx.status[objBankIndex].segment);
|
gSPSegment(gfxCtx->polyOpa.p++, 0x06, globalCtx->objectCtx.status[objBankIndex].segment);
|
||||||
gSegments[6] = PHYSICAL_TO_VIRTUAL(globalCtx->objectCtx.status[objBankIndex].segment);
|
gSegments[6] = PHYSICAL_TO_VIRTUAL(globalCtx->objectCtx.status[objBankIndex].segment);
|
||||||
|
|
||||||
func_800C6B54(gfxArr, gfxCtx, "../z_demo_geff.c", 212);
|
if (!globalCtx) {
|
||||||
}*/
|
|
||||||
|
|
||||||
void DemoGeff_SetScale(DemoGeff* this, GlobalContext* globalCtx) {
|
}
|
||||||
|
|
||||||
|
func_800C6B54(gfxArr, gfxCtx, "../z_demo_geff.c", 212);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void DemoGeff_SetScale(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
Vec3f* thisScale = &this->actor.scale;
|
Vec3f* thisScale = &this->actor.scale;
|
||||||
this->action = 1;
|
this->action = 1;
|
||||||
this->drawConfig = 1;
|
this->drawConfig = 1;
|
||||||
|
@ -123,7 +126,7 @@ void DemoGeff_SetScale(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_809781FC(DemoGeff* this, GlobalContext* globalCtx) {
|
static void func_809781FC(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
s32 targetParams = 2;
|
s32 targetParams = 2;
|
||||||
Actor* propIt;
|
Actor* propIt;
|
||||||
|
|
||||||
|
@ -146,7 +149,7 @@ void func_809781FC(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_809782A0(DemoGeff* this, GlobalContext* globalCtx) {
|
static void func_809782A0(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
DemoGt* demoGt = this->demoGt;
|
DemoGt* demoGt = this->demoGt;
|
||||||
s16 params = this->actor.params;
|
s16 params = this->actor.params;
|
||||||
if (demoGt != NULL && (params != 6) && (params != 7) && (params != 8)) {
|
if (demoGt != NULL && (params != 6) && (params != 7) && (params != 8)) {
|
||||||
|
@ -156,17 +159,17 @@ void func_809782A0(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80978308(DemoGeff* this, GlobalContext* globalCtx) {
|
static void func_80978308(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
func_809781FC(this, globalCtx);
|
func_809781FC(this, globalCtx);
|
||||||
func_809782A0(this, globalCtx);
|
func_809782A0(this, globalCtx);
|
||||||
DemoGeff_SetScale(this, globalCtx);
|
DemoGeff_SetScale(this, globalCtx);
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80978344(DemoGeff* this, GlobalContext* globalCtx) {
|
static void func_80978344(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
func_80977EA8(globalCtx, &D_06000EA0);
|
func_80977EA8(globalCtx, &D_06000EA0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80978370(DemoGeff* this, GlobalContext* globalCtx) {
|
static void func_80978370(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
s16 params = this->actor.params;
|
s16 params = this->actor.params;
|
||||||
ActorFunc actorFunc = scaleFuncs[params];
|
ActorFunc actorFunc = scaleFuncs[params];
|
||||||
if (actorFunc == NULL) {
|
if (actorFunc == NULL) {
|
||||||
|
@ -177,7 +180,7 @@ void func_80978370(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
actorFunc(this, globalCtx);
|
actorFunc(this, globalCtx);
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_809783D4(DemoGeff* this, GlobalContext* globalCtx) {
|
static void func_809783D4(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
ObjectContext* objCtx = &globalCtx->objectCtx;
|
ObjectContext* objCtx = &globalCtx->objectCtx;
|
||||||
Actor* thisx = &this->actor;
|
Actor* thisx = &this->actor;
|
||||||
s32 params = thisx->params;
|
s32 params = thisx->params;
|
||||||
|
@ -196,7 +199,7 @@ void func_809783D4(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void DemoGeff_Update(DemoGeff* this, GlobalContext* globalCtx) {
|
static void DemoGeff_Update(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
if (this->action < 0 || this->action >= 2 || actionFuncs[this->action] == NULL) {
|
if (this->action < 0 || this->action >= 2 || actionFuncs[this->action] == NULL) {
|
||||||
osSyncPrintf(VT_FGCOL(RED) "メインモードがおかしい!!!!!!!!!!!!!!!!!!!!!!!!!\n" VT_RST);
|
osSyncPrintf(VT_FGCOL(RED) "メインモードがおかしい!!!!!!!!!!!!!!!!!!!!!!!!!\n" VT_RST);
|
||||||
return;
|
return;
|
||||||
|
@ -204,11 +207,11 @@ void DemoGeff_Update(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
actionFuncs[this->action](this, globalCtx);
|
actionFuncs[this->action](this, globalCtx);
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_809784D4(DemoGeff* this, GlobalContext* globalCtx) {
|
static void func_809784D4(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void DemoGeff_Draw(DemoGeff* this, GlobalContext* globalCtx) {
|
static void DemoGeff_Draw(DemoGeff* this, GlobalContext* globalCtx) {
|
||||||
s32 drawConfig = this->drawConfig;
|
s32 drawConfig = this->drawConfig;
|
||||||
s16 pad;
|
s16 pad;
|
||||||
if (drawConfig < 0 || drawConfig >= 2 || drawFuncs[drawConfig] == NULL) {
|
if (drawConfig < 0 || drawConfig >= 2 || drawFuncs[drawConfig] == NULL) {
|
||||||
|
|
Loading…
Reference in a new issue