Finish decomp of mevent_server
This commit is contained in:
@@ -1,740 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_814505C
|
||||
sub_814505C: @ 814505C
|
||||
push {lr}
|
||||
cmp r0, 0
|
||||
bne _08145064
|
||||
adds r0, r1, 0
|
||||
_08145064:
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_814505C
|
||||
|
||||
thumb_func_start sub_8145068
|
||||
sub_8145068: @ 8145068
|
||||
push {lr}
|
||||
cmp r1, r0
|
||||
bcs _08145072
|
||||
movs r0, 0
|
||||
b _0814507C
|
||||
_08145072:
|
||||
cmp r1, r0
|
||||
beq _0814507A
|
||||
movs r0, 0x2
|
||||
b _0814507C
|
||||
_0814507A:
|
||||
movs r0, 0x1
|
||||
_0814507C:
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8145068
|
||||
|
||||
thumb_func_start sub_8145080
|
||||
sub_8145080: @ 8145080
|
||||
movs r1, 0x4
|
||||
str r1, [r0, 0x8]
|
||||
movs r0, 0
|
||||
bx lr
|
||||
thumb_func_end sub_8145080
|
||||
|
||||
thumb_func_start sub_8145088
|
||||
sub_8145088: @ 8145088
|
||||
movs r0, 0x3
|
||||
bx lr
|
||||
thumb_func_end sub_8145088
|
||||
|
||||
thumb_func_start sub_814508C
|
||||
sub_814508C: @ 814508C
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
adds r0, 0x38
|
||||
bl sub_8144844
|
||||
cmp r0, 0
|
||||
beq _0814509E
|
||||
movs r0, 0x4
|
||||
str r0, [r4, 0x8]
|
||||
_0814509E:
|
||||
movs r0, 0x1
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_814508C
|
||||
|
||||
thumb_func_start sub_81450A8
|
||||
sub_81450A8: @ 81450A8
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
adds r0, 0x38
|
||||
bl sub_8144850
|
||||
cmp r0, 0
|
||||
beq _081450BA
|
||||
movs r0, 0x4
|
||||
str r0, [r4, 0x8]
|
||||
_081450BA:
|
||||
movs r0, 0x1
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_81450A8
|
||||
|
||||
thumb_func_start sub_81450C4
|
||||
sub_81450C4: @ 81450C4
|
||||
push {r4,r5,lr}
|
||||
adds r5, r0, 0
|
||||
ldr r0, [r5, 0xC]
|
||||
lsls r1, r0, 1
|
||||
adds r1, r0
|
||||
lsls r1, 2
|
||||
ldr r2, [r5, 0x10]
|
||||
adds r4, r2, r1
|
||||
adds r0, 0x1
|
||||
str r0, [r5, 0xC]
|
||||
ldr r0, [r4]
|
||||
cmp r0, 0x1D
|
||||
bls _081450E0
|
||||
b _081455F8
|
||||
_081450E0:
|
||||
lsls r0, 2
|
||||
ldr r1, _081450EC @ =_081450F0
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
mov pc, r0
|
||||
.align 2, 0
|
||||
_081450EC: .4byte _081450F0
|
||||
.align 2, 0
|
||||
_081450F0:
|
||||
.4byte _08145168
|
||||
.4byte _08145190
|
||||
.4byte _08145196
|
||||
.4byte _081451C4
|
||||
.4byte _08145268
|
||||
.4byte _081451E4
|
||||
.4byte _08145228
|
||||
.4byte _0814527C
|
||||
.4byte _081452AC
|
||||
.4byte _081452EC
|
||||
.4byte _08145320
|
||||
.4byte _08145350
|
||||
.4byte _08145378
|
||||
.4byte _081453D8
|
||||
.4byte _081453A4
|
||||
.4byte _08145440
|
||||
.4byte _0814540C
|
||||
.4byte _081454AA
|
||||
.4byte _08145458
|
||||
.4byte _08145470
|
||||
.4byte _0814549C
|
||||
.4byte _08145510
|
||||
.4byte _081454B8
|
||||
.4byte _081454E4
|
||||
.4byte _08145538
|
||||
.4byte _08145542
|
||||
.4byte _0814554C
|
||||
.4byte _08145588
|
||||
.4byte _081455C0
|
||||
.4byte _081455EC
|
||||
_08145168:
|
||||
ldr r0, [r4, 0x8]
|
||||
cmp r0, 0
|
||||
beq _0814517C
|
||||
ldr r0, _08145188 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
movs r1, 0xB1
|
||||
lsls r1, 1
|
||||
ldr r2, _0814518C @ =gUnknown_8466FD4 "cmd->parameter == NULL"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_0814517C:
|
||||
movs r0, 0x1
|
||||
str r0, [r5, 0x8]
|
||||
ldr r0, [r4, 0x4]
|
||||
str r0, [r5, 0x4]
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_08145188: .4byte gUnknown_8466F80
|
||||
_0814518C: .4byte gUnknown_8466FD4
|
||||
_08145190:
|
||||
movs r0, 0x3
|
||||
str r0, [r5, 0x8]
|
||||
b _081455F8
|
||||
_08145196:
|
||||
ldr r0, [r4, 0x8]
|
||||
cmp r0, 0
|
||||
beq _081451AA
|
||||
ldr r0, _081451BC @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
movs r1, 0xB6
|
||||
lsls r1, 1
|
||||
ldr r2, _081451C0 @ =gUnknown_8466FD4 "cmd->parameter == NULL"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_081451AA:
|
||||
adds r0, r5, 0
|
||||
adds r0, 0x38
|
||||
ldr r1, [r4, 0x4]
|
||||
ldr r2, [r5, 0x14]
|
||||
bl sub_81448AC
|
||||
movs r0, 0x2
|
||||
str r0, [r5, 0x8]
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_081451BC: .4byte gUnknown_8466F80
|
||||
_081451C0: .4byte gUnknown_8466FD4
|
||||
_081451C4:
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
beq _08145272
|
||||
ldr r0, _081451DC @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
movs r1, 0xB9
|
||||
lsls r1, 1
|
||||
ldr r2, _081451E0 @ =gUnknown_8466FEC "cmd->flag == FALSE"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
b _08145272
|
||||
.align 2, 0
|
||||
_081451DC: .4byte gUnknown_8466F80
|
||||
_081451E0: .4byte gUnknown_8466FEC
|
||||
_081451E4:
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
beq _081451F8
|
||||
ldr r0, _08145218 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
movs r1, 0xBC
|
||||
lsls r1, 1
|
||||
ldr r2, _0814521C @ =gUnknown_8466FEC "cmd->flag == FALSE"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_081451F8:
|
||||
ldr r0, [r4, 0x8]
|
||||
cmp r0, 0
|
||||
beq _0814520A
|
||||
ldr r0, _08145218 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
ldr r1, _08145220 @ =0x00000179
|
||||
ldr r2, _08145224 @ =gUnknown_8466FD4 "cmd->parameter == NULL"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_0814520A:
|
||||
ldr r0, [r5, 0x20]
|
||||
ldr r1, [r5, 0x14]
|
||||
movs r2, 0x64
|
||||
bl memcpy
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_08145218: .4byte gUnknown_8466F80
|
||||
_0814521C: .4byte gUnknown_8466FEC
|
||||
_08145220: .4byte 0x00000179
|
||||
_08145224: .4byte gUnknown_8466FD4
|
||||
_08145228:
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
beq _0814523C
|
||||
ldr r0, _08145258 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
movs r1, 0xBF
|
||||
lsls r1, 1
|
||||
ldr r2, _0814525C @ =gUnknown_8466FEC "cmd->flag == FALSE"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_0814523C:
|
||||
ldr r0, [r4, 0x8]
|
||||
cmp r0, 0
|
||||
beq _0814524E
|
||||
ldr r0, _08145258 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
ldr r1, _08145260 @ =0x0000017f
|
||||
ldr r2, _08145264 @ =gUnknown_8466FD4 "cmd->parameter == NULL"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_0814524E:
|
||||
ldr r0, [r5, 0x20]
|
||||
bl sub_81443D4
|
||||
str r0, [r5, 0x4]
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_08145258: .4byte gUnknown_8466F80
|
||||
_0814525C: .4byte gUnknown_8466FEC
|
||||
_08145260: .4byte 0x0000017f
|
||||
_08145264: .4byte gUnknown_8466FD4
|
||||
_08145268:
|
||||
ldr r1, [r5, 0x4]
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r1, r0
|
||||
beq _08145272
|
||||
b _081455F8
|
||||
_08145272:
|
||||
movs r0, 0
|
||||
str r0, [r5, 0xC]
|
||||
ldr r0, [r4, 0x8]
|
||||
str r0, [r5, 0x10]
|
||||
b _081455F8
|
||||
_0814527C:
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
beq _08145290
|
||||
ldr r0, _081452A4 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
movs r1, 0xC6
|
||||
lsls r1, 1
|
||||
ldr r2, _081452A8 @ =gUnknown_8466FEC "cmd->flag == FALSE"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_08145290:
|
||||
ldr r0, [r4, 0x8]
|
||||
ldr r1, [r5, 0x18]
|
||||
bl sub_814505C
|
||||
adds r2, r0, 0
|
||||
ldr r1, [r5, 0x20]
|
||||
bl sub_8144418
|
||||
str r0, [r5, 0x4]
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_081452A4: .4byte gUnknown_8466F80
|
||||
_081452A8: .4byte gUnknown_8466FEC
|
||||
_081452AC:
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
beq _081452C0
|
||||
ldr r0, _081452DC @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
movs r1, 0xC9
|
||||
lsls r1, 1
|
||||
ldr r2, _081452E0 @ =gUnknown_8466FEC "cmd->flag == FALSE"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_081452C0:
|
||||
ldr r0, [r4, 0x8]
|
||||
cmp r0, 0
|
||||
beq _081452D2
|
||||
ldr r0, _081452DC @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
ldr r1, _081452E4 @ =0x00000193
|
||||
ldr r2, _081452E8 @ =gUnknown_8466FD4 "cmd->parameter == NULL"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_081452D2:
|
||||
ldr r0, [r5, 0x14]
|
||||
ldr r0, [r0]
|
||||
str r0, [r5, 0x4]
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_081452DC: .4byte gUnknown_8466F80
|
||||
_081452E0: .4byte gUnknown_8466FEC
|
||||
_081452E4: .4byte 0x00000193
|
||||
_081452E8: .4byte gUnknown_8466FD4
|
||||
_081452EC:
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
beq _08145300
|
||||
ldr r0, _08145318 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
movs r1, 0xCC
|
||||
lsls r1, 1
|
||||
ldr r2, _0814531C @ =gUnknown_8466FEC "cmd->flag == FALSE"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_08145300:
|
||||
ldr r0, [r4, 0x8]
|
||||
adds r1, r5, 0
|
||||
adds r1, 0x34
|
||||
bl sub_814505C
|
||||
adds r2, r0, 0
|
||||
ldr r1, [r5, 0x20]
|
||||
bl sub_8144434
|
||||
str r0, [r5, 0x4]
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_08145318: .4byte gUnknown_8466F80
|
||||
_0814531C: .4byte gUnknown_8466FEC
|
||||
_08145320:
|
||||
ldr r0, [r4, 0x8]
|
||||
cmp r0, 0
|
||||
beq _08145332
|
||||
ldr r0, _08145344 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
ldr r1, _08145348 @ =0x0000019f
|
||||
ldr r2, _0814534C @ =gUnknown_8466FD4 "cmd->parameter == NULL"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_08145332:
|
||||
ldr r0, [r5, 0x20]
|
||||
ldr r1, [r4, 0x4]
|
||||
bl sub_81444B0
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
str r0, [r5, 0x4]
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_08145344: .4byte gUnknown_8466F80
|
||||
_08145348: .4byte 0x0000019f
|
||||
_0814534C: .4byte gUnknown_8466FD4
|
||||
_08145350:
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
beq _08145364
|
||||
ldr r0, _08145370 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
movs r1, 0xD2
|
||||
lsls r1, 1
|
||||
ldr r2, _08145374 @ =gUnknown_8466FEC "cmd->flag == FALSE"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_08145364:
|
||||
ldr r0, [r5, 0x20]
|
||||
ldr r1, [r4, 0x8]
|
||||
bl sub_8144474
|
||||
str r0, [r5, 0x4]
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_08145370: .4byte gUnknown_8466F80
|
||||
_08145374: .4byte gUnknown_8466FEC
|
||||
_08145378:
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
beq _0814538C
|
||||
ldr r0, _0814539C @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
movs r1, 0xD5
|
||||
lsls r1, 1
|
||||
ldr r2, _081453A0 @ =gUnknown_8466FEC "cmd->flag == FALSE"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_0814538C:
|
||||
ldr r0, [r4, 0x8]
|
||||
ldr r1, [r5, 0x14]
|
||||
ldr r1, [r1]
|
||||
bl sub_8145068
|
||||
str r0, [r5, 0x4]
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_0814539C: .4byte gUnknown_8466F80
|
||||
_081453A0: .4byte gUnknown_8466FEC
|
||||
_081453A4:
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
beq _081453B8
|
||||
ldr r0, _081453D0 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
movs r1, 0xD8
|
||||
lsls r1, 1
|
||||
ldr r2, _081453D4 @ =gUnknown_8466FEC "cmd->flag == FALSE"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_081453B8:
|
||||
ldr r0, [r4, 0x8]
|
||||
ldr r1, [r5, 0x1C]
|
||||
bl sub_814505C
|
||||
adds r2, r0, 0
|
||||
movs r3, 0xDE
|
||||
lsls r3, 1
|
||||
adds r0, r5, 0
|
||||
movs r1, 0x17
|
||||
bl sub_814501C
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_081453D0: .4byte gUnknown_8466F80
|
||||
_081453D4: .4byte gUnknown_8466FEC
|
||||
_081453D8:
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
beq _081453EC
|
||||
ldr r0, _08145404 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
movs r1, 0xDB
|
||||
lsls r1, 1
|
||||
ldr r2, _08145408 @ =gUnknown_8466FEC "cmd->flag == FALSE"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_081453EC:
|
||||
ldr r0, [r4, 0x8]
|
||||
ldr r1, [r5, 0x18]
|
||||
bl sub_814505C
|
||||
adds r2, r0, 0
|
||||
movs r3, 0xA6
|
||||
lsls r3, 1
|
||||
adds r0, r5, 0
|
||||
movs r1, 0x16
|
||||
bl sub_814501C
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_08145404: .4byte gUnknown_8466F80
|
||||
_08145408: .4byte gUnknown_8466FEC
|
||||
_0814540C:
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
beq _08145420
|
||||
ldr r0, _08145438 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
movs r1, 0xDE
|
||||
lsls r1, 1
|
||||
ldr r2, _0814543C @ =gUnknown_8466FEC "cmd->flag == FALSE"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_08145420:
|
||||
ldr r0, [r4, 0x8]
|
||||
adds r1, r5, 0
|
||||
adds r1, 0x34
|
||||
bl sub_814505C
|
||||
adds r2, r0, 0
|
||||
adds r0, r5, 0
|
||||
movs r1, 0x18
|
||||
movs r3, 0x4
|
||||
bl sub_814501C
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_08145438: .4byte gUnknown_8466F80
|
||||
_0814543C: .4byte gUnknown_8466FEC
|
||||
_08145440:
|
||||
ldr r2, [r4, 0x8]
|
||||
cmp r2, 0
|
||||
bne _0814544C
|
||||
ldr r2, [r5, 0x24]
|
||||
ldr r3, [r5, 0x28]
|
||||
b _0814544E
|
||||
_0814544C:
|
||||
ldr r3, [r4, 0x4]
|
||||
_0814544E:
|
||||
adds r0, r5, 0
|
||||
movs r1, 0x19
|
||||
bl sub_814501C
|
||||
b _081455F8
|
||||
_08145458:
|
||||
ldr r2, [r4, 0x8]
|
||||
cmp r2, 0
|
||||
bne _08145464
|
||||
ldr r2, [r5, 0x2C]
|
||||
ldr r3, [r5, 0x30]
|
||||
b _08145466
|
||||
_08145464:
|
||||
ldr r3, [r4, 0x4]
|
||||
_08145466:
|
||||
adds r0, r5, 0
|
||||
movs r1, 0x10
|
||||
bl sub_814501C
|
||||
b _081455F8
|
||||
_08145470:
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
beq _08145484
|
||||
ldr r0, _08145494 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
movs r1, 0xE9
|
||||
lsls r1, 1
|
||||
ldr r2, _08145498 @ =gUnknown_8466FEC "cmd->flag == FALSE"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_08145484:
|
||||
ldr r2, [r4, 0x8]
|
||||
adds r0, r5, 0
|
||||
movs r1, 0x1A
|
||||
movs r3, 0xBC
|
||||
bl sub_814501C
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_08145494: .4byte gUnknown_8466F80
|
||||
_08145498: .4byte gUnknown_8466FEC
|
||||
_0814549C:
|
||||
ldr r2, [r4, 0x8]
|
||||
ldr r3, [r4, 0x4]
|
||||
adds r0, r5, 0
|
||||
movs r1, 0x15
|
||||
bl sub_814501C
|
||||
b _081455F8
|
||||
_081454AA:
|
||||
ldr r2, [r4, 0x8]
|
||||
ldr r3, [r4, 0x4]
|
||||
adds r0, r5, 0
|
||||
movs r1, 0x1C
|
||||
bl sub_814501C
|
||||
b _081455F8
|
||||
_081454B8:
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
beq _081454CA
|
||||
ldr r0, _081454D8 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
ldr r1, _081454DC @ =0x000001e1
|
||||
ldr r2, _081454E0 @ =gUnknown_8466FEC "cmd->flag == FALSE"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_081454CA:
|
||||
ldr r0, [r5, 0x18]
|
||||
ldr r1, [r4, 0x8]
|
||||
movs r2, 0xA6
|
||||
lsls r2, 1
|
||||
bl memcpy
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_081454D8: .4byte gUnknown_8466F80
|
||||
_081454DC: .4byte 0x000001e1
|
||||
_081454E0: .4byte gUnknown_8466FEC
|
||||
_081454E4:
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
beq _081454F8
|
||||
ldr r0, _08145508 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
movs r1, 0xF3
|
||||
lsls r1, 1
|
||||
ldr r2, _0814550C @ =gUnknown_8466FEC "cmd->flag == FALSE"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_081454F8:
|
||||
ldr r0, [r5, 0x1C]
|
||||
ldr r1, [r4, 0x8]
|
||||
movs r2, 0xDE
|
||||
lsls r2, 1
|
||||
bl memcpy
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_08145508: .4byte gUnknown_8466F80
|
||||
_0814550C: .4byte gUnknown_8466FEC
|
||||
_08145510:
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
beq _08145522
|
||||
ldr r0, _0814552C @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
ldr r1, _08145530 @ =0x000001eb
|
||||
ldr r2, _08145534 @ =gUnknown_8466FEC "cmd->flag == FALSE"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_08145522:
|
||||
ldr r0, [r4, 0x8]
|
||||
ldr r0, [r0]
|
||||
str r0, [r5, 0x34]
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_0814552C: .4byte gUnknown_8466F80
|
||||
_08145530: .4byte 0x000001eb
|
||||
_08145534: .4byte gUnknown_8466FEC
|
||||
_08145538:
|
||||
ldr r0, [r4, 0x8]
|
||||
str r0, [r5, 0x24]
|
||||
ldr r0, [r4, 0x4]
|
||||
str r0, [r5, 0x28]
|
||||
b _081455F8
|
||||
_08145542:
|
||||
ldr r0, [r4, 0x8]
|
||||
str r0, [r5, 0x2C]
|
||||
ldr r0, [r4, 0x4]
|
||||
str r0, [r5, 0x30]
|
||||
b _081455F8
|
||||
_0814554C:
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
bne _08145558
|
||||
ldr r0, [r4, 0x8]
|
||||
cmp r0, 0
|
||||
beq _08145566
|
||||
_08145558:
|
||||
ldr r0, _08145580 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
movs r1, 0xFD
|
||||
lsls r1, 1
|
||||
ldr r2, _08145584 @ =gUnknown_8467000 "cmd->flag == FALSE && cmd->parameter == NULL"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_08145566:
|
||||
ldr r4, [r5, 0x18]
|
||||
bl sav1_get_mevent_buffer_1
|
||||
adds r1, r0, 0
|
||||
movs r2, 0xA6
|
||||
lsls r2, 1
|
||||
adds r0, r4, 0
|
||||
bl memcpy
|
||||
ldr r0, [r5, 0x18]
|
||||
bl sub_814410C
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_08145580: .4byte gUnknown_8466F80
|
||||
_08145584: .4byte gUnknown_8467000
|
||||
_08145588:
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
bne _08145594
|
||||
ldr r0, [r4, 0x8]
|
||||
cmp r0, 0
|
||||
beq _081455A2
|
||||
_08145594:
|
||||
ldr r0, _081455B8 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
movs r1, 0x80
|
||||
lsls r1, 2
|
||||
ldr r2, _081455BC @ =gUnknown_8467000 "cmd->flag == FALSE && cmd->parameter == NULL"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_081455A2:
|
||||
ldr r4, [r5, 0x1C]
|
||||
bl sub_8143D58
|
||||
adds r1, r0, 0
|
||||
movs r2, 0xDE
|
||||
lsls r2, 1
|
||||
adds r0, r4, 0
|
||||
bl memcpy
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_081455B8: .4byte gUnknown_8466F80
|
||||
_081455BC: .4byte gUnknown_8467000
|
||||
_081455C0:
|
||||
ldr r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
bne _081455CC
|
||||
ldr r0, [r4, 0x8]
|
||||
cmp r0, 0
|
||||
beq _081455D8
|
||||
_081455CC:
|
||||
ldr r0, _081455E0 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
ldr r1, _081455E4 @ =0x00000205
|
||||
ldr r2, _081455E8 @ =gUnknown_8467000 "cmd->flag == FALSE && cmd->parameter == NULL"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_081455D8:
|
||||
bl sub_8069E48
|
||||
str r0, [r5, 0x24]
|
||||
b _081455F8
|
||||
.align 2, 0
|
||||
_081455E0: .4byte gUnknown_8466F80
|
||||
_081455E4: .4byte 0x00000205
|
||||
_081455E8: .4byte gUnknown_8467000
|
||||
_081455EC:
|
||||
ldr r2, [r4, 0x8]
|
||||
ldr r3, [r4, 0x4]
|
||||
adds r0, r5, 0
|
||||
movs r1, 0x1B
|
||||
bl sub_814501C
|
||||
_081455F8:
|
||||
movs r0, 0x1
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_81450C4
|
||||
|
||||
thumb_func_start sub_8145600
|
||||
sub_8145600: @ 8145600
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
ldr r0, [r4, 0x8]
|
||||
cmp r0, 0x4
|
||||
bls _08145616
|
||||
ldr r0, _08145644 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
ldr r1, _08145648 @ =0x00000222
|
||||
ldr r2, _0814564C @ =gUnknown_8467044 "svr->mainseqno < NELEMS(func_tbl)"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_08145616:
|
||||
ldr r1, _08145650 @ =func_tbl
|
||||
ldr r0, [r4, 0x8]
|
||||
lsls r0, 2
|
||||
adds r0, r1
|
||||
ldr r1, [r0]
|
||||
adds r0, r4, 0
|
||||
bl _call_via_r1
|
||||
adds r5, r0, 0
|
||||
ldr r0, [r4, 0x8]
|
||||
cmp r0, 0x4
|
||||
bls _0814563C
|
||||
ldr r0, _08145644 @ =gUnknown_8466F80 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c"
|
||||
movs r1, 0x89
|
||||
lsls r1, 2
|
||||
ldr r2, _0814564C @ =gUnknown_8467044 "svr->mainseqno < NELEMS(func_tbl)"
|
||||
movs r3, 0x1
|
||||
bl AGBAssert
|
||||
_0814563C:
|
||||
adds r0, r5, 0
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08145644: .4byte gUnknown_8466F80
|
||||
_08145648: .4byte 0x00000222
|
||||
_0814564C: .4byte gUnknown_8467044
|
||||
_08145650: .4byte func_tbl
|
||||
thumb_func_end sub_8145600
|
||||
|
||||
.align 2, 0 @ Don't pad with nop.
|
||||
@@ -1,17 +1,5 @@
|
||||
.section .rodata
|
||||
|
||||
.align 2
|
||||
func_tbl:: @ 8467030
|
||||
.4byte sub_8145080
|
||||
.4byte sub_8145088
|
||||
.4byte sub_814508C
|
||||
.4byte sub_81450A8
|
||||
.4byte sub_81450C4
|
||||
|
||||
.align 2
|
||||
gUnknown_8467044:: @ 8467044
|
||||
.asciz "svr->mainseqno < NELEMS(func_tbl)"
|
||||
|
||||
.align 2
|
||||
gUnknown_8467068:: @ 8467068
|
||||
.incbin "baserom.gba", 0x467068, 0x8
|
||||
|
||||
@@ -33,12 +33,21 @@ struct MEvent_Str_2
|
||||
u8 fill_00[0x40];
|
||||
};
|
||||
|
||||
struct MEventBuffer_3120_Sub * sub_8143D58(void);
|
||||
struct MEventBuffer_32E0_Sub * sav1_get_mevent_buffer_1(void);
|
||||
struct MEventBuffer_3430_Sub * sav1_get_mevent_buffer_2(void);
|
||||
struct MysteryEventStruct * sub_8143D94(void);
|
||||
bool32 sub_8143DC8(const struct MEventBuffer_3120_Sub * src);
|
||||
bool32 sub_8143E1C(void);
|
||||
bool32 sub_8143EF4(const u8 * src);
|
||||
bool32 sub_8143F68(const struct MEventBuffer_32E0_Sub * data);
|
||||
void sub_814410C(struct MEventBuffer_32E0_Sub * buffer);
|
||||
bool32 sub_8144254(const u16 * data);
|
||||
void sub_81442CC(struct MEventStruct_Unk1442CC * data);
|
||||
bool32 sub_81443D4(const struct MEventStruct_Unk1442CC * data);
|
||||
u32 sub_8144418(const u16 * a0, const struct MEventStruct_Unk1442CC * a1, void * unused);
|
||||
u32 sub_8144434(const u16 * a0, const struct MEventStruct_Unk1442CC * a1, void * unused);
|
||||
bool32 sub_8144474(const struct MEventStruct_Unk1442CC * a0, const u16 * a1);
|
||||
u16 sub_81444B0(const struct MEventStruct_Unk1442CC * a0, u32 command);
|
||||
|
||||
#endif //GUARD_MEVENT_H
|
||||
|
||||
@@ -64,5 +64,6 @@ u8 *sub_8099244(void);
|
||||
void sub_80992A0(u8 *script, u16 scriptSize);
|
||||
bool32 sub_8069DFC(void);
|
||||
void sub_8069EA4(u8 * script, u16 scriptSize);
|
||||
u8 * sub_8069E48(void);
|
||||
|
||||
#endif // GUARD_SCRIPT_H
|
||||
|
||||
@@ -247,7 +247,6 @@ SECTIONS {
|
||||
src/mevent_server_sub.o(.text);
|
||||
src/mevent_server_ish.o(.text);
|
||||
src/mevent_server.o(.text);
|
||||
asm/mevent_server.o(.text);
|
||||
asm/mevent_8145654.o(.text);
|
||||
src/menews_jisan.o(.text);
|
||||
asm/seagallop.o(.text);
|
||||
|
||||
+2
-2
@@ -792,7 +792,7 @@ bool32 sub_81443D4(const struct MEventStruct_Unk1442CC * data)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
u32 sub_8144418(const u16 * a0, const struct MEventStruct_Unk1442CC * a1)
|
||||
u32 sub_8144418(const u16 * a0, const struct MEventStruct_Unk1442CC * a1, void * unused)
|
||||
{
|
||||
if (a1->unk_14 == 0)
|
||||
return 0;
|
||||
@@ -801,7 +801,7 @@ u32 sub_8144418(const u16 * a0, const struct MEventStruct_Unk1442CC * a1)
|
||||
return 2;
|
||||
}
|
||||
|
||||
u32 sub_8144434(const u16 * a0, const struct MEventStruct_Unk1442CC * a1)
|
||||
u32 sub_8144434(const u16 * a0, const struct MEventStruct_Unk1442CC * a1, void * unused)
|
||||
{
|
||||
s32 r4 = a1->unk_44 - sub_8144184(&a1->unk_20, a1->unk_44);
|
||||
if (r4 == 0)
|
||||
|
||||
+225
-16
@@ -13,18 +13,29 @@
|
||||
|
||||
extern u16 gBlockRecvBuffer[][128];
|
||||
|
||||
struct mevent_cmd
|
||||
{
|
||||
u32 instr;
|
||||
bool32 flag;
|
||||
void * parameter;
|
||||
};
|
||||
|
||||
struct mevent_srv_common
|
||||
{
|
||||
u32 unk_00;
|
||||
u32 unk_04;
|
||||
u32 mainseqno;
|
||||
u32 unk_0C;
|
||||
const void * unk_10;
|
||||
u32 cmdidx;
|
||||
const struct mevent_cmd * cmdBuffer;
|
||||
void * unk_14;
|
||||
void * unk_18;
|
||||
void * unk_1C;
|
||||
void * unk_20;
|
||||
u8 filler_24[0x14];
|
||||
struct MEventBuffer_32E0_Sub * unk_18;
|
||||
struct MEventBuffer_3120_Sub * unk_1C;
|
||||
struct MEventStruct_Unk1442CC * unk_20;
|
||||
void * unk_24;
|
||||
u32 unk_28;
|
||||
void * unk_2C;
|
||||
u32 unk_30;
|
||||
void * unk_34;
|
||||
struct mevent_srv_sub unk_38;
|
||||
};
|
||||
|
||||
@@ -73,8 +84,8 @@ void mevent_srv_init_common(struct mevent_srv_common * svr, const void * a1, u32
|
||||
svr->unk_1C = AllocZeroed(444);
|
||||
svr->unk_14 = AllocZeroed(ME_SEND_BUF_SIZE);
|
||||
svr->unk_20 = AllocZeroed(100);
|
||||
svr->unk_10 = a1;
|
||||
svr->unk_0C = 0;
|
||||
svr->cmdBuffer = a1;
|
||||
svr->cmdidx = 0;
|
||||
sub_814485C(&svr->unk_38, a2, a3);
|
||||
}
|
||||
|
||||
@@ -86,15 +97,213 @@ void mevent_srv_free_resources(struct mevent_srv_common * svr)
|
||||
Free(svr->unk_20);
|
||||
}
|
||||
|
||||
const char gUnknown_8466F80[] = "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c";
|
||||
const char gUnknown_8466FB8[] = "size <= ME_SEND_BUF_SIZE";
|
||||
const char gUnknown_8466FD4[] = "cmd->parameter == NULL";
|
||||
const char gUnknown_8466FEC[] = "cmd->flag == FALSE";
|
||||
const char gUnknown_8467000[] = "cmd->flag == FALSE && cmd->parameter == NULL";
|
||||
|
||||
void sub_814501C(struct mevent_srv_common * svr, u32 a1, void * a2, u32 size)
|
||||
{
|
||||
// AGB_ASSERT_EX(size <= ME_SEND_BUF_SIZE, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 257);
|
||||
size <= ME_SEND_BUF_SIZE ? NULL : AGBAssert(gUnknown_8466F80, 257, gUnknown_8466FB8, 1);
|
||||
AGB_ASSERT_EX(size <= ME_SEND_BUF_SIZE, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 257);
|
||||
sub_8144888(&svr->unk_38, a1, a2, size);
|
||||
}
|
||||
|
||||
void * sub_814505C(void * a0, void * a1)
|
||||
{
|
||||
if (a0 != NULL)
|
||||
return a0;
|
||||
else
|
||||
return a1;
|
||||
}
|
||||
|
||||
u32 sub_8145068(void * a0, void * a1)
|
||||
{
|
||||
if (a1 < a0)
|
||||
return 0;
|
||||
else if (a1 == a0)
|
||||
return 1;
|
||||
else
|
||||
return 2;
|
||||
}
|
||||
|
||||
u32 sub_8145080(struct mevent_srv_common * svr)
|
||||
{
|
||||
svr->mainseqno = 4;
|
||||
return 0;
|
||||
}
|
||||
|
||||
u32 sub_8145088(struct mevent_srv_common * svr)
|
||||
{
|
||||
return 3;
|
||||
}
|
||||
|
||||
u32 sub_814508C(struct mevent_srv_common * svr)
|
||||
{
|
||||
if (sub_8144844(&svr->unk_38))
|
||||
svr->mainseqno = 4;
|
||||
return 1;
|
||||
}
|
||||
|
||||
u32 sub_81450A8(struct mevent_srv_common * svr)
|
||||
{
|
||||
if (sub_8144850(&svr->unk_38))
|
||||
svr->mainseqno = 4;
|
||||
return 1;
|
||||
}
|
||||
|
||||
u32 sub_81450C4(struct mevent_srv_common * svr)
|
||||
{
|
||||
const struct mevent_cmd * cmd = &svr->cmdBuffer[svr->cmdidx];
|
||||
void * ptr;
|
||||
svr->cmdidx++;
|
||||
|
||||
switch (cmd->instr)
|
||||
{
|
||||
case 0:
|
||||
AGB_ASSERT_EX(cmd->parameter == NULL, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 354);
|
||||
svr->mainseqno = 1;
|
||||
svr->unk_04 = cmd->flag;
|
||||
break;
|
||||
case 1:
|
||||
svr->mainseqno = 3;
|
||||
break;
|
||||
case 2:
|
||||
AGB_ASSERT_EX(cmd->parameter == NULL, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 364);
|
||||
sub_81448AC(&svr->unk_38, cmd->flag, svr->unk_14);
|
||||
svr->mainseqno = 2;
|
||||
break;
|
||||
case 3:
|
||||
AGB_ASSERT_EX(cmd->flag == FALSE, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 370);
|
||||
svr->cmdidx = 0;
|
||||
svr->cmdBuffer = cmd->parameter;
|
||||
break;
|
||||
case 5:
|
||||
AGB_ASSERT_EX(cmd->flag == FALSE, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 376);
|
||||
AGB_ASSERT_EX(cmd->parameter == NULL, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 377);
|
||||
memcpy(svr->unk_20, svr->unk_14, 100);
|
||||
break;
|
||||
case 6:
|
||||
AGB_ASSERT_EX(cmd->flag == FALSE, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 382);
|
||||
AGB_ASSERT_EX(cmd->parameter == NULL, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 383);
|
||||
svr->unk_04 = sub_81443D4(svr->unk_20);
|
||||
break;
|
||||
case 4:
|
||||
if (svr->unk_04 == cmd->flag)
|
||||
{
|
||||
svr->cmdidx = 0;
|
||||
svr->cmdBuffer = cmd->parameter;
|
||||
}
|
||||
break;
|
||||
case 7:
|
||||
AGB_ASSERT_EX(cmd->flag == FALSE, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 396);
|
||||
ptr = sub_814505C(cmd->parameter, svr->unk_18);
|
||||
svr->unk_04 = sub_8144418(ptr, svr->unk_20, ptr);
|
||||
break;
|
||||
case 8:
|
||||
AGB_ASSERT_EX(cmd->flag == FALSE, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 402);
|
||||
AGB_ASSERT_EX(cmd->parameter == NULL, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 403);
|
||||
svr->unk_04 = *(u32 *)svr->unk_14;
|
||||
break;
|
||||
case 9:
|
||||
AGB_ASSERT_EX(cmd->flag == FALSE, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 408);
|
||||
ptr = sub_814505C(cmd->parameter, &svr->unk_34);
|
||||
svr->unk_04 = sub_8144434(ptr, svr->unk_20, ptr);
|
||||
break;
|
||||
case 10:
|
||||
AGB_ASSERT_EX(cmd->parameter == NULL, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 415);
|
||||
svr->unk_04 = sub_81444B0(svr->unk_20, cmd->flag);
|
||||
break;
|
||||
case 11:
|
||||
AGB_ASSERT_EX(cmd->flag == FALSE, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 420);
|
||||
svr->unk_04 = sub_8144474(svr->unk_20, cmd->parameter);
|
||||
break;
|
||||
case 12:
|
||||
AGB_ASSERT_EX(cmd->flag == FALSE, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 426);
|
||||
svr->unk_04 = sub_8145068(cmd->parameter, *(void **)svr->unk_14);
|
||||
break;
|
||||
case 14:
|
||||
AGB_ASSERT_EX(cmd->flag == FALSE, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 432);
|
||||
sub_814501C(svr, 0x17, sub_814505C(cmd->parameter, svr->unk_1C), 444);
|
||||
break;
|
||||
case 13:
|
||||
AGB_ASSERT_EX(cmd->flag == FALSE, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 438);
|
||||
sub_814501C(svr, 0x16, sub_814505C(cmd->parameter, svr->unk_18), 332);
|
||||
break;
|
||||
case 16:
|
||||
AGB_ASSERT_EX(cmd->flag == FALSE, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 444);
|
||||
sub_814501C(svr, 0x18, sub_814505C(cmd->parameter, &svr->unk_34), 4);
|
||||
break;
|
||||
case 15:
|
||||
if (cmd->parameter == NULL)
|
||||
sub_814501C(svr, 0x19, svr->unk_24, svr->unk_28);
|
||||
else
|
||||
sub_814501C(svr, 0x19, cmd->parameter, cmd->flag);
|
||||
break;
|
||||
case 18:
|
||||
if (cmd->parameter == NULL)
|
||||
sub_814501C(svr, 0x10, svr->unk_2C, svr->unk_30);
|
||||
else
|
||||
sub_814501C(svr, 0x10, cmd->parameter, cmd->flag);
|
||||
break;
|
||||
case 19:
|
||||
AGB_ASSERT_EX(cmd->flag == FALSE, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 466);
|
||||
sub_814501C(svr, 0x1a, cmd->parameter, 188);
|
||||
break;
|
||||
case 20:
|
||||
sub_814501C(svr, 0x15, cmd->parameter, cmd->flag);
|
||||
break;
|
||||
case 17:
|
||||
sub_814501C(svr, 0x1c, cmd->parameter, cmd->flag);
|
||||
break;
|
||||
case 22:
|
||||
AGB_ASSERT_EX(cmd->flag == FALSE, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 481);
|
||||
memcpy(svr->unk_18, cmd->parameter, 332);
|
||||
break;
|
||||
case 23:
|
||||
AGB_ASSERT_EX(cmd->flag == FALSE, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 486);
|
||||
memcpy(svr->unk_1C, cmd->parameter, 444);
|
||||
break;
|
||||
case 21:
|
||||
AGB_ASSERT_EX(cmd->flag == FALSE, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 491);
|
||||
svr->unk_34 = *(void **)cmd->parameter;
|
||||
break;
|
||||
case 24:
|
||||
svr->unk_24 = cmd->parameter;
|
||||
svr->unk_28 = cmd->flag;
|
||||
break;
|
||||
case 25:
|
||||
svr->unk_2C = cmd->parameter;
|
||||
svr->unk_30 = cmd->flag;
|
||||
break;
|
||||
case 26:
|
||||
AGB_ASSERT_EX(cmd->flag == FALSE && cmd->parameter == NULL, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 506);
|
||||
memcpy(svr->unk_18, sav1_get_mevent_buffer_1(), 332);
|
||||
sub_814410C(svr->unk_18);
|
||||
break;
|
||||
case 27:
|
||||
AGB_ASSERT_EX(cmd->flag == FALSE && cmd->parameter == NULL, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 512);
|
||||
memcpy(svr->unk_1C, sub_8143D58(), 444);
|
||||
break;
|
||||
case 28:
|
||||
AGB_ASSERT_EX(cmd->flag == FALSE && cmd->parameter == NULL, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 517);
|
||||
svr->unk_24 = sub_8069E48();
|
||||
break;
|
||||
case 29:
|
||||
sub_814501C(svr, 0x1b, cmd->parameter, cmd->flag);
|
||||
break;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
static u32 (*const func_tbl[])(struct mevent_srv_common *) = {
|
||||
sub_8145080,
|
||||
sub_8145088,
|
||||
sub_814508C,
|
||||
sub_81450A8,
|
||||
sub_81450C4
|
||||
};
|
||||
|
||||
u32 sub_8145600(struct mevent_srv_common * svr)
|
||||
{
|
||||
u32 response;
|
||||
AGB_ASSERT_EX(svr->mainseqno < NELEMS(func_tbl), "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 546);
|
||||
response = func_tbl[svr->mainseqno](svr);
|
||||
AGB_ASSERT_EX(svr->mainseqno < NELEMS(func_tbl), "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 548);
|
||||
return response;
|
||||
}
|
||||
|
||||
+20
-23
@@ -13,27 +13,26 @@
|
||||
|
||||
extern u16 gBlockRecvBuffer[][128];
|
||||
|
||||
struct mevent_cmd
|
||||
{
|
||||
u32 instr;
|
||||
u32 parameter;
|
||||
};
|
||||
|
||||
struct mevent_srv_ish
|
||||
{
|
||||
u32 unk_00;
|
||||
u32 unk_04;
|
||||
u32 mainseqno;
|
||||
u32 unk_0C;
|
||||
u32 unk_10;
|
||||
u32 cmdidx;
|
||||
void * unk_14;
|
||||
void * unk_18;
|
||||
void * unk_1C;
|
||||
struct mevent_cmd * cmdBuffer;
|
||||
void * unk_20;
|
||||
struct mevent_srv_sub unk_24;
|
||||
};
|
||||
|
||||
struct mevent_cmd
|
||||
{
|
||||
u32 instr;
|
||||
bool32 flag;
|
||||
u32 parameter;
|
||||
};
|
||||
|
||||
EWRAM_DATA struct mevent_srv_ish * gUnknown_203F3C0 = NULL;
|
||||
|
||||
void mevent_srv_ish_init(struct mevent_srv_ish *, u32, u32);
|
||||
@@ -85,7 +84,7 @@ void mevent_srv_ish_init(struct mevent_srv_ish * svr, u32 a1, u32 a2)
|
||||
svr->unk_0C = 0;
|
||||
svr->unk_14 = AllocZeroed(ME_SEND_BUF_SIZE);
|
||||
svr->unk_18 = AllocZeroed(ME_SEND_BUF_SIZE);
|
||||
svr->unk_1C = AllocZeroed(ME_SEND_BUF_SIZE);
|
||||
svr->cmdBuffer = AllocZeroed(ME_SEND_BUF_SIZE);
|
||||
svr->unk_20 = AllocZeroed(0x40);
|
||||
sub_814485C(&svr->unk_24, a1, a2);
|
||||
}
|
||||
@@ -94,14 +93,14 @@ void sub_8144BC0(struct mevent_srv_ish * svr)
|
||||
{
|
||||
Free(svr->unk_14);
|
||||
Free(svr->unk_18);
|
||||
Free(svr->unk_1C);
|
||||
Free(svr->cmdBuffer);
|
||||
Free(svr->unk_20);
|
||||
}
|
||||
|
||||
void sub_8144BE4(struct mevent_srv_ish * svr)
|
||||
{
|
||||
memcpy(svr->unk_1C, svr->unk_18, ME_SEND_BUF_SIZE);
|
||||
svr->unk_10 = 0;
|
||||
memcpy(svr->cmdBuffer, svr->unk_18, ME_SEND_BUF_SIZE);
|
||||
svr->cmdidx = 0;
|
||||
}
|
||||
|
||||
void sub_8144C00(struct mevent_srv_ish * svr, u32 a1, u32 a2)
|
||||
@@ -111,12 +110,10 @@ void sub_8144C00(struct mevent_srv_ish * svr, u32 a1, u32 a2)
|
||||
sub_8144888(&svr->unk_24, a1, svr->unk_14, 4);
|
||||
}
|
||||
|
||||
// funcs in array gUnknown_8466F60
|
||||
|
||||
u32 sub_8144C34(struct mevent_srv_ish * svr)
|
||||
{
|
||||
memcpy(svr->unk_1C, gUnknown_84687E0, ME_SEND_BUF_SIZE);
|
||||
svr->unk_10 = 0;
|
||||
memcpy(svr->cmdBuffer, gUnknown_84687E0, ME_SEND_BUF_SIZE);
|
||||
svr->cmdidx = 0;
|
||||
svr->mainseqno = 4;
|
||||
svr->unk_0C = 0;
|
||||
return 0;
|
||||
@@ -149,19 +146,19 @@ u32 sub_8144C80(struct mevent_srv_ish * svr)
|
||||
|
||||
u32 sub_8144CA0(struct mevent_srv_ish * svr)
|
||||
{
|
||||
u32 * r2 = (u32 *)svr->unk_1C + 2 * svr->unk_10;
|
||||
++svr->unk_10;
|
||||
switch (r2[0])
|
||||
struct mevent_cmd * cmd = &svr->cmdBuffer[svr->cmdidx];
|
||||
++svr->cmdidx;
|
||||
switch (cmd->instr)
|
||||
{
|
||||
case 0:
|
||||
break;
|
||||
case 1:
|
||||
svr->unk_04 = r2[1];
|
||||
svr->unk_04 = cmd->parameter;
|
||||
svr->mainseqno = 1;
|
||||
svr->unk_0C = 0;
|
||||
break;
|
||||
case 2:
|
||||
sub_81448AC(&svr->unk_24, r2[1], svr->unk_18);
|
||||
sub_81448AC(&svr->unk_24, cmd->parameter, svr->unk_18);
|
||||
svr->mainseqno = 2;
|
||||
svr->unk_0C = 0;
|
||||
break;
|
||||
@@ -175,7 +172,7 @@ u32 sub_8144CA0(struct mevent_srv_ish * svr)
|
||||
svr->unk_0C = 0;
|
||||
break;
|
||||
case 19:
|
||||
sub_8144C00(svr, 0x12, GetGameStat(r2[1]));
|
||||
sub_8144C00(svr, 0x12, GetGameStat(cmd->parameter));
|
||||
svr->mainseqno = 3;
|
||||
svr->unk_0C = 0;
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user