Commit graph

162 commits

Author SHA1 Message Date
LittleWhite
86e29ac281 Stop emulation when render window is closed 2015-09-07 20:34:39 +02:00
Yuri Kunde Schlesner
cd817be922 citra-qt: Move system shutdown to run inside EmuThread
This stops (for some reason sporadic) crashes and OpenGL errors during
shutdown, when the OpenGL renderer tries to clean up objects from the
UI thread, which has no OpenGL context active.
2015-09-03 15:09:50 -03:00
Yuri Kunde Schlesner
68eb197494 Increase required OpenGL version to 3.3
This gives us several niceties such as Sampler Objects, shader attribute
locations and Timer Queries.
2015-08-30 08:45:57 -03:00
Yuri Kunde Schlesner
0fcabd2b11 Integrate the MicroProfile profiling library
This brings goodies such as a configurable user interface and
multi-threaded timeline view.
2015-08-24 22:16:28 -03:00
Lioncash
5df3afd522 citra-qt: Adjust initializer list order
Silences a warning.
2015-07-29 12:03:59 -04:00
James Rowe
1bc7829ee9 Move input values into an array 2015-07-27 21:41:21 -06:00
aroulin
7ccce98389 Qt: Fix disassembly widget stepping 2015-07-13 17:27:12 +02:00
Emmanuel Gil Peyrot
45c4781544 CitraQt: Cleanup includes. 2015-06-28 00:36:54 +01:00
Emmanuel Gil Peyrot
b1503b2020 Remove every trailing whitespace from the project (but externals). 2015-05-29 21:59:29 +01:00
Yuri Kunde Schlesner
c9244a03c7 Qt: Silence a bogus warning printed when using the debug runtime
The Qt debug runtime prints a bogus warning on the console if you
haven't called makeCurrent since the last time you called swapBuffers.
This presumably means something if you're using QGLWidget the "regular"
way, but in our multi-threaded use case is harmless since we never call
doneCurrent in the rendering thread.
2015-05-23 02:27:27 -03:00
tfarley
16fbba3c2a MakeCurrent race condition fix 2015-05-22 15:51:33 -07:00
James Rowe
a406207cd8 Use condition var to properly pause the CPU thread
Adds support for threaded pausing so citra doesn't spin wait on pause
2015-05-18 08:15:57 -06:00
Yuri Kunde Schlesner
e1fbac3ca1 Common: Remove common.h 2015-05-07 15:45:22 -03:00
Tony Wasserka
7859b145cf Merge pull request #698 from Zaneo/clip_stylus_input
EmuWindow: Clip mouse input coordinates to emulated screen dimensions.
2015-05-02 19:15:03 +02:00
Zaneo
b8328593fe EmuWindow: Clip mouse input coordinates to emulated screen dimensions.
If the mouse position for a mouse move/drag would take it outside the emulated screen dimensions, clip the coordinates to
the emulated screen dimensions.
Qt and GLFW will report negative coordinates for mouse positions to the left, or above citra window. Added restriction
to mouse coordinates passed to touchmoved by Qt/GLFW to be greater or equal to zero.
2015-05-01 23:52:33 -04:00
bunnei
bc41de2131 Qt: Fixed a bug in shutdown procedure, various cleanups. 2015-05-01 18:35:51 -04:00
bunnei
43cf424907 Qt: Use signals for emu_thread start/stop and fix disasm widget. 2015-05-01 18:34:42 -04:00
bunnei
e4ea133717 Qt: Restructured to remove unnecessary shutdown event and various cleanups. 2015-05-01 18:27:07 -04:00
bunnei
28df8dbfeb Qt: Create emu thread on bootup, kill it on shutdown. 2015-05-01 18:27:00 -04:00
bunnei
d5665fea89 EmuThread: Remove unused filename attribute. 2015-05-01 18:26:59 -04:00
bunnei
762c1a9ff5 Qt: Move EmuThread ownership from render window to main window. 2015-05-01 18:26:58 -04:00
bunnei
d61b26b79f HID: Complete refactor of pad/touch input to fix threading issues. 2015-03-10 23:58:07 -04:00
bunnei
f213000cc4 Qt: Implemented EmuWindow touchpad support. 2015-03-10 18:05:18 -04:00
bunnei
9960c49c21 Set framebuffer layout from EmuWindow. 2015-03-07 17:21:19 -05:00
Emmanuel Gil Peyrot
aa64f69af0 Frontends, HID: Add New 3DS specific pad buttons, and stub the touch one. 2015-02-22 21:09:08 +01:00
archshift
1f109c6b49 Added HID_SPVR service and split HID_U implementation into service/hid/hid.xxx 2015-01-21 13:31:10 -08:00
Kingcom
2bbc12e6c3 citra-qt: Replace OnCpuStepped signal by new signals DebugModeEntered and DebugModeLeft 2015-01-11 21:22:51 +01:00
chrisvj
b0a14cfe7f citra-qt: Renamed all .hxx headers to .h 2015-01-06 04:51:54 -08:00
Yuri Kunde Schlesner
cdde76f2aa Frontends: Shutdown core when emulation is stopped 2015-01-04 01:04:46 -02:00
Yuri Kunde Schlesner
0600e2d8b5 Convert old logging calls to new logging macros 2014-12-13 02:08:02 -02:00
Tony Wasserka
2c71ec7052 Pica/DebugUtils: Add breakpoint functionality. 2014-12-09 16:37:34 +01:00
Rohit Nirmal
8a62423970 Change NULLs to nullptrs. 2014-12-03 12:57:57 -06:00
Emmanuel Gil Peyrot
739bb58c3a Remove tabs in all files except in skyeye imports and in generated GL code 2014-11-19 09:04:03 +00:00
Emmanuel Gil Peyrot
f5d38649c7 Remove trailing spaces in every file but the ones imported from SkyEye, AOSP or generated 2014-11-19 09:03:07 +00:00
Tony Wasserka
688a5c033e citra-qt: Small cleanup. 2014-11-18 13:16:02 +01:00
Tony Wasserka
182476c96a EmuWindow: Remove window title getters/setters.
The window title is none of the emulation core's business. The GUI code is free to put whatever it wants there.
Providing properly thread-safe window title getters and setters is a mess anyway.
2014-11-18 13:09:01 +01:00
Tony Wasserka
722ce22589 EmuWindow: Add support for specifying minimal client area sizes. 2014-11-18 13:09:01 +01:00
Tony Wasserka
bd8f491e4c Fixup EmuWindow interface and implementations thereof. 2014-11-18 13:09:01 +01:00
Kevin Hartman
221a9b023d Viewport scaling and display density independence
The view is scaled to be as large as possible, without changing the aspect, within the bounds of the window.
On "retina" displays, or other displays where window units != pixels, the view should no longer draw incorrectly.
2014-11-18 13:06:05 +01:00
bunnei
0fab380801 Citra-Qt: Use Core::RunLoop when not single stepping. 2014-11-11 19:53:47 -05:00
Yuri Kunde Schlesner
d72708c1f5 Add override keyword through the code.
This was automated using `clang-modernize`.
2014-10-26 16:18:05 -02:00
Yuri Kunde Schlesner
ac54cd13db OpenGL renderer: Request a forward compatible context in citra-qt
This should fix context creation on OS X. Also requests a core context on all platforms in Citra-GLFW, for consistency.
2014-10-12 14:39:02 +02:00
archshift
e6594f9f53 Added configuration file system.
Uses QSettings on citra-qt, and inih on citra-cli.
2014-10-07 15:09:37 -07:00
bunnei
5481115e71 Merge pull request #97 from archshift/cleanup
Small, general code cleanup
2014-09-13 22:58:58 -04:00
Kevin Hartman
02fd19b2f6 Added support for multiple input device types for KeyMap and connected Qt. 2014-09-12 01:15:14 -07:00
archshift
9c0efdb75b bootmanager::EmuThread: fixed initialization order 2014-09-07 12:09:02 -07:00
Sacha
1b1205cf73 Pass format to the QGLWidget and use atomic instead of mutex. 2014-08-25 03:42:52 +10:00
Sacha
b044510fa9 Fix EmuThread loop by ensuring it exits properly.
Note: There is a pre-existing issue with booting a new game in that it keeps the old EmuThread.
The GL code now supports this but the Core still doesn't.
2014-08-25 01:49:34 +10:00
Sacha
a3a70e56ac Fix the threading for GL Context in Qt5.
Connect the emu_thread start/finish to a moveContext slot.
2014-08-25 00:47:00 +10:00
archshift
d93dc81953 Revert "Removed redundant loop in EmuThread::run()" 2014-08-20 10:15:12 -07:00
archshift
9a4e58c370 Removed redundant loop in EmuThread::run() 2014-08-16 23:31:25 -07:00
archshift
6096b289b7 Bootmanager: changed filename to std::string 2014-08-14 23:59:31 -07:00
bunnei
2003ccf09d Qt: Removed unnecessary HW::Update. 2014-08-05 20:14:49 -04:00
bunnei
0aca202ae9 Loader: Moved elf and loader modules to a "loader" subdirectory. 2014-06-16 18:03:13 -04:00
bunnei
204c6bfeca Merge pull request #2 from archshift/issue-7-fix
Fixes issues with building Citra on OSX
2014-05-19 21:46:57 -04:00
archshift
034e3aabc8 Improved clarity and whitespace
Changed QGL version to 3,2 in order to be less restrictive, yet it should still change up to 4,1 on OSX on Qt5.
2014-05-19 15:21:55 -07:00
bunnei
265c770a9d updated how we call ARM core to make things much faster 2014-05-17 11:59:18 -04:00
archshift
704075f04a Fixed indents 2014-04-30 20:13:28 -07:00
archshift
3dad4e3b5c Sets OGL version for Qt; will only work with Qt5 2014-04-30 17:10:38 -07:00
Mathieu Vaillancourt
68a8594d04 Init window size from VideoCore. Start changing the default window behavior... 2014-04-12 19:04:33 -04:00
Mathieu Vaillancourt
ff4fe52bf6 Temporarily "fix" citra_qt for Windows 2014-04-10 20:51:32 -04:00
bunnei
63e46abdb8 got rid of 'src' folders in each sub-project 2014-04-08 19:25:03 -04:00
Renamed from src/citra_qt/src/bootmanager.cpp (Browse further)