Lioncash
572bff0143
memory: Remove unnecessary const qualifiers in prototypes
These aren't necessary, as value-wise const only matters in the
definition.
7 years ago
Lioncash
3bcf090d37
core/memory: Get rid of 3DS leftovers
Removes leftover code from citra that isn't needed.
7 years ago
Michael Scire
a3509a9e74
Kernel/Arbiters: Fix casts, cleanup comments/magic numbers
8 years ago
bunnei
31748079de
gl_rasterizer_cache: Update to be based on GPU addresses, not CPU addresses.
8 years ago
bunnei
36cdd5a39c
memory: Fix stack region.
8 years ago
bunnei
49b3b519fc
memory: Add RasterizerMarkRegionCached code and cleanup.
8 years ago
bunnei
6131f96f6a
rasterizer: Flush and invalidate regions should be 64-bit.
8 years ago
bunnei
c9c232727c
memory: Port RasterizerFlushVirtualRegion from Citra.
8 years ago
N00byKing
35d617d342
Remove more N3DS References
8 years ago
bunnei
89312134f6
memory: Add regions for map region, "new" map region, etc.
8 years ago
MerryMage
2a0362fe5d
arm_dynarmic: Support direct page table access
8 years ago
MerryMage
7a23a53396
memory: Replace all memory hooking with Special regions
8 years ago
David
f10082f410
Update memory.h
8 years ago
David Marcec
57523d6fab
Increased heap size and changed tls area vaddr
8 years ago
bunnei
4728cc141a
core/video_core: Fix a bunch of u64 -> u32 warnings.
8 years ago
bunnei
58cf9d847a
svc: Implement MapMemory.
8 years ago
bunnei
ec6eb66383
memory: Support 32-bit paging, move heap address space up.
8 years ago
bunnei
e36ccd5ff1
loader: Various improvements for NSO/NRO loaders.
8 years ago
Subv
1265575db5
Memory: Make WriteBlock take a Process parameter on which to operate
8 years ago
Subv
bf55d2f57e
Memory: Make ReadBlock take a Process parameter on which to operate
8 years ago
bunnei
e5731e94d6
core: Various changes to support 64-bit addressing.
8 years ago
Subv
3cb2bf08c3
Memory: Allow IsValidVirtualAddress to be called with a specific process parameter.
There is still an overload of IsValidVirtualAddress that only takes the VAddr and will default to the current process.
8 years ago
MerryMage
ecf27fbf82
memory: Remove GetCurrentPageTablePointers
8 years ago
MerryMage
6b8ad273fc
memory: Add GetCurrentPageTable/SetCurrentPageTable
Don't expose Memory::current_page_table as a global.
8 years ago
Subv
71281c2114
Kernel/Memory: Changed GetPhysicalPointer so that it doesn't go through the current process' page table to obtain a pointer.
9 years ago
Subv
36100ec791
Kernel/Memory: Give each Process its own page table.
The loader is in charge of setting the newly created process's page table as the main one during the loading process.
9 years ago
Yuri Kunde Schlesner
1423b3b10e
Memory: Add function to flush a virtual range from the rasterizer cache
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.
9 years ago
Yuri Kunde Schlesner
75be7907c1
Memory: Add TryVirtualToPhysicalAddress, returning a boost::optional
9 years ago
Yuri Kunde Schlesner
1dd91e371b
Memory: Make PhysicalToVirtualAddress return a boost::optional
And fix a few places in the code to take advantage of that.
9 years ago
Yuri Kunde Schlesner
2cb9a2538b
Memory: Add enum definitions for the n3DS FCRAM size
9 years ago
Yuri Kunde Schlesner
2af0a2a4b7
Memory: Add constants for the n3DS additional RAM
This is 4MB of extra, separate memory that was added on the New 3DS.
9 years ago
James Rowe
13888eac06
Expose page table to dynarmic for optimized reads and writes to the JIT
9 years ago
Emmanuel Gil Peyrot
1138ec0d49
Remove empty newlines in #include blocks.
This makes clang-format useful on those.
Also add a bunch of forgotten transitive includes, which otherwise
prevented compilation.
9 years ago
Emmanuel Gil Peyrot
628ed4376a
Sources: Run clang-format on everything.
9 years ago
wwylele
3008911345
Memory: add ReadCString function
10 years ago
Subv
9d36016350
Memory: Make ReadBlock and WriteBlock accept void pointers.
10 years ago
MerryMage
c3ad268edc
Memory: CopyBlock
10 years ago
MerryMage
73cc880444
Memory: ZeroBlock
10 years ago
MerryMage
c1c78c27c2
Memory: ReadBlock/WriteBlock
10 years ago
MerryMage
b6feee037b
Memory: IsValidVirtualAddress/IsValidPhysicalAddress
10 years ago
Subv
d9baef11f2
Kernel/Threads: Dynamically allocate the TLS region for threads in the BASE 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.
10 years ago
tfarley
459035a108
HWRasterizer: Texture forwarding
10 years ago
Yuri Kunde Schlesner
91fcf7f484
Fix broken boot introduced by last-minute change in #1025
10 years ago
Yuri Kunde Schlesner
00e9d19f28
Kernel: Implement svcGetProcessInfo in a basic way
This also adds some basic memory usage accounting. These two types are
used by Super Smash Bros. during startup.
11 years ago
Yuri Kunde Schlesner
e34643a3e4
Kernel: Add more infrastructure to support different memory layouts
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.
11 years ago
Yuri Kunde Schlesner
168d376c67
Memory: Move address type conversion routines to memory.cpp/h
These helpers aren't really part of the kernel, and mem_map.cpp/h is
going to be moved there next.
11 years ago
Yuri Kunde Schlesner
fbcf0558f3
Memory: Move PAGE_MASK and PAGE_BITS to memory.h
11 years ago
Emmanuel Gil Peyrot
2d044a67c9
Common: Cleanup memory and misc includes.
11 years ago
Emmanuel Gil Peyrot
b1503b2020
Remove every trailing whitespace from the project (but externals).
11 years ago
Yuri Kunde Schlesner
dd4430609a
Memory: Use a table based lookup scheme to read from memory regions
11 years ago