Yuri Kunde Schlesner
7d4827f520
VideoCore/Shader: Extract DebugData out from UnitState
2016-12-16 00:16:25 -08:00
Yuri Kunde Schlesner
e847c70fb6
Remove unnecessary cast
2016-12-16 00:15:55 -08:00
Yuri Kunde Schlesner
d94a04ced7
VideoCore/Shader: Extract evaluate_condition lambda to function scope
2016-12-16 00:15:51 -08:00
Yuri Kunde Schlesner
fc3d8c77c8
VideoCore/Shader: Extract call lambda up a scope and remove unused param
2016-12-15 23:08:05 -08:00
Yuri Kunde Schlesner
4a688688b1
VideoCore/Shader: Remove dynamic control flow in (Get)UniformOffset
2016-12-15 23:08:05 -08:00
Yuri Kunde Schlesner
ec7b3940b0
VideoCore/Shader: Move DebugData to a separate file
2016-12-15 23:08:05 -08:00
bunnei
034651fa7f
Merge pull request #2260 from Subv/scheduling
...
Threading: Reworked the way our scheduler works.
2016-12-16 00:41:22 -05:00
bunnei
56fee7ed29
Merge pull request #2316 from endrift/macos-gcc
...
Common: Fix gcc build on macOS
2016-12-16 00:40:40 -05:00
Yuri Kunde Schlesner
89a8f963ce
Merge pull request #2328 from wwylele/fix-trace
...
Fix debug build from #2249
2016-12-15 21:06:12 -08:00
Yuri Kunde Schlesner
37dc16c1bb
Merge pull request #2332 from lioncash/gdb
...
gdbstub: Remove global variable from public interface
2016-12-15 21:05:20 -08:00
Yuri Kunde Schlesner
ceed2efb4e
Merge pull request #2320 from mailwl/cecd-update
...
Service/CECD: Add cecd:ndm service
2016-12-15 21:01:51 -08:00
bunnei
7aa9f479d2
Merge pull request #2331 from lioncash/trunc
...
hid: Get rid of a double -> float truncation warning
2016-12-15 17:45:24 -05:00
wwylele
267f26d7df
FS: fix debug build from #2249
2016-12-16 00:22:36 +02:00
Lioncash
bec7bc3ec9
gdbstub: Remove global variable from public interface
...
Currently, this is only ever queried, so adding a function to check if the
server is enabled is more sensible.
If directly modifying this externally is ever desirable, it should be done
by adding a function to the interface, rather than exposing implementation
details directly.
2016-12-15 16:37:22 -05:00
Sebastian Valle
9df75ff6d6
Merge pull request #2330 from lioncash/pragma
...
core: Add missing #pragma once directives where applicable
2016-12-15 16:06:43 -05:00
Lioncash
7c1a069ab6
hid: Get rid of a double -> float truncation warning
...
float literals need to have the 'f' prefix.
2016-12-15 15:52:15 -05:00
Lioncash
cb4293adf1
core: Add missing #pragma once directives where applicable
2016-12-15 15:40:51 -05:00
Lioncash
8e6bf2478f
act: Fix docstring typo
...
These aren't the AM services.
2016-12-15 14:51:45 -05:00
Yuri Kunde Schlesner
52b26a026e
Merge pull request #2325 from yuriks/fix-index
...
shader_jit_x64: Use LOOPCOUNT_REG as a 64-bit reg when indexing
2016-12-15 11:19:24 -08:00
bunnei
338e24ae80
Merge pull request #2314 from mailwl/account
...
Service/ACT: move ACT services to folder
2016-12-15 13:51:29 -05:00
MerryMage
ee1822efa9
main: Open folder when open save folder location context menu is clicked
2016-12-15 18:43:11 +00:00
MerryMage
33831718fa
game_list: Implement context menu for items in list
...
* Add a context menu with a "Open Save Data Location" action
2016-12-15 18:43:10 +00:00
MerryMage
af97174940
loader: Implement ReadProgramId
2016-12-15 18:42:38 +00:00
Yuri Kunde Schlesner
50a3f434a0
shader_jit_x64: Use LOOPCOUNT_REG as a 64-bit reg when indexing
2016-12-15 10:02:42 -08:00
MerryMage
6e2d70a777
archive_source_sd_savedata: Add static method to get a specific save data path
2016-12-15 09:59:41 +00:00
Yuri Kunde Schlesner
415064165a
Memory: Always flush whole pages from surface cache
...
This prevents individual writes touching a cached page, but which don't
overlap the surface, from constantly hitting the surface cache lookup.
2016-12-14 23:46:59 -08:00
mailwl
c7a28acce4
Service/CECD: Add cecd:ndm service
2016-12-15 09:52:40 +03:00
Yuri Kunde Schlesner
66efdff1a7
VideoCore: Make profiling scope more representative
2016-12-14 22:52:09 -08:00
Yuri Kunde Schlesner
eb75205231
VideoCore: Inline IsPicaTracing
...
Speeds up ALBW main menu slightly (~3%)
2016-12-14 22:06:40 -08:00
Yuri Kunde Schlesner
d8fc6ee91b
VideoCore: Eliminate an unnecessary copy in the drawcall loop
2016-12-14 21:00:29 -08:00
Yuri Kunde Schlesner
3bf8e16d21
Merge pull request #2309 from yuriks/shader-jit-xbyak
...
Convert shader JIT to Xbyak
2016-12-14 20:44:30 -08:00
Yuri Kunde Schlesner
c99b5e3122
Merge pull request #2249 from Subv/sessions_v3
...
Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication.
2016-12-14 20:35:33 -08:00
Yuri Kunde Schlesner
8ec064951f
shader_jit_x64: Use Reg32 for LOOP* registers, eliminating casts
2016-12-14 20:06:09 -08:00
Yuri Kunde Schlesner
2d892f845c
VideoCore: Convert x64 shader JIT to use Xbyak for assembly
2016-12-14 20:06:08 -08:00
Subv
3e80a1a1c1
Fixed the codestyle to match our clang-format rules.
2016-12-14 12:45:36 -05:00
Subv
00decc1180
Fixed the codestyle to match our clang-format rules.
2016-12-14 12:35:01 -05:00
mailwl
11e9681df2
Service/ACT: move ACT services to folder
2016-12-14 09:05:46 +03:00
freiro
04e6500b5d
Modularized Qt and SDL file copying
...
Now cmake relies on two submodules to copy the libraries in the proper folders
2016-12-13 21:05:00 +01:00
Jeffrey Pfau
12cca651ce
Common: Fix gcc build on macOS
2016-12-13 10:20:33 -08:00
JamePeng
7af1081bb0
Minor amendment of GSP_GPU::ImportDisplayCaptureInfo code
2016-12-13 17:01:53 +08:00
Yuri Kunde Schlesner
08c37e1eda
Merge pull request #2312 from lioncash/guard
...
time_stretch: Add missing #pragma once directive
2016-12-12 22:21:09 -08:00
Lioncash
dc6a23e0f6
time_stretch: Add missing #pragma once directive
2016-12-12 19:16:46 -05:00
mailwl
a88468d683
csnd:SND reformat source code
2016-12-12 21:19:36 +03:00
Sebastian Valle
9eaa37e9ab
Merge pull request #2275 from jbeich/pthread
...
Unbreak QT-only build after 37d6cbc200
2016-12-11 14:45:35 -05:00
Sebastian Valle
7993d67ca9
Merge pull request #2267 from JayFoxRox/fix-mingw-cc
...
Support mingw cross-compilation
2016-12-11 14:44:21 -05:00
mailwl
e3828ed7fa
APT::GetStartupArgument: force clear startup argument
2016-12-11 22:36:12 +03:00
freiro
b3b35563ce
Modularization of copy_msvc_libraries cmake funct
...
Created a new folder in Citra's root called CMakeModules that should
contain cmake functions used by the various CMakeLists.txt.
2016-12-11 15:36:34 +01:00
Lioncash
b24112862e
citra-qt: Make constructors explicit where applicable
2016-12-11 14:18:06 +00:00
freiro
0fb7af11d3
Removed redundant Qt check and other fixes
...
This removes a redundant check and moves part of the code to a separate
function.
2016-12-11 15:10:21 +01:00
Lioncash
94f0a00f0e
citra-qt: Add missing #pragma once directives
2016-12-11 12:12:03 +00:00
Lioncash
2a1cf1e2ce
game_list: Make slots private functions
...
The new Qt event syntax allows for regular member functions to be used in
connect(), so explicitly indicating slots isn't necessary.
2016-12-11 11:45:50 +00:00
Lioncash
c22f539978
game_list: Make the constructor explicit
2016-12-11 11:45:50 +00:00
Lioncash
ada0edd082
game_list: Make the AddEntry argument a const reference
...
appendRow takes a QList by const reference, so it doesn't need to be
modifiable.
2016-12-11 11:45:50 +00:00
Lioncash
da804ef0ff
game_list: Replace 0 literals with nullptr
2016-12-11 11:45:50 +00:00
Lioncash
f5636c45fb
game_list: Use QT5's new event connection syntax
...
Makes for more compact code in most places.
2016-12-11 11:45:50 +00:00
Lioncash
bd25e19ee8
game_list: Pass the parent constructor argument to the QWidget base class
...
If the control was ever passed an explicit parent, a potential memory leak
would happen, as the game list wouldn't be freed.
However, in our case, the game list was placed within a layout, which
automatically performs reparenting, avoiding this issue.
2016-12-11 11:45:50 +00:00
freiro
3600ce8ff2
[MSVC] Copy SDL2.dll to build folder
...
CMake now copies SDL2.dll when compiling citra with citra-qt as a target
on MSVC.
2016-12-11 12:22:37 +01:00
Yuri Kunde Schlesner
4f102ed17e
Merge pull request #2300 from lioncash/qt
...
graphics_cmdlist: Minor changes
2016-12-11 01:42:43 -08:00
Lioncash
e221b00122
graphics_cmdlists: Get rid of variable shadowing
2016-12-11 04:33:24 -05:00
Emmanuel Gil Peyrot
01e0d578d3
Core: Add a forgotten #include <cstring> for memcpy.
2016-12-11 01:20:45 +00:00
Lioncash
a1f25eb04a
graphics_cmdlists: Get rid of an unused variable
2016-12-10 20:01:27 -05:00
Lioncash
520b6a7ae4
graphics_cmdlists: Make LoadTexture and TextureInfoWidget src arguments const
2016-12-10 20:01:22 -05:00
Lioncash
95adb797c5
graphics_cmdlists: Make LoadImage internally linked
...
Puts the TextureInfoWidget definition in the anonymous namespace as well,
as it's only used in the translation unit as well.
2016-12-10 20:00:40 -05:00
Lioncash
b0ebdfae34
Add all services to the Service namespace
...
Previously there was a split where some of the services were in the
Service namespace and others were not.
2016-12-11 00:07:27 +00:00
MerryMage
0713074841
configure_input: Modernize and cleanup input configuration tab
...
* Removed use of raw QTimer* pointer.
* Update to use type-safe QObject::connect.
* getKeyName can be a static local function.
* Prefer to use function arguments instead of member variables.
* Store Qt::Key instead of converting string back into keycode.
2016-12-10 23:30:28 +00:00
Subv
7066deff78
Properly remove a thread from its wait_objects' waitlist when it is awoken by a timeout.
2016-12-10 13:29:31 -05:00
Yuri Kunde Schlesner
fde4d073f1
Merge pull request #2296 from MerryMage/auto_is_auto
...
audio_core: SelectSink should default to auto if sink_id is invalid
2016-12-09 20:34:10 -08:00
MerryMage
b5cfe1d2f4
audio_core: SelectSink should default to auto if sink_id is invalid
2016-12-10 01:26:22 +00:00
bunnei
1a981fe1ea
Merge pull request #2291 from lioncash/svc
...
service: Add the cfg:nor service
2016-12-09 14:15:20 -05:00
Subv
6df6ad46c4
Moved the HLE command buffer translation task to ServerSession instead of the HLE handler superclass.
2016-12-09 12:52:12 -05:00
Subv
79f53e6daa
Kernel/IPC: Small codestyle cleanup
2016-12-09 12:39:12 -05:00
Subv
d4815e828d
WaitSynch: Removed unused variables and reduced SharedPtr copies.
...
Define a variable with the value of the sync timeout error code.
Use a boost::flat_map instead of an unordered_map to hold the equivalence of objects and wait indices in a WaitSynchN call.
2016-12-09 12:23:09 -05:00
Lioncash
fd2837ad16
service: Add cfg:nor service
2016-12-09 05:07:41 -05:00
Yuri Kunde Schlesner
0154ff2075
Merge pull request #2292 from lioncash/bool
...
ptm: Use boolean instead of integral value
2016-12-09 01:43:57 -08:00
Lioncash
508f17b87c
ptm: Use boolean instead of integral value
...
The third parameter of Write is actually a bool type, not an int.
2016-12-09 04:04:28 -05:00
Lioncash
51f6cd48ba
service: Drop '_Interface' from cfg service names
2016-12-09 01:08:35 -05:00
Yuri Kunde Schlesner
1441410999
Merge pull request #2287 from lioncash/svc
...
service: Minor PTM changes
2016-12-08 19:34:32 -08:00
Sebastian Valle
91fce7f5d2
Merge pull request #2280 from Subv/citrace_size
...
Fixed the gpu command list size when creating CiTraces.
2016-12-08 15:45:53 -05:00
Subv
4650bc60b4
Fixed the gpu command list size when creating CiTraces.
2016-12-08 15:21:02 -05:00
Subv
17d8d69c6e
Added a framework for partially handling Session disconnections.
...
Further implementation will happen in a future commit.
Fixes a regression.
2016-12-08 15:01:10 -05:00
Subv
021e732815
Use std::move where appropriate.
2016-12-08 11:06:19 -05:00
Lioncash
e7d396142a
service: Add the ptm:s service
...
3dbrew documents this as being the exact same as ptm:sysm
2016-12-08 06:14:55 -05:00
Lioncash
9becdeada9
service: Add common ptm:u commands to other ptm services
...
3dbrew indicates that all services have access to these commands
except for ptm:sets.
2016-12-08 06:13:10 -05:00
Lioncash
aa096138bd
service: Drop '_Interface' in ptm service class names
...
Inheriting from Service::Interface makes this obvious.
2016-12-08 06:13:04 -05:00
Lioncash
0e025b7b4e
service: Add ptm::gets and ptm::sets services
2016-12-08 05:43:08 -05:00
Yuri Kunde Schlesner
b185a33a1d
Merge pull request #2286 from lioncash/svc
...
service: Add mvd and qtm services
2016-12-08 01:49:45 -08:00
Yuri Kunde Schlesner
cc0ab41783
Merge pull request #2274 from degasus/master
...
Drop framebuffer completeness check.
2016-12-08 01:36:42 -08:00
Lioncash
c7a1fc1d0a
service: Add mvd and qtm services
...
Adds the two New3DS-only modules.
3dbrew was used for command information.
2016-12-08 04:34:03 -05:00
Yuri Kunde Schlesner
9164ea53fb
Merge pull request #2284 from lioncash/svc
...
service: Add nfc services
2016-12-08 00:34:09 -08:00
Yuri Kunde Schlesner
e0dc074739
Merge pull request #2277 from lioncash/explicit
...
file_sys: Make a few single-argument constructors explicit
2016-12-08 00:29:38 -08:00
Lioncash
c74ecaaa85
service: Add nfc services
...
3dbrew was used for the command information.
2016-12-08 03:24:41 -05:00
Yuri Kunde Schlesner
0666271a28
Merge pull request #2283 from lioncash/svc
...
service: Update function tables
2016-12-07 22:45:12 -08:00
Yuri Kunde Schlesner
5a757542eb
Merge pull request #2281 from lioncash/applet
...
applet: minor interface changes
2016-12-07 22:36:40 -08:00
Lioncash
2ab9afdb37
ssl_c: Update function table
...
Updated based off information from 3dbrew
2016-12-08 00:57:53 -05:00
Lioncash
80db6356ae
ptm: Update ptm_sysm function table
...
Updated based off information from 3dbrew.
2016-12-08 00:57:53 -05:00
Lioncash
1a85727f71
pm_app: Update function table
...
Updated based off information from 3dbrew.
2016-12-08 00:57:45 -05:00
Lioncash
5caec2fcda
nwm_uds: Update function table
...
Updated based off information from 3dbrew.
2016-12-08 00:56:47 -05:00
Lioncash
0f53c14ca1
nim: Update function tables
...
Updated based off information from 3dbrew.
2016-12-08 00:56:47 -05:00
Lioncash
34401e8a9e
http_c: Update function table
...
Updated based off information from 3dbrew.
2016-12-08 00:56:47 -05:00
Lioncash
de5b0f4e25
gsp_lcd: Update function table
...
Updated based off information from 3dbrew.
2016-12-08 00:56:47 -05:00
Lioncash
b3b4017185
fs_user: Update function table
...
Updated based off information from 3dbrew.
2016-12-08 00:56:46 -05:00
Lioncash
7033aa361e
dlp_srvr: Update function table
2016-12-08 00:56:46 -05:00
Lioncash
f9c458cd04
cfg: Update function tables
...
Updated based off information from 3dbrew
2016-12-08 00:56:46 -05:00
Lioncash
bd088ae36b
cecd_u: Update function table
...
Updated based off information from 3dbrew.
2016-12-08 00:56:46 -05:00
Lioncash
4b7f949d77
boss_p: Update function table
2016-12-08 00:56:45 -05:00
Lioncash
7598d8532c
act: Update function tables
...
Updated based off information from 3dbrew.
2016-12-08 00:56:39 -05:00
Lioncash
523979a6ed
apt: Update apt function tables
...
Updated based off information from 3dbrew.
2016-12-07 22:53:10 -05:00
Lioncash
a8f59eab50
Update AM service function tables
...
Updated based off information from 3dbrew.
2016-12-07 20:55:59 -05:00
Lioncash
6ba0395316
file_sys: Make a few single-argument constructors explicit
...
Prevents implicit conversions.
2016-12-07 17:26:56 -05:00
Lioncash
7055dbf489
applet: Move common IsRunning underlying variable to the Applet class
...
Gets rid of basic duplication.
2016-12-07 17:13:46 -05:00
Lioncash
748807f130
applet: Make virtual destructor defaulted
2016-12-07 17:04:14 -05:00
Lioncash
e214e0fca4
applet: Make constructor protected
...
Considering the class is abstract, there's no need to make the constructor
public.
2016-12-07 16:50:32 -05:00
Markus Wick
aa8236a9b6
OpenGL: Drop framebuffer completeness check.
...
This OpenGL call synchronize the worker thread of the nvidia blob.
It can be verified on linux with the __GL_THREADED_OPTIMIZATIONS=1 environment variable.
Those errors should not happen on tested drivers.
It was used as a workaround for https://bugs.freedesktop.org/show_bug.cgi?id=94148
2016-12-07 22:09:13 +01:00
wwylele
a88ec032cd
Config: auto-select region and language
2016-12-07 20:52:42 +02:00
Jan Beich
61f52b5d33
tests: add missing libcore dependency after 37d6cbc200
...
$ (cmake -DENABLE_SDL2:BOOL=false /path/to/citra; gmake)
[...]
[ 85%] Linking CXX executable tests
../common/libcommon.a(microprofile.cpp.o): In function `MicroProfileThreadStart(pthread**, void* (*)(void*))':
src/common/microprofile.cpp:(.text+0x41): undefined reference to `pthread_create'
c++: error: linker command failed with exit code 1 (use -v to see invocation)
2016-12-07 18:30:49 +00:00
bunnei
7da33afec8
Merge pull request #2232 from wwylele/other-save
...
FS: implement archives for other game save data
2016-12-07 10:17:02 -05:00
Subv
fdf1d042e0
Use boost remove_erase_if instead of the erase-remove idiom
2016-12-06 19:31:53 -05:00
Subv
bf232b89f3
Improved the algorithm for GetHighestPriorityReadyThread.
2016-12-06 19:15:32 -05:00
emmauss
4865993e6f
Implement Frame rate limiter ( #2223 )
...
* implement frame limiter
* fixes
2016-12-06 14:33:19 -05:00
Jannik Vogel
869743d34c
ASSERT that shader was linked successfully
2016-12-05 21:11:24 +01:00
Jannik Vogel
d676c9a06f
Report shader uniform block size in case of mismatch
2016-12-05 21:11:24 +01:00
Jannik Vogel
d8142ae075
Print broken shader code to log
2016-12-05 21:11:24 +01:00
Subv
06b2b80d31
Return an error code when connecting to a saturated port.
...
The error code was taken from the 3DS kernel.
2016-12-05 13:59:57 -05:00
Subv
7eaf6faa7d
HLE: Use a member variable instead of a virtual function to retrieve the max number of sessions that can be connected to an HLE service at the same time.
2016-12-05 13:44:41 -05:00
Jannik Vogel
305cc20144
gdbstub: Remove unused include
2016-12-05 19:09:16 +01:00
Jannik Vogel
19b1180952
Unify Windows ICON resource name
2016-12-05 19:09:16 +01:00
Jannik Vogel
89e57a3fb0
Support mingw cross-compile
2016-12-05 19:09:16 +01:00
Subv
708ece3fff
Split SessionRequestHandler::HandleSyncRequest into HandleSyncRequest, TranslateRequest and HandleSyncRequestImpl.
...
HandleSyncRequest now takes care of calling the command buffer translate function before actually invoking the command handler for HLE services.
2016-12-05 12:05:00 -05:00
Subv
728bb5f40b
Kernel: Remove the Redirection handle type.
2016-12-05 11:13:22 -05:00
Subv
977039e722
KServerPorts now have an HLE handler "template", which is inherited by all ServerSessions created from it.
2016-12-05 11:02:08 -05:00
Subv
44c59feca6
Threading: Added some utility functions and const correctness.
2016-12-04 09:58:36 -05:00
Yuri Kunde Schlesner
6fb4f73dec
GSP: Downgrade log severity of SetAxiConfigQoSMode
...
This function doesn't need to do anything for HLE and some games call it
quite often, spamming up the logs.
2016-12-04 06:14:27 -08:00
Yuri Kunde Schlesner
515096c197
OpenGL: Non-zero stride only makes sense for linear buffers
2016-12-04 06:14:27 -08:00
Yuri Kunde Schlesner
2271fa76fb
OpenGL: Ensure framebuffer binding is restored if completion check fails
2016-12-04 06:14:27 -08:00
Yuri Kunde Schlesner
f207da3a5a
OpenGL: Fix DisplayTransfer accel when input width != output width
...
Fixes #2246 , #2261
2016-12-04 05:21:57 -08:00
Yuri Kunde Schlesner
9b3739ebca
Merge pull request #2259 from JayFoxRox/fix-fallback
...
shader_jit: Fix non-SSE4.1 path where FLR would not truncate
2016-12-03 22:11:39 -08:00
Subv
5bc10a74f6
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
Jannik Vogel
3020767914
shader_jit: Fix non-SSE4.1 path where FLR would not truncate
2016-12-04 04:26:33 +01:00
Yuri Kunde Schlesner
90fd00648c
clang-format: Fix coding style
2016-12-03 01:32:46 -08:00
Subv
4703561c9e
Declare empty ServerSession and ClientSession constructors as default.
2016-12-02 22:58:02 -05:00
Jannik Vogel
62c76b4207
shader_jit: Load LOOPCOUNT_REG and LOOPINC 4 bit left-shifted
2016-12-02 04:33:15 +01:00
Subv
811d684274
Threads do not wait for the server endpoint to call AcceptSession before returning from a ConnectToPort or GetServiceHandle call.
2016-12-01 10:47:06 -05:00
Jannik Vogel
63e5851830
Remove unused version.h
2016-12-01 16:38:46 +01:00
Subv
4c4f50dfaf
Fixed the rebase mistakes.
2016-11-30 23:28:31 -05:00
Subv
4f2326c8a9
A bit of a redesign.
...
Sessions and Ports are now detached from each other.
HLE services are handled by means of a SessionRequestHandler class, Interface now inherits from this class.
The File and Directory classes are no longer kernel objects, but SessionRequestHandlers instead, bound to a ServerSession when requested.
File::OpenLinkFile now creates a new session pair and binds the File instance to it.
2016-11-30 23:12:35 -05:00
Subv
d2305d375f
IPC/HLE: Associate the ClientSessions with their parent port's HLE interface if it exists.
...
Pass the triggering ServerSession to the HLE command handler to differentiate which session caused the request.
2016-11-30 23:04:00 -05:00
Subv
edcacd7cdd
Kernel/HLE: Service::Interface no longer inherits from any Kernel object, and is now its own standalone class.
...
Interface is now used by aggregation in ClientPort, to forward service commands to their HLE implementation if needed.
2016-11-30 23:03:59 -05:00
Subv
96df92e98f
fixup! Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication.
2016-11-30 23:02:06 -05:00
Subv
302ef594a6
Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication.
...
All handles obtained via srv::GetServiceHandle or svcConnectToPort are references to ClientSessions.
Service modules will wait on the counterpart of those ClientSessions (Called ServerSessions) using svcReplyAndReceive or svcWaitSynchronization[1|N], and will be awoken when a SyncRequest is performed.
HLE Interfaces are now ClientPorts which override the HandleSyncRequest virtual member function to perform command handling immediately.
2016-11-30 23:02:05 -05:00
Yuri Kunde Schlesner
35c7f317cf
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
freiro
662d907aa7
WINVER definition moved to CMake and cleanup
2016-11-30 15:47:09 +01:00
Subv
a485a04208
ClangFormat: Fixed the clang-format errors
2016-11-30 09:37:37 -05:00
mailwl
662aee1e1d
Set client SDK version to Service APIs
2016-11-30 09:51:14 +03:00
Subv
d16be9bdbd
Build: Fixed a few warnings.
2016-11-29 16:51:53 -05:00
wwylele
1e4a1598fd
FileSys: Implement OtherSaveData
2016-11-29 23:50:00 +02:00
wwylele
e6de484ec3
FS: add missing MediaType
2016-11-29 23:50:00 +02:00
wwylele
37e9404489
FileSys: abstract SD save data archive source
2016-11-29 23:50:00 +02:00
Yuri Kunde Schlesner
e8dec36ad5
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
e3c19b1d04
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
6352bf702c
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
7adac27868
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
Emmanuel Gil Peyrot
87d3afe635
GPU: Remove the broken frame_skip option.
...
Fixes #1960 .
2016-11-27 21:19:56 +00:00
Subv
47603a64f1
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
d64661e40e
Rasterizer/Memfill: Set the correct stencil write mask when clearing the stencil buffer.
2016-11-27 12:16:10 -05:00
Sebastian Valle
9d5e10abc6
Merge pull request #2168 from mailwl/mic
...
MIC_U: Stub service funcions
2016-11-27 00:19:33 -05:00
Yuri Kunde Schlesner
5984634d7b
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
dba46c0b01
Move to AppData/Roaming/Citra/
2016-11-26 22:57:36 +01:00
MerryMage
eb5be59f9c
dynarmic: Add ticks based on ticks executed, not ticks requested
2016-11-26 20:32:33 +00:00
freiro
0459aadcb5
Removed /user/ from path
2016-11-26 01:00:52 +01:00
mailwl
9ee8f9297c
Output parameters to log
2016-11-25 09:37:20 +03:00
mailwl
cdce7ca48b
MIC_U: Stub service funcions
2016-11-25 09:37:19 +03:00
James Rowe
13888eac06
Expose page table to dynarmic for optimized reads and writes to the JIT
2016-11-24 20:41:18 -07:00
freiro
f25ecd351d
Switch to AppData/Roaming
2016-11-24 16:42:31 +01:00
jphalimi
5a580171b6
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
a92472e7c9
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
b0119cde40
Merge pull request #2186 from wwylele/config9
...
cfg: add config block 0x00090000
2016-11-23 18:51:01 -08:00
Yuri Kunde Schlesner
2215a3dce4
Merge pull request #1654 from JamePeng/errdisp
...
Rework the code of err:f service!
2016-11-23 17:43:02 -08:00
wwylele
1db648c247
Fix format error from #2195
2016-11-22 20:17:28 +02:00
freiro
f5b928c330
Improve verbosity of audio errors with SDL_GetError()
2016-11-22 17:28:11 +01:00
bunnei
8582c43510
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
98e23c3ba8
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
Subv
d00d0d61e0
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-19 20:40:04 -05:00
Sebastian Valle
0bd3b9e39a
Merge pull request #2192 from Subv/applet_enums
...
APT/Applets: Renamed the members of the SignalType enum.
2016-11-19 20:30:26 -05:00
Subv
9ee95ffbec
GPU/CiTrace: Avoid calling GetTextures() when not necessary.
2016-11-19 19:27:00 -05:00
James Rowe
ece00e4600
Merge pull request #2194 from jroweboy/extremely-minor-clangformat-change
...
Minor formatting change
2016-11-19 13:51:14 -07:00
James Rowe
2d1eb1ae01
Minor formatting change
2016-11-19 13:35:07 -07:00
Subv
bb93931096
Kernel/Events: Log an error when trying to create Pulse events and timers.
...
Related to #1904
2016-11-19 14:00:08 -05:00
Subv
f33e1950b6
APT/Applets: Renamed the members of the SignalType enum.
...
Names now make sense and match 3dbrew.
2016-11-19 13:42:07 -05:00
wwylele
68dc34c32b
tests: add a work-around for macOS linking error
2016-11-19 18:55:35 +02:00
wwylele
01964d37fb
FileSys: rename SaveDataCheck archive to NCCH archive
...
According to the observation from game and 3dbrew "Used for accessing general NCCH data"
2016-11-19 18:55:35 +02:00
wwylele
bfc699293f
FileSys: remove unused DiskArchive
...
All "subclasses" of DiskArchive are splitted out. This class is useless
2016-11-19 18:55:34 +02:00
wwylele
e41a1ff6da
PTM & CFG: use the correct path and error code according to the new FileSys policy
2016-11-19 18:55:34 +02:00
wwylele
5506268bf6
FileSys: w->rw permission lift only happens in SDMC archive
2016-11-19 18:55:34 +02:00
wwylele
a14bab3b8b
FileSys: add SDMCWriteOnlyArchive
2016-11-19 18:55:34 +02:00
wwylele
76c8e607a4
FileSys: add SDMCArchive
...
Now DiskArchive only serves for SDMC, then it should be just a "SDMCArchive"
2016-11-19 18:24:37 +02:00
wwylele
4a80f45637
FileSys: add ExtSaveDataArchive
...
ExtSaveData is more similar to SaveData, so let it be a subclass of SaveData
2016-11-19 18:24:37 +02:00
wwylele
420091d0e5
FileSys: add SaveDataArchive
...
The error checking of SaveDataArchive is completely different from DiskArchive, so it has to be a new class instead of a subclass of DiskArchive.
2016-11-19 17:17:19 +02:00
wwylele
1e33d07b86
FileSys: remove Open from FileBackend
...
Same as directory, file shouldn't expose Open either.
2016-11-19 17:17:19 +02:00
wwylele
4675116401
FileSys: remove Open from DirectoryBackend
...
Open should not be an interface exposed by Directory because it is the Archive thats implement the methed to open the directory. The service API of 3DS also implies this - Open is not a function of directory service, but is of FS main service
2016-11-19 17:17:19 +02:00
wwylele
37d6cbc200
FileSys: add PathParser
2016-11-19 17:17:19 +02:00
freiro
a3d3f96af9
Return by value and other fixes
2016-11-19 15:50:16 +01:00
freiro
92977a28a8
Win32 move default user folder location to AppData
2016-11-19 15:49:52 +01:00
wwylele
4fc15d830f
cfg: add config block 0x00090000
2016-11-17 19:34:02 +02:00
bunnei
c728fccd9e
Merge pull request #2172 from jroweboy/fix-mingw
...
Fix mingw compilation support
2016-11-15 20:07:23 -05:00
bunnei
2210744ec7
Merge pull request #1753 from jroweboy/frame_layouts
...
Support additional screen layouts.
2016-11-15 19:57:08 -05:00
James Rowe
f0dcbd3f73
Add mingw compile support
2016-11-13 23:50:46 -07:00
James Rowe
48d64ccad5
Round the rectangle size to prevent float to int casting issues
...
And other minor style changes
2016-11-12 10:49:47 -07:00
Pringo
3c7ada98c4
Minor Menu Fixes
2016-11-11 09:58:55 -08:00
James Rowe
72786d410e
Add default hotkey to swap primary screens.
...
Also minor style changes
2016-11-05 03:46:43 -06:00
James Rowe
8e64c6c170
Rework frame layouts to use a max rectangle instead of hardcoded calculations
2016-11-05 02:55:58 -06:00
SonofUgly
345ca30c3a
LargeFrameLayout + Swapped
...
Make small screen stay at 1x, and large screen maintain its aspect ratio.
2016-11-05 02:55:53 -06:00
James Rowe
08f830fed4
Support additional screen layouts.
...
Allows users to choose a single screen layout or a large screen layout.
Adds a configuration option to change the prominent screen.
2016-11-05 02:55:41 -06:00
mailwl
076afa2614
Style fix
2016-11-02 09:38:44 +03:00
mailwl
6b4d6e03f0
Rename AcConfig, change types u8 to u32
2016-11-02 09:38:44 +03:00
mailwl
3b92e6c3d9
AC_U: Stub functions, used if EULA agreed
2016-11-02 09:38:44 +03:00
wwylele
657bb716f7
FileSys: make Archive interfaces return error code
...
and make the mode parameter a reference since it is a BitField union
2016-11-01 18:30:32 +02:00
bunnei
f01c907f3c
Merge pull request #2126 from wwylele/stub-nwm
...
NWM: stub Initialize with an error
2016-10-31 16:16:12 -04:00
bunnei
d76784ed0f
Merge pull request #2123 from jbeich/freebsd
...
Fix build on DragonFly and FreeBSD
2016-10-31 15:33:39 -04:00
mailwl
14b159aa64
Small fix to let IDA see target.xml
2016-10-28 20:50:45 +03:00
Jan Beich
01f9251b53
build: add default install for DragonFly, Solaris, etc.
2016-10-27 23:28:30 +00:00
Jan Beich
914ca5ae70
core: some errno values are uncommon on Unix
...
src/core/hle/service/soc_u.cpp:107:6: error: 'ENODATA' was not declared in this scope
{ENODATA, 43},
^
src/core/hle/service/soc_u.cpp:117:6: error: 'ENOSR' was not declared in this scope
{ENOSR, 53},
^
src/core/hle/service/soc_u.cpp:118:6: error: 'ENOSTR' was not declared in this scope
{ENOSTR, 54},
^
src/core/hle/service/soc_u.cpp:139:6: error: 'ETIME' was not declared in this scope
{ETIME, 75},
^
2016-10-27 23:28:30 +00:00
Jan Beich
e7c016ea8f
common: use system bswap* functions on more BSDs
2016-10-27 23:28:30 +00:00
Jan Beich
6ddc8b49ff
common: use system CPUID routine on DragonFly as well
2016-10-27 23:28:30 +00:00
Jan Beich
8e5d3f77fb
common: some FreeBSD headers are incomplete to avoid namespace pollution
...
In file included from src/common/x64/cpu_detect.cpp:16:
/usr/include/machine/cpufunc.h:66:17: error: unknown type name 'u_int'
static __inline u_int
^
/usr/include/machine/cpufunc.h:67:6: error: unknown type name 'u_int'
bsfl(u_int mask)
^
/usr/include/machine/cpufunc.h:69:2: error: unknown type name 'u_int'
u_int result;
^
/usr/include/machine/cpufunc.h:75:17: error: unknown type name 'u_long'; did you mean 'long'?
static __inline u_long
^
/usr/include/machine/cpufunc.h:76:6: error: unknown type name 'u_long'; did you mean 'long'?
bsfq(u_long mask)
^
/usr/include/machine/cpufunc.h:78:2: error: use of undeclared identifier 'u_long'; did you mean
'long'?
u_long result;
^
[...]
2016-10-27 23:28:30 +00:00
Anthony J. Bentley
f78b6cd433
common: convert to standard stat()/fstat() interfaces
...
Most modern Unix environments use 64-bit off_t by default: OpenBSD,
FreeBSD, OS X, and Linux libc implementations such as Musl.
glibc is the lone exception; it can default to 32 bits but this is
configurable by setting _FILE_OFFSET_BITS.
Avoiding the stat64()/fstat64() interfaces is desirable because they
are nonstandard and not implemented on many systems (including
OpenBSD and FreeBSD), and using 64 bits for stat()/fstat() is either
the default or trivial to set up.
2016-10-27 23:28:30 +00:00
Jan Beich
dbc84319b8
common: stat64 is non-standard, hide on a random Unix
...
src/common/file_util.cpp:79:19: error: variable has incomplete type 'struct stat64'
struct stat64 file_info;
^
src/common/file_util.cpp:79:12: note: forward declaration of 'stat64'
struct stat64 file_info;
^
src/common/file_util.cpp:99:19: error: variable has incomplete type 'struct stat64'
struct stat64 file_info;
^
src/common/file_util.cpp:99:12: note: forward declaration of 'stat64'
struct stat64 file_info;
^
src/common/file_util.cpp:342:19: error: variable has incomplete type 'struct stat64'
struct stat64 buf;
^
src/common/file_util.cpp:342:12: note: forward declaration of 'stat64'
struct stat64 buf;
^
src/common/file_util.cpp:359:19: error: variable has incomplete type 'struct stat64'
struct stat64 buf;
^
src/common/file_util.cpp:359:12: note: forward declaration of 'stat64'
struct stat64 buf;
^
4 errors generated.
2016-10-27 23:28:29 +00:00
Jan Beich
90ac6468bb
common: only FreeBSD has thread affinity compatible with Linux
...
src/common/thread.cpp:90:5: error: unknown type name 'cpu_set_t'; did you mean 'cpuset_t'?
cpu_set_t cpu_set;
^~~~~~~~~
cpuset_t
/usr/include/sys/_cpuset.h:48:24: note: 'cpuset_t' declared here
typedef struct _cpuset cpuset_t;
^
1 error generated.
2016-10-27 23:28:29 +00:00
Jan Beich
a1497619eb
common: define routines to set thread name on more BSDs
...
src/common/thread.cpp:123:5: error: use of undeclared identifier 'pthread_setname_np'
pthread_setname_np(pthread_self(), szThreadName);
^
1 error generated.
2016-10-27 23:28:29 +00:00
mailwl
715d981403
FRD: fix GetMyFriendKey
2016-10-25 09:54:29 +03:00
Ricardo de Almeida Gonzaga
07fdcf150d
Fix typos
2016-10-20 12:26:59 -02:00
wwylele
9ef5b9604b
NWM: stub Initialize with an error
2016-10-12 22:33:44 +08:00
bunnei
0486aa3e8b
Merge pull request #2024 from JamePeng/update-boss-code
...
Update the stub code of BOSS
2016-10-07 23:02:39 -04:00
bunnei
d3aba2efa8
Merge pull request #2082 from yuriks/shader-interp-crash
...
Fix/mask crash in shader debugger in Mii Maker
2016-10-06 19:35:37 -04:00
JamePeng
876bd2daa8
Rework the code of err:f service
2016-10-06 21:03:12 +08:00
bunnei
79c5d3c2fb
Merge pull request #1652 from wwylele/kernal-tool
...
Debugger: implement wait tree widget
2016-10-04 23:01:56 -04:00
bunnei
f28267c100
Merge pull request #2106 from wwylele/delete-recursive
...
FS: implement DeleteDirectoryRecursively
2016-10-03 20:34:56 -04:00
bunnei
2c18a725be
Merge pull request #2103 from wwylele/gpu-reg-cleanup
...
GPU: DisplayTransfer & MemoryFill cleanup and param check
2016-10-03 20:21:55 -04:00
JamePeng
97d9804d97
Update the stub code of BOSS
2016-10-02 17:36:57 +08:00
wwylele
a1a4d92f19
fs: clean up log format
2016-10-02 12:39:28 +08:00
wwylele
b2fa64ec75
fs: implement DeleteDirectoryRecursively
2016-10-02 11:29:16 +08:00
Yuri Kunde Schlesner
d4bcba2ca1
VideoCore: Shader interpreter cleanups
2016-09-29 21:15:49 -07:00
Yuri Kunde Schlesner
1de9e185af
Common: Remove dangerous Vec[234] array constructors
...
They're not currently used, and it's easy to accidentally pass a single
pointer argument to them, causing an out-of-bounds read.
2016-09-29 21:11:36 -07:00
Yuri Kunde Schlesner
7872ec7cc3
VideoCore: Fix out-of-bounds read in ShaderSetup::ProduceDebugInfo
...
As far as I can tell, memset was replaced by a fill without correcting
the parameter type, causing an out-of-bounds array read in the Vec4
constructor.
2016-09-29 21:11:36 -07:00
Yuri Kunde Schlesner
e72584084e
OpenGL: Take cached viewport sub-rect into account for scissor
...
Fixes #1938
2016-09-29 20:55:24 -07:00
wwylele
ef9319842c
gpu: DisplayTransfer: a less amazing algorithm for flip
...
the old implementation modifies the loop variable in the loop. Though it actually works, it is really confusing. Makes it morereadable now.
2016-09-29 10:01:34 +08:00
wwylele
2c0cc232fa
gpu: keep the old signal strategy for null pointer
...
previous commits changes the behaviour of interrupt when meeting invalid params. Regresses to the same behaviour as before
needs more hwtest
2016-09-29 10:01:34 +08:00
wwylele
ff4fe1df8f
gpu: add validity check for TextureCopy, DisplayTransfer and FillMemory
...
prevent further operation with invalid values which may cause assertion failure or divided by zero.
needs more hwtest
2016-09-29 10:01:34 +08:00
wwylele
7dcbdc4c43
memory: fix IsValidVirtualAddress for RasterizerCachedMemory
...
RasterizerCachedMemory doesn't has pointer but should be considered as valid
2016-09-29 10:01:34 +08:00
wwylele
287ec158ed
gpu: move MemoryFill, TextureCopy and DisplayTransfer into functions
...
The old code indented too much to read. Split into functions and do general cleanup.
2016-09-29 10:01:34 +08:00
wwylele
4d867489a4
rasterizer: separate TextureCopy from DisplayTransfer
2016-09-29 10:01:34 +08:00