Weiyi Wang
8118be6615
Kernel: pass in MemorySystem
2018-12-05 20:16:42 -05:00
Weiyi Wang
6992f76acf
Memory: create MemorySystem class
2018-12-05 20:16:42 -05:00
Francois Berder
c598fd7228
renderer_opengl: Fix string comparison
...
Signed-off-by: Francois Berder <fberder@outlook.fr>
2018-12-04 22:12:35 +00:00
Pengfei Zhu
cd80a0df8c
Merge pull request #4418 from FearlessTobi/port-1441
...
Port yuzu-emu/yuzu#1441 : "logging: Add DebuggerBackend for logging to Visual Studio"
2018-12-04 22:20:41 +08:00
RoadrunnerWMC
008ef1fd71
DSP: Add a comment about physical address masking
...
See @wwylele's comment on PR 4483 for more details on what causes this behavior.
2018-12-03 12:22:11 -07:00
RoadrunnerWMC
3aff585f32
DSP: Add address mask for physical pointers to audio data buffers
...
Hardware testing indicated that FFFFFFFC is the correct mask for all audio formats (mono and stereo PCM8, mono and stereo PCM16, and ADPCM). This fixes broken audio in Luigi's Mansion: Dark Moon and a few other games.
2018-12-03 01:07:55 -07:00
Weiyi Wang
76944ec0e0
Merge pull request #4279 from FearlessTobi/better-mii-stub
...
applets: stub mii selector to always return a standard mii
2018-12-01 19:41:21 -05:00
Carl Kenner
3d083859c1
logging: Add DebuggerBackend for logging to Visual Studio
2018-12-01 12:54:17 +01:00
zhupengfei
1970178cc0
citra_qt: rename the menu to Tools
...
Also made Movie a sub-menu of Tools.
2018-11-30 14:14:41 +08:00
zhupengfei
071b41cb61
citra_qt, video_core: Screenshot functionality
...
Allows capturing screenshot at the current internal resolution (native for software renderer), but a setting is available to capture it in other resolutions. The screenshot is saved to a single PNG in the current layout.
2018-11-30 14:14:41 +08:00
Weiyi Wang
7e90abec78
Merge pull request #4442 from wwylele/memory-no-kernel
...
Memory: decouple from Kernel
2018-11-28 11:24:41 -05:00
Weiyi Wang
b37d3be34e
Merge pull request #4458 from FearlessTobi/port-1773
...
Port yuzu-emu/yuzu#1773 : "common/thread: Minor cleanup"
2018-11-28 11:07:48 -05:00
fearlessTobi
48239be22c
mii_selector: Use BitField where possible
2018-11-27 14:57:51 +01:00
Weiyi Wang
2678c1a945
Merge pull request #4462 from FearlessTobi/fix-my-shit
...
ir_user: Remove ArrayToString() calls
2018-11-26 14:43:07 -05:00
fearlessTobi
5121fadb4f
ir:/movie: Replace for-loops with fmt::join
2018-11-26 20:04:18 +01:00
Lioncash
067f09b41d
kernel/shared_memory: std::move the string parameter in SetName()
...
This avoids a potential reallocation.
2018-11-24 10:07:11 -05:00
fearlessTobi
fe99e5a51e
mii_selector: map raw data to the MiiResult struct
2018-11-24 14:35:06 +01:00
Weiyi Wang
210e558bea
Merge pull request #4456 from FearlessTobi/port-1767
...
Port yuzu-emu/yuzu#1734 and yuzu-emu/yuzu#1767 : Minor changes to "kernel"
2018-11-24 00:04:42 -05:00
bunnei
9bd7379cc6
Merge pull request #4454 from FearlessTobi/port-1758
...
Port yuzu-emu/yuzu#1758 : "common/math_util: Minor cleanup"
2018-11-23 23:15:40 -05:00
bunnei
dc16ba009e
Merge pull request #4444 from FearlessTobi/port-1684
...
Port yuzu-emu/yuzu#1684 : "common/string_util: Minor cleanup"
2018-11-23 23:13:39 -05:00
Lioncash
00564bdb6f
common/thread: Drop Hungarian notation on SetCurrentThreadName's parameter
...
This is inconsistent with our coding style.
2018-11-23 18:23:06 +01:00
Lioncash
255d46e6ee
common/thread: Make Barrier's 'count' member non-const
...
While admirable as a means to ensure immutability, this has the
unfortunate downside of making the class non-movable. std::move cannot
actually perform a move operation if the provided operand has const data
members (std::move acts as an operation to "slide" resources out of an
object instance). Given Barrier contains move-only types such as
std::mutex, this can lead to confusing error messages if an object ever
contained a Barrier instance and said object was attempted to be moved.
2018-11-23 18:22:30 +01:00
Lioncash
4f0ec03c97
common/thread: Initialize class member variables where applicable
...
Simplifies the constructor interfaces for Barrier and Event classes.
2018-11-23 18:22:14 +01:00
Lioncash
9cbcc70c9b
common/thread: Group non-member functions together
...
Keeps the non-member interface in one spot instead of split into two
places, making it nicer to locate functions.
2018-11-23 18:22:05 +01:00
Lioncash
a7a319cfd1
common/thread: Remove SleepCurrentThread()
...
This is also unused and superceded by standard functionality. The
standard library provides std::this_thread::sleep_for(), which provides
a much more flexible interface, as different time units can be used with
it.
2018-11-23 18:21:59 +01:00
Lioncash
61eafcee98
common/thread: Remove unused CurrentThreadId()
...
This is an old function that's no longer necessary. C++11 introduced
proper threading support to the language and a thread ID can be
retrieved via std::this_thread::get_id() if it's ever needed.
2018-11-23 18:21:45 +01:00
Lioncash
86c36cb176
kernel/shared_memory: Make Map() and Unmap() take the target process by reference rather than as a pointer
...
Both member functions assume the passed in target process will not be
null. Instead of making this assumption implicit, we can change the
functions to be references and enforce this at the type-system level.
2018-11-23 17:00:12 +01:00
Lioncash
0f544af89a
kernel/shared_memory: Add a const qualified member function overload for GetPointer()
...
Given this doesn't mutate instance state, we can provide a
const-qualified variant as well.
2018-11-23 16:38:18 +01:00
Lioncash
1cb9bea504
kernel/shared_memory: Make data members private
...
Rather than allow unfettered access to the class internals, we hide all
members by default and create and API that other code can operate
against.
2018-11-23 16:20:18 +01:00
Lioncash
662c3ff684
kernel/handle_table: Move private static functions into the cpp file
...
These don't depend on class state, and are effectively implementation
details, so they can go into the cpp file .
2018-11-23 15:58:12 +01:00
Lioncash
83f6e9ea72
kernel/handle_table: Default destructor in the cpp file
...
We don't need to potentially inline the teardown logic of all of the
handle instances.
2018-11-23 15:58:07 +01:00
Lioncash
d37c826097
common/math_util: Simplify std::make_signed usages to std::make_signed_t
...
Gets rid of the need to use typename to access the ::type alias.
2018-11-23 15:01:05 +01:00
Lioncash
8d169a4bfa
common/math_util: Make Rectangle's constructors constexpr
...
Allows objects that contain rectangle instances to be constexpr
constructible as well.
2018-11-23 15:00:59 +01:00
Lioncash
bf8f7f0ab6
common/math_util: Remove unnecessary static from PI
...
const/constexpr variables have internal linkage by default.
2018-11-23 15:00:52 +01:00
Lioncash
2787d1230b
common/math_util: Remove unused IntervalsIntersect() function
...
This hasn't been used since the project started, so we may as well get
rid of it to keep it from bit rotting.
2018-11-23 15:00:47 +01:00
BreadFish64
f4472a10e6
core: undef PAGE_SIZE and PAGE_MASK
...
these are defined a system header which causes complications when building for android
2018-11-20 14:24:19 -05:00
BreadFish64
6609ff83a7
android: set up cmake
2018-11-20 14:24:19 -05:00
fearlessTobi
fc51a6fd08
Fix functions which used Common::ArrayToString
2018-11-20 15:05:54 +01:00
Weiyi Wang
a854b23d9b
RPC: add missing include
2018-11-19 11:16:55 -05:00
Weiyi Wang
679dfd7cdf
Memory: remove CopyBlock with current process
2018-11-19 11:16:55 -05:00
Weiyi Wang
185a83f06d
Memory: remove ZeroBlock with current process
2018-11-19 11:16:55 -05:00
Weiyi Wang
4e99641a3b
Memory: remove WriteBlock with current process
2018-11-19 11:16:55 -05:00
Weiyi Wang
8871f5a4ac
Memory: remove ReadBlock with current process
2018-11-19 11:16:55 -05:00
Weiyi Wang
524364d95a
ldr_ro: pass process reference to memory operation
...
Note that not all memory operation is fixed. Specifically, u8/u16/u32 Read/Write is still using the current page tabel
2018-11-19 11:16:55 -05:00
Weiyi Wang
d4ba87d90a
Memory: remove GetMMIOHandler with current process
2018-11-19 11:16:55 -05:00
Weiyi Wang
7308b8d294
Memory: remove IsValidVirtualAddress with current process
2018-11-19 11:16:55 -05:00
Weiyi Wang
36cf104a02
Memory: replace GetPointerFromVMA with GetPointerForRasterizerCache
...
All usage of GetPointerFromVMA is to recover the pointer that is nulled by changing page type to RasterizerCachedMemory. Our rasterizer cache only works on linear heap and vram, so we can recover the pointer directly by address computation, instead of going through VMA table. Also removed a sanity check pointer!=nullptr in RasterizerMarkRegionCached(RasterizerCachedMemory=>Memory), as now the pointer is never null. The sanity check was added in f2a5a77
(#2797 ), which was originally necessary during VMA unmapping process, because the function is invloked by VMA after unmapping the page, which in turn invokes back to query the memory, forming a circular dependency. Now the dependency is resolved so the check is not necessary
2018-11-19 11:16:55 -05:00
Weiyi Wang
2b768da531
Merge pull request #4433 from wwylele/vmmanager-simple
...
VMManager: remove shared_ptr<vector> backing type
2018-11-19 11:13:22 -05:00
Weiyi Wang
a7d6bc4e84
Merge pull request #4441 from FearlessTobi/port-1688
...
Port yuzu-emu/yuzu#1688 : "service: Mark MakeFunctionString with the [[maybe_unused]] attribute."
2018-11-19 11:10:51 -05:00
Weiyi Wang
803f783f07
Merge pull request #4427 from wwylele/query-memory-merge
...
SVC: QueryMemory merges similar VMA
2018-11-19 11:10:15 -05:00