Commit Graph

4083 Commits

Author SHA1 Message Date
Subv
8634b8cb83 Threading: Reworked the way our scheduler works.
Threads will now be awakened when the objects they're waiting on are signaled, instead of repeating the WaitSynchronization call every now and then.

The scheduler is now called once after every SVC call, and once after a thread is awakened from sleep by its timeout callback.

This new implementation is based off reverse-engineering of the real kernel.

See https://gist.github.com/Subv/02f29bd9f1e5deb7aceea1e8f019c8f4 for a more detailed description of how the real kernel handles rescheduling.
2016-12-03 22:38:14 -05:00
Mat M
0423a38ab5 Merge pull request #2251 from JayFoxRox/remove-version
Remove unused version.h in citra_qt
2016-12-01 14:24:40 -05:00
Jannik Vogel
8efeb6ee2b Remove unused version.h 2016-12-01 16:38:46 +01:00
Yuri Kunde Schlesner
68c00ee771 Merge pull request #2228 from freiro/winver_fix
Move WINVER definition to cmake and a bit of cleanup
2016-11-30 15:47:08 -08:00
Sebastian Valle
e27d824768 Merge pull request #2243 from MerryMage/r15
dynarmic: Fix ABI violation
2016-11-30 17:41:20 -05:00
MerryMage
c46b3dec63 dynarmic: Fix ABI violation
Caused by not saving/restoring the x64 r15 register on entry/exit from
JITted code.

