mirror of
https://github.com/pret/pmd-sky.git
synced 2026-08-28 05:38:04 -05:00
Decomped sub_0205E448
Decomped by @Zur3l and @taxicat1
This commit is contained in:
@@ -1,31 +1,8 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "main_0205E448.inc"
|
||||
.include "main_0205E48C.inc"
|
||||
|
||||
.text
|
||||
|
||||
arm_func_start sub_0205E448
|
||||
sub_0205E448: ; 0x0205E448
|
||||
stmdb sp!, {r4, lr}
|
||||
mov lr, #0
|
||||
mov r4, lr
|
||||
mov r2, lr
|
||||
mov r3, #1
|
||||
b _0205E47C
|
||||
_0205E460:
|
||||
ldrb ip, [r1, r4, lsl #5]
|
||||
add r4, r4, #1
|
||||
cmp ip, #0
|
||||
moveq ip, r3
|
||||
movne ip, r2
|
||||
tst ip, #0xff
|
||||
addeq lr, lr, #1
|
||||
_0205E47C:
|
||||
cmp r4, r0
|
||||
blt _0205E460
|
||||
mov r0, lr
|
||||
ldmia sp!, {r4, pc}
|
||||
arm_func_end sub_0205E448
|
||||
|
||||
arm_func_start sub_0205E48C
|
||||
sub_0205E48C: ; 0x0205E48C
|
||||
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
||||
@@ -3,15 +3,17 @@
|
||||
|
||||
#include "mission.h"
|
||||
|
||||
bool8 sub_0205E1E8(struct mission* mission);
|
||||
bool8 IsMissionTypeSpecialEpisode(struct mission* mission);
|
||||
bool8 sub_0205E258(struct mission* mission);
|
||||
struct unkStruct_0205E3F8 {
|
||||
u32 data[8];
|
||||
};
|
||||
|
||||
bool8 sub_0205E1E8(struct mission* mission);
|
||||
bool8 IsMissionTypeSpecialEpisode(struct mission* mission);
|
||||
bool8 sub_0205E258(struct mission* mission);
|
||||
|
||||
bool8 sub_0205E288(struct mission *mission, u32 val, u8 *ptr2);
|
||||
bool8 sub_0205E2B8(u32 arg0, u8 *arg1);
|
||||
bool8 sub_0205E3F8(struct unkStruct_0205E3F8 *src, s32 limit, struct unkStruct_0205E3F8 *destArray);
|
||||
s32 sub_0205E448(s32 arg0, struct mission* arg1);
|
||||
|
||||
#endif //PMDSKY_MAIN_0205E288_H
|
||||
|
||||
2
main.lsf
2
main.lsf
@@ -191,7 +191,7 @@ Static main
|
||||
Object src/main_0205E01C.o
|
||||
Object asm/main_0205E090.o
|
||||
Object src/main_0205E288.o
|
||||
Object asm/main_0205E448.o
|
||||
Object asm/main_0205E48C.o
|
||||
Object src/main_0205E954.o
|
||||
Object asm/main_0205E984.o
|
||||
Object src/main_0205EAC8.o
|
||||
|
||||
@@ -86,3 +86,22 @@ bool8 sub_0205E3F8(struct unkStruct_0205E3F8 *src, s32 limit, struct unkStruct_0
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
s32 sub_0205E448(s32 arg0, struct mission* arg1)
|
||||
{
|
||||
int ret = 0;
|
||||
for (int i = 0; i < arg0; i++) {
|
||||
u8 flag;
|
||||
if (!arg1[i].status) {
|
||||
flag = 1;
|
||||
} else {
|
||||
flag = 0;
|
||||
}
|
||||
|
||||
if (!flag) {
|
||||
ret++;
|
||||
}
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#include "main_0205E954.h"
|
||||
#include "main_0205E288.h"
|
||||
#include "mission.h"
|
||||
|
||||
extern struct mission_deliver_list MISSION_DELIVER_LIST_PTR;
|
||||
|
||||
extern s32 sub_0205E448(u32 a0, struct mission* mission);
|
||||
|
||||
s32 sub_0205E954(void)
|
||||
{
|
||||
return sub_0205E448(8, (struct mission*) MISSION_DELIVER_LIST_PTR.unk18);
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
#include "main_0205EAC8.h"
|
||||
#include "main_0205E288.h"
|
||||
#include "mission.h"
|
||||
|
||||
extern s32 sub_0205E448(u32 a, struct mission *mission);
|
||||
|
||||
extern struct mission_deliver_list MISSION_DELIVER_LIST_PTR;
|
||||
|
||||
s32 sub_0205EAC8(void)
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
#include "main_0205ED84.h"
|
||||
#include "main_0205E288.h"
|
||||
#include "mission.h"
|
||||
|
||||
extern s32 sub_0205E448(u32 a0, struct mission* mission);
|
||||
|
||||
extern struct mission_deliver_list MISSION_DELIVER_LIST_PTR;
|
||||
|
||||
s32 CountJobListMissions(void)
|
||||
|
||||
Reference in New Issue
Block a user