mirror of
https://github.com/pret/pmd-red.git
synced 2026-04-25 07:28:17 -05:00
decomp a few more funcs
This commit is contained in:
parent
601cdeb52f
commit
617e992dac
|
|
@ -4,117 +4,6 @@
|
|||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_809447C
|
||||
sub_809447C:
|
||||
push {r4,r5,lr}
|
||||
adds r5, r0, 0
|
||||
adds r4, r1, 0
|
||||
movs r2, 0x10
|
||||
bl RestoreIntegerBits
|
||||
adds r4, 0x2
|
||||
adds r0, r5, 0
|
||||
adds r1, r4, 0
|
||||
movs r2, 0x10
|
||||
bl RestoreIntegerBits
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_809447C
|
||||
|
||||
thumb_func_start sub_809449C
|
||||
sub_809449C:
|
||||
push {r4,r5,lr}
|
||||
adds r5, r0, 0
|
||||
adds r4, r1, 0
|
||||
movs r2, 0x10
|
||||
bl SaveIntegerBits
|
||||
adds r4, 0x2
|
||||
adds r0, r5, 0
|
||||
adds r1, r4, 0
|
||||
movs r2, 0x10
|
||||
bl SaveIntegerBits
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_809449C
|
||||
|
||||
thumb_func_start sub_80944BC
|
||||
sub_80944BC:
|
||||
push {r4,lr}
|
||||
sub sp, 0x8
|
||||
adds r4, r1, 0
|
||||
lsls r0, 16
|
||||
asrs r1, r0, 16
|
||||
ldr r0, _080944F4
|
||||
cmp r1, r0
|
||||
bgt _08094500
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
mov r0, sp
|
||||
bl sub_8092AA8
|
||||
ldr r0, _080944F8
|
||||
mov r1, sp
|
||||
movs r2, 0
|
||||
bl sub_80928C0
|
||||
ldr r0, _080944FC
|
||||
ldr r0, [r0]
|
||||
adds r2, r4, 0
|
||||
adds r2, 0xC8
|
||||
adds r1, r4, 0
|
||||
movs r3, 0
|
||||
bl xxx_format_string
|
||||
b _08094516
|
||||
.align 2, 0
|
||||
_080944F4: .4byte 0x000001f3
|
||||
_080944F8: .4byte gUnknown_202DE58
|
||||
_080944FC: .4byte gUnknown_811383C
|
||||
_08094500:
|
||||
ldr r0, _08094520
|
||||
ldr r2, _08094524
|
||||
adds r1, r2
|
||||
lsls r1, 3
|
||||
adds r0, 0x4
|
||||
adds r1, r0
|
||||
ldr r1, [r1]
|
||||
adds r0, r4, 0
|
||||
movs r2, 0xC8
|
||||
bl strncpy
|
||||
_08094516:
|
||||
add sp, 0x8
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08094520: .4byte gUnknown_8113080
|
||||
_08094524: .4byte 0xfffffe0c
|
||||
thumb_func_end sub_80944BC
|
||||
|
||||
thumb_func_start sub_8094528
|
||||
sub_8094528:
|
||||
push {lr}
|
||||
lsls r0, 16
|
||||
asrs r1, r0, 16
|
||||
ldr r0, _08094544
|
||||
cmp r1, r0
|
||||
ble _08094550
|
||||
ldr r0, _08094548
|
||||
ldr r2, _0809454C
|
||||
adds r1, r2
|
||||
lsls r1, 3
|
||||
adds r1, r0
|
||||
ldrb r0, [r1]
|
||||
b _08094552
|
||||
.align 2, 0
|
||||
_08094544: .4byte 0x000001f3
|
||||
_08094548: .4byte gUnknown_8113080
|
||||
_0809454C: .4byte 0xfffffe0c
|
||||
_08094550:
|
||||
movs r0, 0x1
|
||||
_08094552:
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8094528
|
||||
|
||||
thumb_func_start sub_8094558
|
||||
sub_8094558:
|
||||
|
|
|
|||
|
|
@ -1,5 +1,31 @@
|
|||
#include "global.h"
|
||||
#include "item.h"
|
||||
#include "number_util.h"
|
||||
#include "code_8092334.h"
|
||||
#include "moves.h"
|
||||
|
||||
struct unkStruct_8113080
|
||||
{
|
||||
u8 unk0;
|
||||
u8 *unk4; // some string
|
||||
};
|
||||
|
||||
extern u8 gUnknown_202DE58[];
|
||||
extern u8 gAvailablePokemonNames[];
|
||||
extern u8 *gUnknown_811383C[];
|
||||
extern struct unkStruct_8113080 gUnknown_8113080[];
|
||||
|
||||
struct unkStruct_80928C0
|
||||
{
|
||||
u32 unk0;
|
||||
s32 unk4;
|
||||
u8 unk8;
|
||||
u8 unk9;
|
||||
};
|
||||
|
||||
void sub_80928C0(u8 *buffer, struct PokemonMove *move, struct unkStruct_80928C0 *param_3);
|
||||
extern void xxx_format_string(const char *, u8 *, void *, u32);
|
||||
|
||||
|
||||
s32 RoundUpFixedPoint(s32 fixedPointNumber)
|
||||
{
|
||||
|
|
@ -20,3 +46,44 @@ s32 RoundUpFixedPoint(s32 fixedPointNumber)
|
|||
return (s16) fixedPointNumber;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_809447C(struct unkStruct_8094924 *r0, u8 *r1)
|
||||
{
|
||||
RestoreIntegerBits(r0, r1, 0x10);
|
||||
RestoreIntegerBits(r0, r1 + 2, 0x10);
|
||||
}
|
||||
|
||||
void sub_809449C(struct unkStruct_8094924 *r0, u8 *r1)
|
||||
{
|
||||
SaveIntegerBits(r0, r1, 0x10);
|
||||
SaveIntegerBits(r0, r1 + 2, 0x10);
|
||||
}
|
||||
|
||||
void sub_80944BC(s16 moveID, u8 *arg2)
|
||||
{
|
||||
u16 moveID_u16;
|
||||
s32 moveID_s32 = moveID;
|
||||
struct PokemonMove stack;
|
||||
|
||||
if (moveID_s32 <= 0x1F3) {
|
||||
// Needed this cast/variable to match
|
||||
moveID_u16 = moveID_s32;
|
||||
sub_8092AA8(&stack, moveID_u16);
|
||||
sub_80928C0(gUnknown_202DE58, &stack, NULL);
|
||||
xxx_format_string(*gUnknown_811383C, arg2, arg2 + 200, 0);
|
||||
} else {
|
||||
strncpy(arg2, gUnknown_8113080[moveID + 0xfffffe0C].unk4, 200);
|
||||
}
|
||||
}
|
||||
|
||||
u8 sub_8094528(s16 moveID)
|
||||
{
|
||||
if(moveID <= 0x1F3)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
return gUnknown_8113080[moveID + 0xfffffe0C].unk0;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user