summaryrefslogtreecommitdiffstats
path: root/src/core/hle/kernel/memory.cpp (unfollow)
Commit message (Collapse)AuthorFilesLines
2018-08-03core/memory: Get rid of 3DS leftoversLioncash1-90/+0
Removes leftover code from citra that isn't needed.
2018-07-31kernel: Remove unnecessary includesLioncash1-3/+1
Removes unnecessary direct dependencies in some headers and also gets rid of indirect dependencies that were being relied on to be included.
2018-07-23hle: Remove config_mem.h/.cppLioncash1-9/+0
This is just an unused hold-over from citra, so we can get rid of this to trim off an exposed global, among other things.
2018-07-23hle: Remove shared_page.h/.cppLioncash1-1/+0
This is a holdover from citra that's essentially unused.
2018-01-16clang-formatMerryMage1-4/+2
2018-01-01core/video_core: Fix a bunch of u64 -> u32 warnings.bunnei1-2/+2
2017-10-20hle: Fix QueryMemory response for MemoryInfo.bunnei1-66/+0
2017-09-15Kernel/Memory: Changed GetPhysicalPointer so that it doesn't go through the current process' page table to obtain a pointer.Subv1-25/+5
2017-06-19ResultVal: Remove MoveFrom()Yuri Kunde Schlesner1-3/+3
Replace it with std::move(result_val).Unwrap(), or Foo().Unwrap() in case you already have an rvalue.
2017-05-30Kernel: Move HandleTable to a separate fileYuri Kunde Schlesner1-0/+1
2017-05-10Kernel: Map special regions according to ExHeaderYuri Kunde Schlesner1-38/+79
This replaces the hardcoded VRAM/DSP mappings with ones made based on the ExHeader ARM11 Kernel caps list. While this has no visible effect for most applications (since they use a standard set of mappings) it does improve support for system modules and n3DS exclusives.
2017-05-10DSP: Create backing memory for entire DSP RAMYuri Kunde Schlesner1-1/+6
Also move address space mapping out of video_core.
2016-10-20Fix typosRicardo de Almeida Gonzaga1-1/+1
2016-09-21Use negative priorities to avoid special-casing the self-includeYuri Kunde Schlesner1-1/+1
2016-09-21Remove empty newlines in #include blocks.Emmanuel Gil Peyrot1-4/+1
This makes clang-format useful on those. Also add a bunch of forgotten transitive includes, which otherwise prevented compilation.
2016-09-18Sources: Run clang-format on everything.Emmanuel Gil Peyrot1-9/+13
2016-05-14Memory: Fixed a regression caused by #1695 and #1689.Subv1-0/+3
Reserve enough space in the vector that holds the linear heap memory to prevent relocations of the backing memory when growing too much. Closes #1790
2016-05-13Kernel/Memory: Remove the Shared Memory region from the legacy memory map.Subv1-1/+0
2016-05-07Kernel/Threads: Dynamically allocate the TLS region for threads in the BASE region of the linear heap.Subv1-1/+0
Each thread gets a 0x200-byte area from the 0x1000-sized page, when all 8 thread slots in a single page are used up, the kernel allocates a new page to hold another 8 entries. This is consistent with what the real kernel does.
2016-02-21AudioCore: Skeleton ImplementationMerryMage1-1/+4
This commit: * Adds a new subproject, audio_core. * Defines structures that exist in DSP shared memory. * Hooks up various other parts of the emulator into audio core. This sets the foundation for a later HLE DSP implementation.
2015-12-01Kernel: Implement svcGetSystemInfoYuri Kunde Schlesner1-0/+2
This makes smealum/ctrulib@b96dd51d3349961189d4ab1bc2a5c45deff21c09 work with Citra.
2015-08-16Kernel: Remove unused legacy heap MapBlock_* functionsYuri Kunde Schlesner1-60/+0
2015-08-16Kernel: Add more infrastructure to support different memory layoutsYuri Kunde Schlesner1-0/+72
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-16Move core/mem_map.{cpp,h} => core/hle/kernel/memory.{cpp,h}Yuri Kunde Schlesner1-1/+0
2015-08-16Memory: Move address type conversion routines to memory.cpp/hYuri Kunde Schlesner1-36/+0
These helpers aren't really part of the kernel, and mem_map.cpp/h is going to be moved there next.
2015-08-16Kernel: Properly implement ControlMemory FREE and COMMITYuri Kunde Schlesner1-2/+0
2015-07-12Core: Properly configure address space when loading a binaryYuri Kunde Schlesner1-9/+5
The code now properly configures the process image to match the loaded binary segments (code, rodata, data) instead of just blindly allocating a large chunk of dummy memory.
2015-06-28Core: Cleanup core includes.Emmanuel Gil Peyrot1-2/+3
2015-05-27Memmap: Remove unused global pointers to memory areasYuri Kunde Schlesner1-23/+8
2015-05-27Kernel: Add VMManager to manage process address spacesYuri Kunde Schlesner1-12/+30
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-8/+17
2015-05-15Memmap: Re-organize memory function in two filesYuri Kunde Schlesner1-2/+95
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-09Memory: Sort memory region variables by VAddrYuri Kunde Schlesner1-3/+3
2015-05-09Memory: Re-organize and rename memory area address constantsYuri Kunde Schlesner1-10/+8
2015-05-08Common: Remove mem_arena.cpp/hYuri Kunde Schlesner1-82/+31
It is superfluous for Citra. (It's only really necessary if you're doing JIT. We were using it but not taking any advantage from it.) This should make 32-bit builds work again.
2015-05-07Common: Remove common.hYuri Kunde Schlesner1-1/+3
2015-05-02Memory: Properly cleanup & shutdown.bunnei1-25/+46
2014-12-30MemMap: Add support for DSP Read & Writes in the memory mappurpasmart961-0/+3
2014-12-21License changepurpasmart961-2/+2
2014-12-13Convert old logging calls to new logging macrosYuri Kunde Schlesner1-2/+2
2014-12-12MemMap: Renamed "GSP" heap to "linear", as this is not specific to GSP.bunnei1-8/+8
- 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-11-19Add static to some variablesLioncash1-30/+30
2014-09-09core: Prune redundant includesarchshift1-1/+0
2014-08-12Pica/GPU: Change hardware registers to use physical addresses rather than virtual ones.Tony Wasserka1-2/+2
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-05-16added memory mapped region for system mem - sdk demos load a segment here on ELF loadbunnei1-0/+3
2014-05-08added kernel memory to mem_mapbunnei1-0/+3
2014-05-01added virtual memory map for ExeFS (where ARM11 code is supposed to be loaded)bunnei1-0/+3
2014-04-25- added preliminary support for svc_MapMemoryBlockbunnei1-4/+6
- added shared memory region - moarrrr cleanups to memory_map
2014-04-25added functions to map Heap and Shared memory spacebunnei1-2/+2
2014-04-18added memory read/write to GSP heapbunnei1-3/+2
2014-04-18more various refactors to memory interfacebunnei1-5/+8
2014-04-18cleaned up memory interfaces a lot, removed some hackish stuffbunnei1-7/+1
2014-04-13- added HLE to connect to "srv:" servicebunnei1-2/+1
- 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-2/+2
2014-04-09fixed project includes to use new directory structurebunnei1-4/+4
2014-04-09got rid of 'src' folders in each sub-projectbunnei1-0/+0
2014-04-09fixed all license file headers in corebunnei1-25/+3
2014-04-02-converted tabs to spacesbunnei1-49/+46
-moved scratchpad memory out of MemArena
2014-04-01added support for reading/writing to stack membunnei1-14/+20
2014-03-30initialize mem regionsbunnei1-0/+2
2014-03-25added a GetPointer function to Memory for use with ELF loadingbunnei1-1/+1
2013-09-20added mem_map hardware writingShizZy1-23/+2
2013-09-19added hw R/W/ memory functionsShizZy1-1/+1
2013-09-19refactored some mem_map stuffShizZy1-18/+35
2013-09-14renamed project to 'citrus'ShizZy1-1/+1
2013-09-06start of 3DS memory mapShizZy1-0/+52
2013-09-06added core and mem_map files to the projectShizZy1-15/+32
2013-08-30adding initial project layoutShizZy1-0/+35