Commit graph

136 commits

Author SHA1 Message Date
bunnei becb758a84 Merge pull request #1526 from bunnei/sdl-rgb8
SDL2: Explicitly use RGB8 color buffer.
2016-03-15 15:48:59 -04:00
MerryMage 317e795d35 citra: Shutdown cleanly if ROM load fails 2016-03-15 03:16:54 +00:00
bunnei 69a38e7b54 SDL2: Explicitly use RGB8 color buffer. 2016-03-14 21:59:16 -04:00
MerryMage 48366b1071 Config: Use unique_ptr instead of raw pointer 2016-03-02 14:25:06 +00:00
MerryMage ba2a54a9dd Dependencies: Remove GLFW, Add SDL2
citra: Remove GLFW, Add SDL2

FindSDL2: Do not CACHE SDL2_* variables if library is not found

EmuWindow_SDL2: Set minimal client area at initialisation time

EmuWindow_SDL2: Corrections

EmuWindow_SDL2: Fix no decorations on startup on OS X

cmake: windows_copy_files
2016-03-02 14:09:02 +00:00
MerryMage 8b00954ec7 AudioCore: Skeleton Implementation
This commit:
* Adds a new subproject, audio_core.
* Defines structures that exist in DSP shared memory.
* Hooks up various other parts of the emulator into audio core.

This sets the foundation for a later HLE DSP implementation.
2016-02-21 13:13:52 +00:00
polaris- a5ab8accc2 Handle changes pointed out in comments on PR 2015-10-22 00:11:25 -04:00
polaris- 2b7316a379 Remove unnecessary new lines, changed Deinit to Shutdown 2015-10-11 20:07:58 -04:00
polaris- 6ea428addf Toggle use_gdbstub in citra GLFW 2015-10-04 11:22:07 -04:00
polaris- 31dee93e84 Implement gdbstub 2015-10-04 11:16:59 -04:00
polaris- 5114d75647 Implement gdbstub 2015-09-19 22:28:02 -04:00
Yuri Kunde Schlesner 078969bdd0 CMake: Add option to download Qt and GLFW binaries over HTTP 2015-09-08 19:35:12 -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 a1a5570e97 Replace the previous OpenGL loader with a glad-generated 3.3 one
The main advantage of switching to glad from glLoadGen is that, apart
from being actively maintained, it supports a customizable entrypoint
loader function, which makes it possible to also support OpenGL ES.
2015-08-30 08:45:56 -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
bunnei 094ae6fadb Shader: Initial implementation of x86_x64 JIT compiler for Pica vertex shaders.
- Config: Add an option for selecting to use shader JIT or interpreter.
- Qt: Add a menu option for enabling/disabling the shader JIT.
2015-08-15 18:01:07 -04:00
bunnei ddbeebb887 Common: Ported over boilerplate x86 JIT code from Dolphin/PPSSPP. 2015-08-15 17:33:45 -04:00
Tony Wasserka 62adb4ee7b Merge pull request #873 from jroweboy/input_array
Move input values into an array.
2015-07-28 13:17:12 +02:00
James Rowe 1bc7829ee9 Move input values into an array 2015-07-27 21:41:21 -06:00
Emmanuel Gil Peyrot 168997df46 Citra: Remove dead gpu_refresh_rate option from the default ini file. 2015-07-26 13:16:51 +01:00
Greg Wicks 9930ef72dd Implement new argument parsing using getopt and add the corresponding library to externals 2015-07-12 15:49:23 -04:00
Tony Wasserka e110e656b9 Merge pull request #910 from linkmauve/install
Tell CMake to install the compiled binaries on Linux.
2015-07-12 03:25:53 +02:00
Emmanuel Gil Peyrot 7c51bc44aa Citra, CitraQt: Tell cmake to install the compiled binaries.
This will help packaging tremendously, as a `make DESTDIR=… install` will now
put every file at their place (on Linux and related).
2015-07-09 20:19:02 +01:00
Emmanuel Gil Peyrot 79aa1b0808 Citra: Fix the includes a bit, thanks to include-what-you-use. 2015-06-28 00:36:53 +01:00
bunnei 833936fc64 Merge pull request #832 from yuriks/refresh-rate-option
Remove gpu_refresh_rate configuration option
2015-05-31 04:48:20 -04:00
Yuri Kunde Schlesner d65b42a69a Remove gpu_refresh_rate configuration option
Changing it makes emulation inherently inaccurate. It also had a wrong
default value (30, whereas the real system has a refresh rate of 60 Hz)
which, even if changed, would continue to be used unless people manually
removed it from their config files.
2015-05-29 19:39:26 -03:00
Emmanuel Gil Peyrot b1503b2020 Remove every trailing whitespace from the project (but externals). 2015-05-29 21:59:29 +01:00
Emmanuel Gil Peyrot 87d9df89bb Assets: Move citra.ico from src/assets to dist. 2015-05-25 19:00:43 +02:00
tfarley 05dc633a8c OpenGL renderer 2015-05-22 15:51:18 -07:00
tfarley 6d995b1ff6 INI hw/sw renderer toggle 2015-05-22 14:37:55 -07:00
Yuri Kunde Schlesner b88c91dd3d Common: Remove async logging
It provided a large increase in complexity of the logging system while
having a negligible performance impact: the usage patterns of the ring
buffer meant that each log contended with the logging thread, causing
it to effectively act as a synchronous extra buffering.

