summaryrefslogtreecommitdiff
path: root/libs/SSystem/SStandard/s_basic.cpp
diff options
context:
space:
mode:
authorlepelog <lepelog@users.noreply.github.com>2021-04-01 12:06:29 +0200
committerlepelog <lepelog@users.noreply.github.com>2021-04-01 12:06:29 +0200
commit53c6aa6c8b50d95e89f64db70d0cc08fb4111a93 (patch)
tree20ce5067caef7892c2c9bb043b10918c15dd7868 /libs/SSystem/SStandard/s_basic.cpp
parent87bc0e711b4fb2f990f3c37ca681be1fc027d554 (diff)
ported over f_pc
Diffstat (limited to 'libs/SSystem/SStandard/s_basic.cpp')
-rw-r--r--libs/SSystem/SStandard/s_basic.cpp40
1 files changed, 8 insertions, 32 deletions
diff --git a/libs/SSystem/SStandard/s_basic.cpp b/libs/SSystem/SStandard/s_basic.cpp
index 788d927dab..e6b9595266 100644
--- a/libs/SSystem/SStandard/s_basic.cpp
+++ b/libs/SSystem/SStandard/s_basic.cpp
@@ -7,40 +7,16 @@
#include "dol2asm.h"
#include "dolphin/types.h"
-//
-// Forward References:
-//
-
-static void sBs_FillArea_s(void*, u32, s16);
-void sBs_ClearArea(void*, u32);
-
-extern "C" static void sBs_FillArea_s__FPvUls();
-extern "C" void sBs_ClearArea__FPvUl();
-
-//
-// External References:
-//
-
-//
-// Declarations:
-//
-
/* 80271C8C-80271CAC 0020+00 s=1 e=0 z=0 None .text sBs_FillArea_s__FPvUls */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm static void sBs_FillArea_s(void* param_0, u32 param_1, s16 param_2) {
- nofralloc
-#include "asm/SSystem/SStandard/s_basic/sBs_FillArea_s__FPvUls.s"
+void sBs_FillArea_s(void* pPtr, u32 pNumBytes, s16 pValue) {
+ s16* castPtr = (s16*)pPtr;
+ for (int i = 0; i < pNumBytes / 2; i++) {
+ *castPtr = pValue;
+ castPtr++;
+ }
}
-#pragma pop
/* 80271CAC-80271CD0 0024+00 s=0 e=2 z=0 None .text sBs_ClearArea__FPvUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void sBs_ClearArea(void* param_0, u32 param_1) {
- nofralloc
-#include "asm/SSystem/SStandard/s_basic/sBs_ClearArea__FPvUl.s"
+void sBs_ClearArea(void* pPtr, u32 pNumBytes) {
+ sBs_FillArea_s(pPtr, pNumBytes, 0);
}
-#pragma pop