draw and update functions

Signed-off-by: angie <angheloalf95@gmail.com>
This commit is contained in:
angie
2021-01-25 00:05:06 -03:00
parent 6c362096a6
commit 4aeba77a47
3 changed files with 26 additions and 72 deletions
@@ -1,36 +0,0 @@
.rdata
glabel D_8097C164
.asciz "\x1b[31m!!!!!!!!!!!!!!!!!!!!!!!!!\n\x1b[m"
.balign 4
.text
glabel DemoGj_Draw
/* 0344C 8097BD7C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 03450 8097BD80 AFBF0014 */ sw $ra, 0x0014($sp)
/* 03454 8097BD84 8C820168 */ lw $v0, 0x0168($a0) ## 00000168
/* 03458 8097BD88 04400008 */ bltz $v0, .L8097BDAC
/* 0345C 8097BD8C 28410013 */ slti $at, $v0, 0x0013
/* 03460 8097BD90 10200006 */ beq $at, $zero, .L8097BDAC
/* 03464 8097BD94 00027080 */ sll $t6, $v0, 2
/* 03468 8097BD98 3C038098 */ lui $v1, %hi(D_8097BF24) ## $v1 = 80980000
/* 0346C 8097BD9C 006E1821 */ addu $v1, $v1, $t6
/* 03470 8097BDA0 8C63BF24 */ lw $v1, %lo(D_8097BF24)($v1)
/* 03474 8097BDA4 14600006 */ bne $v1, $zero, .L8097BDC0
/* 03478 8097BDA8 00000000 */ nop
.L8097BDAC:
/* 0347C 8097BDAC 3C048098 */ lui $a0, %hi(D_8097C164) ## $a0 = 80980000
/* 03480 8097BDB0 0C00084C */ jal osSyncPrintf
/* 03484 8097BDB4 2484C164 */ addiu $a0, $a0, %lo(D_8097C164) ## $a0 = 8097C164
/* 03488 8097BDB8 10000004 */ beq $zero, $zero, .L8097BDCC
/* 0348C 8097BDBC 8FBF0014 */ lw $ra, 0x0014($sp)
.L8097BDC0:
/* 03490 8097BDC0 0060F809 */ jalr $ra, $v1
/* 03494 8097BDC4 00000000 */ nop
/* 03498 8097BDC8 8FBF0014 */ lw $ra, 0x0014($sp)
.L8097BDCC:
/* 0349C 8097BDCC 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 034A0 8097BDD0 03E00008 */ jr $ra
/* 034A4 8097BDD4 00000000 */ nop
/* 034A8 8097BDD8 00000000 */ nop
/* 034AC 8097BDDC 00000000 */ nop
@@ -1,34 +0,0 @@
.rdata
glabel D_8097C0E4
.asciz "\x1b[31m!!!!!!!!!!!!!!!!!!!!!!!!!\n\x1b[m"
.balign 4
.text
glabel DemoGj_Update
/* 032CC 8097BBFC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 032D0 8097BC00 AFBF0014 */ sw $ra, 0x0014($sp)
/* 032D4 8097BC04 8C820164 */ lw $v0, 0x0164($a0) ## 00000164
/* 032D8 8097BC08 04400008 */ bltz $v0, .L8097BC2C
/* 032DC 8097BC0C 28410015 */ slti $at, $v0, 0x0015
/* 032E0 8097BC10 10200006 */ beq $at, $zero, .L8097BC2C
/* 032E4 8097BC14 00027080 */ sll $t6, $v0, 2
/* 032E8 8097BC18 3C038098 */ lui $v1, %hi(D_8097BED0) ## $v1 = 80980000
/* 032EC 8097BC1C 006E1821 */ addu $v1, $v1, $t6
/* 032F0 8097BC20 8C63BED0 */ lw $v1, %lo(D_8097BED0)($v1)
/* 032F4 8097BC24 14600006 */ bne $v1, $zero, .L8097BC40
/* 032F8 8097BC28 00000000 */ nop
.L8097BC2C:
/* 032FC 8097BC2C 3C048098 */ lui $a0, %hi(D_8097C0E4) ## $a0 = 80980000
/* 03300 8097BC30 0C00084C */ jal osSyncPrintf
/* 03304 8097BC34 2484C0E4 */ addiu $a0, $a0, %lo(D_8097C0E4) ## $a0 = 8097C0E4
/* 03308 8097BC38 10000004 */ beq $zero, $zero, .L8097BC4C
/* 0330C 8097BC3C 8FBF0014 */ lw $ra, 0x0014($sp)
.L8097BC40:
/* 03310 8097BC40 0060F809 */ jalr $ra, $v1
/* 03314 8097BC44 00000000 */ nop
/* 03318 8097BC48 8FBF0014 */ lw $ra, 0x0014($sp)
.L8097BC4C:
/* 0331C 8097BC4C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 03320 8097BC50 03E00008 */ jr $ra
/* 03324 8097BC54 00000000 */ nop
+26 -2
View File
@@ -51,6 +51,7 @@ void func_8097B370(DemoGj* this, GlobalContext* globalCtx);
void func_8097B894(DemoGj* this, GlobalContext* globalCtx);
void func_8097BBA8(DemoGj* this, GlobalContext* globalCtx);
extern DemoGjActionFunc D_8097BED0[];
/*
static DemoGjActionFunc D_8097BED0[] = {
func_8097ADF0,
@@ -98,6 +99,7 @@ void func_8097B3A0(DemoGj* this, GlobalContext* globalCtx);
void func_8097B8C4(DemoGj* this, GlobalContext* globalCtx);
void func_8097BBD8(DemoGj* this, GlobalContext* globalCtx);
extern DemoGjActionFunc D_8097BF24[];
/*
static DemoGjActionFunc D_8097BF24[] = {
func_8097BD70,
@@ -923,7 +925,18 @@ void func_8097BBD8(DemoGj *this, GlobalContext *globalCtx) {
func_80979030(this, globalCtx, &D_06003710);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/DemoGj_Update.s")
void DemoGj_Update(Actor* thisx, GlobalContext* globalCtx) {
DemoGj *this = THIS;
DemoGjActionFunc temp_v1;
if (this->unk_164 < 0 || this->unk_164 >= 0x15 || (temp_v1 = D_8097BED0[this->unk_164]) == NULL) {
// The main mode is strange!!!!!!!!!!!!!!!!!!!!!!!!!
osSyncPrintf("\x1b[31mメインモードがおかしい!!!!!!!!!!!!!!!!!!!!!!!!!\n\x1b[m");
return;
}
temp_v1(this, globalCtx);
}
#ifdef NON_MATCHING
/*void DemoGj_Init(Actor* thisx, GlobalContext *globalCtx) {
@@ -981,4 +994,15 @@ default:
void func_8097BD70(DemoGj *this, GlobalContext *globalCtx) {
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/DemoGj_Draw.s")
void DemoGj_Draw(Actor *thisx, GlobalContext *globalCtx) {
DemoGj *this = THIS;
DemoGjActionFunc temp_v1;
if (this->unk_168 < 0 || this->unk_168 >= 0x13 || (temp_v1 = D_8097BF24[this->unk_168]) == NULL) {
// The drawing mode is abnormal!!!!!!!!!!!!!!!!!!!!!!!!!
osSyncPrintf("\x1b[31m描画モードがおかしい!!!!!!!!!!!!!!!!!!!!!!!!!\n\x1b[m");
return;
}
temp_v1(thisx, globalCtx);
}