Also removed some broken code related to filtering of subclasses which
was broken since it was introduced. (Which means no one ever used that
feature anyway, since, 8 months later, no one ever complained.)
2015-05-12 02:31:04 -03:00
Yuri Kunde Schlesner e1fbac3ca1 Common: Remove common.h 2015-05-07 15:45:22 -03:00
Yuri Kunde Schlesner bf12f270b3 Common: Remove many unnecessary cross-platform compatibility macros 2015-05-06 23:50:08 -03: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
archshift cae89fb315 Allow the user to set the background clear color during emulation
The background color can be seen at the sides of the bottom screen or when the window is wider than normal.
2015-04-03 15:35:51 -07:00
bunnei d61b26b79f HID: Complete refactor of pad/touch input to fix threading issues. 2015-03-10 23:58:07 -04:00
bunnei 953e09ddb5 EmuWindow: Made pad/touch functions non-static. 2015-03-10 18:05:20 -04:00
bunnei dd73217ae3 GLFW: Implemented EmuWindow touchpad support. 2015-03-10 18:05:18 -04:00
bunnei 3da94a597b Merge pull request #634 from linkmauve/logging-performances
Apply the logging filter before sending the message to the queue
2015-03-09 15:42:18 -04:00
archshift 539bbd3c59 default_ini.h: Put comments on their own lines
Apparently inline comments is not necessarily standard in the INI format, and our parser was erroneously parsing the comments as values.
2015-03-07 17:28:29 -08:00
bunnei 9960c49c21 Set framebuffer layout from EmuWindow. 2015-03-07 17:21:19 -05:00
Emmanuel Gil Peyrot 0aa44e238d Logging: check for filter before sending to the queue, to skip all heavy formatting on the other thread. 2015-03-06 19:23:52 +01: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 ef24e72b26 Asserts: break/crash program, fit to style guide; log.h->assert.h
Involves making asserts use printf instead of the log functions (log functions are asynchronous and, as such, the log won't be printed in time)
As such, the log type argument was removed (printf obviously can't use it, and it's made obsolete by the file and line printing)

Also removed some GEKKO cruft.
2015-02-10 18:30:31 -08:00
bunnei ca22ee3239 Merge pull request #526 from purpasmart96/citra_stubs
Services: Stub some functions
2015-02-10 18:39:37 -05:00
purpasmart96 60ce36f721 Services: Stub some functions 2015-02-07 17:34:59 -08:00
Lioncash f44781fd7b arm: Adios armemu 2015-01-31 20:43:03 -05: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
darkf 67c644e317 Fix building on MinGW 2015-01-11 20:22:08 -08:00
Johannes Ekberg d7ad14ae20 Use -pthread where and only where needed
Passing -pthread to GCC as a flag makes it both link to libpthread, and make C standard library routines reentrant. This makes the additional explicit links unnecessary.

Additionally, on OSX, this is the default behavior, and clang will print a message about it being unused if it's present there.
2015-01-09 15:50:46 +01:00