mirror of
https://github.com/pret/pokediamond.git
synced 2026-08-27 03:04:10 -05:00
more mod 21
This commit is contained in:
@@ -663,7 +663,6 @@ Overlay MODULE_21
|
||||
{
|
||||
##Pokétch Clock##
|
||||
After MODULE_20
|
||||
Object module_21_sinit.o
|
||||
Object mod21_02254854_src.o
|
||||
Object mod21_02254854_asm.o
|
||||
Object mod21_02254A6C.o
|
||||
|
||||
@@ -3,67 +3,6 @@
|
||||
.section .text
|
||||
.balign 4, 0
|
||||
|
||||
.extern MOD21_02254918
|
||||
|
||||
thumb_func_start MOD21_02254930
|
||||
MOD21_02254930: ; 0x02254930
|
||||
push {r3, r4, r5, lr}
|
||||
add r4, r1, #0
|
||||
add r5, r0, #0
|
||||
ldrb r0, [r4]
|
||||
cmp r0, #3
|
||||
bhs _02254966
|
||||
ldr r0, [r4, #0x28]
|
||||
ldr r1, [r4, #0x10]
|
||||
bl MOD20_02252C14
|
||||
ldrb r1, [r4]
|
||||
add r0, r4, #0
|
||||
lsl r2, r1, #2
|
||||
ldr r1, _02254968 ; =MOD21_02254D84
|
||||
ldr r1, [r1, r2]
|
||||
blx r1
|
||||
cmp r0, #0
|
||||
beq _02254966
|
||||
add r0, r4, #0
|
||||
bl MOD21_02254918
|
||||
add r0, r5, #0
|
||||
bl FUN_0200CAB4
|
||||
ldr r0, [r4, #0x28]
|
||||
bl MOD20_022529A0
|
||||
_02254966:
|
||||
pop {r3, r4, r5, pc}
|
||||
.align 2, 0
|
||||
_02254968: .word MOD21_02254D84
|
||||
thumb_func_end MOD21_02254930
|
||||
|
||||
thumb_func_start MOD21_0225496C
|
||||
MOD21_0225496C: ; 0x0225496C
|
||||
mov r1, #1
|
||||
strb r1, [r0, #2]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
thumb_func_end MOD21_0225496C
|
||||
|
||||
thumb_func_start MOD21_02254974
|
||||
MOD21_02254974: ; 0x02254974
|
||||
cmp r2, #0
|
||||
beq _02254984
|
||||
cmp r2, #1
|
||||
bne _0225498C
|
||||
mov r0, #1
|
||||
str r0, [r3, #0x20]
|
||||
strb r0, [r3, #6]
|
||||
bx lr
|
||||
_02254984:
|
||||
mov r0, #0
|
||||
str r0, [r3, #0x20]
|
||||
mov r0, #1
|
||||
strb r0, [r3, #6]
|
||||
_0225498C:
|
||||
bx lr
|
||||
.align 2, 0
|
||||
thumb_func_end MOD21_02254974
|
||||
|
||||
thumb_func_start MOD21_02254990
|
||||
MOD21_02254990: ; 0x02254990
|
||||
ldrb r2, [r0, #2]
|
||||
@@ -189,13 +128,3 @@ _02254A66:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
thumb_func_end MOD21_02254A38
|
||||
|
||||
.section .rodata
|
||||
|
||||
.global MOD21_02254D80
|
||||
MOD21_02254D80: ; 0x02254D80
|
||||
.byte 0x10, 0xAF, 0x10, 0xCF
|
||||
|
||||
.global MOD21_02254D84
|
||||
MOD21_02254D84: ; 0x02254D84
|
||||
.word MOD21_022549A4, MOD21_022549E4, MOD21_02254A38
|
||||
|
||||
@@ -18,5 +18,8 @@ typedef struct UnkStruct02254854
|
||||
BOOL MOD21_02254854(UnkStruct02254854 **param0, u32 param1, u32 param2, u32 param3);
|
||||
BOOL MOD21_0225489C(UnkStruct02254854 *param0, u32 param1, u32 param2, u32 param3);
|
||||
void MOD21_02254918(UnkStruct02254854 *param0);
|
||||
void MOD21_02254930(u32 param0, UnkStruct02254854 *param1);
|
||||
void MOD21_0225496C(UnkStruct02254854 *param0);
|
||||
void MOD21_02254974(u32 param0, u32 param1, u32 param2, UnkStruct02254854 * param3);
|
||||
|
||||
#endif //POKEDIAMOND_MOD21_02254854_H
|
||||
|
||||
@@ -3,24 +3,37 @@
|
||||
#include "unk_0200CA44.h"
|
||||
#include "mod21_02254854.h"
|
||||
|
||||
extern void MOD21_02254930(void *, void *);
|
||||
|
||||
extern void GF_RTC_CopyTime(u32 *param0);
|
||||
|
||||
extern void MOD21_02254D80();
|
||||
extern void MOD21_02254974();
|
||||
u8 const MOD21_02254D80[] = { 0x10, 0xAF, 0x10, 0xCF };
|
||||
extern BOOL MOD21_02254A6C(u32 *param0, u32 *param1);
|
||||
extern BOOL MOD20_02254130(void *param0, BOOL param1, void *param2, UnkStruct02254854 *param3, u32 param4);
|
||||
extern void MOD20_02252C14(u32 param0, BOOL param1);
|
||||
|
||||
extern u32 MOD21_022549A4(UnkStruct02254854 *);
|
||||
extern u32 MOD21_022549E4(UnkStruct02254854 *);
|
||||
extern u32 MOD21_02254A38(UnkStruct02254854 *);
|
||||
|
||||
extern void MOD21_02254B04(u32 param0);
|
||||
extern void MOD20_02254198(BOOL param0);
|
||||
extern void MOD20_022529A0(u32 param0);
|
||||
|
||||
extern void Poketch_InitApp(void *func1, void *func2);
|
||||
|
||||
THUMB_FUNC static void MOD21_02254840(void)
|
||||
{
|
||||
Poketch_InitApp(MOD21_02254854, MOD21_0225496C);
|
||||
}
|
||||
|
||||
#define NitroStaticInit MOD21_02254840
|
||||
#include "sinit.h"
|
||||
|
||||
THUMB_FUNC BOOL MOD21_02254854(UnkStruct02254854 **param0, u32 param1, u32 param2, u32 param3)
|
||||
{
|
||||
UnkStruct02254854 *alloced = (UnkStruct02254854 *)AllocFromHeap(8, sizeof(UnkStruct02254854));
|
||||
if (alloced != NULL)
|
||||
{
|
||||
if (MOD21_0225489C(alloced, param1, param2, param3) && FUN_0200CA44(MOD21_02254930, alloced, (void *)1))
|
||||
if (MOD21_0225489C(alloced, param1, param2, param3) && FUN_0200CA44((void (*)(u32, void *))MOD21_02254930, alloced, (void *)1))
|
||||
{
|
||||
*param0 = alloced;
|
||||
return TRUE;
|
||||
@@ -51,7 +64,7 @@ THUMB_FUNC BOOL MOD21_0225489C(UnkStruct02254854 *param0, u32 param1, u32 param2
|
||||
param0->Unk14[0] = param0->Unk14[0] % 0x3c;
|
||||
}
|
||||
param0->bytearray[5] = (u8)param0->Unk14[1];
|
||||
param0->Unk10 = MOD20_02254130(MOD21_02254D80, TRUE, MOD21_02254974, param0, 8);
|
||||
param0->Unk10 = MOD20_02254130((void *)MOD21_02254D80, TRUE, MOD21_02254974, param0, 8);
|
||||
if (param0->Unk10 == FALSE)
|
||||
{
|
||||
return FALSE;
|
||||
@@ -62,9 +75,50 @@ THUMB_FUNC BOOL MOD21_0225489C(UnkStruct02254854 *param0, u32 param1, u32 param2
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
u32 (* const MOD21_02254D84[])(UnkStruct02254854 *) = { MOD21_022549A4, MOD21_022549E4, MOD21_02254A38 };
|
||||
|
||||
THUMB_FUNC void MOD21_02254918(UnkStruct02254854 *param0)
|
||||
{
|
||||
MOD21_02254B04(param0->Unk24);
|
||||
MOD20_02254198(param0->Unk10);
|
||||
FreeToHeap((void *)param0);
|
||||
}
|
||||
|
||||
THUMB_FUNC void MOD21_02254930(u32 param0, UnkStruct02254854 *param1)
|
||||
{
|
||||
if (param1->bytearray[0] >= 3)
|
||||
{
|
||||
return;
|
||||
}
|
||||
MOD20_02252C14(param1->Unk28, param1->Unk10);
|
||||
if (!MOD21_02254D84[param1->bytearray[0]](param1))
|
||||
{
|
||||
return;
|
||||
}
|
||||
MOD21_02254918(param1);
|
||||
FUN_0200CAB4((s32)param0);
|
||||
MOD20_022529A0(param1->Unk28);
|
||||
}
|
||||
|
||||
THUMB_FUNC void MOD21_0225496C(UnkStruct02254854 *param0)
|
||||
{
|
||||
param0->bytearray[2] = 1;
|
||||
}
|
||||
|
||||
THUMB_FUNC void MOD21_02254974(u32 param0, u32 param1, u32 param2, UnkStruct02254854 * param3)
|
||||
{
|
||||
#pragma unused (param0, param1)
|
||||
switch (param2)
|
||||
{
|
||||
case 1:
|
||||
param3->Unk20 = 1;
|
||||
param3->bytearray[6] = 1;
|
||||
return;
|
||||
case 0:
|
||||
param3->Unk20 = 0;
|
||||
param3->bytearray[6] = 1;
|
||||
return;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
#include "global.h"
|
||||
#include "mod21_02254854.h"
|
||||
|
||||
extern void Poketch_InitApp(void *func1, void *func2);
|
||||
extern void MOD21_0225496C();
|
||||
|
||||
THUMB_FUNC static void MOD21_02254840(void)
|
||||
{
|
||||
Poketch_InitApp(MOD21_02254854, MOD21_0225496C);
|
||||
}
|
||||
|
||||
#define NitroStaticInit MOD21_02254840
|
||||
#include "sinit.h"
|
||||
@@ -2,25 +2,25 @@
|
||||
#include "main.h"
|
||||
#include "unk_0200CA44.h"
|
||||
|
||||
extern BOOL FUN_0201B60C(void *, void (*)(void *, void *), void *, void *);
|
||||
extern BOOL FUN_0201B60C(void *, void (*)(u32, void *), void *, void *);
|
||||
extern void FUN_0201B6A0(s32);
|
||||
|
||||
THUMB_FUNC BOOL FUN_0200CA44(void (*r0)(void *, void *), void * r1, void * r2)
|
||||
THUMB_FUNC BOOL FUN_0200CA44(void (*r0)(u32, void *), void * r1, void * r2)
|
||||
{
|
||||
return FUN_0201B60C(gMain.unk18, r0, r1, r2);
|
||||
}
|
||||
|
||||
THUMB_FUNC BOOL FUN_0200CA60(void (*r0)(void *, void *), void * r1, void * r2)
|
||||
THUMB_FUNC BOOL FUN_0200CA60(void (*r0)(u32, void *), void * r1, void * r2)
|
||||
{
|
||||
return FUN_0201B60C(gMain.unk1C, r0, r1, r2);
|
||||
}
|
||||
|
||||
THUMB_FUNC BOOL FUN_0200CA7C(void (*r0)(void *, void *), void * r1, void * r2)
|
||||
THUMB_FUNC BOOL FUN_0200CA7C(void (*r0)(u32, void *), void * r1, void * r2)
|
||||
{
|
||||
return FUN_0201B60C(gMain.unk24, r0, r1, r2);
|
||||
}
|
||||
|
||||
THUMB_FUNC BOOL FUN_0200CA98(void (*r0)(void *, void *), void * r1, void * r2)
|
||||
THUMB_FUNC BOOL FUN_0200CA98(void (*r0)(u32, void *), void * r1, void * r2)
|
||||
{
|
||||
return FUN_0201B60C(gMain.unk20, r0, r1, r2);
|
||||
}
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
#ifndef POKEDIAMOND_UNK_0200CA44_H
|
||||
#define POKEDIAMOND_UNK_0200CA44_H
|
||||
|
||||
BOOL FUN_0200CA44(void (*r0)(void *, void *), void * r1, void * r2);
|
||||
BOOL FUN_0200CA60(void (*r0)(void *, void *), void * r1, void * r2);
|
||||
BOOL FUN_0200CA7C(void (*r0)(void *, void *), void * r1, void * r2);
|
||||
BOOL FUN_0200CA98(void (*r0)(void *, void *), void * r1, void * r2);
|
||||
BOOL FUN_0200CA44(void (*r0)(u32, void *), void * r1, void * r2);
|
||||
BOOL FUN_0200CA60(void (*r0)(u32, void *), void * r1, void * r2);
|
||||
BOOL FUN_0200CA7C(void (*r0)(u32, void *), void * r1, void * r2);
|
||||
BOOL FUN_0200CA98(void (*r0)(u32, void *), void * r1, void * r2);
|
||||
void FUN_0200CAB4(s32 unk1);
|
||||
|
||||
#endif //POKEDIAMOND_UNK_0200CA44_H
|
||||
|
||||
Reference in New Issue
Block a user