Match stackcheck

This commit is contained in:
Anghelo Carvajal 2025-08-23 12:27:37 -04:00
parent 18a8a1bea7
commit 1b9341dc2d
1 changed files with 18 additions and 4 deletions

View File

@ -2,6 +2,8 @@
#include "stdbool.h"
#include "stdint.h"
#include "versions.h"
StackEntry* sStackInfoListStart = NULL;
StackEntry* sStackInfoListEnd = NULL;
@ -17,12 +19,15 @@ void StackCheck_Init(StackEntry* entry, void* stackBottom, void* stackTop, u32 i
entry->initValue = initValue;
entry->minSpace = minSpace;
entry->name = name;
iter = sStackInfoListStart;
while (iter) {
for (iter = sStackInfoListStart; iter != NULL; iter = iter->next) {
if (iter == entry) {
#if MM_VERSION <= N64_JP_1_1
// is already in the list
osSyncPrintf("stackcheck_init: %08x は既にリスト中にある\n", entry);
#endif
return;
}
iter = iter->next;
}
entry->prev = sStackInfoListEnd;
@ -68,7 +73,12 @@ void StackCheck_Cleanup(StackEntry* entry) {
}
}
if (inconsistency) {}
if (inconsistency) {
#if MM_VERSION <= N64_JP_1_1
// List is inconsistent
osSyncPrintf("stackcheck_cleanup: %08x リスト不整合です\n", entry);
#endif
}
}
StackStatus StackCheck_GetState(StackEntry* entry) {
@ -94,7 +104,11 @@ StackStatus StackCheck_GetState(StackEntry* entry) {
status = STACK_STATUS_OK;
}
#if MM_VERSION <= N64_JP_1_1
osSyncPrintf("head=%08x tail=%08x last=%08x used=%08x free=%08x [%s]\n", entry->head, entry->tail, last, used, free, (entry->name != NULL) ? entry->name : "(null)");
#else
(void)"(null)";
#endif
return status;
}