Commit graph

5400 commits

Author SHA1 Message Date
James Rowe
252e5f173d
Merge pull request #3676 from jroweboy/minor-mp-ui-fix
Minor multiplayer ui fixes
2018-04-27 10:00:21 -06:00
James Rowe
98c150e7fc Fix duplicated logs on windows 2018-04-27 09:58:48 -06:00
James Rowe
1b94f25e6c
Merge pull request #3568 from daniellimws/logging-backends
Logging: Add customizable backends
2018-04-26 21:09:31 -06:00
James Rowe
65b38a7537 fixup: Address review 2018-04-25 10:31:51 -06:00
James Rowe
6ce111301f Frontend: Add missing translation for network error messages 2018-04-25 09:44:16 -06:00
bunnei
ed42b4b0d2
Merge pull request #3678 from wwylele/b15-fallback
gl_shader_decompiler: fallback to CPU shader on GS b15 access
2018-04-25 00:03:11 -04:00
bunnei
b003e1398a
Merge pull request #3666 from degasus/vertex_streaming
renderer_opengl: Rewrite stream buffer.
2018-04-24 23:58:41 -04:00
wwylele
191b29e402 gl_shader_gen: generate programmable vs/gs and fixed gs 2018-04-24 20:39:10 +03:00
Daniel Lim Wee Soong
51398e0301 Logging: Add customizable logging backends and fmtlib based macros
* Change the logging backend to support multiple sinks through the
Backend Interface
* Add a new set of logging macros to use fmtlib instead.
* Qt: Compile as GUI application on windows to make the console hidden by
default. Add filter configuration and a button to open log location.
* SDL: Migrate to the new logging macros
2018-04-23 21:32:56 -06:00
MerryMage
8186820d16 pica_to_gl: Add GLuvec{2,3,4} aliases
To allow for transfer for integers into shaders.
2018-04-23 20:21:24 +03:00
wwylele
e56128683c gl_shader_decompiler: fallback to CPU shader on GS b15 access 2018-04-23 12:45:56 +03:00
Adityarup Laha
c06d6ecea2
Replace "Hide Full Games" with "Hide Full Rooms" 2018-04-22 16:56:49 +05:30
Markus Wick
c4010e3f93 renderer_opengl: Drop GLSync, unused. 2018-04-21 16:12:30 +02:00
Markus Wick
5d1dd205c4 renderer_opengl: Rewrite stream buffer. 2018-04-21 16:12:30 +02:00
James Rowe
c7726f13e8 Frontend: Prevent a crash from closing a hosted room using the Disconnect button and then trying to host another room 2018-04-20 00:53:56 -06:00
James Rowe
5fef22fc52 Frontend: Prevent connecting to another room when already joining 2018-04-20 00:53:31 -06:00
James Rowe
d35693bbbc More minor issue fixes
* Move Joining state change sooner in the code to prevent an issue where
failing to connect multiple times in a row doesn't change the state (as
it goes from CouldNotConnect -> CouldNotConnect which doesn't trigger a
state changed callback)
* Prevent double clicking too fast on a room in the lobby from causing
issues
* Lobby no longer closes when joining a room
2018-04-19 10:28:19 -06:00
James Rowe
62257e0d79 Fix Lobby filtering with player list
* Make double clicking the player list open the correct room
* Fix an issue where filtering with search broke the whos playing list
2018-04-19 10:28:18 -06:00
James Rowe
1f6791431d Move almost all state change tracking to MultiplayerState
Each window can still watch for state changes to update the ui or to
close the window as appropriate, but for any error announcements, they
all belong in Multiplayer state now.
2018-04-19 10:28:18 -06:00
James Rowe
a5c8e07f46 Remove duplicated logic in HostRoom
Fixes some issues with multiple warning messages
2018-04-19 10:28:18 -06:00
James Rowe
2be02f221d Fix player list not showing in lobby. Fix host and direct connect crashing citra 2018-04-19 10:28:18 -06:00
James Rowe
01b49b7e78 Fix compilation issue where unique_ptr needs full class declaration 2018-04-19 10:28:17 -06:00
James Rowe
c635c7f40d Address more review comments
* Make Validation a singleton instead
* Wording changes for error messages
* Smart pointers for Ui members
* Other minor nitpicks
2018-04-19 10:28:17 -06:00
James Rowe
a85511cd7d Fix multiplayer dropdowns and proxy model
* Filters in the lobby properly remove rooms
* Multiplayer menu items for Show Room and Leave Room work as intended
2018-04-19 10:28:17 -06:00
James Rowe
601fd81d5c Address review comments 2018-04-19 10:28:16 -06:00
James Rowe
3be7aa2cfc Moved the password icon to the room name.
Also added a dark mode lock icon as well (and fixed a small bug
preventing the lock icon from showing up)
2018-04-19 10:28:16 -06:00
James Rowe
aa391ed60d Fixed and issue where multiplayer state was covering the File and Emulation menu items when it shouldn't even be visible 2018-04-19 10:28:16 -06:00
James Rowe
599eebf511 Remove the current players blurb 2018-04-19 10:28:16 -06:00
James Rowe
2d1efcc36b Add a member list expandable to the lobby. Fix issue with hosting more than once. 2018-04-19 10:28:15 -06:00
James Rowe
f346a9d372 Split multiplayer code into its own class 2018-04-19 10:28:15 -06:00
James Rowe
ddbbab8fd6 Add network status text to the status bar 2018-04-19 10:28:15 -06:00
James Rowe
871196bc10 Citra-qt: Add multiplayer ui 2018-04-19 10:28:14 -06:00
Weiyi Wang
bba2a60b22
Merge pull request #3670 from jbeich/qt
Unbreak build with Qt 5.9.4 (at least on FreeBSD)
2018-04-19 18:02:35 +03:00
Weiyi Wang
977abd2c7a
Merge pull request #3607 from adityaruplaha/sdl2-fullscreen
SDL2: Implement fullscreen
2018-04-19 16:16:37 +03:00
Jan Beich
394638e9c9 Qt: Add missing #include after 2f8bd18296
In file included from src/citra_qt/citra-qt_autogen/mocs_compilation.cpp:14:
In file included from src/citra_qt/citra-qt_autogen/EWIEGA46WW/moc_game_list_p.cpp:9:
src/citra_qt/game_list_p.h:160:17: error: use of undeclared identifier 'QCoreApplication'; did you mean 'QApplication'?
        setText(QCoreApplication::translate("GameList", status.text));
                ^~~~~~~~~~~~~~~~
                QApplication
/usr/local/include/qt5/QtGui/qwindowdefs.h:81:7: note: 'QApplication' declared here
class QApplication;
      ^
In file included from src/citra_qt/citra-qt_autogen/mocs_compilation.cpp:14:
In file included from src/citra_qt/citra-qt_autogen/EWIEGA46WW/moc_game_list_p.cpp:9:
src/citra_qt/game_list_p.h:160:17: error: incomplete type 'QApplication' named in nested name specifier
        setText(QCoreApplication::translate("GameList", status.text));
                ^~~~~~~~~~~~~~~~~~
/usr/local/include/qt5/QtCore/qobject.h:446:18: note: forward declaration of 'QApplication'
    friend class QApplication;
                 ^
In file included from src/citra_qt/citra-qt_autogen/mocs_compilation.cpp:14:
In file included from src/citra_qt/citra-qt_autogen/EWIEGA46WW/moc_game_list_p.cpp:9:
src/citra_qt/game_list_p.h:161:20: error: use of undeclared identifier 'QCoreApplication'; did you mean 'QApplication'?
        setToolTip(QCoreApplication::translate("GameList", status.tooltip));
                   ^~~~~~~~~~~~~~~~
                   QApplication
/usr/local/include/qt5/QtGui/qwindowdefs.h:81:7: note: 'QApplication' declared here
class QApplication;
      ^
In file included from src/citra_qt/citra-qt_autogen/mocs_compilation.cpp:14:
In file included from src/citra_qt/citra-qt_autogen/EWIEGA46WW/moc_game_list_p.cpp:9:
src/citra_qt/game_list_p.h:161:20: error: incomplete type 'QApplication' named in nested name specifier
        setToolTip(QCoreApplication::translate("GameList", status.tooltip));
                   ^~~~~~~~~~~~~~~~~~
/usr/local/include/qt5/QtCore/qobject.h:446:18: note: forward declaration of 'QApplication'
    friend class QApplication;
                 ^
