wut
v1.7.0
Wii U Toolchain
|
Macros | |
#define | OS_PAGE_SIZE (128 * 1024) |
Typedefs | |
typedef enum OSMemoryMapMode | OSMemoryMapMode |
Enumerations | |
enum | OSMemoryMapMode { OS_MAP_MEMORY_INVALID = 0 , OS_MAP_MEMORY_READ_ONLY = 1 , OS_MAP_MEMORY_READ_WRITE = 2 , OS_MAP_MEMORY_FREE = 3 , OS_MAP_MEMORY_ALLOCATED = 4 } |
Functions | |
uint32_t | OSEffectiveToPhysical (uint32_t virtualAddress) |
uint32_t | __OSPhysicalToEffectiveCached (uint32_t physicalAddress) |
uint32_t | __OSPhysicalToEffectiveUncached (uint32_t physicalAddress) |
BOOL | OSIsAddressValid (uint32_t virtualAddress) |
BOOL | __OSValidateAddressSpaceRange (int, uint32_t virtualAddress, uint32_t size) |
uint32_t | OSAllocVirtAddr (uint32_t virtualAddress, uint32_t size, uint32_t align) |
Allocates virtual address range for later mapping. More... | |
BOOL | OSFreeVirtAddr (uint32_t virtualAddress, uint32_t size) |
Frees a previously allocated virtual address range back to the system. More... | |
OSMemoryMapMode | OSQueryVirtAddr (uint32_t virtualAddress) |
Determines the status of the given virtual memory address - mapped read-write or read-only, free, allocated or invalid. More... | |
BOOL | OSMapMemory (uint32_t virtualAddress, uint32_t physicalAddress, uint32_t size, OSMemoryMapMode mode) |
Maps a physical address to a virtual address, with a given size and set of permissions. More... | |
BOOL | OSUnmapMemory (uint32_t virtualAddress, uint32_t size) |
Unmaps previously mapped memory. More... | |
void | OSGetMapVirtAddrRange (uint32_t *outVirtualAddress, uint32_t *outSize) |
Gets the range of virtual addresses available for mapping. More... | |
void | OSGetAvailPhysAddrRange (uint32_t *outPhysicalAddress, uint32_t *outSize) |
Gets the range of available physical memory (not reserved for app code or data). More... | |
void | OSGetDataPhysAddrRange (uint32_t *outPhysicalAddress, uint32_t *outSize) |
Gets the range of physical memory used for the application's data. More... | |
#define OS_PAGE_SIZE (128 * 1024) |
Definition at line 24 of file memorymap.h.
typedef enum OSMemoryMapMode OSMemoryMapMode |
enum OSMemoryMapMode |
Enumerator | |
---|---|
OS_MAP_MEMORY_INVALID | |
OS_MAP_MEMORY_READ_ONLY | |
OS_MAP_MEMORY_READ_WRITE | |
OS_MAP_MEMORY_FREE | |
OS_MAP_MEMORY_ALLOCATED |
Definition at line 15 of file memorymap.h.
uint32_t OSEffectiveToPhysical | ( | uint32_t | virtualAddress | ) |
uint32_t __OSPhysicalToEffectiveCached | ( | uint32_t | physicalAddress | ) |
uint32_t __OSPhysicalToEffectiveUncached | ( | uint32_t | physicalAddress | ) |
BOOL OSIsAddressValid | ( | uint32_t | virtualAddress | ) |
BOOL __OSValidateAddressSpaceRange | ( | int | , |
uint32_t | virtualAddress, | ||
uint32_t | size | ||
) |
uint32_t OSAllocVirtAddr | ( | uint32_t | virtualAddress, |
uint32_t | size, | ||
uint32_t | align | ||
) |
Allocates virtual address range for later mapping.
virtualAddress | Requested start address for the range. If there is no preference, NULL can be used. |
size | Size of address range to allocate. |
align | Alignment of address range to allocate. |
BOOL OSFreeVirtAddr | ( | uint32_t | virtualAddress, |
uint32_t | size | ||
) |
Frees a previously allocated virtual address range back to the system.
virtualAddress | The start of the virtual address range to free. |
size | The size of the virtual address range to free. |
true
on success. OSMemoryMapMode OSQueryVirtAddr | ( | uint32_t | virtualAddress | ) |
Determines the status of the given virtual memory address - mapped read-write or read-only, free, allocated or invalid.
virtualAddress | The virtual address to query. |
BOOL OSMapMemory | ( | uint32_t | virtualAddress, |
uint32_t | physicalAddress, | ||
uint32_t | size, | ||
OSMemoryMapMode | mode | ||
) |
Maps a physical address to a virtual address, with a given size and set of permissions.
virtualAddress | The target virtual address for the mapping. |
physicalAddress | Physical address of the memory to back the mapping. |
size | Size, in bytes, of the desired mapping. Likely has an alignment requirement. |
mode | Permissions to map the memory with - see OSMemoryMapMode. |
true
on success.BOOL OSUnmapMemory | ( | uint32_t | virtualAddress, |
uint32_t | size | ||
) |
Unmaps previously mapped memory.
virtualAddress | Starting address of the area to unmap. |
size | Size of the memory area to unmap. |
true
on success. void OSGetMapVirtAddrRange | ( | uint32_t * | outVirtualAddress, |
uint32_t * | outSize | ||
) |
Gets the range of virtual addresses available for mapping.
outVirtualAddress | Pointer to write the starting address of the memory area to. |
outSize | Pointer to write the size of the memory area to. |
void OSGetAvailPhysAddrRange | ( | uint32_t * | outPhysicalAddress, |
uint32_t * | outSize | ||
) |
Gets the range of available physical memory (not reserved for app code or data).
outPhysicalAddress | Pointer to write the starting physical address of the memory area to. |
outSize | Pointer to write the size of the memory area to. |
void OSGetDataPhysAddrRange | ( | uint32_t * | outPhysicalAddress, |
uint32_t * | outSize | ||
) |
Gets the range of physical memory used for the application's data.
outPhysicalAddress | Pointer to write the starting physical address of the memory area to. |
outSize | Pointer to write the size of the memory area to. |