Commit Graph
100 Commits
Author SHA1 Message Date
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
James RoweandGitHub 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 RoweandGitHub c57b0767af Merge pull request #3602 from lioncash/json
verify_login: Make VerifyLogin exceptionless
2018-04-04 23:39:28 -06:00
James RoweandGitHub c084c97cb8 Merge pull request #3625 from N00byKing/thing
default_ini.h: Update Comment
2018-04-03 10:48:09 -06:00
James RoweandGitHub 384849232b Merge pull request #3516 from wwylele/shadow-sw
SwRasterizer: Implement shadow mapping
2018-03-31 23:29:22 -06:00
James RoweandGitHub a779304c91 Merge pull request #3616 from valentinvanelslande/appveyor-j4
appveyor: set jobs to 4 for mingw
2018-03-31 17:04:47 -06:00
James RoweandGitHub 11b9d303da Merge pull request #3610 from BreadFish64/update-icons-signal
QT: add themed icon update signal
2018-03-30 09:40:36 -06:00
James RoweandGitHub 74465389f3 Merge pull request #3172 from MerryMage/mingw-pdb
appveyor: Generate PDBs for mingw build
2018-03-27 09:52:03 -06:00
James RoweandGitHub 8c44447aeb Merge pull request #3504 from degasus/vertex_streaming
Vertex streaming
2018-03-16 23:17:47 -06:00
James RoweandDaniel Lim Wee Soong ab4ba71f3e fixup! Prevent crashes on closing by waiting for the impl thread 2018-03-16 11:18:06 +08:00
James RoweandDaniel Lim Wee Soong 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 RoweandDaniel Lim Wee Soong 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 RoweandDaniel Lim Wee Soong 47f0185bcd fixup! move message 2018-03-16 11:18:06 +08:00
James RoweandDaniel Lim Wee Soong 7b78425d6b Address review comments 2018-03-16 11:18:06 +08:00
James RoweandDaniel Lim Wee Soong f6762f05cd Use the correct linker flag for mingw 2018-03-16 11:18:06 +08:00
James RoweandDaniel Lim Wee Soong 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
James RoweandGitHub 0ad38cf3c8 Merge pull request #3522 from jroweboy/update-glad
Update GLAD GL bindings to include extensions
2018-03-15 00:15:27 -06:00
James RoweandGitHub 33a0e87ac2 Merge pull request #3410 from jroweboy/clang-format-target
Clang format as a build target
2018-03-09 11:10:27 -07:00
James Rowe f61141e86a Update the entire application to use the new clang format style 2018-03-09 10:54:43 -07:00
James Rowe ed36edf69c Travis: Update clang-format to 6.0 2018-03-09 10:50:09 -07:00
James Rowe b6d94864fd CMake: Conditionally turn on bundled libs for MSVC
Removes the annoying step when generating sln for MSVC where you have to
click an extra checkbox after the first generate fails by using a
conditional option. The USE_BUNDLED options will be off by default, but
if the enable_lib option is enabled and the toolset is msvc, they are
turned ON.
2018-03-09 10:50:08 -07:00
James Rowe 9d59ff1879 CMake: Update contributing guide with the new clang format info 2018-03-09 10:50:08 -07:00
James Rowe 47ea473018 CMake: Add a custom clang format target
Checks to see if clang-format can be found, and if it is, sets up a
custom target that will run against the src dir and auto formats all
files. In MSVC, this is a project, and in Makefiles, its a make target
2018-03-09 10:50:08 -07:00
James Rowe 1d419bac1b Disable accelerated texture copy for Texture surfaces 2018-03-04 22:06:09 -07:00
James RoweandGitHub 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 RoweandGitHub 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
James Rowe 1f87766b86 Change to use CryptoPP random and address review comments 2018-02-22 22:31:58 -07: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
James RoweandGitHub 33fe6c30e0 Merge pull request #3322 from MerryMage/DSP
audio_core: Remove global state
2018-02-19 09:08:37 -07:00
James Rowe 18456ff9e6 Address Lioncash's comments 2018-02-05 20:31:50 -07:00
James RoweandGitHub 587450cd04 Merge pull request #3422 from BreadFish64/BreadFish64-patch-1
correct escape sequence warning
2018-02-03 14:21:42 -07:00
James RoweandGitHub 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
James RoweandGitHub 44d07574b1 Merge pull request #2882 from danzel/movie-squash
Movie (Game Inputs) recording and playback
2018-01-23 01:03:37 -07:00
James RoweandGitHub 0e8c25fdfa Merge pull request #3361 from wwylele/ptm-new-framework
Service/PTM: convert to ServiceFramework
2018-01-22 11:57:44 -07:00
James RoweandGitHub 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
James RoweandGitHub 0086b57d5a Merge pull request #3401 from Reegea85/patch-1
citra-qt: fix broken About box link
2018-01-19 08:09:37 -07:00
James RoweandGitHub 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
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
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
James Rowe 0b98b768f5 OpenGL Cache: Add surface utility functions
Separates creating and filling surfaces into static functions that
can be reused from the different RasterizerCache methods.
2017-12-23 16:10:26 -07:00
James Rowe e9e2d444ef OpenGL Cache: Optimize Morton Copy to copy in tiles
Compiles two lookup arrays of functions for the different
configurations of Morton Copy.
2017-12-23 16:10:26 -07:00
James Rowe 160ac25527 OpenGL State: Change setters so they don't directly write to curstate 2017-12-23 16:10:25 -07:00
James Rowe 13606a6d0b Memory: Remove count of cached pages and add InvalidateRegion
In a future commit, the count of cached pages will be reintroduced in
the actual surface cache. Also adds an Invalidate only to the cache
which marks a region as invalid in order to try to avoid a costly flush
from 3ds memory
2017-12-23 16:10:25 -07:00
James Rowe c821c14908 Settings: Change resolution scaling to an integer instead of a float 2017-12-23 16:10:25 -07:00
James RoweandGitHub 6e2a4ba665 Merge pull request #3305 from lioncash/fwd
game_list: Use forward declarations where applicable
2017-12-16 12:42:26 -07:00
James RoweandGitHub b88ed528a3 Merge pull request #3275 from MerryMage/shutdown-before-init
core: Don't Shutdown before we've even Init-ed
2017-12-11 18:50:16 -07:00
James RoweandGitHub a709e6528e Merge pull request #3242 from Subv/extdata
HLE/FS: Always use 0x48000 as the high dword when opening the SharedExtData archive
2017-12-09 10:18:30 -07:00
James RoweandGitHub a5b7a1fa7a Merge pull request #3247 from muemart/crash
Fix crash when loading an unsupported file
2017-12-09 09:49:24 -07:00
James RoweandGitHub af45f2b2de Merge pull request #3241 from wwylele/process-info-fix
svc: correct GetProcessInfo(20)
2017-12-08 13:13:26 -07:00
James RoweandGitHub fcf0d104c9 Merge pull request #3161 from lioncash/catch
externals: Update catch to v2.0.1
2017-11-30 12:02:45 -07:00
James RoweandGitHub b7cf793814 Merge pull request #3113 from shinyquagsire23/sdl-cia-install
SDL CIA Installation
2017-11-24 10:23:20 -07:00
James RoweandGitHub de0af83719 Merge pull request #3135 from MerryMage/d-ClearInstructionCache
arm_dynarmic: ClearInstructionCache should clear all instruction caches
2017-11-19 16:39:04 -07:00
James RoweandGitHub c810a3f3b0 Merge pull request #3126 from chris062689/master
Added Webhook notifications for Appveyor.
2017-11-16 20:35:30 -07:00
James Rowe 9d9693c13d Revert "Extracted the attribute setup and draw commands into their own functions"
This reverts commit b3b34a1e76. This
commit causes a performance regression for not enough benefits
2017-11-16 11:46:17 -07:00
James RoweandGitHub 5eabe60aa3 Merge pull request #2969 from mailwl/ptm_step
Service/PTM: Stub GetStepHistory function
2017-11-15 09:39:17 -07:00
James RoweandGitHub 78fc1822c2 Merge pull request #3007 from KAMiKAZOW/patch-1
Install Linux icon in hicolor instead of pixmaps
2017-11-15 09:37:07 -07:00
James RoweandGitHub fae52d3056 Merge pull request #3109 from acnleditor2/fix-ini
sdl2 default ini: fix framelimit
2017-11-13 21:08:20 -07:00
James RoweandGitHub ddee442ff8 Merge pull request #3093 from Subv/missing_includes
Added missing headers to CMakeLists.txt and fixed includes.
2017-11-07 20:09:19 -07:00
James RoweandGitHub bd5fe0c48f Merge pull request #3081 from wwylele/fix-about
citra-qt: fix broken About box
2017-11-06 10:42:04 -07:00
James Rowe 2e6c80d1aa Qt updater integration, based on QtAutoUpdater 2017-11-04 15:00:20 -06:00
James RoweandGitHub c14f802381 Merge pull request #2992 from Subv/ac_srvframework
Services/AC: Converted the ac:i and ac:u services to the new service framework.
2017-11-04 10:42:09 -06:00
James RoweandGitHub edfc8d133a Merge pull request #3044 from Dragios/wnarrowing
Get rid of narrowing conversion warning (-Wnarrowing)
2017-10-27 15:55:14 -06:00
James RoweandGitHub 465e619cbb Merge pull request #3053 from wwylele/debug-build-please
file_sys: Add missing header for PRIU64
2017-10-27 14:47:11 -06:00
James RoweandGitHub 26065fd872 Merge pull request #3047 from Hexagon12/sdl2-sound-fix
Workaround for SDL2 2.0.6 audio issues
2017-10-24 20:40:38 -06:00
James RoweandGitHub b36f748acd Merge pull request #3046 from MerryMage/sdl-disallow-device-changes
sdl2_sink: Disallow audio device from changing any parameter other than the frequency
2017-10-24 09:22:28 -06:00
James RoweandGitHub b4c1c26511 Merge pull request #3028 from MerryMage/fix-3023
citra_qt: Remove use of QKeySequence::Cancel
2017-10-24 09:21:27 -06:00
James RoweandGitHub ceb9880034 Merge pull request #3037 from acnleditor2/dll
Fix Missing libpcre2-16-0.dll from both latest Nightly and Canary builds #3036
2017-10-23 13:25:53 -06:00
James RoweandGitHub 5b22cf08f0 Merge pull request #3024 from MerryMage/hle-lock
hle/lock: Remove #pragma once in cpp file
2017-10-21 08:43:59 -06:00
James RoweandGitHub dcb48840c3 Merge pull request #2993 from shinyquagsire23/am-and-archive-ncch-rework
AM Service and NCCH Archive Rework
2017-10-20 22:59:38 -06:00
James RoweandGitHub f47bf6c8c9 Merge pull request #3001 from Styleoshin/qt_fullscreen
citra-qt : Adding fullscreen mode
2017-10-19 15:30:55 -06:00
James RoweandGitHub e1bb198eae Merge pull request #2966 from jroweboy/qtifw_build_installer
Qtifw build installer
2017-10-11 21:21:51 -06:00
James Rowe 1fc1e2bbd5 Installer: Capitalize T in Team and update install location for linux 2017-10-11 19:24:05 -06:00
James RoweandGitHub d15e15bd05 Merge pull request #2996 from MerryMage/split-travis
travis: Split build scripts for different platforms
2017-10-09 17:27:46 -06:00
James RoweandGitHub 9b19c218a9 Merge pull request #3002 from Dragios/nwm-cmdhdr-fix
Change command header in nwm::UDS Initialize function
2017-10-08 20:23:37 -06:00
James RoweandGitHub 26629c661c Merge pull request #2982 from MerryMage/lazy-macos-opt
macOS: Build x86_64h slice
2017-10-03 11:15:01 -06:00
James RoweandGitHub 8244762b89 Merge pull request #2972 from Subv/ignore_.vs
Add the .vs folder and the CMakeSettings.json file from Visual Studio to gitignore
2017-09-30 10:11:53 -06:00
James Rowe e7da39a382 Installer: Address review comments
Correctly set permissions on mac installer and create a missing folder
2017-09-30 09:12:07 -06:00
James Rowe 709c89a1d8 Installer: Converted the build scripts to cmake and added an "installer" target 2017-09-28 10:46:05 -06:00
James RoweandGitHub 5620327e03 Merge pull request #2954 from Subv/cache_unmapped_mem
Memory/RasterizerCache: Ignore unmapped memory regions when caching physical regions
2017-09-26 16:55:47 -06:00
James RoweandGitHub 93930a966f Merge pull request #2921 from jroweboy/batch-fix-2
GPU: Add draw for immediate and batch modes
2017-09-24 07:57:16 -06:00
James Rowe 19d41dcc6e Remove pipeline.gpu_mode and fix minor issues 2017-09-23 09:28:20 -06:00
James Rowe ad0b57f407 GPU: Add draw for immediate and batch modes
PR #1461 introduced a regression where some games would change configuration
even while in the poorly named "drawing" mode, which broke the heuristic
citra was using to determine when to draw the batch. This change adds
back in a draw call for batching, and also adds in a draw call in
immediate mode each time it adds a triangle.
2017-09-11 09:21:43 -06:00
James Rowe 9e847b7549 Build: Enable SSL in mingw by linking against WinSSL
The mingw builds aren't submitting telemetry because the curl library
they are linked against is configured to use openSSL and openSSL looks
for the certificates in the users home folder. This keeps it from
contacting web services because it can't communicate over SSL.

This commit adds a download in mingw builds that will download a
precompiled curl for mingw linked against winssl and sspi.
2017-09-11 09:10:17 -06:00
James RoweandGitHub 3dcda15195 Merge pull request #2923 from B3n30/system_curl_osx
travis_OSX: build with system curl
2017-09-10 16:07:33 -04:00