From ec9734bdebaf797c60273d536a59b4a47b2abe17 Mon Sep 17 00:00:00 2001 From: plutoo Date: Mon, 28 Jul 2014 22:31:20 +0200 Subject: [PATCH] Moved OS module back out. Renamed functions. --- libctru/include/3ds/OS.h | 7 ------- libctru/include/3ds/os.h | 7 +++++++ libctru/source/os.c | 14 ++++++++++++++ libctru/source/services/csnd.c | 6 +++--- libctru/source/services/os.c | 14 -------------- 5 files changed, 24 insertions(+), 24 deletions(-) delete mode 100644 libctru/include/3ds/OS.h create mode 100644 libctru/include/3ds/os.h create mode 100644 libctru/source/os.c delete mode 100644 libctru/source/services/os.c diff --git a/libctru/include/3ds/OS.h b/libctru/include/3ds/OS.h deleted file mode 100644 index ba7d67e..0000000 --- a/libctru/include/3ds/OS.h +++ /dev/null @@ -1,7 +0,0 @@ -#ifndef OS_H -#define OS_H - -u32 OS_ConvertVaddr2Physaddr(u32 vaddr); - -#endif - diff --git a/libctru/include/3ds/os.h b/libctru/include/3ds/os.h new file mode 100644 index 0000000..1031222 --- /dev/null +++ b/libctru/include/3ds/os.h @@ -0,0 +1,7 @@ +#ifndef OS_H +#define OS_H + +u32 osConvertVirtToPhys(u32 vaddr); + +#endif + diff --git a/libctru/source/os.c b/libctru/source/os.c new file mode 100644 index 0000000..7d546a9 --- /dev/null +++ b/libctru/source/os.c @@ -0,0 +1,14 @@ +#include <3ds/types.h> +#include <3ds/svc.h> +#include <3ds/os.h> + +u32 osConvertVirtToPhys(u32 vaddr) +{ + if(vaddr >= 0x14000000 && vaddr < 0x1c000000) + return vaddr + 0x0c000000; // LINEAR heap + if(vaddr >= 0x30000000 && vaddr < 0x40000000) + return vaddr - 0x10000000; // Only available under FIRM v8+ for certain processes. + if(vaddr >= 0x1F000000 && vaddr < 0x1F600000) + return vaddr - 0x07000000; // VRAM + return 0; +} diff --git a/libctru/source/services/csnd.c b/libctru/source/services/csnd.c index eeb5791..d1ce512 100644 --- a/libctru/source/services/csnd.c +++ b/libctru/source/services/csnd.c @@ -1,6 +1,6 @@ #include #include <3ds/types.h> -#include <3ds/OS.h> +#include <3ds/os.h> #include <3ds/svc.h> #include <3ds/srv.h> #include <3ds/CSND.h> @@ -283,8 +283,8 @@ Result CSND_playsound(u32 channel, u32 looping, u32 encoding, u32 samplerate, u3 u32 physaddr0 = 0; u32 physaddr1 = 0; - physaddr0 = OS_ConvertVaddr2Physaddr((u32)vaddr0); - physaddr1 = OS_ConvertVaddr2Physaddr((u32)vaddr1); + physaddr0 = osConvertVirtToPhys((u32)vaddr0); + physaddr1 = osConvertVirtToPhys((u32)vaddr1); CSND_sharedmemtype0_cmde(channel, looping, encoding, samplerate, unk0, unk1, physaddr0, physaddr1, totalbytesize); CSND_sharedmemtype0_cmd8(channel, samplerate); diff --git a/libctru/source/services/os.c b/libctru/source/services/os.c deleted file mode 100644 index fe18d64..0000000 --- a/libctru/source/services/os.c +++ /dev/null @@ -1,14 +0,0 @@ -#include <3ds/types.h> -#include <3ds/svc.h> -#include <3ds/OS.h> - - -u32 OS_ConvertVaddr2Physaddr(u32 vaddr) -{ - if(vaddr >= 0x14000000 && vaddr<0x1c000000)return vaddr + 0x0c000000;//LINEAR memory - if(vaddr >= 0x30000000 && vaddr<0x40000000)return vaddr - 0x10000000;//Only available under system-version v8.0 for certain processes, see here: http://3dbrew.org/wiki/SVC#enum_MemoryOperation - if(vaddr >= 0x1F000000 && vaddr<0x1F600000)return vaddr - 0x07000000;//VRAM - - return 0; -} -