aboutsummaryrefslogtreecommitdiff
path: root/src/core/memory.h
AgeCommit message (Collapse)Author
2018-08-05memory: Make prototype parameter names match their definitionsLioncash
Keeps the code consistent.
2018-08-05memory: Correct prototype of ZeroBlockLioncash
Previously, the prototype wasn't matching the definition, which has a Processor parameter before the destination address.
2018-08-05memory: Remove unnecessary const qualifiers in prototypesLioncash
These aren't necessary, as value-wise const only matters in the definition.
2018-08-03core/memory: Get rid of 3DS leftoversLioncash
Removes leftover code from citra that isn't needed.
2018-06-22Kernel/Arbiters: Fix casts, cleanup comments/magic numbersMichael Scire
2018-04-24gl_rasterizer_cache: Update to be based on GPU addresses, not CPU addresses.bunnei
2018-03-31memory: Fix stack region.bunnei
2018-03-26memory: Add RasterizerMarkRegionCached code and cleanup.bunnei
2018-03-23Merge pull request #265 from bunnei/tegra-progress-2bunnei
Tegra progress 2
2018-03-23rasterizer: Flush and invalidate regions should be 64-bit.bunnei
2018-03-22memory: Port RasterizerFlushVirtualRegion from Citra.bunnei
2018-03-22Remove more N3DS ReferencesN00byKing
2018-03-16memory: Add regions for map region, "new" map region, etc.bunnei
2018-02-12arm_dynarmic: Support direct page table accessMerryMage
2018-01-27memory: Replace all memory hooking with Special regionsMerryMage
2018-01-16Update memory.hDavid
2018-01-16Increased heap size and changed tls area vaddrDavid Marcec
2018-01-01core/video_core: Fix a bunch of u64 -> u32 warnings.bunnei
2017-12-28svc: Implement MapMemory.bunnei
2017-10-22memory: Support 32-bit paging, move heap address space up.bunnei
2017-10-09Merge remote-tracking branch 'upstream/master' into nxbunnei
# Conflicts: # src/core/CMakeLists.txt # src/core/arm/dynarmic/arm_dynarmic.cpp # src/core/arm/dyncom/arm_dyncom.cpp # src/core/hle/kernel/process.cpp # src/core/hle/kernel/thread.cpp # src/core/hle/kernel/thread.h # src/core/hle/kernel/vm_manager.cpp # src/core/loader/3dsx.cpp # src/core/loader/elf.cpp # src/core/loader/ncch.cpp # src/core/memory.cpp # src/core/memory.h # src/core/memory_setup.h
2017-10-09loader: Various improvements for NSO/NRO loaders.bunnei
2017-10-01Memory: Make WriteBlock take a Process parameter on which to operateSubv
2017-10-01Memory: Make ReadBlock take a Process parameter on which to operateSubv
2017-09-30core: Various changes to support 64-bit addressing.bunnei
2017-09-26Memory: Allow IsValidVirtualAddress to be called with a specific process ↵Subv
parameter. There is still an overload of IsValidVirtualAddress that only takes the VAddr and will default to the current process.
2017-09-24memory: Remove GetCurrentPageTablePointersMerryMage
2017-09-24memory: Add GetCurrentPageTable/SetCurrentPageTableMerryMage
Don't expose Memory::current_page_table as a global.
2017-09-15Kernel/Memory: Changed GetPhysicalPointer so that it doesn't go through the ↵Subv
current process' page table to obtain a pointer.
2017-09-10Kernel/Memory: Give each Process its own page table.Subv
The loader is in charge of setting the newly created process's page table as the main one during the loading process.
2017-06-21Memory: Add function to flush a virtual range from the rasterizer cacheYuri Kunde Schlesner
This is slightly more ergonomic to use, correctly handles virtual regions which are disjoint in physical addressing space, and checks only regions which can be cached by the rasterizer.
2017-06-21Memory: Add TryVirtualToPhysicalAddress, returning a boost::optionalYuri Kunde Schlesner
2017-06-21Memory: Make PhysicalToVirtualAddress return a boost::optionalYuri Kunde Schlesner
And fix a few places in the code to take advantage of that.
2017-06-20Memory: Add enum definitions for the n3DS FCRAM sizeYuri Kunde Schlesner
2017-05-09Memory: Add constants for the n3DS additional RAMYuri Kunde Schlesner
This is 4MB of extra, separate memory that was added on the New 3DS.
2016-11-24Expose page table to dynarmic for optimized reads and writes to the JITJames Rowe
2016-09-21Remove empty newlines in #include blocks.Emmanuel Gil Peyrot
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 Peyrot
2016-08-27Memory: add ReadCString functionwwylele
2016-05-28Memory: Make ReadBlock and WriteBlock accept void pointers.Subv
2016-05-28Memory: CopyBlockMerryMage
2016-05-21Memory: ZeroBlockMerryMage
2016-05-21Memory: ReadBlock/WriteBlockMerryMage
2016-05-21Memory: IsValidVirtualAddress/IsValidPhysicalAddressMerryMage
2016-05-12Merge pull request #1695 from Subv/tls_allocbunnei
Kernel/Threads: Dynamically allocate the TLS region for threads.
2016-05-07Kernel/Threads: Dynamically allocate the TLS region for threads in the BASE ↵Subv
region of the linear heap. 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-04-21HWRasterizer: Texture forwardingtfarley
2015-08-22Fix broken boot introduced by last-minute change in #1025Yuri Kunde Schlesner
2015-08-16Kernel: Implement svcGetProcessInfo in a basic wayYuri Kunde Schlesner
This also adds some basic memory usage accounting. These two types are used by Super Smash Bros. during startup.
2015-08-16Kernel: Add more infrastructure to support different memory layoutsYuri Kunde Schlesner
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.