Fixed crash caused by bad osSpTaskYielded implementation

This commit is contained in:
Mr-Wiseguy 2023-02-06 18:17:56 -05:00
parent 2ebeffee89
commit b5a482e72c

View file

@ -4,7 +4,7 @@
#include "recomp.h" #include "recomp.h"
extern "C" void osSpTaskLoad_recomp(uint8_t* restrict rdram, recomp_context* restrict ctx) { extern "C" void osSpTaskLoad_recomp(uint8_t* restrict rdram, recomp_context* restrict ctx) {
; // Nothing to do here
} }
bool dump_frame = false; bool dump_frame = false;
@ -36,13 +36,14 @@ extern "C" void osSpTaskStartGo_recomp(uint8_t* restrict rdram, recomp_context*
} }
extern "C" void osSpTaskYield_recomp(uint8_t* restrict rdram, recomp_context* restrict ctx) { extern "C" void osSpTaskYield_recomp(uint8_t* restrict rdram, recomp_context* restrict ctx) {
; // Ignore yield requests (acts as if the task completed before it received the yield request)
} }
extern "C" void osSpTaskYielded_recomp(uint8_t* restrict rdram, recomp_context* restrict ctx) { extern "C" void osSpTaskYielded_recomp(uint8_t* restrict rdram, recomp_context* restrict ctx) {
; // Task yield requests are ignored, so always return 0 as tasks will never be yielded
ctx->r2 = 0;
} }
extern "C" void __osSpSetPc_recomp(uint8_t* restrict rdram, recomp_context* restrict ctx) { extern "C" void __osSpSetPc_recomp(uint8_t* restrict rdram, recomp_context* restrict ctx) {
; assert(false);
} }