summaryrefslogtreecommitdiffstats
path: root/src/core/memory.cpp (unfollow)
Commit message (Collapse)AuthorFilesLines
2015-09-10memory: Get rid of pointer castsLioncash1-14/+7
2015-08-16Kernel: Add more infrastructure to support different memory layoutsYuri Kunde Schlesner1-1/+4
This adds some structures necessary to support multiple memory regions in the future. It also adds support for different system memory types and the new linear heap mapping at 0x30000000.
2015-08-16Memory: Move address type conversion routines to memory.cpp/hYuri Kunde Schlesner1-1/+36
These helpers aren't really part of the kernel, and mem_map.cpp/h is going to be moved there next.
2015-07-12Memory: Fix unmapping of pagesYuri Kunde Schlesner1-4/+2
2015-06-28Common: Cleanup memory and misc includes.Emmanuel Gil Peyrot1-3/+0
2015-05-27Kernel: Add VMManager to manage process address spacesYuri Kunde Schlesner1-4/+8
This enables more dynamic management of the process address space, compared to just directly configuring the page table for major areas. This will serve as the foundation upon which the rest of the Kernel memory management functions will be built.
2015-05-15Memory: Use a table based lookup scheme to read from memory regionsYuri Kunde Schlesner1-120/+123
2015-05-15Memory: Read SharedPage directly from Memory::ReadYuri Kunde Schlesner1-1/+2
2015-05-15Memory: Read ConfigMem directly from Memory::ReadYuri Kunde Schlesner1-1/+2
2015-05-15Memmap: Re-organize memory function in two filesYuri Kunde Schlesner1-84/+6
memory.cpp/h contains definitions related to acessing memory and configuring the address space mem_map.cpp/h contains higher-level definitions related to configuring the address space accoording to the kernel and allocating memory.
2015-05-15Memmap: Remove unused declarationsYuri Kunde Schlesner1-11/+3
2015-05-09Memory: Support more regions in the VAddr-PAddr translation functionsYuri Kunde Schlesner1-24/+24
Also adds better documentation and removes the one-off reimplementation of the function in pica.h.
2015-05-09Memory: Re-organize and rename memory area address constantsYuri Kunde Schlesner1-38/+26
2015-05-07Common: Remove common.hYuri Kunde Schlesner1-1/+3
2015-05-02Memory: Properly cleanup & shutdown.bunnei1-13/+8
2015-04-06Clean-up mem_map constants and fix framebuffer translation errorsYuri Kunde Schlesner1-7/+11
2015-03-17dyncom: Make Load/Store instructions support big endianLioncash1-0/+6
2015-02-22Cleaned up unaligned access.Kevin Hartman1-18/+0
2015-02-11Asserts: break/crash program, fit to style guide; log.h->assert.harchshift1-2/+2
Involves making asserts use printf instead of the log functions (log functions are asynchronous and, as such, the log won't be printed in time) As such, the log type argument was removed (printf obviously can't use it, and it's made obsolete by the file and line printing) Also removed some GEKKO cruft.
2015-01-16Add some support for the shared page (currently 3d slider is implemented)Zhuowei Zhang1-0/+5
2014-12-30MemMap: Add support for DSP Read & Writes in the memory mappurpasmart961-2/+8
2014-12-21License changepurpasmart961-1/+1
2014-12-14MemMap: Added AXI_WRAM & SHARED_PAGE along with other stuffpurpasmart961-10/+0
Got rid of I/O address's since the I/O addresses range's overlap with other address's types such as vram, these I/O addresses need to be done in an different way.
2014-12-13Convert old logging calls to new logging macrosYuri Kunde Schlesner1-6/+6
2014-12-12MemMap: Renamed "GSP" heap to "linear", as this is not specific to GSP.bunnei1-16/+16
- Linear simply indicates that the mapped physical address is always MappedVAddr+0x0C000000, thus this memory can be used for hardware devices' DMA (such as the GPU).
2014-12-03MemMap: Updated memory map to subtract base address instead of mask.bunnei1-21/+21
- More readable, a little less error prone. Conflicts: src/core/mem_map.h src/core/mem_map_funcs.cpp
2014-11-27Fixed formatting and switch statement warningsvaguilar1-2/+2
2014-11-19Add static to some variablesLioncash1-9/+9
2014-09-28Fix warnings in core and commonLioncash1-1/+1
2014-09-09core: Prune redundant includesarchshift1-1/+0
2014-08-31Introduce VAddr and PAddr typedefs for ARM addresses.Yuri Kunde Schlesner1-16/+16
2014-08-17Core: Fix undefined behavior in mem_map_funcs' WriteBlock functionLioncash1-4/+8
2014-08-12Pica/GPU: Change hardware registers to use physical addresses rather than virtual ones.Tony Wasserka1-32/+36
This cleans up the mess that address reading/writing had become and makes the code a *lot* more sensible. This adds a physical<->virtual address converter to mem_map.h. For further accuracy, we will want to properly extend this to support a wider range of address regions. For now, this makes simply homebrew applications work in a good manner though.
2014-08-06MemMap: Fixed typo with GetPointer to VRAM address.bunnei1-1/+1
2014-08-06MemMap: Added an error for unaligned 16-bit memory reads.bunnei1-0/+7
2014-08-06MemMap: Removed Read64 function.bunnei1-6/+0
- Unused code - Was not correct for unaligned memory reads
2014-08-06MemMap: Fix Read32 for unaligned memory reads.bunnei1-12/+23
MemMap: Cleaned up Read32 unaligned memory access.
2014-07-05Memory: Removed deprecated MapBlock_Shared function.bunnei1-22/+0
2014-07-05mem_map: Updated interface to expose template functions to other modules.bunnei1-10/+10
2014-06-25MemMap: Added a WriteBlock function to write a buffer of data to memory.bunnei1-0/+12
2014-05-30hle: cleaned up log messagesbunnei1-3/+2
2014-05-16added memory mapped region for system mem - sdk demos load a segment here on ELF loadbunnei1-1/+13
2014-05-08- removed HLE mem "hack" and replaced with kernel mem regionbunnei1-11/+11
- added a helper function for getting command buffer for services - fixed bug where GSP DMA was incorrectly being done in DataSynchronizationBarrier (instead of gsp_TriggerCmdReqQueue)
2014-05-07added mem_map read for config_membunnei1-7/+12
2014-05-01added virtual memory map for ExeFS (where ARM11 code is supposed to be loaded)bunnei1-1/+13
2014-05-01reorganized memory regions enum, added regions for ExeFS codebunnei1-1/+1
2014-04-28added virtual address conversion for firmware FW0Bbunnei1-5/+9
2014-04-27added helper functions to mem_map to convert physical addresses to virtual addressesbunnei1-1/+1
2014-04-26- changed HW IO map to use virtual addressesbunnei1-2/+10
- added hooks to catch LCD IO read/writes
2014-04-26added vram to memory_mapbunnei1-7/+13
2014-04-25removed some cruftbunnei1-7/+1
2014-04-25- added preliminary support for svc_MapMemoryBlockbunnei1-6/+21
- added shared memory region - moarrrr cleanups to memory_map
2014-04-25added functions to map Heap and Shared memory spacebunnei1-3/+51
2014-04-18added GSP heap memory allocationbunnei1-0/+26
2014-04-18fixed bug in Memory::GetPointerbunnei1-2/+2
2014-04-18added memory read/write to GSP heapbunnei1-3/+11
2014-04-18more various refactors to memory interfacebunnei1-23/+17
2014-04-18cleaned up memory interfaces a lot, removed some hackish stuffbunnei1-96/+48
2014-04-17changed unknown memory read/write to report the sizebunnei1-2/+3
2014-04-13added OS memory read/write for thread command bufferbunnei1-5/+5
2014-04-13- added HLE to connect to "srv:" servicebunnei1-2/+16
- added a manager for keeping track of services/ports - added a memory mapped region for memory accessed by HLE - added HLE for GetThreadCommandBuffer function
2014-04-11cleaned up some logging messagesbunnei1-1/+1
2014-04-09fixed project includes to use new directory structurebunnei1-3/+3
2014-04-09got rid of 'src' folders in each sub-projectbunnei1-0/+0
2014-04-09fixed all license file headers in corebunnei1-23/+3
2014-04-07added hack physical memory reads with Memory::GetPointerbunnei1-2/+9
2014-04-05added initial support for hw.cpp modulebunnei1-3/+15
2014-04-05added hw module to interface h/w register reads/writesbunnei1-3/+2
2014-04-05renamed some functionsbunnei1-11/+11
2014-04-04added hack to allow physical mem read/writesbunnei1-2/+20
2014-04-04removed some useless log messagesbunnei1-2/+0
2014-04-02-converted tabs to spacesbunnei1-100/+99
-moved scratchpad memory out of MemArena
2014-04-01added support for reading/writing to stack membunnei1-1/+10
2014-03-25added a GetPointer function to Memory for use with ELF loadingbunnei1-28/+28
2013-09-20added mem_map hardware writingShizZy1-52/+71
2013-09-19added hw R/W/ memory functionsShizZy1-0/+157