summaryrefslogtreecommitdiff
path: root/src/code/z_lib.c
diff options
context:
space:
mode:
authorKenix3 <kenixwhisperwind@gmail.com>2020-06-04 23:07:09 -0400
committerKenix3 <kenixwhisperwind@gmail.com>2020-06-04 23:07:09 -0400
commit5c97d35841f99bbb23dffa797475f16ec1e3403b (patch)
tree3807897f537f4a6ca0a2317332a401d0f35df249 /src/code/z_lib.c
parent664182c2899ba341be31f4cd7364a74867ee422c (diff)
Added macros header
Additionally, updated code to use PHYSICAL_TO_VIRTUAL and ALIGN16 macros. Additionally, retyped gRspSegmentPhysAddrs back to u32 as in OOT. These get the straight return value of PHYSICAL_TO_VIRTUAL, so they are u32.
Diffstat (limited to 'src/code/z_lib.c')
-rw-r--r--src/code/z_lib.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/code/z_lib.c b/src/code/z_lib.c
index f4209e98b..101af60d9 100644
--- a/src/code/z_lib.c
+++ b/src/code/z_lib.c
@@ -607,9 +607,8 @@ f32 Lib_PushAwayVec3f(Vec3f* start, Vec3f* pusher, f32 distanceToApproach) {
void Lib_Nop801004FC(void) {}
void* Lib_PtrSegToVirt(void* ptr) {
- // TODO: PHYSICAL_TO_VIRTUAL macro
// UB to cast the pointer to u32
- return (void*)(((u32)gRspSegmentPhysAddrs[((u32)ptr << 4) >> 28] + ((u32)ptr & 0xFFFFFF)) + 0x80000000);
+ return (void*)PHYSICAL_TO_VIRTUAL((u32)gRspSegmentPhysAddrs[((u32)ptr << 4) >> 28] + ((u32)ptr & 0xFFFFFF));
}
void* Lib_PtrSegToVirtNull(void* ptr) {
@@ -618,17 +617,15 @@ void* Lib_PtrSegToVirtNull(void* ptr) {
return ptr;
}
- // TODO: PHYSICAL_TO_VIRTUAL macro
// UB to cast the pointer to u32
- return (void*)(((u32)gRspSegmentPhysAddrs[((u32)ptr << 4) >> 28] + ((u32)ptr & 0xFFFFFF)) + 0x80000000);
+ return (void*)PHYSICAL_TO_VIRTUAL((u32)gRspSegmentPhysAddrs[((u32)ptr << 4) >> 28] + ((u32)ptr & 0xFFFFFF));
}
void* Lib_PtrSegToK0(void* ptr) {
if (ptr == NULL) {
return NULL;
} else {
- // TODO: PHYSICAL_TO_VIRTUAL macro
- return (void*)((u32)ptr + 0x80000000);
+ return (void*)PHYSICAL_TO_VIRTUAL(ptr);
}
}
@@ -636,7 +633,6 @@ void* Lib_PtrSegToK0Null(void* ptr) {
if (ptr == NULL) {
return NULL;
} else {
- // TODO: PHYSICAL_TO_VIRTUAL macro
- return (void*)((u32)ptr + 0x80000000);
+ return (void*)PHYSICAL_TO_VIRTUAL(ptr);
}
} \ No newline at end of file