de79b6fc48
Merge pull request #1869 from wwylele/dont-be-lazy
...
Switch context to the same thread if necessary
2016-06-28 21:03:52 -07:00
87c07643ff
Merge pull request #1867 from mailwl/srv-update
...
srv: Update according 3dbrew
2016-06-28 18:53:10 -04:00
8f86cc4df9
Merge pull request #1877 from wwylele/wait-fix-timeout
...
Thread: update timeout when reruning WaitSynch
2016-06-18 01:08:22 -04:00
7b445ddff0
Kernel/SVC: Implemented svcCreatePort.
2016-06-11 08:37:37 -05:00
3d9fbffbab
Kernel: Added ClientPort and ServerPort classes.
...
This is part of an ongoing effort to implement support for multiple processes.
2016-06-05 09:35:31 -05:00
7d56e88369
Thread: update timeout when rerunning WaitSynch
2016-06-04 09:27:16 +03:00
e85b22320a
Fix parameter name in EnableNotification
2016-05-31 10:06:00 +03:00
81d3462a19
Switch context on the same thread if necessary
2016-05-30 07:34:53 +03:00
ab4b27f0f5
Merge pull request #1692 from Subv/rm_getpointer2
...
Memory: Remove most usages of GetPointer
2016-05-29 21:57:07 -04:00
80abe6eb08
Memory: Added necessary headers and removed unnecessary header
2016-05-26 18:55:37 +01:00
1ebaaf9bb1
Kernel/Thread: Remove use of Memory::GetPointer
2016-05-21 11:14:11 -05:00
a39144050b
Merge pull request #1800 from JayFoxRox/set-fpscr
...
Set fpscr for new threads
2016-05-17 21:24:57 -04:00
af37dd0d52
Set fpscr for new threads
2016-05-17 08:59:52 +02:00
64da2bf0cd
Memory: Fixed a regression caused by #1695 and #1689 .
...
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-14 11:24:19 -05:00
18b517e236
Merge pull request #1689 from Subv/shmem
...
Kernel: Implemented shared memory.
2016-05-13 15:33:44 -04:00
0d8bd3ba36
Merge pull request #1695 from Subv/tls_alloc
...
Kernel/Threads: Dynamically allocate the TLS region for threads.
2016-05-12 21:51:35 -04:00
ac2de12ed8
HLE/Applets: Give each applet its own block of heap memory, and use that when creating the framebuffer shared memory block.
2016-05-12 20:01:59 -05:00
d261984f54
Kernel: Account for automatically-allocated shared memories in the amount of used linear heap memory.
2016-05-12 20:01:59 -05:00
5679d066b5
Kernel/SharedMemory: Log an error when Map fails.
2016-05-12 20:01:27 -05:00
0fb6d2a247
Kernel: Implemented shared memory permissions.
2016-05-12 20:01:26 -05:00
f72bd57212
Kernel/Memory: Remove the Shared Memory region from the legacy memory map.
2016-05-12 20:00:33 -05:00
1bd0cf542f
Kernel/SharedMemory: Properly implemented shared memory support.
...
Applications can request the kernel to allocate a piece of the linear heap for them when creating a shared memory object.
Shared memory areas are now properly mapped into the target processes when calling svcMapMemoryBlock.
Removed the APT Shared Font hack as it is no longer needed.
2016-05-12 20:00:32 -05:00
42a50da76b
Kernel/SVC: Fixed the register order for svcCreateMemoryBlock.
...
R0 is used as the last parameter instead of R4.
2016-05-12 20:00:29 -05:00
282a2ad539
Merge pull request #1766 from Subv/log_cpu
...
Kernel/Threading: Warn when a thread can be scheduled in the Syscore (Core 1)
2016-05-08 15:03:08 -04:00
5b7f86708c
Kernel/Threading: Warn when a thread can be scheduled in the Syscore (Core 1).
...
We do not currently implement any cores other than the AppCore (Core 0).
2016-05-07 10:23:03 -05:00
d192fb066d
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.
2016-05-07 10:18:47 -05:00
75cbfeee58
Merge pull request #1762 from bunnei/global
...
hle: Get rid of direct global access to g_reschedule
2016-05-05 21:45:57 -04:00
aa6380e5bc
Merge pull request #1643 from MerryMage/make_unique
...
Common: Remove Common::make_unique, use std::make_unique
2016-04-05 20:10:11 -04:00
a06dcfeb61
Common: Remove Common::make_unique, use std::make_unique
2016-04-05 13:31:17 +01:00
04f8d39a96
session: Make helper functions constexpr
2016-03-21 04:07:03 -04:00
6b7ebb3f82
hle: Get rid of global access to g_reschedule
...
This shouldn't be directly exposed if there's already a partial API that operates on it.
We can just provide the rest of that API.
2016-03-21 02:57:12 -04:00
856a1d0386
svc: Move ResetType enum to the kernel event header
2016-03-12 21:47:41 -05:00
12e92f17de
svc: Make ResetType an enum class
2016-03-12 15:06:31 -05:00
6aa90e13f9
Memory: Do correct Phys->Virt address translation for non-APP linheap
2016-03-05 22:09:59 -08:00
8b00954ec7
AudioCore: Skeleton Implementation
...
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.
2016-02-21 13:13:52 +00:00
6c71858c5c
BitField: Make trivially copyable and remove assignment operator
2016-02-12 19:51:16 +00:00
2b93313348
Memory: Implement MMIO
2016-01-30 18:41:04 +00:00
d90d5a0ee6
HLE/SVC: Implement UnmapMemoryBlock.
...
This implementation will need to be (almost completely) changed when we implement multiprocess support.
2016-01-14 11:29:19 -05:00
6cccc36505
HLE/Timers: Reset OneShot timers when they are acquired instead of when they're triggered.
...
Closes #1139
2015-12-29 20:35:25 -05:00
29032ce9b6
SVC: Fixed ArbitrateAddress to behave as it does on hardware.
...
This was verified with hwtests that i plan to upload later on.
2015-12-27 18:44:42 -05:00
84a22cb594
Kernel: Implement svcGetSystemInfo
...
This makes smealum/ctrulib@b96dd51d33 work
with Citra.
2015-11-30 19:49:44 -08:00
32391cffdd
Silence -Wsign-compare warnings.
2015-10-06 22:16:15 -05:00
751fbfdcc3
general: Silence some warnings when using clang
2015-09-16 08:51:53 -04:00
d3efa637b4
General: Fix up doxygen comments
2015-09-10 11:20:21 -04:00
0ee3e2c25e
Kernel: Fix wrong linear heap base on titles using newer kernels
...
Typo which sneaked in through review on #1025
2015-08-27 23:52:40 -03:00
12390eb155
Kernel: Fix assertion failure when ControlMemory is called with size=0
2015-08-26 21:29:05 -03:00
687d973980
Core: Improve APT Shared Font hack
...
Should fix invalid read loops in some games
2015-08-26 21:28:58 -03:00
840b85690b
Kernel: Remove unused legacy heap MapBlock_* functions
2015-08-16 01:03:49 -03:00
14eca982f4
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.
2015-08-16 01:03:48 -03:00
74d4bc0af1
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.
2015-08-16 01:03:47 -03:00