f17600db1a
Moved when to pause because it wasnt fast enough
2017-12-29 06:17:21 +11:00
bbe6c8890c
Pause emulation OnCoreError
2017-12-29 06:15:59 +11:00
fbef978b98
GSP: Return the correct result code if AcquireRight is called multiple times from the same thread.
2017-12-24 12:15:01 -05:00
68fc3b36e6
HLE/GSP: Only trigger GSP interrupts for the current active GSP thread.
...
This is true for all interrupts except PDC0 and PDC1, which should be triggered for all registered threads.
TODO: The real GSP module seems to only trigger PDC0 after updating the screens (both top and bottom). PDC1 doesn't seem to be triggered at all.
2017-12-24 12:15:00 -05:00
05a44ed353
HLE/GSP: Keep track of the thread that currently has the GPU right.
...
This thread is the only one for which the GSP interrupts should be signaled, except for the PDC0/1 interrupts.
2017-12-24 12:14:59 -05:00
aabb07cca4
HLE/GSP: Make RegisterInterruptRelayQueue work in a per-session basis.
...
The registered interrupt event is unique to each session that calls RegisterInterruptRelayQueue, and only that event should be reset when UnregisterInterruptRelayQueue is called.
2017-12-24 12:14:58 -05:00
1c4d1d1ace
Move trasnfer_framebuffer to a member of RasterCache. Address review comments
2017-12-23 16:10:32 -07:00
10fb9242ae
Fix clang format
2017-12-23 16:10:32 -07:00
4e053220a8
When downloading from a surface into gl_buffer, ingore any x/y offsets in rect and use 0,0 as the origin
2017-12-23 16:10:31 -07:00
7e673af527
Remove the correct intervals from the surface when validating
2017-12-23 16:10:31 -07:00
ac4c589ab5
Workaround for ICE on gcc5
2017-12-23 16:10:31 -07:00
9a6a452857
Fix broken surface validation logic since removal of the reinterpret hack
2017-12-23 16:10:30 -07:00
f893daa4a2
Perform the same checks on TexCopy params that SW does
2017-12-23 16:10:30 -07:00
91fad7010b
Fix compilation on mac and linux
2017-12-23 16:10:30 -07:00
34ff77f5f7
Revert "OpenGL Cache: Ignore format reinterpretation hack"
...
Testing found a few games that did some crazy things which breaks the
assumptions made in that commit.
2017-12-23 16:10:29 -07:00
72034b772d
Minor style changes
2017-12-23 16:10:29 -07:00
0498d34d18
OpenGL Cache: Ignore format reinterpretation hack
...
Several games such as Smash will cause some regions that are cached on
the gpu to be revalidated, but (seemingly) we can just ignore these
cases. If the data is already found on the gpu in dirty_regions, then we
validate those, and skip flushing that region from cpu.
Its unknown if this breaks any games, but it does speed up many games.
Additionally, it removes outlines in the pokemon games.
2017-12-23 16:10:29 -07:00
5b872c41d8
OpenGL Cache: Reorder methods
...
The previous commits added the methods where they were located
originally to try to get an easy to read diff between changes. This
commit fixes compliation since the static methods are now declared
before they are used.
2017-12-23 16:10:28 -07:00
24e187891f
OpenGL Rasterizer: Update to use the new cache
2017-12-23 16:10:28 -07:00
e5adb6a26b
OpenGL Cache: Add the rest of the Cache methods
...
Fills in the rasterizer cache methods using the helper methods added in
the previous commits.
2017-12-23 16:10:27 -07:00
81ea32d1e0
OpenGL Cache: Refactor Surface Cache interface
...
Changes the public interface of the surface cache to make it easier to
use. Reintroduces the cached page count cached pages that was removed in
an earlier commit.
2017-12-23 16:10:27 -07:00
3e1cbb7d14
OpenGL Cache: Split CachedSurface
...
Breaks CachedSurface into two classes, the parameters used to create or
find a cached surface, and the actual cached surface. This also adds a
few helper methods for getting surfaces from cache
2017-12-23 16:10:27 -07:00
0b98b768f5
OpenGL Cache: Add surface utility functions
...
Separates creating and filling surfaces into static functions that
can be reused from the different RasterizerCache methods.
2017-12-23 16:10:26 -07:00
e9e2d444ef
OpenGL Cache: Optimize Morton Copy to copy in tiles
...
Compiles two lookup arrays of functions for the different
configurations of Morton Copy.
2017-12-23 16:10:26 -07:00
160ac25527
OpenGL State: Change setters so they don't directly write to curstate
2017-12-23 16:10:25 -07:00
13606a6d0b
Memory: Remove count of cached pages and add InvalidateRegion
...
In a future commit, the count of cached pages will be reintroduced in
the actual surface cache. Also adds an Invalidate only to the cache
which marks a region as invalid in order to try to avoid a costly flush
from 3ds memory
2017-12-23 16:10:25 -07:00
c821c14908
Settings: Change resolution scaling to an integer instead of a float
2017-12-23 16:10:25 -07:00
c3c684cd2b
Merge pull request #3301 from Subv/exitprocess2
...
Kernel/SVC: Partially implemented svcExitProcess.
2017-12-23 10:49:36 -05:00
f2e1160601
Merge pull request #3326 from wwylele/cmake-gen
...
cmake: add missing ${...} for variables inside generator expressions
2017-12-22 22:25:42 -08:00
80ed0f03ac
cmake: add missing ${...} for variables inside generator expressions
2017-12-23 03:00:15 +02:00
bf23f8d542
HID: convert to ServiceFramework
2017-12-22 12:41:41 +02:00
5345d2e957
fixup!citra_qt: load translation from resource
2017-12-22 12:34:49 +02:00
ae42267cc7
Merge pull request #3307 from Subv/gsp_new_frame
...
HLE: Convert GSP_GPU to ServiceFramework.
2017-12-21 10:31:41 -05:00
3652809408
HLE: Convert GSP_GPU to ServiceFramework.
...
The only functional change is the error handling of GSP_GPU::ReadHWRegs function. We previously didn't return error codes (not even for success). The new returns were found by reverse engineering the GSP module.
2017-12-21 10:30:22 -05:00
c143a5a3a6
Merge pull request #3318 from MerryMage/gdb_stub_
...
gdbstub: Correct typo
2017-12-20 15:05:37 -05:00
19814d68c1
gdbstub: Correct typo
...
Constructing and destructing a Core::System instance for the
GetInstance() call isn't the smartest thing to do.
2017-12-20 18:47:06 +00:00
c6293d7357
Merge pull request #3312 from lioncash/qt5-connect
...
citra_qt: Migrate to Qt 5 signal/slot connection syntax where applicable
2017-12-19 14:24:39 +00:00
3f37976fd3
Merge pull request #3309 from wwylele/cro-session-slot
...
ldr_ro: use ServiceFramework's session slot for client slot
2017-12-18 18:22:39 +00:00
32b2d5bdfe
Merge pull request #3253 from lioncash/mic-ipc
...
mic_u: Migrate to the new service framework
2017-12-18 14:34:47 +00:00
a73f135868
citra_qt: Migrate to Qt 5 signal/slot connection syntax where applicable
...
This is more type-safe than the string-based signal/slot syntax that was
being used. It also makes the connections throughout the UI code consistent.
2017-12-17 18:44:48 -05:00
4c3a4ab664
Merge pull request #3306 from lioncash/qt4
...
citra_qt: Drop Qt 5 version checks in code
2017-12-17 12:08:21 +02:00
0238e0c5e7
Convert Movie to a class with a static instance, and other fixes based on B3n30 feedback.
2017-12-17 17:55:56 +13:00
04541150b1
Movie (recorded inputs) playback and recording. SDL has command lines to control it.
2017-12-17 16:43:09 +13:00
eeec04fcaa
ldr_ro: use ServiceFramework's session slot for client slot
2017-12-17 01:43:12 +02:00
6e2a4ba665
Merge pull request #3305 from lioncash/fwd
...
game_list: Use forward declarations where applicable
2017-12-16 12:42:26 -07:00
f4b595331f
GSP/GPU: Make FrameBufferInfo::active_fb use the entire u32 instead of just one bit.
...
The GSP module reads the entire 32 bit word from this field to determine the framebuffer.
2017-12-16 13:33:42 -05:00
9ec0609ae5
citra_qt: Drop Qt 5 version checks in code
...
We don't support Qt 4.x anymore.
2017-12-16 13:26:14 -05:00
8e53599deb
game_list: Use forward declarations where applicable
...
Reduces the number of header dependencies propagated by the header file.
2017-12-16 13:14:23 -05:00
125f5d1e68
Merge pull request #3284 from Subv/session_data
...
HLE/Services: Allow specifying a SessionData template parameter to ServiceFramework.
2017-12-16 09:14:34 -05:00
798a1c6ae9
Travis, Appveyor: build with languages
2017-12-16 13:11:05 +02:00