From 6290ea10458b22c802b056e89d065feb3adedea5 Mon Sep 17 00:00:00 2001 From: gijs Date: Fri, 20 Oct 2023 19:53:46 +0200 Subject: [PATCH] Clean up `nuContMgrInit` --- src/_ob_prized_reading.c | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/src/_ob_prized_reading.c b/src/_ob_prized_reading.c index fe9ce85..232ab9b 100644 --- a/src/_ob_prized_reading.c +++ b/src/_ob_prized_reading.c @@ -4,35 +4,35 @@ /* 1A660 8008A260 */ u8 nuContMgrInit(void) { - s32 var_a0; - s32 var_a1; - s32 var_v1; + s32 i; + u8 pattern; + u8 bitmask; nuContDataUnLock(); osCreateMesgQueue(&nuContWaitMesgQ, &nuContWaitMesgBuf, 1); osCreateMesgQueue(&nuContDataMutexQ, &nuContDataMutexBuf, 1); nuSiCallBackAdd(&nuContCallBack); nuContQueryRead(); - - var_a0 = 1; - var_a1 = 0; - var_v1 = 0; + nuContNum = 0; - for(; var_v1 < MAXCONTROLLERS; var_v1++) { - if (nuContStatus[var_v1].errno == 0) { - if ((nuContStatus[var_v1].type & CONT_TYPE_MASK) == CONT_TYPE_NORMAL) { - var_a1 |= var_a0; - nuContNum += 1; - } - var_a0 *= 2; + bitmask = 1; + pattern = 0; + + for (i = 0; i < NU_CONT_MAXCONTROLLERS; i++) { + if (nuContStatus[i].errno != 0) { + continue; } + + if ((nuContStatus[i].type & CONT_TYPE_MASK) == CONT_TYPE_NORMAL) { + nuContNum++; + pattern |= bitmask; + } + bitmask <<= 1; } - - return var_a1; + + return pattern; } - - void func_8008A334(void) { func_8008B1D0(&nuContCallBack); }