Closes #2224.
2016-11-30 19:12:46 +00:00
wwylele
6034399bf9 Merge pull request #2241 from Subv/clang_format
ClangFormat: Fixed the clang-format errors
2016-11-30 18:52:53 +02:00
freiro
35e979f041 Appending PLATFORM_LIBRARIES instead of redefining them 2016-11-30 16:28:21 +01:00
freiro
0c22e52f52 WINVER definition moved to CMake and cleanup 2016-11-30 15:47:09 +01:00
Subv
e3e4f27447 ClangFormat: Fixed the clang-format errors 2016-11-30 09:37:37 -05:00
Sebastian Valle
e5a7f2ef29 Merge pull request #1820 from mailwl/service-ver
Set client SDK version to Service APIs
2016-11-30 08:04:23 -05:00
mailwl
5b136aa211 Set client SDK version to Service APIs 2016-11-30 09:51:14 +03:00
bunnei
cf5b8483fc Merge pull request #2233 from Subv/warnings
Build: Fixed a few warnings.
2016-11-29 23:23:22 -05:00
James Rowe
f32309400c Update dynarmic to the latest version (#2234) 2016-11-29 23:22:19 -05:00
Subv
aea9a91100 Build: Fixed a few warnings. 2016-11-29 16:51:53 -05:00
Yuri Kunde Schlesner
3174bfd50c Merge pull request #2196 from Subv/system_mode
Kernel/Loader: Grab the system mode from the NCCH ExHeader.
2016-11-27 17:04:11 -08:00
Yuri Kunde Schlesner
e279a6955e Merge pull request #2222 from linkmauve/die-frameskip-die
Remove the broken frame_skip option
2016-11-27 16:01:45 -08:00
Sebastian Valle
4ba5acdaff Merge pull request #2132 from wwylele/fix-fs-err
Correct FS error codes & add path boundary checks
2016-11-27 18:56:56 -05:00
Subv
d171409f29 Kernel/Loader: Grab the system mode from the NCCH ExHeader.
3dsx and elf files default to system mode 2 (96MB allocated to the application).

This allows Home Menu to boot without modifications.
Closes #1849
2016-11-27 18:03:48 -05:00
Yuri Kunde Schlesner
77b7cec8af Merge pull request #2218 from Subv/stencil_lines
Rasterizer/Memfill: Set the correct stencil write mask when clearing the stencil buffer.
2016-11-27 13:57:31 -08:00
Emmanuel Gil Peyrot
0820c99462 GPU: Remove the broken frame_skip option.
Fixes #1960.
2016-11-27 21:19:56 +00:00
Subv
4623415026 RasterizerGL: Use GL_TRUE and 0xFF in the stencil and depth masks instead of simply true and -1 2016-11-27 13:09:11 -05:00
Subv
743b0e71d9 Rasterizer/Memfill: Set the correct stencil write mask when clearing the stencil buffer. 2016-11-27 12:16:10 -05:00
Sebastian Valle
d3b7f57b2b Merge pull request #2168 from mailwl/mic
MIC_U: Stub service funcions
2016-11-27 00:19:33 -05:00
Yuri Kunde Schlesner
a0b30189e5 Merge pull request #2185 from freiro/local_folder
Change "user" folder default location to AppData/Roaming/ on Windows systems
2016-11-26 14:07:43 -08:00
freiro
593ec7fa74 Move to AppData/Roaming/Citra/ 2016-11-26 22:57:36 +01:00
Yuri Kunde Schlesner
b230913c2b Merge pull request #2215 from MerryMage/ticks_executed
dynarmic: Add ticks based on ticks executed, not ticks requested
2016-11-26 13:51:11 -08:00
MerryMage
27be446049 dynarmic: Add ticks based on ticks executed, not ticks requested 2016-11-26 20:32:33 +00:00
freiro
972b289c78 Removed /user/ from path 2016-11-26 01:00:52 +01:00
mailwl
ec15e485c9 Output parameters to log 2016-11-25 09:37:20 +03:00
mailwl
d4cadf11fc MIC_U: Stub service funcions 2016-11-25 09:37:19 +03:00
Yuri Kunde Schlesner
ed2ff8df85 Merge pull request #2210 from jroweboy/pagetables
Expose page table to dynarmic for optimized reads and writes to the JIT
2016-11-24 19:58:12 -08:00
James Rowe
bbe57a66ca Expose page table to dynarmic for optimized reads and writes to the JIT 2016-11-24 20:41:18 -07:00
Yuri Kunde Schlesner
8a73eb8024 Merge pull request #2211 from yuriks/travis-no-upload
Travis: Remove build uploading
2016-11-24 17:30:28 -08:00
Yuri Kunde Schlesner
99079cc906 Travis: Remove build uploading
@archshift has been MIA for a while, so our builds server is currently
down. Furthermore, uploading is broken in both Linux and macOS:

- The version of lftp in Trusty doesn't support the sftp:auto-confirm
  option, which means that uploading would hang, even if the server
  weren't down. It currently tries to connect forever and fails the
  build with a timeout.
- lftp was removed from Homebrew, so it wasn't being installed on macOS
  and invoking it just failed.
2016-11-24 15:49:15 -08:00
Yuri Kunde Schlesner
34d491295c Merge pull request #2208 from freiro/libsdl205
Windows, move to SDL2-2.0.5
2016-11-24 14:04:00 -08:00
freiro
79317b63d9 Switch to AppData/Roaming 2016-11-24 16:42:31 +01:00
jphalimi
82210ab480 Cache Vertices instead of Output registers (#2165)
This patch brings +3% performance improvement on average. It removes
ToVertex() as an important hotspot of the emulator.
2016-11-23 23:10:34 -05:00
pippo2931
0c9c97e5ea Bravely Default/Second stuck #1822 (#2188)
* Bravely Default/Second stuck #1822
CancelLibraryApplet stub

* Log parameter.

* Taking care of comments

* Sync with 3DBrew

* White space ?

* lower case
2016-11-23 22:57:56 -05:00
Yuri Kunde Schlesner
4b8ba4551a Merge pull request #2175 from PEmu1/macos
Change "OS X" to "macOS" in the Readme
2016-11-23 18:51:59 -08:00
Yuri Kunde Schlesner
ef421696e3 Merge pull request #2186 from wwylele/config9
cfg: add config block 0x00090000
2016-11-23 18:51:01 -08:00
Yuri Kunde Schlesner
fefa645ec7 Merge pull request #1654 from JamePeng/errdisp
Rework the code of err:f service!
2016-11-23 17:43:02 -08:00
James Rowe
c96d143135 Merge pull request #2207 from wwylele/fix-2195
Fix format error from #2195
2016-11-22 12:46:12 -07:00
wwylele
75affa13f7 Fix format error from #2195 2016-11-22 20:17:28 +02:00
wwylele
0fbe0634a7 Merge pull request #2206 from freiro/SDL_Audio_Error
Improve verbosity of audio errors
2016-11-22 20:12:35 +02:00
freiro
5dd31f204a Improve verbosity of audio errors with SDL_GetError() 2016-11-22 17:28:11 +01:00
freiro
9ca3a2d461 Move to SDL2-2.0.5 2016-11-22 09:16:04 +01:00
coc4tm
609023ceaf Improve MIME description and add French translation 2016-11-20 19:15:29 +00:00
bunnei
2de470c9b2 Merge pull request #2195 from Subv/factor_check
GPU/CiTrace: Avoid calling GetTextures() when not necessary.
2016-11-19 22:21:11 -05:00
bunnei
f1798c1db6 Merge pull request #2193 from Subv/pulse_events
Kernel/Events: Log an error when trying to create Pulse events and timers
2016-11-19 22:19:45 -05:00