Commit Graph

3977 Commits (e46ec64690328b74832b6516459d0bb0ea17eb8f)

Author SHA1 Message Date
Yuri Kunde Schlesner f111cd66ce Merge pull request #2492 from Kloen/killing-warnings-HD1.5ReMIX
Fix OSX build warnings about unhandled enumeration values.
9 years ago
Yuri Kunde Schlesner 1016e31fc7 Merge pull request #2493 from Kloen/killing-warnings-final-mix
video_core: silence unused-local-typedef boost related warnings on GCC
9 years ago
Kloen b3a0b1489b core: inline CPU, 132 warnings fixed on GCC 9 years ago
Kloen 28da285031 citra: add missing control paths for ResultStatus on rom load. Fix warning about unhandled enumeration values on OSX 9 years ago
Kloen 2ca3beb9d3 core: fix err_f.cpp warning about unhandled enumeration value on OSX 9 years ago
Kloen f352a741d3 core: fix savedata_archive.cpp warnings about unhandled enumeration values on OSX 9 years ago
Kloen c4f9cd3559 core: fix archive_sdmc.cpp warnings about unhandled enumeration value on OSX 9 years ago
Kloen f14a53abd0 core: fix archive_extsavedata.cpp warning on OSX 9 years ago
Kloen 4652d70572 video_core: silence unused-local-typedef boost related warning on GCC 9 years ago
Kloen ff7d68d743 core: emu_window.cpp, fix conversion warnings from float to s16 on MSVC 9 years ago
Kloen 818b1730a9 common: add <cstddef> to hash.h 9 years ago
Kloen 2fa0971ceb common: switch ComputeHash64 len param to size_t instead of int, fix warning on MSVC on dsp_dsp.cpp 9 years ago
noah the goodra 3545b144f1 fixed the override warning
```
In file included from citra/src/audio_core/sink_details.cpp:11:
citra/src/./audio_core/sdl2_sink.h:25:10: warning: 'SetDevice' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
    void SetDevice(int device_id);
         ^
citra/src/./audio_core/sink.h:39:18: note: overridden virtual function is here
    virtual void SetDevice(int device_id) = 0;
                 ^
```
9 years ago
Yuri Kunde Schlesner bf14f4be22 Merge pull request #2346 from yuriks/shader-refactor2
More shader refactoring
9 years ago
Kloen Lansfiel f852369986 SDL: Select audio device (#2403)
* Initial Commit

Added Device logic to Sinks
Started on UI for selecting devices

Removed redundant import

* Audio Core: Complete Device Switching

Complete the device switching implementation by allowing the output
device to be loaded, changed and saved through the configurations menu.

Worked with the Sink abstraction and tuned the "Device Selection"
configuration so that the Device List is automatically populated when
the Sink is changed.
This hopefully addresses the concerns and recommendations mentioned in
the comments of the PR.

* Clean original implementation.

* Refactor GetSinkDetails
9 years ago
Yuri Kunde Schlesner 0e9081b973 VideoCore/Shader: Move entry_point to SetupBatch 9 years ago
Yuri Kunde Schlesner 0f64274145 VideoCore/Shader: Move per-batch ShaderEngine state into ShaderSetup 9 years ago
Yuri Kunde Schlesner 6fa3687afc Shader: Remove OutputRegisters struct 9 years ago
Yuri Kunde Schlesner 9ea5eacf91 Shader: Initialize conditional_code in interpreter
This doesn't belong in LoadInputVertex because it also happens for
non-VS invocations. Since it's not used by the JIT it seems adequate to
initialize it in the interpreter which is the only thing that cares
about them.
9 years ago
Yuri Kunde Schlesner 1a2acc3baa Shader: Don't read ShaderSetup from global state 9 years ago
Yuri Kunde Schlesner fa4ac279a7 shader_jit_x64: Don't read program from global state 9 years ago
Yuri Kunde Schlesner ade7ed7c5f VideoCore/Shader: Move ProduceDebugInfo to InterpreterEngine 9 years ago
Yuri Kunde Schlesner a9b7752b9d Debugger: Always use interpreter for shader debugging 9 years ago
Yuri Kunde Schlesner 114d6b2f97 VideoCore/Shader: Split interpreter and JIT into separate ShaderEngines 9 years ago
Yuri Kunde Schlesner 8eefc62833 VideoCore/Shader: Rename shader_jit_x64{ => _compiler}.{cpp,h} 9 years ago
Yuri Kunde Schlesner dd4a1672a7 VideoCore/Shader: Split shader uniform state and shader engine
Currently there's only a single dummy implementation, which will be
split in a following commit.
9 years ago
Yuri Kunde Schlesner bd82cffd0b VideoCore/Shader: Add constness to methods 9 years ago
Yuri Kunde Schlesner 1e1f939817 VideoCore/Shader: Use only entry_point as ShaderSetup param
This removes all implicit dependency of ShaderState on global PICA
state.
9 years ago
Yuri Kunde Schlesner e3caf669b0 VideoCore/Shader: Use self instead of g_state.vs in ShaderSetup 9 years ago
Yuri Kunde Schlesner 34d581f2dc VideoCore/Shader: Extract input vertex loading code into function 9 years ago
Yuri Kunde Schlesner 3feb3ce283 Merge pull request #2434 from mailwl/nfc-amiibo
Service/NFC: stub some functions
9 years ago
Kloen 5cc94c17f6 video_core: fix shader.cpp signed / unsigned warning 9 years ago
Kloen 753fea5d65 video_core: gl_rasterizer float to int warning 9 years ago
Kloen b6063d9a93 video_core: fix gl_rasterizer warning on MSVC 9 years ago
Kloen 095f7c83fc core: fix mic_u warnings on MSVC 9 years ago
Kloen abc5c134a3 Removed unused and outdated external qhexedit 9 years ago
Kloen 380c165339 citra-qt: Removed unused and unimplemented ramview files. 9 years ago
wwylele 2c7676d371 HID: reset acceleroeter and gyroscope index in Init 9 years ago
wwylele 0045ea662f CFG: override language setting on boot 9 years ago
Thomas Farr bb1f277db1
loader: Add support for 3DSX special relocation types, fixes citra-emu/citra#2449
As per devkitPro/3dstools@47bea18
9 years ago
wwylele 47960b0659 CoreTiming: use named constant for ARM11 clock rate 9 years ago
wwylele 3c333c53f1 HID: manages updating itself using correct ticks 9 years ago
mailwl efe7e245b2 Service/NFC: stub some functions
Tested on: Mini-Mario & Friends - amiibo Challenge
9 years ago
mailwl b458d7447c GSP::WriteHWRegsWithMask: fix register mask 9 years ago
bunnei ba271f6569 Merge pull request #2423 from Kloen/floats-should-be-float
SDL2: Config, fix double to float warning
9 years ago
bunnei 1d088c637c Merge pull request #2424 from Kloen/qt-ui-warnings-really
Qt: Fix UI related warnings and bonus ui file format
9 years ago
bunnei 7ddfd3054d Merge pull request #2425 from Subv/cleanup_todos
Implement some TODOs in the code.
9 years ago
bunnei 597a7c615c Merge pull request #2308 from mailwl/ac-i
Service/AC: add ac:i service
9 years ago
Subv 1ddff14511 Threads: Check the process' resource limit for the max allowed priority when creating a thread and remove the priority clamping code. 9 years ago
Subv f2f2572fed Thread: Added priority range checking to svcSetThreadPriority and removed priority clamping code from Thread::SetPriority. 9 years ago
Subv 5ddc2e09b1 Y2R: Use the proper error code when GetStandardCoefficient receives an invalid value. 9 years ago
Kloen 8d48798f1c QT: Fix ui file format 9 years ago
Kloen 551fe3dd69 QT: Fix some UI related warnings 9 years ago
Kloen a851aa4cf1 SDL2: Config.cpp fix double to float warning 9 years ago
wwylele cf3a272332 CAM: implement basic camera functions with a blank camera 9 years ago
bunnei 84d72fd92f Merge pull request #2397 from Subv/pulse
Kernel: Implemented Pulse event and timers.
9 years ago
bunnei 9fc8ead842 Merge pull request #2384 from bunnei/internal-res-option
config: Add option for specifying screen resolution scale factor.
9 years ago
bunnei 7cfe3ef046 Merge pull request #1951 from wwylele/motion-sensor
Emulate motion sensor in frontend
9 years ago
bunnei 22ad9094e6 config: Add option for specifying screen resolution scale factor. 9 years ago
bunnei b5eac78b43 Merge pull request #2410 from Subv/sleepthread
Don't yield execution in SleepThread(0) if there are no available threads to run
9 years ago
bunnei 59f4f1d7ff Merge pull request #2396 from Subv/sema_acquire
Kernel/Semaphore: Fixed a regression in semaphore waits.
9 years ago
Hyper f0199a17f6 Kernel: Fix SharedMemory objects always returning error when addr = 0 (#2404)
Closes #2400
9 years ago
bunnei 1c792389e6 Merge pull request #2408 from Subv/priority_boosting
Kernel: Removed the priority boost code for starved threads.
9 years ago
Subv fc2266130b Kernel: Don't attempt to yield execution in SleepThread(0) if there are no available threads to run.
With this we avoid an useless temporary deschedule of the current thread.
9 years ago
Subv 5e2a8ebabf Kernel: Remove some unused functions. 9 years ago
Subv 933df2606a Kernel: Removed the priority boost code for starved threads.
After hwtesting and reverse engineering the kernel, it was found that the CTROS scheduler performs no priority boosting for threads like this, although some other forms of scheduling priority-starved threads might take place.

For example, it was found that hardware interrupts might cause low-priority threads to run if the CPU is preempted in the middle of an SVC handler that deschedules the current (high priority) thread before scheduling it again.
9 years ago
Subv e52ca85711 Kernel: Implemented Pulse event and timers.
Closes #1904
9 years ago
Subv 4251eb26ec Kernel/Semaphore: Fixed a regression in semaphore waits.
The regression was caused by a missing check in #2260.

The new behavior is consistent with the real kernel.
9 years ago
Sebastian Valle f20d872643 Merge pull request #2393 from Subv/synch
Kernel: Mutex priority inheritance and synchronization improvements.
9 years ago
Subv dda4ec93be Kernel: Add some asserts to enforce the invariants in the scheduler. 9 years ago
Subv 7f1dca8cd2 Kernel: Remove a thread from all of its waiting objects' waiting_threads list when it is awoken.
This fixes a potential bug where threads would not get removed from said list if they awoke after waiting with WaitSynchronizationN with wait_all = false
9 years ago
Subv fd95b6ee26 Kernel: Remove Thread::wait_objects_index and use wait_objects to hold all the objects that a thread is waiting on. 9 years ago
Subv cef5f45de2 Kernel: Use different thread statuses when a thread calls WaitSynchronization1 and WaitSynchronizationN with wait_all = true.
This commit removes the overly general THREADSTATUS_WAIT_SYNCH and replaces it with two more granular statuses:

THREADSTATUS_WAIT_SYNCH_ANY when a thread waits on objects via WaitSynchronization1 or WaitSynchronizationN with wait_all = false.

THREADSTATUS_WAIT_SYNCH_ALL when a thread waits on objects via WaitSynchronizationN with wait_all = true.
9 years ago
Subv d3ff5b91e1 Kernel/Mutex: Propagate thread priority changes to other threads inheriting the priority via mutexes 9 years ago
Subv b6a0355568 Kernel/Mutex: Update a mutex priority when a thread stops waiting on it. 9 years ago
Subv 7abf185390 Kernel/Mutex: Implemented priority inheritance.
The implementation is based on reverse engineering of the 3DS's kernel.

A mutex holder's priority will be temporarily boosted to the best priority among any threads that want to acquire any of its held mutexes.
When the holder releases the mutex, it's priority will be boosted to the best priority among the threads that want to acquire any of its remaining held mutexes.
9 years ago
Subv e6a7723f2f Kernel: Object ShouldWait and Acquire calls now take a thread as a parameter.
This will be useful when implementing mutex priority inheritance.
9 years ago
Subv 38a90882a4 Kernel/Synch: Do not attempt a reschedule on every syscall.
Not all syscalls should cause reschedules, this commit attempts to remedy that, however, it still does not cover all cases.
9 years ago
Jonathan Hao c18cb1b192 Fix some warnings (#2399) 9 years ago
Yuri Kunde Schlesner e2de82543b Merge pull request #2382 from mailwl/nfc
Service/NFC: stub GetTagInRangeEvent
9 years ago
Lectem ee6e88fdb5 fix comments alignment 9 years ago
Sebastian Valle f7dd8d5e81 Merge pull request #2386 from bunnei/fix-bg-color
config: SDL: Move background color setting to correct section.
9 years ago
mailwl f2985f7080 Service/NFC: stub GetTagInRangeEvent
Fix Fatal Error in Mini-Mario & Friends - amiibo Challenge
9 years ago
mailwl c6f4b93f2e Service/AC: add ac:i service 9 years ago
bunnei 02b4b2ed6e config: SDL: Move background color setting to correct section. 9 years ago
bunnei f556d6ee90 Merge pull request #2240 from wwylele/auto-region
Config: auto-select region and language
9 years ago
wwylele d7d40b3c56 Frontend: make motion sensor interfaced thread-safe 9 years ago
bunnei 2f746e9946 Merge pull request #2367 from JayFoxRox/lighting-lut-quickfix
Lighting LUT Quickfix
9 years ago
wwylele f927beb5e2 Core: remove unused hle.cpp 9 years ago
Lectem f91c51467a move Pop methods out of class body 9 years ago
Lectem 8baae9d982 IPC helpers example 9 years ago
Lectem 8f2b642415 IPC helpers 9 years ago
wwylele bcf9d20d57 Frontend: emulate motion sensor 9 years ago
wwylele 6479f63091 Common: add Quaternion 9 years ago
wwylele 2e6d8e1321 vector math: add implementation of Length and Normalize 9 years ago
wwylele 55f5d0f777 MathUtil: add PI constant 9 years ago
wwylele 2a069e76a5 Common::Event: add WaitUntil 9 years ago
Jannik Vogel 6ed4206f87 Minor cleanup in GLSL code 9 years ago
Jannik Vogel 88f409aec9 Offset lighting LUT samples correctly 9 years ago
wwylele fe2ed4bf72 Core: reset cpu_core in Shutdown to make IsPoweredOn work properly 9 years ago
bunnei 51dd13b8a0 Merge pull request #2369 from MerryMage/core-frontend
core: Move emu_window and key_map into core
9 years ago
Yuri Kunde Schlesner 56e4066f4f Merge pull request #2370 from wwylele/where-is-my-shared-font
file_util: fix missing sysdata path
9 years ago
wwylele 488b7a4041 file_util: fix missing sysdata path 9 years ago
MerryMage 64f98f4d0f core: Move emu_window and key_map into core
* Removes circular dependences (common should not depend on core)
9 years ago
mailwl 069a88dad7 Service/NWM: add nwm services 9 years ago
bunnei 76890672a0 Merge pull request #2366 from MerryMage/MemoryReadCode
arm_dynarmic: Provide MemoryReadCode callback
9 years ago
bunnei aa47af7fb6 Merge pull request #2343 from bunnei/core-cleanup
Core: Top-level consolidate & misc cleanup
9 years ago
MerryMage f8cf87ce34 arm_dynarmic: Provide MemoryReadCode callback
Change of interface in dynarmic 36082087ded632079b16d24137fdd0c450ce82ea
9 years ago
bunnei 17d740299a Merge pull request #2285 from mailwl/csnd-format
csnd:SND: Reformat source code
9 years ago
bunnei 8b1e269e58 ThreadContext: Move from "core" to "arm_interface". 9 years ago
bunnei e26fbfd1d7 core: Replace "AppCore" nomenclature with just "CPU". 9 years ago
bunnei 7623957f80 Merge pull request #2361 from lioncash/disasm
disassembler: Remove mutable specifier from breakpoints member variable
9 years ago
bunnei 5ac5cbeab7 Address clang-format issues. 9 years ago
bunnei 4fc8b8229e core: Remove HLE module, consolidate code & various cleanups. 9 years ago
bunnei 232ef55c1a core: Consolidate core and system state, remove system module & cleanups. 9 years ago
bunnei 707cc66362 file_util: Remove unused paths. 9 years ago
bunnei 198b6c9bdd core: Consolidate top-level system state into a singleton. 9 years ago
bunnei 81e22ae8c7 loader: Remove duplicate docstrings. 9 years ago
Lioncash 8309d0dade citra-qt: Move graphics debugging code into its own folder
Keeps all graphics debugging stuff from cluttering up the root debugger
folder
9 years ago
Lioncash f2c307557a disassembler: Remove mutable specifier from breakpoints member variable
Breakpoints has been const correct with regards to what the
DisassmblerModel needs for quite a while now.
9 years ago
bunnei 29564d73bd Merge pull request #2319 from yuriks/profile-scopes
VideoCore: Make profiling scope more representative
9 years ago
bunnei c4491352b3 Merge pull request #2357 from lioncash/ui
citra-qt: Move bits of constructor behavior to named functions
9 years ago
Lioncash cc1f2c131b citra-qt: Move bits of constructor behavior to named functions
Makes the initialization process a tad easier to grok,
since the constructor isn't just a glob of random unrelated behaviors.
9 years ago
Albin Bernhardsson ddec9cb369 Use GL_TRUE when setting color_mask 9 years ago
bunnei 3a1eaf2efc Merge pull request #2318 from yuriks/trace-opt
VideoCore: Inline IsPicaTracing
9 years ago
bunnei dac86b61ee Merge pull request #2351 from CaptV0rt3x/master
Fixed game_list focus issue.
9 years ago
bunnei 4c45611a2b Merge pull request #2347 from citra-emu/revert-2321-flush-pages
Revert "Memory: Always flush whole pages from surface cache"
9 years ago
CaptV0rt3x 393a0f99da line fixup for travis ci 9 years ago
Vamsi Krishna 77f4743199 screen swap - Hotkey mapping 9 years ago
Vamsi Krishna 0db22eadd5 Fixed GPLv2 license text in the start. 9 years ago
Vamsi Krishna 27217c621b Fixed game_list focusing issue.
added line render_window->setFocus();
9 years ago
bunnei 4798b1d04d Revert "Memory: Always flush whole pages from surface cache" 9 years ago
wwylele 5728e42634 Thread: remove the thread from the thread list when exiting 9 years ago
Yuri Kunde Schlesner 2ca548bbe5 Merge pull request #2335 from yuriks/shader-refactor
Misc. Shader refactors
9 years ago
bunnei d30d6f81aa Merge pull request #2303 from freiro/citra-qt_missing_sdl2_dll
Copy SDL2.dll when compiling citra-qt with msvc
9 years ago
bunnei ca5a8966ac Merge pull request #2337 from lioncash/gdb
gdbstub: const correctness changes
9 years ago
Merry acc83a1c32 Merge pull request #2322 from MerryMage/ctx-mnu
game_list: Add a context menu with "Open Save Location"  option
9 years ago
wwylele 4c9b80cee3 Kernel: remove object's waiting thread if it is dead 9 years ago
Lioncash 38a964735f gdbstub: const correctness changes
Also uses size_t as the length indicator type, as is common with buffers.
9 years ago
Yuri Kunde Schlesner c135317de1 VideoCore/Shader: Extract DebugData out from UnitState 9 years ago
Yuri Kunde Schlesner 6e7e767645 Remove unnecessary cast 9 years ago
Yuri Kunde Schlesner b5e3599704 VideoCore/Shader: Extract evaluate_condition lambda to function scope 9 years ago
Yuri Kunde Schlesner 960578f4e1 VideoCore/Shader: Extract call lambda up a scope and remove unused param 9 years ago
Yuri Kunde Schlesner e4e962bc7c VideoCore/Shader: Remove dynamic control flow in (Get)UniformOffset 9 years ago
Yuri Kunde Schlesner d27cb1dedc VideoCore/Shader: Move DebugData to a separate file 9 years ago
bunnei cda7210fad Merge pull request #2260 from Subv/scheduling
Threading: Reworked the way our scheduler works.
9 years ago
bunnei a89471621b Merge pull request #2316 from endrift/macos-gcc
Common: Fix gcc build on macOS
9 years ago
Yuri Kunde Schlesner 2427a5e976 Merge pull request #2328 from wwylele/fix-trace
Fix debug build from #2249
9 years ago
Yuri Kunde Schlesner 7524a55133 Merge pull request #2332 from lioncash/gdb
gdbstub: Remove global variable from public interface
9 years ago
Yuri Kunde Schlesner 63e8174caa Merge pull request #2320 from mailwl/cecd-update
Service/CECD: Add cecd:ndm service
9 years ago
bunnei 9dc43d3720 Merge pull request #2331 from lioncash/trunc
hid: Get rid of a double -> float truncation warning
9 years ago
wwylele a7cd452ea1 FS: fix debug build from #2249 9 years ago
Lioncash ba20dd9b61 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.
9 years ago
Sebastian Valle 3e4cc6b3d2 Merge pull request #2330 from lioncash/pragma
core: Add missing #pragma once directives where applicable
9 years ago
Lioncash 3faa675d6b hid: Get rid of a double -> float truncation warning
float literals need to have the 'f' prefix.
9 years ago
Lioncash 2f3c1bdfb4 core: Add missing #pragma once directives where applicable 9 years ago
Lioncash d467b5ce4f act: Fix docstring typo
These aren't the AM services.
9 years ago
Yuri Kunde Schlesner 1abb98202c Merge pull request #2325 from yuriks/fix-index
shader_jit_x64: Use LOOPCOUNT_REG as a 64-bit reg when indexing
9 years ago
bunnei bdb6956879 Merge pull request #2314 from mailwl/account
Service/ACT: move ACT services to folder
9 years ago
MerryMage 5a4e1b469d main: Open folder when open save folder location context menu is clicked 9 years ago
MerryMage f50dcc88bf game_list: Implement context menu for items in list
* Add a context menu with a "Open Save Data Location" action
9 years ago
MerryMage 351b5d23f4 loader: Implement ReadProgramId 9 years ago
Yuri Kunde Schlesner fb9e856b91 shader_jit_x64: Use LOOPCOUNT_REG as a 64-bit reg when indexing 9 years ago
MerryMage 40b0ea1086 archive_source_sd_savedata: Add static method to get a specific save data path 9 years ago
Yuri Kunde Schlesner f2b9be9bd3 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.
9 years ago
mailwl 7f27be1521 Service/CECD: Add cecd:ndm service 9 years ago
Yuri Kunde Schlesner ac9f937477 VideoCore: Make profiling scope more representative 9 years ago
Yuri Kunde Schlesner 945f554b84 VideoCore: Inline IsPicaTracing
Speeds up ALBW main menu slightly (~3%)
9 years ago
Yuri Kunde Schlesner f00ada3363 VideoCore: Eliminate an unnecessary copy in the drawcall loop 9 years ago
Yuri Kunde Schlesner bde54333df Merge pull request #2309 from yuriks/shader-jit-xbyak
Convert shader JIT to Xbyak
9 years ago
Yuri Kunde Schlesner 905fc92ce1 Merge pull request #2249 from Subv/sessions_v3
Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication.
9 years ago
Yuri Kunde Schlesner 5ff3206207 shader_jit_x64: Use Reg32 for LOOP* registers, eliminating casts 9 years ago
Yuri Kunde Schlesner f4e98ecf3f VideoCore: Convert x64 shader JIT to use Xbyak for assembly 9 years ago
Subv 016307ae65 Fixed the codestyle to match our clang-format rules. 9 years ago
Subv 5b1edc6ae7 Fixed the codestyle to match our clang-format rules. 9 years ago
mailwl 5dea1faedd Service/ACT: move ACT services to folder 9 years ago
freiro b7b2627b37 Modularized Qt and SDL file copying
Now cmake relies on two submodules to copy the libraries in the proper folders
9 years ago
Jeffrey Pfau fb952c399e Common: Fix gcc build on macOS 9 years ago
JamePeng ac2ed18a3b Minor amendment of GSP_GPU::ImportDisplayCaptureInfo code 9 years ago
Yuri Kunde Schlesner 7eeb6d9608 Merge pull request #2312 from lioncash/guard
time_stretch: Add missing #pragma once directive
9 years ago
Lioncash efcab1e918 time_stretch: Add missing #pragma once directive 9 years ago
mailwl 1238e48c58 csnd:SND reformat source code 9 years ago
Sebastian Valle 0f28ed9ce8 Merge pull request #2275 from jbeich/pthread
Unbreak QT-only build after 75ee2f8c67
9 years ago
Sebastian Valle 2589c30cbe Merge pull request #2267 from JayFoxRox/fix-mingw-cc
Support mingw cross-compilation
9 years ago
mailwl e53cd12c42 APT::GetStartupArgument: force clear startup argument 9 years ago
freiro 031fc3a460 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.
9 years ago
Lioncash d0e4d1182b citra-qt: Make constructors explicit where applicable 9 years ago
freiro 942f70951d Removed redundant Qt check and other fixes
This removes a redundant check and moves part of the code to a separate
function.
9 years ago
Lioncash 327b23e4ce citra-qt: Add missing #pragma once directives 9 years ago
Lioncash 3bbd35dde9 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.
9 years ago
Lioncash 7402001787 game_list: Make the constructor explicit 9 years ago
Lioncash db33d7668e game_list: Make the AddEntry argument a const reference
appendRow takes a QList by const reference, so it doesn't need to be
modifiable.
9 years ago
Lioncash aa05d36823 game_list: Replace 0 literals with nullptr 9 years ago
Lioncash dd4582f85d game_list: Use QT5's new event connection syntax
Makes for more compact code in most places.
9 years ago
Lioncash fd3d56740e 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.
9 years ago
freiro 143bc8713d [MSVC] Copy SDL2.dll to build folder
CMake now copies SDL2.dll when compiling citra with citra-qt as a target
on MSVC.
9 years ago
Yuri Kunde Schlesner 926e18d25c Merge pull request #2300 from lioncash/qt
graphics_cmdlist: Minor changes
9 years ago
Lioncash 4e7092881f graphics_cmdlists: Get rid of variable shadowing 9 years ago
Emmanuel Gil Peyrot 643e590b5c Core: Add a forgotten #include <cstring> for memcpy. 9 years ago
Lioncash 1e5644935d graphics_cmdlists: Get rid of an unused variable 9 years ago
Lioncash f1ee7e4e0e graphics_cmdlists: Make LoadTexture and TextureInfoWidget src arguments const 9 years ago
Lioncash dcb8113347 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.
9 years ago
Lioncash 963aedd8cc 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.
9 years ago
MerryMage a2d474386c 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.
9 years ago
Subv 406907d570 Properly remove a thread from its wait_objects' waitlist when it is awoken by a timeout. 9 years ago
Yuri Kunde Schlesner 42edd7911e Merge pull request #2296 from MerryMage/auto_is_auto
audio_core: SelectSink should default to auto if sink_id is invalid
9 years ago
MerryMage cef0f5b5a7 audio_core: SelectSink should default to auto if sink_id is invalid 9 years ago
bunnei 6edb024d38 Merge pull request #2291 from lioncash/svc
service: Add the cfg:nor service
9 years ago
Subv ebbb55ec8f Moved the HLE command buffer translation task to ServerSession instead of the HLE handler superclass. 9 years ago
Subv deb83c9fc5 Kernel/IPC: Small codestyle cleanup 9 years ago
Subv 17b29d8865 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.
9 years ago
Lioncash a2d69adad1 service: Add cfg:nor service 9 years ago
Yuri Kunde Schlesner a5cd925a95 Merge pull request #2292 from lioncash/bool
ptm: Use boolean instead of integral value
9 years ago
Lioncash 934b8ffcf8 ptm: Use boolean instead of integral value
The third parameter of Write is actually a bool type, not an int.
9 years ago
Lioncash 823d58ac9b service: Drop '_Interface' from cfg service names 9 years ago
Yuri Kunde Schlesner 18bf4acb9b Merge pull request #2287 from lioncash/svc
service: Minor PTM changes
9 years ago
Sebastian Valle 998390ac1a Merge pull request #2280 from Subv/citrace_size
Fixed the gpu command list size when creating CiTraces.
9 years ago
Subv 5719467add Fixed the gpu command list size when creating CiTraces. 9 years ago
Subv 386112da32 Added a framework for partially handling Session disconnections.
Further implementation will happen in a future commit.

Fixes a regression.
9 years ago
Subv f9bcf89510 Use std::move where appropriate. 9 years ago
Lioncash 007815647c service: Add the ptm:s service
3dbrew documents this as being the exact same as ptm:sysm
9 years ago
Lioncash 56656b75ab service: Add common ptm:u commands to other ptm services
3dbrew indicates that all services have access to these commands
except for ptm:sets.
9 years ago
Lioncash cd778cf991 service: Drop '_Interface' in ptm service class names
Inheriting from Service::Interface makes this obvious.
9 years ago
Lioncash 41c03f481a service: Add ptm::gets and ptm::sets services 9 years ago
Yuri Kunde Schlesner 1840685ee8 Merge pull request #2286 from lioncash/svc
service: Add mvd and qtm services
9 years ago
Yuri Kunde Schlesner 6ad2a7aeb2 Merge pull request #2274 from degasus/master
Drop framebuffer completeness check.
9 years ago
Lioncash 2061d2014d service: Add mvd and qtm services
Adds the two New3DS-only modules.

3dbrew was used for command information.
9 years ago
Yuri Kunde Schlesner d098d941d7 Merge pull request #2284 from lioncash/svc
service: Add nfc services
9 years ago
Yuri Kunde Schlesner 63d3dd5262 Merge pull request #2277 from lioncash/explicit
file_sys: Make a few single-argument constructors explicit
9 years ago
Lioncash e8a960f6a1 service: Add nfc services
3dbrew was used for the command information.
9 years ago
Yuri Kunde Schlesner 43558dc40a Merge pull request #2283 from lioncash/svc
service: Update function tables
9 years ago
Yuri Kunde Schlesner bc48e2bda6 Merge pull request #2281 from lioncash/applet
applet: minor interface changes
9 years ago
Lioncash a09602d6f6 ssl_c: Update function table
Updated based off information from 3dbrew
9 years ago
Lioncash ab900f8a25 ptm: Update ptm_sysm function table
Updated based off information from 3dbrew.
9 years ago
Lioncash c67dae54b9 pm_app: Update function table
Updated based off information from 3dbrew.
9 years ago
Lioncash 9f2ad62084 nwm_uds: Update function table
Updated based off information from 3dbrew.
9 years ago
Lioncash 4a150a8f3c nim: Update function tables
Updated based off information from 3dbrew.
9 years ago
Lioncash c4bcd5c4ac http_c: Update function table
Updated based off information from 3dbrew.
9 years ago
Lioncash 65d94857c3 gsp_lcd: Update function table
Updated based off information from 3dbrew.
9 years ago
Lioncash 006e6a7f4a fs_user: Update function table
Updated based off information from 3dbrew.
9 years ago
Lioncash 093aa35c87 dlp_srvr: Update function table 9 years ago
Lioncash 733c8890aa cfg: Update function tables
Updated based off information from 3dbrew
9 years ago
Lioncash 0229983ff2 cecd_u: Update function table
Updated based off information from 3dbrew.
9 years ago
Lioncash 4ebdb7e3e1 boss_p: Update function table 9 years ago
Lioncash 74b3f0faa7 act: Update function tables
Updated based off information from 3dbrew.
9 years ago
Lioncash 258694996f apt: Update apt function tables
Updated based off information from 3dbrew.
9 years ago
Lioncash 26ea6b9546 Update AM service function tables
Updated based off information from 3dbrew.
9 years ago
Lioncash 5e9f1ec096 file_sys: Make a few single-argument constructors explicit
Prevents implicit conversions.
9 years ago
Lioncash f1709b8b59 applet: Move common IsRunning underlying variable to the Applet class
Gets rid of basic duplication.
9 years ago
Lioncash 6f71fb2954 applet: Make virtual destructor defaulted 9 years ago
Lioncash d3f4fd1777 applet: Make constructor protected
Considering the class is abstract, there's no need to make the constructor
public.
9 years ago
Markus Wick d0d49bb951 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
9 years ago
wwylele 84e78790ab Config: auto-select region and language 9 years ago
Jan Beich 774d3112af tests: add missing libcore dependency after 75ee2f8c67
$ (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)
9 years ago
bunnei 8d529a5cda Merge pull request #2232 from wwylele/other-save
FS: implement archives for other game save data
9 years ago
Subv 7cde5b83bc Use boost remove_erase_if instead of the erase-remove idiom 9 years ago
Subv 1f286b72a1 Improved the algorithm for GetHighestPriorityReadyThread. 9 years ago
emmauss c4e4fa53d9 Implement Frame rate limiter (#2223)
* implement frame limiter

* fixes
9 years ago
Jannik Vogel fc4591fa49 ASSERT that shader was linked successfully 9 years ago
Jannik Vogel 4088afe23c Report shader uniform block size in case of mismatch 9 years ago
Jannik Vogel 0edc986861 Print broken shader code to log 9 years ago
Subv c93c5a72bb Return an error code when connecting to a saturated port.
The error code was taken from the 3DS kernel.
9 years ago
Subv 61a2fe8c3b 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. 9 years ago
Jannik Vogel 0aee903ada gdbstub: Remove unused include 9 years ago
Jannik Vogel d2c39bdb29 Unify Windows ICON resource name 9 years ago
Jannik Vogel 45d941d62e Support mingw cross-compile 9 years ago
Subv 00f0c77570 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.
9 years ago
Subv 29d809b6e1 Kernel: Remove the Redirection handle type. 9 years ago
Subv dd8887c8cf KServerPorts now have an HLE handler "template", which is inherited by all ServerSessions created from it. 9 years ago
Subv bdad00c73f Threading: Added some utility functions and const correctness. 9 years ago
Yuri Kunde Schlesner efc8179747 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.
9 years ago
Yuri Kunde Schlesner 8a1f96011d OpenGL: Non-zero stride only makes sense for linear buffers 9 years ago
Yuri Kunde Schlesner 2600633b89 OpenGL: Ensure framebuffer binding is restored if completion check fails 9 years ago
Yuri Kunde Schlesner ba7f213655 OpenGL: Fix DisplayTransfer accel when input width != output width
Fixes #2246, #2261
9 years ago
Yuri Kunde Schlesner 4f0f88bc6a Merge pull request #2259 from JayFoxRox/fix-fallback
shader_jit: Fix non-SSE4.1 path where FLR would not truncate
9 years ago
Subv 8634b8cb83 Threading: Reworked the way our scheduler works.
Threads will now be awakened when the objects they're waiting on are signaled, instead of repeating the WaitSynchronization call every now and then.

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

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

See https://gist.github.com/Subv/02f29bd9f1e5deb7aceea1e8f019c8f4 for a more detailed description of how the real kernel handles rescheduling.
9 years ago
Jannik Vogel 2d8097eecc shader_jit: Fix non-SSE4.1 path where FLR would not truncate 9 years ago
Yuri Kunde Schlesner 4d5e42240c clang-format: Fix coding style 9 years ago
Subv 2ce61344d6 Declare empty ServerSession and ClientSession constructors as default. 9 years ago
Jannik Vogel e2cb7d7833 shader_jit: Load LOOPCOUNT_REG and LOOPINC 4 bit left-shifted 9 years ago
Subv ed210c32b3 Threads do not wait for the server endpoint to call AcceptSession before returning from a ConnectToPort or GetServiceHandle call. 9 years ago
Jannik Vogel 8efeb6ee2b Remove unused version.h 9 years ago
Subv 2eceee3a4c Fixed the rebase mistakes. 9 years ago
Subv 009b15b3aa 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.
9 years ago
Subv c5e7e0fa26 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.
9 years ago
Subv c19afd2118 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.
9 years ago
Subv 0a33d915f8 fixup! Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication. 9 years ago
Subv 073653e858 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.
9 years ago
Yuri Kunde Schlesner 68c00ee771 Merge pull request #2228 from freiro/winver_fix
Move WINVER definition to cmake and a bit of cleanup
9 years ago
freiro 0c22e52f52 WINVER definition moved to CMake and cleanup 9 years ago
Subv e3e4f27447 ClangFormat: Fixed the clang-format errors 9 years ago
mailwl 5b136aa211 Set client SDK version to Service APIs 9 years ago
Subv aea9a91100 Build: Fixed a few warnings. 9 years ago
wwylele 589b642790 FileSys: Implement OtherSaveData 9 years ago
wwylele b25f19ac26 FS: add missing MediaType 9 years ago
wwylele 5af117e00c FileSys: abstract SD save data archive source 9 years ago
Yuri Kunde Schlesner 3174bfd50c Merge pull request #2196 from Subv/system_mode
Kernel/Loader: Grab the system mode from the NCCH ExHeader.
9 years ago
Yuri Kunde Schlesner e279a6955e Merge pull request #2222 from linkmauve/die-frameskip-die
Remove the broken frame_skip option
9 years ago
Sebastian Valle 4ba5acdaff Merge pull request #2132 from wwylele/fix-fs-err
Correct FS error codes & add path boundary checks
9 years ago
Subv d171409f29 Kernel/Loader: Grab the system mode from the NCCH ExHeader.
3dsx and elf files default to system mode 2 (96MB allocated to the application).

This allows Home Menu to boot without modifications.
Closes #1849
9 years ago
Emmanuel Gil Peyrot 0820c99462 GPU: Remove the broken frame_skip option.
Fixes #1960.
9 years ago
Subv 4623415026 RasterizerGL: Use GL_TRUE and 0xFF in the stencil and depth masks instead of simply true and -1 9 years ago
Subv 743b0e71d9 Rasterizer/Memfill: Set the correct stencil write mask when clearing the stencil buffer. 9 years ago
Sebastian Valle d3b7f57b2b Merge pull request #2168 from mailwl/mic
MIC_U: Stub service funcions
9 years ago
Yuri Kunde Schlesner a0b30189e5 Merge pull request #2185 from freiro/local_folder
Change "user" folder default location to AppData/Roaming/ on Windows systems
9 years ago
freiro 593ec7fa74 Move to AppData/Roaming/Citra/ 9 years ago
MerryMage 27be446049 dynarmic: Add ticks based on ticks executed, not ticks requested 9 years ago
freiro 972b289c78 Removed /user/ from path 9 years ago
mailwl ec15e485c9 Output parameters to log 9 years ago
mailwl d4cadf11fc MIC_U: Stub service funcions 9 years ago
James Rowe bbe57a66ca Expose page table to dynarmic for optimized reads and writes to the JIT 9 years ago
freiro 79317b63d9 Switch to AppData/Roaming 9 years ago
jphalimi 82210ab480 Cache Vertices instead of Output registers (#2165)
This patch brings +3% performance improvement on average. It removes
ToVertex() as an important hotspot of the emulator.
9 years ago
pippo2931 0c9c97e5ea Bravely Default/Second stuck #1822 (#2188)
* Bravely Default/Second stuck #1822
CancelLibraryApplet stub

* Log parameter.

* Taking care of comments

* Sync with 3DBrew

* White space ?

* lower case
9 years ago
Yuri Kunde Schlesner ef421696e3 Merge pull request #2186 from wwylele/config9
cfg: add config block 0x00090000
9 years ago
Yuri Kunde Schlesner fefa645ec7 Merge pull request #1654 from JamePeng/errdisp
Rework the code of err:f service!
9 years ago
wwylele 75affa13f7 Fix format error from #2195 9 years ago
freiro 5dd31f204a Improve verbosity of audio errors with SDL_GetError() 9 years ago
bunnei 2de470c9b2 Merge pull request #2195 from Subv/factor_check
GPU/CiTrace: Avoid calling GetTextures() when not necessary.
9 years ago
bunnei f1798c1db6 Merge pull request #2193 from Subv/pulse_events
Kernel/Events: Log an error when trying to create Pulse events and timers
9 years ago
Subv 1323ab2f5f 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
9 years ago
Sebastian Valle 6c8857d2bb Merge pull request #2192 from Subv/applet_enums
APT/Applets: Renamed the members of the SignalType enum.
9 years ago
Subv 050e9be15b GPU/CiTrace: Avoid calling GetTextures() when not necessary. 9 years ago
James Rowe f68f37b520 Merge pull request #2194 from jroweboy/extremely-minor-clangformat-change
Minor formatting change
9 years ago
James Rowe 19acec351c Minor formatting change 9 years ago
Subv 4ab8692475 Kernel/Events: Log an error when trying to create Pulse events and timers.
Related to #1904
9 years ago
Subv d7ab4fd53d APT/Applets: Renamed the members of the SignalType enum.
Names now make sense and match 3dbrew.
9 years ago
wwylele 282195b450 tests: add a work-around for macOS linking error 9 years ago
wwylele d7d6975af0 FileSys: rename SaveDataCheck archive to NCCH archive
According to the observation from game and 3dbrew "Used for accessing general NCCH data"
9 years ago
wwylele f775a3781b FileSys: remove unused DiskArchive
All "subclasses" of DiskArchive are splitted out. This class is useless
9 years ago
wwylele 5c6e13a171 PTM & CFG: use the correct path and error code according to the new FileSys policy 9 years ago
wwylele 0647f86649 FileSys: w->rw permission lift only happens in SDMC archive 9 years ago
wwylele 0987783699 FileSys: add SDMCWriteOnlyArchive 9 years ago
wwylele 93aa14e345 FileSys: add SDMCArchive
Now DiskArchive only serves for SDMC, then it should be just a "SDMCArchive"
9 years ago
wwylele a879984c06 FileSys: add ExtSaveDataArchive
ExtSaveData is more similar to SaveData, so let it be a subclass of SaveData
9 years ago
wwylele 7166fdc490 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.
9 years ago
wwylele 9a0405858a FileSys: remove Open from FileBackend
Same as directory, file shouldn't expose Open either.
9 years ago
wwylele 0e754875d1 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
9 years ago
wwylele 75ee2f8c67 FileSys: add PathParser 9 years ago
freiro 3d75e3cd07 Return by value and other fixes 9 years ago
freiro 29bb82cb8e Win32 move default user folder location to AppData 9 years ago
wwylele dd5c15abd0 cfg: add config block 0x00090000 9 years ago
bunnei fb13bfe693 Merge pull request #2172 from jroweboy/fix-mingw
Fix mingw compilation support
9 years ago
bunnei 5a31552764 Merge pull request #1753 from jroweboy/frame_layouts
Support additional screen layouts.
9 years ago
James Rowe c3ea6f4ddb Add mingw compile support 9 years ago
James Rowe 793339b73a Round the rectangle size to prevent float to int casting issues
And other minor style changes
9 years ago
Pringo 51750dc8f5 Minor Menu Fixes 9 years ago
James Rowe d9305b0a07 Add default hotkey to swap primary screens.
Also minor style changes
9 years ago
James Rowe 5f72aade77 Rework frame layouts to use a max rectangle instead of hardcoded calculations 9 years ago
SonofUgly e40c23463f LargeFrameLayout + Swapped
Make small screen stay at 1x, and large screen maintain its aspect ratio.
9 years ago