2018-04-18 20:03:52 +00:00
Daniel Lim Wee Soong
10f0fbc0e5 core/gdbstub: Migrate logging macros
Change to use the new logging macros
2018-04-18 21:53:26 +08:00
Weiyi Wang
048b0fc0d3
Merge pull request #3662 from wwylele/shader-hash-cache
shader: avoid recomputing hash for the same program
2018-04-18 12:10:25 +03:00
adityaruplaha
e5f5fdee2e SDL2: Implement fullscreen 2018-04-17 23:22:23 +05:30
James Rowe
2f8bd18296 Use the QT_TRANSLATE_NOOP macro 2018-04-17 10:42:05 -06:00
wwylele
d52ddd0ec4 shader: avoid recomputing hash for the same program 2018-04-17 09:47:59 +03:00
wwylele
3cc460ab34 shader_jit: change passing ShaderSetup to passing uniforms struct into the program
We are going to add private memebers to ShaderSetup, which forbids the usage of offsetof. The JIT program only use the uniform part of the setup, so we can just isolate it.
2018-04-17 09:35:43 +03:00
Weiyi Wang
cb36f9fad2
Merge pull request #3645 from wwylele/shader-manager
renderer_opengl: refactor shader & program objects and add shader manager for rasterizer
2018-04-16 16:38:38 +03:00
baka0815
4321ab44ea citra-qt: Don't translate function keys in InitializeHotkeys() 2018-04-16 12:37:13 +02:00
FearlessTobi
fbc05fac19 Show game compatibility within Citra 2018-04-16 00:42:58 +02:00
Merry
d5b1c33587
Merge pull request #3656 from lioncash/relocate
sm: Relocate the service manager to the System class
2018-04-15 10:34:14 +01:00
Merry
9e21094dea
Merge pull request #3631 from daniellimws/boss-fmt
service/boss: Migrate logging macros
2018-04-15 08:59:42 +01:00
Lioncash
a78920e60b
sm: Relocate the service manager to the System class
Rather than have it live as a global variable, place it into the System class and make it instance-based.
2018-04-13 07:15:34 -04:00
Lioncash
5309b51c12 cam: Correct forward declaration type for Core::EventType
This is actually a struct, not a class.
2018-04-12 23:15:16 -04:00
Weiyi Wang
bfd1d963ba
Merge pull request #3638 from ds84182/we-need-more-rounds
Round TEV outputs and the final fragment output in GLSL
2018-04-12 23:32:27 +03:00
Weiyi Wang
9772513141
Merge pull request #3639 from wwylele/texture-cude-fix
gl_rasterizer_cache: exit FillTextureCube when address is invalid
2018-04-12 22:54:14 +03:00
Weiyi Wang
dfe9b4edf8
Merge pull request #3587 from valentinvanelslande/apt-fmt
Service/APT: Migrate logging macros
2018-04-12 22:47:44 +03:00
Weiyi Wang
6df2e3ccc9
Merge pull request #3614 from valentinvanelslande/movie-fmt
movie: migrate logging macros
2018-04-12 22:46:15 +03:00
Weiyi Wang
ca6f6f172b
Merge pull request #3634 from ccawley2011/citra-room-glad
citra-room: Use the default OpenGL loader instead of SDL_GL_GetProcAddress
2018-04-12 22:45:30 +03:00
Weiyi Wang
f10123f546
Merge pull request #3611 from adityaruplaha/fullscreen-fix
citra-qt: Fix the stuck in fullscreen bug.
2018-04-12 22:43:04 +03:00
N00byKing
f29f4ccdc9 gsp_gpu, shared_page: Change 3D LED State on SetLedForceOff 2018-04-12 16:44:29 +02:00
wwylele
8dc75598a4 gl_rasterizer: isolate shader management into its own class 2018-04-11 14:52:37 +03:00
wwylele
36bc92273b gl_shader_gen: accept an option to generate separable shaders 2018-04-11 14:52:37 +03:00
wwylele
bdab18d2d9 gl_resource_manager: add OGLPipeline 2018-04-11 14:52:37 +03:00
wwylele
4f9b9c4b80 gl_state: add pipeline state 2018-04-11 14:41:43 +03:00
wwylele
48869c768f gl_resource_manager: separate OGLShader and OGLProgram 2018-04-11 14:41:43 +03:00
wwylele
d2ee40dc45 gl_shader_util: separate shader object creation and program object creation 2018-04-11 14:41:43 +03:00
wwylele
4256641da4 gl_rasterizer/lighting: implement shadow attenuation 2018-04-10 20:26:55 +03:00
wwylele
b5763cb952 pica/lighting: split FresnelSelector into bitfields
The FresnelSelector was already working like a bitfield, so just make it actual bitfield to reduce redundant code. Also, it is already confirmed that this field also affects shadow on alpha. Given that the only two source that can affect alpha components are both controlled by this field, this field should be renamed to a general alpha switch
2018-04-10 20:25:56 +03:00
Valentin Vanelslande
7f61eb0ff6
default_ini: remove space in custom_layout 2018-04-08 21:48:07 -05:00
wwylele
7e7de7d3ab gl_rasterizer_cache: exit FillTextureCube when address is invalid 2018-04-08 12:34:50 +03:00
Dwayne Slater
234161ba62 Make byteround less expensive (thanks hrydgard!) 2018-04-07 18:26:14 -04:00
Dwayne Slater
734279ff22 Round TEV outputs and the final fragment output in GLSL
Fixes water effect in SM3DL
2018-04-07 16:43:56 -04:00
adityaruplaha
2a7d0ec4be Fix the stuck in fullscreen bug.
Don't save the UI/RenderWindow geometry if fullscreen was enabled.
2018-04-07 12:16:07 +05:30
Cameron Cawley
cef88965d7 citra-room: Use the default OpenGL loader instead of SDL_GL_GetProcAddress
Fixes #3538
2018-04-06 20:27:47 +01:00
Daniel Lim Wee Soong
2d45e46558 service/boss: Migrate logging macros 2018-04-06 19:43:09 +08:00
wwylele
39fce60145 [quick-fix]file-util: fmtlib errors on FILE* type parameter. Explicitly cast it to void* 2018-04-06 13:35:37 +03:00
Weiyi Wang
972db17247
Merge pull request #3497 from wwylele/texture-cube-new
gl_rasterizer: implement TextureCube
2018-04-06 12:41:40 +03:00
Weiyi Wang
a9544ca015
Merge pull request #3580 from daniellimws/common-fmt
common: Migrate logging macros
2018-04-06 12:38:08 +03:00
James Rowe
501717e9db Update fmtlib to fix msvc warnings
Additionally, when updating fmtlib, there was a change in fmtlib broke
how the old logging macro was overloaded, so this works around that by
just naming the fmtlib macro impl something different
2018-04-05 22:33:12 -06:00
Weiyi Wang
a2e87075c5
Merge pull request #3489 from B3n30/UDS_send_node_information
NWM_ UDS:Let connected clients handle the eapol packet
2018-04-05 16:14:39 +03:00
B3n30
f64f118e3b fix Subvs suggestions 2018-04-05 14:57:35 +02:00
B3n30
2d72b2be8b fix Subvs suggestions 2018-04-05 14:43:21 +02:00
Weiyi Wang
e3d25bc6d0
Merge pull request #3567 from wwylele/pica-glsl
renderer_opengl: add PICA->GLSL shader decompiler
2018-04-05 14:39:27 +03:00
Weiyi Wang
acb02d300c
Merge pull request #3518 from wwylele/hashable-struct
Common/Hash: abstract HashableStruct from GLShader::PicaShaderConfig
2018-04-05 14:39:12 +03:00
James Rowe
1fecead2ff
Merge pull request #3624 from wwylele/sync-uniform
gl_rasterizer: move shader uniform sync from SetShader() to ctor
2018-04-05 00:30:38 -06:00
James Rowe
c57b0767af
Merge pull request #3602 from lioncash/json
verify_login: Make VerifyLogin exceptionless
2018-04-04 23:39:28 -06:00
wwylele
0d84c5a0b6 gl_rasterizer: move state syncing from ctor to its own function 2018-04-04 17:23:55 +03:00
N00byKing
11cd6d066a
default_ini.h: Update Comment 2018-04-03 15:07:25 +02:00
wwylele
c2719feda2 gl_rasterizer: move shader uniform sync from SetShader() to ctor 2018-04-03 09:27:23 +03:00
Merry
7d7101706e
Merge pull request #3621 from daniellimws/dyncom-fmt
arm/dyncom: Migrate logging macros
2018-04-02 17:09:36 +01:00
Valentin Vanelslande
c9ab184ec7 pica_to_gl: Migrate logging macros (#3608) 2018-04-02 09:31:28 -06:00
wwylele
9ffd400685 gl_shader_decompiler: add missing headers/rename GetXXX to MoveXXX to reflect that they move the data 2018-04-02 17:34:54 +03:00
wwylele
11c2f11872 gl_shader_decompiler: return error on decompilation failure
Internally these errors are handled by exceptions. Only fallbackable errors (that can be handled by CPU shader emulation) is reported. Completely ill-formed shader is still ASSERTed. Code logic related stuff is DEBUG_ASSERTed
2018-04-02 17:34:54 +03:00
wwylele
4991b15ee5 gl_shader_decompiler: some small fixes
- remove unnecessary ";"
- use std::tie for lexicographical ordering
- simplify loop condition
    The offset always has step +1 on each iteration, so it would just hit one of the two boundary anyway
2018-04-02 17:34:54 +03:00
wwylele
f8a292f920 renderer_opengl: add PICA->GLSL shader decompiler 2018-04-02 17:34:54 +03:00
Daniel Lim Wee Soong
1e4eb7def8 arm/dyncom: Migrate logging macros 2018-04-02 16:01:19 +08:00
James Rowe
384849232b
Merge pull request #3516 from wwylele/shadow-sw
SwRasterizer: Implement shadow mapping
2018-03-31 23:29:22 -06:00
Merry
fff7227f86
Merge pull request #3579 from ccawley2011/architecture-defines
common: Clean up architecture-specific defines
2018-03-31 10:41:15 +01:00
Merry
587bc06adf
Merge pull request #3596 from lioncash/disk
disk_archive: Minor miscellaneous cleanup
2018-03-31 10:39:00 +01:00
Valentin Vanelslande
4fa1628fb6
movie: migrate logging macros 2018-03-31 00:24:21 -06:00
Lioncash
7d331a469f pica_to_gl: Use std::array where applicable
Removes the need to use the ARRAY_SIZE macro
2018-03-31 00:58:49 -04:00
Lioncash
0e7ca706dc disk_archive: Make DiskDirectory's constructor explicit
Prevents implicit conversions/construction.
2018-03-31 00:54:17 -04:00
Lioncash
07855c48d1 disk_archive: Remove unnecessary const in DiskDirectory's Read() declaration
This only applies in the definition of the function, not the
declaration.
2018-03-31 00:54:17 -04:00
Lioncash
ed64d15060 disk_archive: Remove unused total_entries_in_directory member from DiskDirectory
Also converts initializer list assignments to in-class initializers
where relevant.
2018-03-31 00:52:47 -04:00
BreadFish64
1d809ce6aa update-icons-signal 2018-03-30 10:20:21 -05:00
Tobias
bb6251f35f video_core: Remove Unreachable for invalid BlendEquation modes (#3595)
* video_core: Remove Unreachable statement

* Lower log level to ERROR
2018-03-29 17:53:55 -06:00
Merry
a567a92468
Merge pull request #3593 from daniellimws/loader-fmt
core/loader: Migrate logging macros
2018-03-29 14:45:25 +01:00
Adityarup Laha
180a05c301 sdl2_config: Add a parameter description for tilt clamp variable (#3590) 2018-03-29 10:20:26 +01:00
Weiyi Wang
697ff2f6e3
Merge pull request #3603 from lioncash/port
citra-room: Fix always false case in main() related to port range
2018-03-29 11:53:53 +03:00
Weiyi Wang
1c4b230346
Merge pull request #3604 from lioncash/ptr
archive_systemsavedata: Remove pointer cast from GetSystemSaveDataPath()
2018-03-29 11:52:36 +03:00
Weiyi Wang
82b9387315
Merge pull request #3605 from valentinvanelslande/am-popu64
Service/AM: Use Pop<u64>() in DeleteUserProgram and DeleteProgram
2018-03-29 09:47:56 +03:00
Weiyi Wang
690d92a019
Merge pull request #3601 from lioncash/null
gl_rasterizer: Fix incorrect comparison against src_surface in AccelerateTextureCopy()
2018-03-29 09:44:10 +03:00
Weiyi Wang
da91fb41db
Merge pull request #3597 from lioncash/lzss
ncch_container: Get rid of pointer casts in LZSS_GetDecompressedSize() and LZSS_Decompress()
2018-03-29 09:42:25 +03:00
Weiyi Wang
feb4eca2ff
Merge pull request #3598 from lioncash/boss
boss: Correct ReceiveProperty()'s response data payload
2018-03-29 09:38:33 +03:00
Weiyi Wang
115fd1cbf0
Merge pull request #3599 from lioncash/err
err_f: Add missing break in ThrowFatalError()
2018-03-29 09:38:19 +03:00
Valentin Vanelslande
528d8a6ccb
CiTrace: Migrate logging macros 2018-03-28 20:48:59 -06:00
Valentin Vanelslande
492fca114d
Service/AM: Use Pop<u64>() in DeleteUserProgram and DeleteProgram 2018-03-28 20:28:18 -06:00
Lioncash
26b1aec3c1 archive_systemsavedata: Remove pointer cast from GetSystemSaveDataPath()
These kinds of casts invoke undefined behavior due to alignment rules.

Use memcpy instead which always does the right thing.
2018-03-28 22:17:26 -04:00
Lioncash
8366f6cb5e citra-room: Fix always false case in main() related to port range
If the variable we're checking is a u16, then there can never be values
outside of the 0-65535 range. This is bad because an arbitrary larger
value can be truncated down into a valid value, making an otherwise
malformed argument well-formed.

Change it to use u32 to allow the check to function properly.
2018-03-28 21:53:05 -04:00
Lioncash
38b9d1780f verify_login: Make VerifyLogin exceptionless
This function can be simplified by attempting to find the username
within the JSON object and then only accessing it if it does. There's no
need to blindly access the data itself.

This also eliminates the need to copy the string to a local as well,
since we already have the element itself, we can just compare against
it. For the failure case, it's the same if we were checking that the
provided username string is empty.
2018-03-28 21:34:21 -04:00
Lioncash
27a3d44b16 gl_rasterizer: Fix incorrect comparison against src_surface in AccelerateTextureCopy()
This should actually be comparing the validity of the destination
surface.
2018-03-28 21:13:57 -04:00
Valentin Vanelslande
542b11ccdc
Change line 203 2018-03-28 19:05:54 -06:00
Lioncash
5ec576ff78 err_f: Add missing break in ThrowFatalError()
Introduced by 691f069743

If we hit a prefetch abort, the DFSR and DFAR contents aren't really going to be
that useful.
2018-03-28 20:33:25 -04:00
Lioncash
31100c582a boss: Correct ReceiveProperty()'s response data payload
This was previously overwriting data in the same index.
2018-03-28 20:26:33 -04:00
Lioncash
3af976e41e ncch_container: Get rid of pointer casts in LZSS_GetDecompressedSize() and LZSS_Decompress()
These kinds of casts invoke undefined behavior, due to both the aliasing
rule, and from an alignment point-of-view. Use the way that's guaranteed
to always work instead.
2018-03-28 19:55:49 -04:00
Daniel Lim Wee Soong
fbfc1103fd core/loader: Migrate logging macros
Replace logging to use NGLOG instead of LOG.
2018-03-29 00:08:26 +08:00
Valentin Vanelslande
ca6642aa2a
[skip ci] 2018-03-28 08:45:39 -06:00
Daniel Lim Wee Soong
98760336be video_core/shader/shader: Remove include cinttypes 2018-03-28 22:40:16 +08:00
Daniel Lim Wee Soong
730f8a4103 Fix formatting mistakes 2018-03-28 22:28:55 +08:00
Valentin Vanelslande
a53365d69e Fix clang 2018-03-27 18:17:04 -06:00
Valentin Vanelslande
f1e26fad7f
Fix build 2018-03-27 15:25:57 -06:00
Valentin Vanelslande
4a37d91bc6
change line 528 2018-03-27 14:23:31 -06:00
Valentin Vanelslande
e7ac03c941
Service/APT: Migrate logging macros
Macro of line 528 not changed
2018-03-27 14:03:00 -06:00
Daniel Lim Wee Soong
20776b37be Fix wrongly converted specifiers
Sorry that was a lot in one go so some of them had some mistakes
2018-03-27 23:37:36 +08:00
Daniel Lim Wee Soong
0f4c9c9f47 file_util: Remove long long casting on buf.st_size in NGLOG statement 2018-03-27 23:31:08 +08:00
Daniel Lim Wee Soong
968569aa61 Replace format specifiers for all usages of ASSERT_MSG 2018-03-27 23:28:42 +08:00
Ben
4be12d5f56 NWM_UDS:: Check flags in SendTo (#3481)
* NWM_UDS:: Check flags in SendTo

* NWM_UDS: SendTo from Host to only oneClient

* fix u8 in flags

* Send node_map to clients

* Libnetwork: Increase libnetwork version

* Broadcast on dest_node_id 0xFFFF

* fixup: dest_node_id offset

* fixup: dest_node_id offset part 2

* Adressed wwyleles feedback

* Adressed wwylele's nits
2018-03-27 15:01:29 +03:00
BreadFish64
05cf7fe70a QT: Implement themed icons (#3554)
* implement themed icons

* fix theme search paths
2018-03-27 12:11:04 +01:00
Daniel Lim Wee Soong
7abfdb164b hw: Migrate logging macros (#3584)
* hw: Migrate logging macros

Use NGLOG instead of LOG prefixed macros for logging

* gpu: Remove unnecessary casting

At first this line without any casting gave an error. Without knowing which argument is causing the error, I just casted everything. After that forgot to check which argument is the one causing trouble.

* hw: Change format specifiers for the one missed
2018-03-27 12:02:19 +01:00
Daniel Lim Wee Soong
3e8e011c33 network: Migrate logging macros (#3575)
* network: Migrate logging macros

Follow-up of #3533

Replace prefix of all logging macros from LOG to NGLOG

* Remove hash in format
2018-03-27 12:00:14 +01:00
Weiyi Wang
4bdf2e1eb9
Merge pull request #3569 from daniellimws/audio-core-fmt
audio_core: Migrate logging macros
2018-03-27 13:55:24 +03:00
Weiyi Wang
0607bc36e3
Merge pull request #3574 from daniellimws/citra-qt-fmt
citra_qt: Migrate logging macros
2018-03-27 13:52:31 +03:00
Daniel Lim Wee Soong
59b8a1dbc2 assert: Undo removal of newline for string with __VA_ARGS__ 2018-03-27 10:01:10 +08:00
Daniel Lim Wee Soong
301ca0a0a3 Undo unrelated true false ternary statement removal 2018-03-26 21:03:10 +08:00
Daniel Lim Wee Soong
5ddc440b48 Change to print program id as hex 2018-03-26 20:44:49 +08:00
FearlessTobi
245a3bd067 game_list: Add missing override specifier for KeyReleaseEater's eventFilter function 2018-03-25 23:57:25 +02:00
Weiyi Wang
49c41593d9
Merge pull request #3577 from daniellimws/web-service-fmt
web_service: Migrate logging macros
2018-03-25 13:47:46 +03:00
Daniel Lim Wee Soong
111da6db06 common: Migrate logging macros
Follow-up of #3533

Replace logging to use NGLOG instead of LOG

This is significantly larger than the previous ones.
2018-03-25 18:42:50 +08:00
Daniel Lim Wee Soong
4617fec970 input_common: Migrate logging macros
Follow-up of #3533

Replace logging to use NGLOG instead of LOG
2018-03-25 17:46:02 +08:00
Daniel Lim Wee Soong
978a169cc4 Drop # for formatting program id 2018-03-25 15:48:29 +08:00
Daniel Lim Wee Soong
c82cd30f62 web_service: Migrate logging macros
Follow-up of #3533

Replace prefix of all logging macros from LOG to NGLOG
2018-03-25 15:35:06 +08:00
Daniel Lim Wee Soong
79b0e62455 citra_qt: Migrate logging macros
Follow-up of #3533

Replace prefix of all logging macros from LOG to NGLOG
2018-03-25 13:00:36 +08:00
James
9283053701 Move WebServices to use LibreSSL + cpp-httplib (#3501)
Move WebServices to use LibreSSL + cpp-httplib

Remove curl + openssl build dependencies
2018-03-24 13:19:35 -06:00
Valentin Vanelslande
e2c5666883 Service/AM: Fix crash when scanning titles with installed titles with invalid title IDs (#3542)
* Service/AM: Fix crash when scanning titles with installed titles with invalid title IDs

Fixes #3332
2018-03-24 13:06:50 -06:00
Daniel Lim Wee Soong
38e2b6c8d8 Undo changes to unrelated files and fix formatting 2018-03-25 00:54:40 +08:00
Daniel Lim Wee Soong
df816b5eaf Address review comments
* Convert %x to {:x}
* Convert {0:#010x} to {:#010x}
* Remove `? true : false` statement
* Remove `.c_str()` for strings
2018-03-24 22:25:50 +08:00
Daniel Lim Wee Soong
693b190274 audio_core: Migrate logging macros
Follow-up of #3533

Replace prefix of all logging macros from LOG to NGLOG
2018-03-24 21:45:58 +08:00
Merry
174e7e268a
Merge pull request #3533 from daniellimws/fmtlib-macros
Logging: Add fmtlib-based macros
2018-03-24 08:04:20 +00:00
Daniel Lim Wee Soong
11ce0f91ab Remove dependency chrono
Was included last time due to adding Entry into log.h

Now it is no longer needed but I forgot to remove it last time
2018-03-22 21:42:02 +08:00
Cameron Cawley
2520ad57a5 common: Use ARCHITECTURE_x86_64 instead of ARCHITECTURE_X64 2018-03-21 22:19:59 +00:00
Cameron Cawley
1afcaed1ff common: Use ARCHITECTURE_ARM instead of _M_ARM 2018-03-21 22:17:42 +00:00
Daniel Lim Wee Soong
4adbf29b0c Fix clang-format
Oops forgot to check...
2018-03-22 00:45:01 +08:00
Daniel Lim Wee Soong
e6ee1020e1 Replace ##__VA_ARGS__ with __VA_ARGS__ 2018-03-22 00:40:01 +08:00
Daniel Lim Wee Soong
c892cea029 Place FmtLogMessage's definition in backend.cpp
I decided to overload LogMessage because I don't see a reason to come up with a new function name just for this, but if you guys want me to overload FmtLogMessage instead I'm fine with that.
2018-03-21 23:36:45 +08:00
Weiyi Wang
d03f72eb56
Merge pull request #3535 from ccawley2011/emu_arch_bits
CMake: Set EMU_ARCH_BITS in CMakeLists.txt
2018-03-21 16:15:22 +02:00
Daniel Lim Wee Soong
ceeb2810fe Add nullptr check to LogEntry
Also remove explicit comparison with nullptr to make code shorter.
2018-03-20 14:15:48 +08:00
Weiyi Wang
9e4f670ea9
Merge pull request #3484 from wwylele/highlight-fix
pica/lighting: compute highlight clamp after one-/two-sided diffuse pass
2018-03-18 23:41:27 +02:00
Weiyi Wang
42ed0254db
Merge pull request #3528 from BreadFish64/auto-nvidia
use nvidia graphics automatically on laptops with optimus
2018-03-18 23:41:08 +02:00
Mat M
79d1bcf5ba
Merge pull request #3506 from MerryMage/mov-gl_resource_manager
gl_resource_manager: Use std::exchange in move assignment operators and constructors
2018-03-17 16:30:58 -04:00
Daniel Lim Wee Soong
2b4998a122 Add check if filter is not a nullptr
Fix segfault and pass tests
2018-03-17 22:55:57 +08:00
Weiyi Wang
171cb4452f
Merge pull request #3498 from wwylele/cfg-new-framework
Service/CFG: convert to ServiceFramework
2018-03-17 13:54:29 +02:00
Markus Wick
ac92664aa7 OGL: Use stream buffer for vertex data. 2018-03-17 02:02:39 +01:00
Phantom
50598fbbf4 stream buffer 2018-03-17 02:02:39 +01:00
MerryMage
e3f9bfd850 gl_resource_manager: Use std::exchange instead of std::swap in move assignment operators and constructors
Move assignment operators and move constructors should ideally leave the object moved from in a state where resources aren't accessable.
2018-03-16 23:47:49 +00:00
BreadFish64
691aadb6a3 comment 2018-03-16 16:06:33 -05:00
Cameron Cawley
8d1cab4892 CMake: Set EMU_ARCH_BITS in CMakeLists.txt 2018-03-16 13:29:36 +00:00
Daniel Lim Wee Soong
c4f98c1a2e Logging: Fix clang-format 2018-03-16 21:18:45 +08:00
Daniel Lim Wee Soong
b5532babab Merge remote-tracking branch 'citra/master' into fmtlib-macros 2018-03-16 20:50:52 +08:00
Starlet
935bcdbd20 Convert ACT to the new service framework (#3521)
* Convert ACT to the new service framework

* Fix clang-format

* le updates to fix stuff

* Fixed one last thing.

* Well, I fucked up.

* Quick hotfix
2018-03-16 11:36:35 +02:00
Daniel Lim Wee Soong
327901e145 citra_qt: Remove reference to debugger/console 2018-03-16 12:24:16 +08:00
Daniel Lim Wee Soong
98e669cf00 Remove all edits not in the scope of this PR 2018-03-16 12:17:14 +08:00
Daniel Lim Wee Soong
373efd3158 Logging: Remove customizable logging backends
Separate code for customizing logging backends from this branch
2018-03-16 11:56:40 +08:00
Daniel Lim Wee Soong
eee388588e Logging: Fix fmt errors after rebasing with master
fmt was updated during the clang-format update, which breaks the previous implementation of FmtLogMessage

Changes were:
* Move definition of FmtLogMessage into log.h to use variadic templates as FMT_VARIADIC was removed

To supplement the change above:
* Move Entry and CreateEntry into log.h
* Add LogEntry in backend.cpp
2018-03-16 11:48:33 +08:00
James Rowe
ab4ba71f3e fixup! Prevent crashes on closing by waiting for the impl thread 2018-03-16 11:18:06 +08:00
James Rowe
87bc5266ef Logging: Various logging improvements
* Uses PopWait to reduce the amount of busy waiting if there aren't many
new logs
* Opens the log file as shared on windows, letting other programs read
the logs, but not write to them while citra is running
* Flushes the logs to disk if a log >= error arrives
2018-03-16 11:18:06 +08:00
James Rowe
9fdc89a456 SPSCQueue: Add PopWait
Adds a condition var to SPSCQueue so when a new log is pushed it will
wake the consumer thread that is calling PopWait. This only applies to
to queues with NeedSize=true
2018-03-16 11:18:06 +08:00
James Rowe
47f0185bcd fixup! move message 2018-03-16 11:18:06 +08:00
James Rowe
7b78425d6b Address review comments 2018-03-16 11:18:06 +08:00
James Rowe
f6762f05cd Use the correct linker flag for mingw 2018-03-16 11:18:06 +08:00
James Rowe
0daac3020e Logging: Add customizable logging backends and fmtlib based macros
* Change the logging backend to support multiple sinks through the
Backend Interface
* Add a new set of logging macros to use fmtlib instead.
* Qt: Compile as GUI application on windows to make the console hidden by
default. Add filter configuration and a button to open log location.
* SDL: Migrate to the new logging macros
2018-03-16 11:18:06 +08:00
BreadFish64
55d5720962 use nvidia graphics automatically on laptops with optimus 2018-03-15 20:36:53 -05:00
Weiyi Wang
a0f70912e1
Merge pull request #3513 from valentinvanelslande/layouts-fix,gitignore
.gitignore: Add CMakeLists.txt.user to Project/editor files, citra_qt: Sync menu UI settings after changing the layout with F10
2018-03-15 15:54:24 +02:00
wwylele
9c785814e7 Common/Hash: static_assert on the type passed to HashableStruct 2018-03-15 02:27:21 +02:00
wwylele
30cc8c10cd
Common/Hash: abstract HashableStruct from GLShader::PicaShaderConfig 2018-03-14 00:12:40 +02:00
wwylele
9f8ff7b04e swrasterizer: implement shadow map rendering 2018-03-13 13:07:07 +02:00
wwylele
ae75d3032f swrasterizer: implement shadow map sampling 2018-03-13 12:56:19 +02:00
wwylele
ce2ad7436e swrasterizer/lighting: implement shadow attenuation 2018-03-13 12:56:19 +02:00
B3n30
fd20c8c321 remove MacAddressToString 2018-03-13 11:00:05 +01:00
B3n30
b6d52f0299 Fix formatting of mac address in error log 2018-03-13 10:52:44 +01:00
Valentin Vanelslande
2f165a1ca6
citra_qt: Sync menu UI settings after changing the layout with F10 2018-03-12 18:40:54 -06:00
Weiyi Wang
6c63bb11d9
Merge pull request #3503 from j-selby/fix-leaky-enet
Handle ENet packet destruction if the packet is not sent anywhere
2018-03-11 18:40:49 +02:00
Merry
141c007037
Merge pull request #3505 from kemenaran/fix-qt-viewport-resize
Fix QGLWidget viewport resize on macOS
2018-03-11 15:25:26 +00:00
James
a2b65f0669 Correctly cleanup ENet packets if not used
This additionally adds logging when bad MAC addresses are found when transferring packets between clients
2018-03-12 01:38:54 +11:00
Weiyi Wang
e9900d8035
Merge pull request #3071 from B3n30/dedicated_room
Network: Added an executable to host an dedicated room for local wifi
2018-03-11 16:04:55 +02:00
Pierre de La Morinerie
c4dbdeba0a Fix QGLWidget viewport resize on macOS
This fixes #2092, a long-standing bug where on macOS resizing the window
results in a garbled display.

It seems the seemingly optional child()->makeCurrent call is actually
required on macOS. Enabling it in all cases fixes the resize issue.
2018-03-11 19:22:30 +05:30
B3n30
2d464e79dc fixe typos 2018-03-11 12:58:00 +01:00
wwylele
889d8aaab3 gl_rasterizer/cache: only reallocate cubemap when size/format mismatch 2018-03-11 13:31:29 +02:00
wwylele
ea82203780
ipc_helper: remove interface for operating on command buffer directly
Now IPC helpers are only supposed to use on top of ServiceFramework
2018-03-10 13:37:05 +02:00
wwylele
b179b86f14
Service/CFG: convert to ServiceFramework 2018-03-10 13:37:03 +02:00
wwylele
15e8664ef7 gl_rasterizer: implement texture cube 2018-03-10 01:15:06 +02:00
wwylele
672fbcf37d Memory: remove RasterizerCachedSpecial page type 2018-03-10 01:14:38 +02:00
wwylele
92c7bb9d20 pica/gl_shader: optimize ternary operator 2018-03-10 01:14:05 +02:00
wwylele
0d6db4a0b3 lighting: compute highlight clamp after one-/two-sided diffuse pass 2018-03-10 01:14:05 +02:00
B3n30
29d6e05044 Let connected clients handle the eapol packet 2018-03-09 19:15:06 +01:00
B3n30
d4cc0d8148 Fix path for travis upload 2018-03-09 19:11:32 +01:00
B3n30
b3cdf30c65 fixup! Network: Added an executable to host an dedicated room for local wifi 2018-03-09 19:11:32 +01:00
B3n30
a40ef602a3 Network: Added an executable to host an dedicated room for local wifi 2018-03-09 19:11:32 +01:00
James Rowe
f61141e86a Update the entire application to use the new clang format style 2018-03-09 10:54:43 -07:00
wwylele
e40d693057 Service/NFC: convert to ServiceFramework 2018-03-09 18:59:04 +02:00
Ben
42d68d6ea4
Merge pull request #3470 from wwylele/news-framework
Service/NEWS: convert to ServiceFramework
2018-03-09 17:52:21 +01:00
bunnei
3cda637cb1
Merge pull request #3478 from j-selby/libpng-switch
Remove PICA image dumping, burn libpng
2018-03-07 18:03:38 -05:00
Vamsi Krishna
04cc8fb537 Discard Gas mode renders (#3486)
* Discard gas_mode renders

This discards the gas_mode / fog effect from games that use it and allows the games to display without it.  Note that gas mode is still unimplemented and will LOG<CRITICAL>.
This bypasses #3287. (Doesn't fix it)

* fix clang
2018-03-07 18:02:36 -05:00
Weiyi Wang
5dc8ac80dd
Merge pull request #3469 from wwylele/frd-new-framework
Service/FRD: convert to ServiceFramework
2018-03-07 15:33:49 +02:00
James
077a519338 Remove unused DUMP_TEXTURES definition 2018-03-07 09:13:24 +11:00
James
9829a84fc6 Remove PICA image dumping/libpng 2018-03-07 09:10:54 +11:00
bunnei
1a2f29aad0
Merge pull request #3474 from wwylele/fuck-you-unimplemented
assert: do not crash on unimplemented code in debug build
2018-03-06 11:46:30 -05:00
tgsm
7054b63d4d Service/CFG: add system model value for New 2DS XL 2018-03-06 02:11:01 -05:00
wwylele
e004e9505e assert: do not crash on unimplemented code in debug build 2018-03-05 14:53:19 +02:00
Weiyi Wang
4befbddc34
Merge pull request #3281 from jroweboy/texcache-pt2
Texture Cache Rework
2018-03-05 11:57:25 +02:00
wwylele
c2515ff39d clang-format fix 2018-03-05 11:09:20 +02:00
James Rowe
1d419bac1b Disable accelerated texture copy for Texture surfaces 2018-03-04 22:06:09 -07:00
James Rowe
f3234db5e2
Merge pull request #3440 from B3n30/file_read_delay
File_Sys: Add a size dependent delay for each file read
2018-03-04 21:32:50 -07:00
James Rowe
739f8e5367 Fix clang format 2018-03-04 20:59:42 -07:00
James Rowe
ce725f24ca
Merge pull request #3444 from jroweboy/fix-multiplayer
UDS: Add non zero mac address to the shared page
2018-03-04 20:40:37 -07:00
James Rowe
d26cf11399 Fix clang format 2018-03-04 20:27:22 -07:00
James Rowe
878217372b Remove useless static cast 2018-03-04 20:16:36 -07:00
wwylele
61069d2b67 Service/NEWS: convert to ServiceFramework 2018-03-04 20:47:55 +02:00
wwylele
3566987ecc Service/NEWS: fix command id for news:u:AddNotification
this one is different from the one in news:s
2018-03-04 20:47:54 +02:00
wwylele
54af348cfc IPC helpers: remove deprecated static buffer interface 2018-03-04 14:47:33 +02:00
wwylele
6ebd3f396f Service/FRD: convert to ServiceFramework 2018-03-04 14:47:32 +02:00
wwylele
5178e5bce1 fix clang-format 2018-03-04 13:30:29 +02:00
Weiyi Wang
e4d558d114
Merge pull request #3468 from wwylele/nim-new-framework
Service/NIM: convert to ServiceFramework
2018-03-04 13:25:54 +02:00
Ben
d6157a49db APT: Implement SendCaptureBufferInfo and ReceiveCaptureBufferInfo (#3467)
* APT: Implement SendCaptureBufferInfo and ReceiveCaptureBufferInfo

* adressed comments

* Clear screen_capture_buffer on Receive

* fix response in ReceiveCaptureBufferInfo

* fix response in ReceiveCaptureBufferInfo

* fix clang-format
2018-03-04 13:25:33 +02:00
wwylele
508bba2932 Service/NIM: convert to ServiceFramework 2018-03-03 19:25:26 +02:00
Weiyi Wang
001ad9da3b
Merge pull request #3462 from wwylele/am-new-framework
Service/AM: convert to ServiceFramework
2018-03-03 18:29:47 +02:00
Ben
7c1a22358a
Merge pull request #3456 from hubslave/master
Fix build on OpenBSD
2018-03-02 21:58:43 +01:00
hubslave
93fd55249b Fix build on platforms without std::string_view
json.hpp wants it, but it isn't always available. Rather than patch
json.hpp directly to remove the dependency, provide a json.h wrapper
header that subs in std::experimental::string_view using preprocessor
magic. All the consumers of json.hpp are in src/web_service, so the
wrapper header is placed there as well.
2018-03-02 18:15:45 +02:00
hubslave
fd79b70a87 externals: Update fmt to 4d35f94
Versions prior to this didn't compile on OpenBSD due to unconditional
use of the non-standard strtod_l() function.

The fmt::MemoryWriter API has been removed in the intervening
versions, so replace its use with fmt::memory_buffer and fmt::format_to.

The library also no longer provides the fmt::fmt ALIAS, so define
it in externals/CMakeLists.txt.
2018-03-02 18:12:51 +02:00
wwylele
7c4ed77e06 Service/AM: fix some headers 2018-03-02 02:53:59 +02:00
wwylele
61e5f320c9 ipc_helpers: remove some deprecated functions 2018-03-02 02:53:59 +02:00
wwylele
e19475481c Service/AM: convert to ServiceFramework 2018-03-01 17:02:34 +02:00
B3n30
98771a6363 GSP_GPU: Release the GPU right if the active session closes the gsp_gpu session 2018-03-01 14:54:38 +01:00
wwylele
ff15d887fa remove dead code 2018-03-01 15:02:51 +02:00
Weiyi Wang
941ccaeed6
Merge pull request #3441 from wwylele/fs-new-framework
Service/FS: convert to ServiceFramework
2018-03-01 14:51:24 +02:00
Valentin Vanelslande
ac626edabc Service/AM: Implement DeleteProgram and DeleteUserProgram (#3446)
* Update am.cpp

* Update am.h

* Update am_net.cpp

* Service/AM: Implement DeleteProgram

* fix clang

* Address comments

* Service/AM: DeleteProgram: Scan for all titles after deleting the title

* fix

* Service/AM: DeleteProgram: return error if the title was not found

* fix clang

* [skip ci]

* [skip ci]

* [skip ci]

* [skip ci]

* Service/AM: Implement DeleteUserProgram

* fix clang

* FileUtil::DeleteDirRecursively unexpectedly failed
2018-02-28 16:25:33 +02:00
Weiyi Wang
0cea9c54ac
Merge pull request #3434 from BreadFish64/MultipleInstalls
QT: allow installation of multiple CIAs
2018-02-28 15:55:15 +02:00
MerryMage
90b835758f decode: Fix PCM8 decoding
Signal range is -32767 to 32768, not -127 to 128.
2018-02-25 12:42:21 +00:00
B3n30
d8ac3a3435 Fix include 2018-02-24 14:46:42 +01:00
B3n30
143878a474 Rebased usage of SleepClientThread 2018-02-24 14:25:02 +01:00
B3n30
06a7676ed1 Add DelayGenerator for all file backends 2018-02-24 14:15:57 +01:00
B3n30
58b16c5459 File_Sys: Add a size dependend delay for each file read 2018-02-24 14:15:57 +01:00
James Rowe
1f87766b86 Change to use CryptoPP random and address review comments 2018-02-22 22:31:58 -07:00
hubslave
27b20359b4 core: EMULTIHOP isn't defined on all Unixes 2018-02-22 23:29:54 +02:00
hubslave
13a6e091b7 Common: fix swap functions on Bitrig and OpenBSD
swap{16,32,64} are defined as macros on the two, but client code
tries to invoke them as Common::swap{16,32,64}, which naturally
doesn't work. This hack redefines the macros as inline functions
in the Common namespace: the bodies of the functions are the
same as the original macros, but relying on OS-specific
implementation details like this is of course brittle.
2018-02-22 23:29:43 +02:00
James Rowe
752cfcaaae Move writing to shared page to the nwm init 2018-02-22 10:20:34 -07:00
James Rowe
ffe94421b2 UDS: Add non zero mac address to the shared page
Apparently several games check the shared page mac address and wifi
link level values, and will refuse to start UDS if they are not correct.
This change gives a default value (in case you aren't connected to a
network) and will read the value from Room if you are connected.
2018-02-22 10:17:38 -07:00
wwylele
26a9c5832d keep the namespace comment 2018-02-22 17:46:31 +02:00
wwylele
d9500ecf9b Revert "Kernel/Threads: Add a new thread status that will allow using a Kernel::Event to put a guest thread to sleep inside an HLE handler until said event is signaled" 2018-02-22 17:31:58 +02:00
Weiyi Wang
e2eab46535
Merge pull request #3070 from B3n30/uds_connect_disconnect
NWM_UDS: change to Service Framework
2018-02-22 16:55:59 +02:00
wwylele
dfc22661a4 NWM_UDS: change SleepClientThread to use std::chrono::nanoseconds 2018-02-22 16:44:04 +02:00
Weiyi Wang
48512d9011
Merge pull request #3101 from Subv/hle_thread_pause2
Kernel/Threads: Add a new thread status that will allow using a Kernel::Event to put a guest thread to sleep inside an HLE handler until said event is signaled
2018-02-22 16:23:34 +02:00
wwylele
42ab8d9d0b HLE: specify that the command buffer is an array of u32_le 2018-02-22 16:12:39 +02:00
Subv
b0f4390247 HLE: Use std::chrono::nanoseconds instead of a plain u64 in SleepClientThread. 2018-02-21 22:03:46 -05:00
BreadFish64
165d3e1ab2 tidy loop 2018-02-19 17:11:46 -06:00
wwylele
f3d22ccde4 APT: don't skip translation parameters 2018-02-19 22:30:38 +02:00
James Rowe
33fe6c30e0
Merge pull request #3322 from MerryMage/DSP
audio_core: Remove global state
2018-02-19 09:08:37 -07:00
B3n30
853a79c94c clang-format fix 2018-02-17 13:45:52 +01:00
B3n30
7cb3d84a98 HW checked signals Disconnect, Destroy and Shutdown 2018-02-17 12:54:48 +01:00
BreadFish64
f0f9f34445 move callback definition outside loop 2018-02-16 14:53:38 -06:00
wwylele
e003e75dc5 FS: fix wrong response header of Initialize 2018-02-16 21:33:39 +02:00
B3n30
237835a8b6 NWM_UDS: More of wwyleles comments 2018-02-15 23:00:32 +01:00
B3n30
cbf514190e NWM_UDS: Addressed wwyleles comments 2018-02-15 22:48:27 +01:00
B3n30
cc6a83621c fix clang 2018-02-15 22:48:27 +01:00
B3n30
d793624c61 fixup! NWM_UDS: Convert to service framework 2018-02-15 22:48:27 +01:00
B3n30
27e6e03d16 Fixups from Subvs comments 2018-02-15 22:48:27 +01:00
B3n30
520ecf7be6 NWM_UDS: Convert to service framework 2018-02-15 22:48:27 +01:00
B3n30
5904e11215 fixup! UDS: Add coonnect and disconnect 2018-02-15 22:48:27 +01:00
B3n30
f29a9ac3c1 UDS: Add coonnect and disconnect 2018-02-15 22:48:27 +01:00
wwylele
6c6e42375c FS: correct maximum session
the number is got from FS module code
2018-02-15 23:28:03 +02:00
wwylele
36169144b5 FS: fix documentation of service functions 2018-02-15 23:03:21 +02:00
wwylele
71fac7bd72 FS: convert to service framework 2018-02-15 23:02:09 +02:00
wwylele
e8c95a9a41 ipc_helpers: add PopPID; remove PushCurrentPIDHandle
It doesn't make sense for a service to tell its own PID to a client, and there is no such use case. Also the name "handle" is misleading as the PID is not a handle
2018-02-15 11:16:41 +02:00
wwylele
19d7324075 fs/archive: convert Directory to ServiceFramework 2018-02-14 21:47:08 +02:00
wwylele
4935dcaf56 fs/archive: remove dead code
the std::hash bug is fixed in gcc 6.1, and we are now targeting 7.0 , so the workaround is no longer needed
2018-02-14 19:49:54 +02:00
Weiyi Wang
775fb388c2
Merge pull request #3429 from Cuyler36/fs_user-stub-secure-value-functions
Service/FS_User: Stub Secure Value Functions
2018-02-14 17:32:26 +02:00
bunnei
b9963e131c
Merge pull request #3421 from wwylele/apt-new-framework-2
Service/APT: convert to ServiceFramework
2018-02-14 10:06:49 -05:00
BreadFish64
c547465657 install multiple CIAs sequentially 2018-02-13 18:16:26 -06:00
wwylele
c4db298a7d
HLE/IPC: remove assertion on empty buffer.
Some service functions do require to push an empty buffer in some cases. See APT:ReceiveParameter/GlanceParameter
2018-02-11 00:09:52 +02:00
wwylele
66141ed004 apt: fix doc format 2018-02-09 18:10:46 +02:00
Weiyi Wang
3c03da12c8
Merge pull request #3069 from B3n30/announce_room_webservice
Announce room webservice
2018-02-08 18:46:10 +02:00
Cuyler36
71c7dddac4 Service/FS_User: Stub Secure Value Functions
Stubbing these functions results in save loading fixes in games which require a secure value.

An example is shown here with Animal Crossing: New Leaf:
[Before](https://puu.sh/zidZC/f1523e81cb.png)

[After](https://puu.sh/zifeT/57026eae44.png)
2018-02-06 19:31:22 -05:00
James Rowe
18456ff9e6 Address Lioncash's comments 2018-02-05 20:31:50 -07:00
MerryMage
adf9a19095 fixup! audio_core: Remove global state 2018-02-04 22:23:51 +00:00
BreadFish64
752e6e62b8
correct escape sequence warning 2018-02-03 13:33:18 -06:00
wwylele
8970e28031
APT: convert to ServiceFramework 2018-02-03 19:40:22 +02:00
MerryMage
7c7fddd7bd tests: Remove HandleSpecialMapping test for DSP region
Memory::GetPhysicalPointer for the DSP region requires a valid
Core::System::dsp_core.
2018-02-03 15:15:17 +00:00
MerryMage
ab3d53131a audio_core: Remove global state 2018-02-03 15:15:17 +00:00
bunnei
dca5fd291f
Merge pull request #3272 from MerryMage/dynarmic
core/arm: Backend-specific context implementations
2018-02-02 12:27:52 -08:00
Paulo Faustino
8e4b806419 More accessible screen layout settings. (#3340)
* Remove borders from status bar items

On Ubuntu the status bar didn't look as good as on Windows due to some border being drawn around each status bar cell.

* Revert "Remove borders from status bar items"

This reverts commit 15fd32bf2b.

* Remove borders from status bar items 

On Ubuntu the status bar didn't look as good as on Windows due to some border being drawn around each status bar cell.

* More accessible screen layout settings.

Depending on the game I'm playing I find myself needing to switch screen layouts very often and it's currently a hassle to have to open the settings dialog in order to do that so I've added shortcuts for the screen layout options and swap screen option on the main menu plus I added a keyboard shortcut to quickly toggle between the available layouts during game play (F10). I've also updated the swap screen shortcut (F9 now, used to be Ctrl + Tab) so it's next to the layout toggle shortcut by default (F9 and F10).

* Clean up.
2018-02-02 12:19:49 -08:00
BreadFish64
d3a0375f47 Add Context Menu Options to Open Application and Update Location (#3411)
* Add Context Menu Options to Open Application and Update Location

* address jroweboy's feedback

move enum definition to game list header
declare sdmc_dir in SAVE_DATA case
fix log formatting

* Address Merry's feedback

remove redundant line
format program ID as 16 digit hex in log|
change case of open_target to look better in title bar
add whitespace for readability
2018-02-02 12:18:19 -08:00
bunnei
40b9e55e60
Merge pull request #3408 from wwylele/apt-new-framework
APT/Applet: move applet management into its own class
2018-02-02 12:15:57 -08:00
bunnei
ee0bd3a8db
Merge pull request #3367 from wwylele/y2r-new-framework
Service/Y2R: convert to ServiceFramework
2018-02-02 12:12:47 -08:00
Phantom
9e16a3c449 ConvertD24S8toABGR: fix fb attachment 2018-01-31 08:55:39 -07:00
Phantom
d813bc5eb5 D24S8 to RGBA8 conversion 2018-01-31 08:55:19 -07:00
Phantom
db21154142 GetFramebufferSurfaces: Remove an assert that is no longer correct 2018-01-31 08:54:19 -07:00
Merry
5a57578ce9
Merge pull request #3402 from BreadFish64/installed-game-list
Allow Installed Apps to Display in the Game List
2018-01-27 00:32:36 +00:00
BreadFish64
79e4fe58dc fix comparison operator 2018-01-26 17:12:50 -06:00
Weiyi Wang
e53e07b528
Merge pull request #3325 from BreadFish64/CompatibiltyReporting
Add ability to send test cases through telemetry
2018-01-27 00:56:55 +02:00
James Rowe
b002511df0
citra-qt: Add customizable speed limit target (#3353)
citra-qt: Add customizable speed limit target

* Update SDL config for the new frame_limit option
* Made max lag time a function of target speed percent.
* Added a checkbox to enable/disable frame limiter
* UI: Prevent frame_limit from under/overflowing
* UI: Hide target speed percent when frame limiter is off
* Disable frame limit spin box when framelimit isn't enabled
2018-01-25 22:24:40 -07:00
BreadFish64
4f5892d86d
Fix comparison operators 2018-01-25 20:50:22 -06:00
wwylele
92f0064b47
APT/Applet: move applet managing into its own class 2018-01-25 22:20:08 +02:00
BreadFish64
db3c83fedc
remove spaces 2018-01-24 10:17:04 -06:00
BreadFish64
1e54b52edf
revert move 2018-01-24 10:16:40 -06:00
B3n30
33b0b5163f
Merge pull request #3136 from Subv/mem_aliasing1
Kernel/Memory: Added a function to change the memory state of an address range
2018-01-24 10:17:25 +01:00
BreadFish64
eb1b5f588a only pass one smdh 2018-01-23 21:32:27 -06:00
BreadFish64
4da837c929 only search to two recursions, add update dir to watch list 2018-01-23 14:13:54 -06:00
Subv
a7a5c5aa0d Kernel/IPC: Partially implement MappedBuffer translation.
Right now only MappedBuffers that only span a single page and are not aligned are implemented.

MappedBuffers are unmapped during the reply part of ReplyAndReceive. Only unmapping of ReadOnly buffers is currently implemented.
2018-01-23 08:27:00 -05:00
Subv
928202f744 Kernel/VMManager: Added a function to map a block of memory into the first available address after a given base. 2018-01-23 08:24:15 -05:00
Subv
07089cfb3c Tests: Added some tests for the VMManager class.
Covering basic operations like mapping, unmapping, reprotecting and changing memory state.
2018-01-23 08:21:12 -05:00
Subv
e4f35f70ac Memory: Added a function to change the memory state of an address range.
This will be useful when implementing memory aliasing operations.
2018-01-23 08:19:47 -05:00
James Rowe
44d07574b1
Merge pull request #2882 from danzel/movie-squash
Movie (Game Inputs) recording and playback
2018-01-23 01:03:37 -07:00
James Rowe
0e8c25fdfa
Merge pull request #3361 from wwylele/ptm-new-framework
Service/PTM: convert to ServiceFramework
2018-01-22 11:57:44 -07:00
BreadFish64
38c5ca68b2 reduce the scope of the variables 2018-01-22 07:56:24 -06:00
Tobias
4247826358
Minor spelling fix 2018-01-21 14:08:13 +01:00
Phantom
88f6521511 AccelerateTextureCopy: Better support for contiguous copy 2018-01-20 18:39:27 -07:00
BreadFish64
980923d351 allow installed apps to display in the game list 2018-01-20 11:33:14 -06:00
BreadFish64
fc1bdc3c62 enum class 2018-01-20 09:56:02 -06:00
James Rowe
bf4e35b916
Merge pull request #3399 from FearlessTobi/patch-1
Remove "tr" from image formats in graphics_surface.cpp
2018-01-19 08:17:40 -07:00
Reegea85
0ea85b935a
citra-qt: fix broken About box
Fixing contributor ink in about box. Link missing https:
2018-01-19 15:26:03 +01:00
BreadFish64
169b076913 use enum and add default case 2018-01-18 21:02:55 -06:00
Tobias
ae4e8bc316
Remove tr from image formats 2018-01-18 23:04:31 +01:00
literalmente-game
7cf9bc88a3
Update configure_web.cpp
Typo
2018-01-18 18:08:33 -02:00
BreadFish64
c3afd73592
Merge branch 'master' into CompatibiltyReporting 2018-01-18 10:36:32 -06:00
James Rowe
e1ffcde355
Merge pull request #3297 from wwylele/translation-tx
citra-qt: add translation support; link translation with transifex
2018-01-18 09:01:00 -07:00
Adityarup Laha
93cca23dd6 Variable tilt clamp (#3366)
* Add tilt clamp setting

* Updated `clamp` to use variable

* Fixed a minor typo

* Include possibly necessary header

* expose setting in sdl2

* expose setting in qt

* incorporate @wwylele 's suggestion in sdl2

* Incorporate @wwylele 's suggestion (?)

Please review the code, this is the first time I'm working with `ParamPackage`s so I may just screw up the code.

* Forgot to change in qt

* Fixed an fatal error

* fixed clang format error

* remove the old setting

* fixed typos cusing errors

* removed old setting

* Changed init style

* Forgot this one

* Removed unnecessary header inclusion

* Update config.cpp

* update qt-config

* Update motion_emu.cpp

* Update motion_emu.cpp
2018-01-17 17:30:50 -05:00
BreadFish64
11d2825070
only enable menu visibility 2018-01-17 13:57:42 -06:00
Yuri Kunde Schlesner
3a001c41bb Common: Use common swap.h macros in CityHash 2018-01-15 13:43:38 -08:00
Yuri Kunde Schlesner
3e456cd3fe Common: Fix 2 implicit conversion warnings in CityHash 2018-01-15 13:43:37 -08:00
Yuri Kunde Schlesner
712e6ee960 Common: Remove CityHash32 and CityHashCrc128 variants
In 64-bit systems, CityHash64 is always strictly better than CityHash32.
CityHashCrc128 requires SSE 4.2.
2018-01-15 13:43:37 -08:00
Yuri Kunde Schlesner
f081388afe Common: Adapt CityHash code to match our codebase better
- Use #pragma once instead of guards
- Move header typedefs to implementation file
- Enclose in Common namespace
2018-01-15 13:43:37 -08:00
Yuri Kunde Schlesner
d93ee65164 Common: Add convenience function for hashing a struct 2018-01-15 13:43:37 -08:00
Yuri Kunde Schlesner
7f77820460 Common: Replace MurmurHash3 with CityHash64
CityHash64 is faster than Murmur3 at all sizes, but especially for short
keys.
2018-01-15 01:11:11 -08:00
Emmanuel Gil Peyrot
c361dad7d2 Citra: Print the actual error preventing SDL from working 2018-01-13 21:41:51 +01:00
wwylele
f42f7dfcab
Service/Y2R: convert to ServiceFramework 2018-01-12 13:38:20 +02:00
Weiyi Wang
9b647d459b
Merge pull request #3324 from Subv/gspgpu
Services: Keep track of per-session data in GSPGPU
2018-01-11 20:03:46 +02:00
BreadFish64
ca96077601
1 -> d 2018-01-11 10:57:44 -06:00
BreadFish64
b71d9e108d address wwylele's feedback 2018-01-10 19:05:14 -06:00
bunnei
2e41810608
Merge pull request #3333 from Senjosei/pause-coreerror
citra_qt: Pause emulation on CoreError
2018-01-10 12:16:51 -05:00
wwylele
9be3ce83db
Service/PTM: convert to ServiceFramework 2018-01-10 14:23:35 +02:00
Emmanuel Gil Peyrot
7f9fae5f7c Telemetry: Disable CPU detection on ¬x86_64 2018-01-08 19:21:21 +01:00
Emmanuel Gil Peyrot
e5a3dc2956 Core: Disable the JIT when dynarmic is not available 2018-01-08 19:13:58 +01:00
Emmanuel Gil Peyrot
2cd2a7491c CMakeLists: Disable dynarmic on ¬x86_64 2018-01-08 17:58:00 +01:00
Subv
34685f48dc GSP: Allow the signaling of the PDC0/1 interrupts even if the GPU right hasn't been acquired.
This was verified with a hwtest.
2018-01-06 13:51:33 -05:00
BreadFish64
68959823e9 move menu action 2018-01-06 11:56:12 -06:00
Weiyi Wang
a66e4585a0
Merge pull request #3304 from wwylele/hid-new-framework
HID: convert to ServiceFramework
2018-01-04 11:04:57 +02:00
Subv
aa90198ec5 Services: Make SessionDataBase's destructor virtual. 2018-01-03 10:52:46 -05:00
Dwayne Slater
41929371dc Optimize AttributeBuffer to OutputVertex conversion (#3283)
Optimize AttributeBuffer to OutputVertex conversion

First I unrolled the inner loop, then I pushed semantics validation
outside of the hotloop.

I also added overflow slots to avoid conditional branches.

Super Mario 3D Land's intro runs at almost full speed when compiled with
Clang, and theres a noticible speed increase in MSVC. GCC hasn't been
tested but I'm confident in its ability to optimize this code.
2018-01-02 15:32:33 -08:00
Subv
75f68c4860 Services/GSP: Mark the thread ids as unused when a GSP session is destroyed.
This fixes the games that call RegisterInterruptRelayQueue and UnregisterInterruptRelayQueue frequently.
2018-01-02 12:10:58 -05:00
Subv
d17f148e48 Services/GSP: Assign a thread id to each connected session when the session is created.
Most applications call AcquireRight before calling RegisterInterruptRelayQueue so we can't assign the thread id there.
This fixes the bug with LLE applets not launching properly.
2018-01-02 12:07:26 -05:00
Weiyi Wang
3f7f2b42c0
Merge pull request #3257 from tgsm/y2r-ipc
y2r: convert some functions to use IPC helper
2018-01-02 12:55:56 +02:00
Yuri Kunde Schlesner
337e9e12eb
Merge pull request #3335 from mailwl/citra-sdl-small-fix
citra(SDL) small fixes: fix fall-through
2018-01-01 21:00:10 -08:00
tgsm
ee779a5a4d y2r: convert some functions to use IPC helper 2018-01-01 22:46:34 -05:00
BreadFish64
e768a92587 add compatibility reporting to qt frontend 2018-01-01 19:25:38 -06:00
Merry
e203c10cc2
Merge pull request #3336 from PizzicatoWolf/qt-layout-fixes
citra_qt: Resized main config window
2017-12-31 21:17:25 +00:00
wwylele
7daa2a51d7
Kernel/SVC: fix typo in GetResourceLimitLimitValues 2017-12-30 23:42:32 +02:00
Phantom
7f1aec8fbb Support for textures smaller than 8*8 2017-12-30 07:42:32 +01:00
PizzicatoWolf
8fa160395b Revert index change 2017-12-30 14:51:45 +10:30
PizzicatoWolf
e0e4b70f6a Resized main config window 2017-12-30 14:10:05 +10:30
mailwl
f93d656e53 citra(SDL) small fixes: fix fall-through, remove u16 'always true' compare 2017-12-29 21:04:10 +03:00
Phantom
be1d0cee1e Fix viewport to surface rect clamping 2017-12-29 17:07:01 +01:00
Phantom
19672cfee8 CachedSurface: Add microprofile scopes for UploadGLTexture and DownloadGLTexture 2017-12-29 17:01:37 +01:00
Phantom
1591fa8d3d Remove read_framebuffer_handle and draw_framebuffer_handle from CachedSurface 2017-12-29 17:00:09 +01:00
Senjosei
fb72a9d9fa Fixed clang whitespace 2017-12-29 06:31:18 +11:00
Senjosei
f17600db1a Moved when to pause because it wasnt fast enough 2017-12-29 06:17:21 +11:00
Senjosei
bbe6c8890c Pause emulation OnCoreError 2017-12-29 06:15:59 +11:00
Subv
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
Subv
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
Subv
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
Subv
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
James Rowe
1c4d1d1ace Move trasnfer_framebuffer to a member of RasterCache. Address review comments 2017-12-23 16:10:32 -07:00
James Rowe
10fb9242ae Fix clang format 2017-12-23 16:10:32 -07:00
James Rowe
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
James Rowe
7e673af527 Remove the correct intervals from the surface when validating 2017-12-23 16:10:31 -07:00
James Rowe
ac4c589ab5 Workaround for ICE on gcc5 2017-12-23 16:10:31 -07:00
Phantom
9a6a452857 Fix broken surface validation logic since removal of the reinterpret hack 2017-12-23 16:10:30 -07:00
Phantom
f893daa4a2 Perform the same checks on TexCopy params that SW does 2017-12-23 16:10:30 -07:00
James Rowe
91fad7010b Fix compilation on mac and linux 2017-12-23 16:10:30 -07:00
James Rowe
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
James Rowe
72034b772d Minor style changes 2017-12-23 16:10:29 -07:00
James Rowe
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
James Rowe
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
James Rowe
24e187891f OpenGL Rasterizer: Update to use the new cache 2017-12-23 16:10:28 -07:00
James Rowe
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
James Rowe
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
James Rowe
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