summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPheenoh <pheenoh@gmail.com>2021-02-17 13:01:00 -0500
committerPheenoh <pheenoh@gmail.com>2021-02-17 13:01:00 -0500
commit327dff36bedfbf052b8bb450976d90bade9884b4 (patch)
tree87b09d61be43a04d24ea7a75cd59e6b53c5cf9f6 /src
parente262f2c2243eae5a962a95b981f627bb12418d60 (diff)
fopOvlpReq_Request OK
Diffstat (limited to 'src')
-rw-r--r--src/f/f_op/f_op_overlap_req.cpp27
1 files changed, 21 insertions, 6 deletions
diff --git a/src/f/f_op/f_op_overlap_req.cpp b/src/f/f_op/f_op_overlap_req.cpp
index 766a0e2b25..d191be96ec 100644
--- a/src/f/f_op/f_op_overlap_req.cpp
+++ b/src/f/f_op/f_op_overlap_req.cpp
@@ -23,7 +23,6 @@ void fopOvlpReq_Handler__FP21overlap_request_class(void);
void fopOvlpReq_phase_Done__FP21overlap_request_class(void);
void fopOvlpReq_SetPeektime__FP21overlap_request_classUs(void);
void fopOvlpReq_Is_PeektimeLimit__FP21overlap_request_class(void);
-void fopOvlpReq_SetPeektime(void);
void fopOvlpReq_phase_Done(void);
void func_8001E748(void);
void func_8001E794(void);
@@ -33,9 +32,11 @@ void func_8001E8A4(void);
void func_8001E904(void);
}
+void fopOvlpReq_SetPeektime(overlap_request_class*, u16);
+
// additional symbols needed for f_op_overlap_req.cpp
// autogenerated by split.py v0.4 at 2021-02-15 20:24:53.163658
-extern u8 lbl_803A3890;
+extern cPhs__Handler* phaseMethod[8];
int fopOvlpReq_phase_Done(overlap_request_class* pOvlpReq) {
if (fpcM_Delete(pOvlpReq->field_0x20) == 1) {
@@ -107,13 +108,27 @@ int fopOvlpReq_phase_IsCreated(overlap_request_class* pOvlpReq) {
int fopOvlpReq_phase_Create(overlap_request_class* pOvlpReq) {
fpcLy_SetCurrentLayer(pOvlpReq->pCurrentLayer);
- pOvlpReq->field_0x14 = fpcSCtRq_Request(fpcLy_CurrentLayer(),pOvlpReq->field_0x10, 0,0,0);
+ pOvlpReq->field_0x14 = fpcSCtRq_Request(fpcLy_CurrentLayer(), pOvlpReq->field_0x10, 0, 0, 0);
return 2;
}
-asm request_base_class* fopOvlpReq_Request(overlap_request_class*, s16, u16) {
- nofralloc
-#include "f/f_op/f_op_overlap_req/asm/func_8001E954.s"
+request_base_class* fopOvlpReq_Request(overlap_request_class* pOvlpReq, s16 param_2, u16 param_3) {
+ if (pOvlpReq->field_0x4 == 1) {
+ pOvlpReq = 0;
+ return (request_base_class*)pOvlpReq;
+ }
+
+ cReq_Command((request_base_class*)pOvlpReq, 1);
+ pOvlpReq->field_0x10 = param_2;
+ cPhs_Set(&pOvlpReq->field_0x18, (cPhs__Handler*)phaseMethod);
+ fopOvlpReq_SetPeektime(pOvlpReq, param_3);
+ pOvlpReq->field_0x4 = 1;
+ pOvlpReq->field_0x2 = 1;
+ pOvlpReq->field_0x20 = 0;
+ pOvlpReq->field_0x8 = 0;
+ pOvlpReq->field_0xc = 0;
+ pOvlpReq->pCurrentLayer = fpcLy_RootLayer();
+ return (request_base_class*)pOvlpReq;
}
asm int fopOvlpReq_Handler(overlap_request_class*) {