Commit message (Collapse) | Author | Files | Lines | ||
---|---|---|---|---|---|
2018-04-25 | gl_rasterizer_cache: Update to be based on GPU addresses, not CPU addresses. | bunnei | 1 | -1/+2 | |
2018-03-31 | memory: Fix stack region. | bunnei | 1 | -4/+5 | |
2018-03-27 | memory: Add RasterizerMarkRegionCached code and cleanup. | bunnei | 1 | -0/+5 | |
2018-03-23 | rasterizer: Flush and invalidate regions should be 64-bit. | bunnei | 1 | -1/+1 | |
2018-03-23 | memory: Port RasterizerFlushVirtualRegion from Citra. | bunnei | 1 | -1/+19 | |
2018-03-22 | Remove more N3DS References | N00byKing | 1 | -11/+0 | |
2018-03-16 | memory: Add regions for map region, "new" map region, etc. | bunnei | 1 | -19/+29 | |
2018-02-12 | arm_dynarmic: Support direct page table access | MerryMage | 1 | -4/+5 | |
2018-01-27 | memory: Replace all memory hooking with Special regions | MerryMage | 1 | -51/+21 | |
2018-01-17 | Update memory.h | David | 1 | -2/+2 | |
2018-01-16 | Increased heap size and changed tls area vaddr | David Marcec | 1 | -2/+2 | |
2018-01-01 | core/video_core: Fix a bunch of u64 -> u32 warnings. | bunnei | 1 | -5/+5 | |
2017-12-29 | svc: Implement MapMemory. | bunnei | 1 | -1/+1 | |
2017-10-23 | memory: Support 32-bit paging, move heap address space up. | bunnei | 1 | -2/+2 | |
2017-10-10 | loader: Various improvements for NSO/NRO loaders. | bunnei | 1 | -2/+2 | |
2017-10-01 | Memory: Make WriteBlock take a Process parameter on which to operate | Subv | 1 | -0/+2 | |
2017-10-01 | Memory: Make ReadBlock take a Process parameter on which to operate | Subv | 1 | -0/+2 | |
2017-09-30 | core: Various changes to support 64-bit addressing. | bunnei | 1 | -8/+8 | |
2017-09-27 | Memory: Allow IsValidVirtualAddress to be called with a specific process parameter. | Subv | 1 | -0/+7 | |
There is still an overload of IsValidVirtualAddress that only takes the VAddr and will default to the current process. | |||||
2017-09-24 | memory: Remove GetCurrentPageTablePointers | MerryMage | 1 | -6/+0 | |
2017-09-24 | memory: Add GetCurrentPageTable/SetCurrentPageTable | MerryMage | 1 | -1/+2 | |
Don't expose Memory::current_page_table as a global. | |||||
2017-09-15 | Kernel/Memory: Changed GetPhysicalPointer so that it doesn't go through the current process' page table to obtain a pointer. | Subv | 1 | -2/+0 | |
2017-09-10 | Kernel/Memory: Give each Process its own page table. | Subv | 1 | -1/+59 | |
The loader is in charge of setting the newly created process's page table as the main one during the loading process. | |||||
2017-06-22 | Memory: Add function to flush a virtual range from the rasterizer cache | Yuri Kunde Schlesner | 1 | -0/+13 | |
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-22 | Memory: Add TryVirtualToPhysicalAddress, returning a boost::optional | Yuri Kunde Schlesner | 1 | -3/+11 | |
2017-06-22 | Memory: Make PhysicalToVirtualAddress return a boost::optional | Yuri Kunde Schlesner | 1 | -3/+4 | |
And fix a few places in the code to take advantage of that. | |||||
2017-06-21 | Memory: Add enum definitions for the n3DS FCRAM size | Yuri Kunde Schlesner | 1 | -1/+3 | |
2017-05-10 | Memory: Add constants for the n3DS additional RAM | Yuri Kunde Schlesner | 1 | -0/+10 | |
This is 4MB of extra, separate memory that was added on the New 3DS. | |||||
2016-11-25 | Expose page table to dynarmic for optimized reads and writes to the JIT | James Rowe | 1 | -0/+9 | |
2016-09-21 | Remove empty newlines in #include blocks. | Emmanuel Gil Peyrot | 1 | -1/+0 | |
This makes clang-format useful on those. Also add a bunch of forgotten transitive includes, which otherwise prevented compilation. | |||||
2016-09-18 | Sources: Run clang-format on everything. | Emmanuel Gil Peyrot | 1 | -35/+35 | |
2016-08-27 | Memory: add ReadCString function | wwylele | 1 | -0/+3 | |
2016-05-28 | Memory: Make ReadBlock and WriteBlock accept void pointers. | Subv | 1 | -2/+2 | |
2016-05-28 | Memory: CopyBlock | MerryMage | 1 | -2/+2 | |
2016-05-21 | Memory: ZeroBlock | MerryMage | 1 | -0/+1 | |
2016-05-21 | Memory: ReadBlock/WriteBlock | MerryMage | 1 | -1/+3 | |
2016-05-21 | Memory: IsValidVirtualAddress/IsValidPhysicalAddress | MerryMage | 1 | -0/+3 | |
2016-05-07 | Kernel/Threads: Dynamically allocate the TLS region for threads in the BASE region of the linear heap. | Subv | 1 | -6/+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-04-21 | HWRasterizer: Texture forwarding | tfarley | 1 | -0/+16 | |
2015-08-22 | Fix broken boot introduced by last-minute change in #1025 | Yuri Kunde Schlesner | 1 | -1/+1 | |
2015-08-16 | Kernel: Implement svcGetProcessInfo in a basic way | Yuri Kunde Schlesner | 1 | -1/+3 | |
This also adds some basic memory usage accounting. These two types are used by Super Smash Bros. during startup. | |||||
2015-08-16 | Kernel: Add more infrastructure to support different memory layouts | Yuri Kunde Schlesner | 1 | -0/+5 | |
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-16 | Memory: Move address type conversion routines to memory.cpp/h | Yuri Kunde Schlesner | 1 | -0/+11 | |
These helpers aren't really part of the kernel, and mem_map.cpp/h is going to be moved there next. | |||||
2015-08-16 | Memory: Move PAGE_MASK and PAGE_BITS to memory.h | Yuri Kunde Schlesner | 1 | -0/+2 | |
2015-06-28 | Common: Cleanup memory and misc includes. | Emmanuel Gil Peyrot | 1 | -0/+2 | |
2015-05-29 | Remove every trailing whitespace from the project (but externals). | Emmanuel Gil Peyrot | 1 | -1/+1 | |
2015-05-15 | Memory: Use a table based lookup scheme to read from memory regions | Yuri Kunde Schlesner | 1 | -0/+4 | |
2015-05-15 | Memmap: Re-organize memory function in two files | Yuri Kunde Schlesner | 1 | -74/+2 | |
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-15 | Memmap: Remove unused declarations | Yuri Kunde Schlesner | 1 | -9/+0 | |
2015-05-12 | Core/Memory: Add TLS support for creating up to 300 threads | Subv | 1 | -3/+5 | |
2015-05-09 | Memory: Add GetPhysicalPointer helper function | Yuri Kunde Schlesner | 1 | -0/+9 | |
2015-05-09 | Memory: Support more regions in the VAddr-PAddr translation functions | Yuri Kunde Schlesner | 1 | -4/+9 | |
Also adds better documentation and removes the one-off reimplementation of the function in pica.h. | |||||
2015-05-09 | Memory: Sort memory region variables by VAddr | Yuri Kunde Schlesner | 1 | -7/+7 | |
2015-05-09 | Memory: Re-organize and rename memory area address constants | Yuri Kunde Schlesner | 1 | -75/+88 | |
2015-05-09 | Process: Support parsing of exheader kernel caps | Yuri Kunde Schlesner | 1 | -0/+2 | |
2015-05-08 | Common: Remove mem_arena.cpp/h | Yuri Kunde Schlesner | 1 | -12/+0 | |
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-07 | Clean-up includes | Yuri Kunde Schlesner | 1 | -3/+0 | |
2015-05-02 | Memory: Properly cleanup & shutdown. | bunnei | 1 | -0/+6 | |
2015-04-06 | Clean-up mem_map constants and fix framebuffer translation errors | Yuri Kunde Schlesner | 1 | -16/+10 | |
2015-03-17 | dyncom: Make Load/Store instructions support big endian | Lioncash | 1 | -0/+1 | |
2015-01-30 | Move VAddr/PAddr typedefs to kernel.h | Yuri Kunde Schlesner | 1 | -9/+2 | |
2014-12-30 | MemMap: Add support for DSP Read & Writes in the memory map | purpasmart96 | 1 | -0/+1 | |
2014-12-21 | License change | purpasmart96 | 1 | -1/+1 | |
2014-12-14 | MemMap: Added AXI_WRAM & SHARED_PAGE along with other stuff | purpasmart96 | 1 | -59/+76 | |
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-12 | MemMap: Renamed "GSP" heap to "linear", as this is not specific to GSP. | bunnei | 1 | -7/+7 | |
- 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-04 | mem_map: Make enum for addresses use u32 as the underlying type | Lioncash | 1 | -1/+1 | |
2014-12-04 | Add stub for ConvertProcessFromDspDram | archshift | 1 | -1/+3 | |
Should theoretically push retail stuff further along | |||||
2014-12-03 | MemMap: Updated memory map to subtract base address instead of mask. | bunnei | 1 | -10/+0 | |
- More readable, a little less error prone. Conflicts: src/core/mem_map.h src/core/mem_map_funcs.cpp | |||||
2014-11-18 | Fix documentation of parameters | Lioncash | 1 | -1/+1 | |
2014-11-17 | mem_map: Add missing prototype for Write64 | Lioncash | 1 | -0/+1 | |
2014-08-31 | Introduce VAddr and PAddr typedefs for ARM addresses. | Yuri Kunde Schlesner | 1 | -15/+24 | |
2014-08-12 | Pica/GPU: Change hardware registers to use physical addresses rather than virtual ones. | Tony Wasserka | 1 | -15/+7 | |
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-07-05 | Memory: Removed deprecated MapBlock_Shared function. | bunnei | 1 | -8/+0 | |
2014-07-05 | mem_map: Updated interface to expose template functions to other modules. | bunnei | 1 | -0/+6 | |
2014-06-25 | MemMap: Added a WriteBlock function to write a buffer of data to memory. | bunnei | 1 | -0/+2 | |
2014-05-16 | added memory mapped region for system mem - sdk demos load a segment here on ELF load | bunnei | 1 | -0/+7 | |
2014-05-08 | added kernel memory to mem_map | bunnei | 1 | -0/+6 | |
2014-05-07 | added mem_map read for config_mem | bunnei | 1 | -0/+5 | |
2014-05-01 | fixed a bug where ExeFs code was being incorrectly masked | bunnei | 1 | -1/+1 | |
2014-05-01 | added virtual memory map for ExeFS (where ARM11 code is supposed to be loaded) | bunnei | 1 | -0/+1 | |
2014-05-01 | reorganized memory regions enum, added regions for ExeFS code | bunnei | 1 | -20/+25 | |
2014-04-28 | added virtual address conversion for firmware FW0B | bunnei | 1 | -0/+2 | |
2014-04-27 | added helper functions to mem_map to convert physical addresses to virtual addresses | bunnei | 1 | -0/+14 | |
2014-04-26 | - changed HW IO map to use virtual addresses | bunnei | 1 | -1/+3 | |
- added hooks to catch LCD IO read/writes | |||||
2014-04-26 | added vram to memory_map | bunnei | 1 | -1/+2 | |
2014-04-25 | - added preliminary support for svc_MapMemoryBlock | bunnei | 1 | -0/+9 | |
- added shared memory region - moarrrr cleanups to memory_map | |||||
2014-04-25 | added functions to map Heap and Shared memory space | bunnei | 1 | -4/+23 | |
2014-04-18 | added GSP heap memory allocation | bunnei | 1 | -0/+25 | |
2014-04-18 | moved enums into Memory:: namespace | bunnei | 1 | -4/+2 | |
2014-04-18 | added memory read/write to GSP heap | bunnei | 1 | -1/+3 | |
2014-04-18 | more various refactors to memory interface | bunnei | 1 | -20/+33 | |
2014-04-18 | cleaned up memory interfaces a lot, removed some hackish stuff | bunnei | 1 | -3/+1 | |
2014-04-13 | replace tabs with spaces | bunnei | 1 | -3/+3 | |
2014-04-13 | added OS memory read/write for thread command buffer | bunnei | 1 | -4/+0 | |
2014-04-13 | - added HLE to connect to "srv:" service | bunnei | 1 | -1/+2 | |
- 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-12 | added a memory mapped option for HLE | bunnei | 1 | -5/+8 | |
2014-04-11 | added Memory::GetCharPointer to read strings from HLE functions | bunnei | 1 | -0/+4 | |
2014-04-09 | fixed project includes to use new directory structure | bunnei | 1 | -2/+2 | |
2014-04-09 | got rid of 'src' folders in each sub-project | bunnei | 1 | -0/+0 | |
2014-04-09 | fixed all license file headers in core | bunnei | 1 | -30/+5 | |
2014-04-04 | made memory #define's enum to make debugging easier | bunnei | 1 | -15/+21 | |
2014-04-01 | added support for reading/writing to stack mem | bunnei | 1 | -2/+10 | |
2014-03-30 | added ARM11 MMU from skyeye | bunnei | 1 | -2/+2 | |
2014-03-25 | added a GetPointer function to Memory for use with ELF loading | bunnei | 1 | -1/+4 | |
2013-09-20 | added mem_map hardware writing | ShizZy | 1 | -0/+3 | |
2013-09-19 | added hw R/W/ memory functions | ShizZy | 1 | -2/+1 | |
2013-09-19 | refactored some mem_map stuff | ShizZy | 1 | -1/+1 | |
2013-09-14 | renamed project to 'citrus' | ShizZy | 1 | -1/+1 | |
2013-09-06 | start of 3DS memory map | ShizZy | 1 | -4/+25 | |
2013-09-06 | added core and mem_map files to the project | ShizZy | 1 | -0/+58 | |