summaryrefslogtreecommitdiffstats
path: root/src/citra (unfollow)
Commit message (Collapse)AuthorFilesLines
2016-12-13Modularized Qt and SDL file copyingfreiro1-7/+4
Now cmake relies on two submodules to copy the libraries in the proper folders
2016-12-06Implement Frame rate limiter (#2223)emmauss2-0/+6
* implement frame limiter * fixes
2016-11-28Kernel/Loader: Grab the system mode from the NCCH ExHeader.Subv1-6/+6
3dsx and elf files default to system mode 2 (96MB allocated to the application). This allows Home Menu to boot without modifications. Closes #1849
2016-11-27GPU: Remove the broken frame_skip option.Emmanuel Gil Peyrot2-5/+0
Fixes #1960.
2016-11-20Kernel/Loader: Grab the system mode from the NCCH ExHeader.Subv1-4/+11
3dsx and elf files default to system mode 2 (96MB allocated to the application). This allows Home Menu to boot without modifications. Closes #1849
2016-11-05Add default hotkey to swap primary screens.James Rowe1-1/+2
Also minor style changes
2016-11-05Support additional screen layouts.James Rowe3-4/+15
Allows users to choose a single screen layout or a large screen layout. Adds a configuration option to change the prominent screen.
2016-10-28build: add default install for DragonFly, Solaris, etc.Jan Beich1-1/+1
2016-09-21Use negative priorities to avoid special-casing the self-includeYuri Kunde Schlesner1-1/+1
2016-09-21Remove empty newlines in #include blocks.Emmanuel Gil Peyrot5-22/+5
This makes clang-format useful on those. Also add a bunch of forgotten transitive includes, which otherwise prevented compilation.
2016-09-19Manually tweak source formatting and then re-run clang-formatYuri Kunde Schlesner3-6/+9
2016-09-18Sources: Run clang-format on everything.Emmanuel Gil Peyrot7-54/+60
2016-09-15core: Add configuration option for CPU JIT.bunnei2-0/+5
2016-08-31configure_audio: User-configuratble option to enable/disable audio stretchingMerryMage2-0/+7
2016-08-30config: Add a setting for graphics V-Sync.bunnei3-0/+6
2016-08-16citra: Default to HW renderer.bunnei2-3/+3
2016-06-11SDL2: Add forgotten default config changes from 7129611e65096ba2cbe8266f6cb068a9b18981d8.Emmanuel Gil Peyrot1-1/+5
2016-06-08Fix boot_filename encode on WindowsLFsWang1-0/+22
2016-05-24New3DS: Minor style cleanup to #1520.bunnei1-1/+1
2016-05-21CitraQt: Simplify the game list loader codeEmmanuel Gil Peyrot1-1/+1
2016-05-21Loader, Frontends: Refactor loader creation and game loadingEmmanuel Gil Peyrot1-1/+7
This allows frontends to keep a single loader and use it multiple times e.g. for code loading and SMDH parsing.
2016-05-15implement circle pad modifierwwylele2-0/+7
2016-05-15Refactor input subsystemwwylele3-8/+12
2016-05-07fixup simple type conversions where possibleAlexander Laties1-1/+1
2016-05-07AudioCore: SDL2 SinkMerryMage1-1/+1
2016-05-06Frontends, VideoCore: Move glad initialisation to the frontendEmmanuel Gil Peyrot1-0/+7
On SDL2 this allows it to use SDL_GL_GetProcAddress() instead of the default function loader, and fixes a crash when using apitrace with an EGL context. On Qt we will need to migrate from QGLWidget to QOpenGLWidget and QOpenGLContext before we can use gladLoadGLLoader() instead of gladLoadGL(), since the former doesn’t expose a function loader.
2016-04-30Audio: Add sink selection to configuration filesMerryMage2-0/+8
2016-04-24CMakeLists: Use imported version of Threads::ThreadsSam Spilsbury1-1/+1
This requires bumping up to a minimum of CMake 3.1. The benefit of using the imported target is that you can switch to the -pthread compiler flag on request, which may be necessary for some systems if available.
2016-04-23CMakeLists: Use CMAKE_THREAD_LIBS_INITSam Spilsbury1-1/+1
2016-04-21Config: Add scaled resolution optiontfarley2-0/+5
2016-04-20Implement CheckNew3DS and CheckNew3DSAppJamePeng1-2/+3
Append an item[is_new3ds] to config file[System] group Implement APT::SetNSStateField,it will update the unknown NS_state_field
2016-04-20SDL2 Frontend: Use argv[0], add a --version, and reorder options.Emmanuel Gil Peyrot1-9/+20
2016-04-11Use Settings::Apply in SDL frontendJannik Vogel1-5/+4
2016-04-07Default to settings from ini for gdbstubpolaris-1-6/+6
2016-04-06Adopted WinterMute's gdbstub changespolaris-1-4/+21
This fixes the comments left on the PR (whitespace, SO_REUSEADDR, comment changes).
2016-04-05Common: Remove Common::make_unique, use std::make_uniqueMerryMage2-5/+6
2016-03-15citra: Shutdown cleanly if ROM load failsMerryMage1-8/+6
2016-03-15SDL2: Explicitly use RGB8 color buffer.bunnei1-0/+4
2016-03-02Config: Use unique_ptr instead of raw pointerMerryMage2-14/+12
2016-03-02Dependencies: Remove GLFW, Add SDL2MerryMage9-256/+274
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-02-21AudioCore: Skeleton ImplementationMerryMage1-1/+1
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.
2015-10-22Handle changes pointed out in comments on PRpolaris-1-2/+1
2015-10-12Remove unnecessary new lines, changed Deinit to Shutdownpolaris-1-1/+1
2015-10-04Implement gdbstubpolaris-3-0/+12
2015-09-20Implement gdbstubpolaris-3-0/+12
2015-09-09CMake: Add option to download Qt and GLFW binaries over HTTPYuri Kunde Schlesner1-0/+3
2015-08-30Increase required OpenGL version to 3.3Yuri Kunde Schlesner1-1/+1
This gives us several niceties such as Sampler Objects, shader attribute locations and Timer Queries.
2015-08-30Replace the previous OpenGL loader with a glad-generated 3.3 oneYuri Kunde Schlesner2-3/+3
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-25Integrate the MicroProfile profiling libraryYuri Kunde Schlesner1-0/+7
This brings goodies such as a configurable user interface and multi-threaded timeline view.
2015-08-16Shader: Initial implementation of x86_x64 JIT compiler for Pica vertex shaders.bunnei3-0/+6
- 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-15Common: Ported over boilerplate x86 JIT code from Dolphin/PPSSPP.bunnei1-1/+1
2015-07-28Move input values into an arrayJames Rowe2-49/+16
2015-07-26Citra: Remove dead gpu_refresh_rate option from the default ini file.Emmanuel Gil Peyrot1-4/+0
2015-07-12Implement new argument parsing using getopt and add the corresponding library to externalsGreg Wicks2-3/+42
2015-07-09Citra, CitraQt: Tell cmake to install the compiled binaries.Emmanuel Gil Peyrot1-1/+3
This will help packaging tremendously, as a `make DESTDIR=… install` will now put every file at their place (on Linux and related).
2015-06-28Citra: Fix the includes a bit, thanks to include-what-you-use.Emmanuel Gil Peyrot5-8/+19
2015-05-30Remove gpu_refresh_rate configuration optionYuri Kunde Schlesner1-1/+0
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-29Remove every trailing whitespace from the project (but externals).Emmanuel Gil Peyrot1-0/+0
2015-05-25Assets: Move citra.ico from src/assets to dist.Emmanuel Gil Peyrot1-9/+9
2015-05-23OpenGL renderertfarley1-0/+4
2015-05-22INI hw/sw renderer toggletfarley2-0/+6
2015-05-12Common: Remove async loggingYuri Kunde Schlesner1-6/+0
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-07Common: Remove common.hYuri Kunde Schlesner3-2/+5
2015-05-07Common: Remove many unnecessary cross-platform compatibility macrosYuri Kunde Schlesner1-1/+1
2015-05-02EmuWindow: Clip mouse input coordinates to emulated screen dimensions.Zaneo1-1/+1
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-04-04Allow the user to set the background clear color during emulationarchshift2-0/+12
The background color can be seen at the sides of the bottom screen or when the window is wider than normal.
2015-03-11HID: Complete refactor of pad/touch input to fix threading issues.bunnei1-11/+6
2015-03-10EmuWindow: Made pad/touch functions non-static.bunnei1-13/+14
2015-03-10GLFW: Implemented EmuWindow touchpad support.bunnei2-0/+26
2015-03-08default_ini.h: Put comments on their own linesarchshift1-4/+15
Apparently inline comments is not necessarily standard in the INI format, and our parser was erroneously parsing the comments as values.
2015-03-07Set framebuffer layout from EmuWindow.bunnei1-9/+2
2015-03-06Logging: check for filter before sending to the queue, to skip all heavy formatting on the other thread.Emmanuel Gil Peyrot1-1/+2
2015-02-22Frontends, HID: Add New 3DS specific pad buttons, and stub the touch one.Emmanuel Gil Peyrot3-1/+23
2015-02-11Asserts: break/crash program, fit to style guide; log.h->assert.harchshift1-5/+5
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-08Services: Stub some functionspurpasmart962-0/+6
2015-02-01arm: Adios armemuLioncash2-2/+0
2015-01-21Added HID_SPVR service and split HID_U implementation into service/hid/hid.xxxarchshift1-17/+17
2015-01-12Fix building on MinGWdarkf1-0/+0
2015-01-09Use -pthread where and only where neededJohannes Ekberg1-4/+0
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-09Generic PLATFORM_LIBRARIES varJohannes Ekberg1-11/+1
This both reduces redundancy in add_executable definitions, and makes it easier to link additional libraries. In particular, extra libraries are needed on OSX - see next commit.
2015-01-04Frontends: Shutdown core when emulation is stoppedYuri Kunde Schlesner1-0/+2
2015-01-03Core: Change default CPU to dyncom.bunnei1-1/+1
2014-12-31SOC_U: Preliminary implementation of sockets.Subv1-2/+2
Stubbed CreateMemoryBlock Using Berkeley sockets, and Winsock2.2 on Windows. So far ftpony creates the socket and accepts incoming connections SOC_U: Renamed functions to maintain consistency Also prevents possible scope errors / conflicts with the actual Berkeley socket functions SOCU: Close all the opened sockets when cleaning up SOCU
2014-12-31Add citra icon to Windows executable and title barChin2-0/+1
2014-12-30Fix MSVC-related #defines and add CMakeLists commentdarkf1-1/+1
2014-12-29GPU: Implement frameskip and remove forced framebuffer swap hack.bunnei2-0/+2
2014-12-27GPU: Change internal framerate to 30fps.bunnei2-2/+2
2014-12-21License changepurpasmart966-6/+6
2014-12-15Clean up CMake library specificationYuri Kunde Schlesner1-8/+6
The X11 libraries don't need to be specified when doing dynamic linking
2014-12-13Add configurable per-class log filteringYuri Kunde Schlesner3-3/+6
2014-12-13Convert old logging calls to new logging macrosYuri Kunde Schlesner3-13/+13
2014-12-13New logging systemYuri Kunde Schlesner1-5/+11
2014-12-03Change NULLs to nullptrs.Rohit Nirmal1-3/+3
2014-11-30GLFW: Add an error callback before calling glfwInit()Emmanuel Gil Peyrot1-2/+6
It will print a message to know what happened in case something went wrong in a GLFW call. Also replace every printf() in the glfw emu-window by ERROR_LOG().
2014-11-29Fix MinGW builddarkf1-1/+4
2014-11-19Remove tabs in all files except in skyeye imports and in generated GL codeEmmanuel Gil Peyrot1-2/+2
2014-11-19Remove trailing spaces in every file but the ones imported from SkyEye, AOSP or generatedEmmanuel Gil Peyrot1-1/+1
2014-11-19Merge Config::ReadXYZsarchshift2-15/+7
2014-11-18citra GLFW: Ignore minimal window size hints.Tony Wasserka1-8/+2
GLFW provides no proper support for this, hence we just allow any window size to be used.
2014-11-18EmuWindow: Remove window title getters/setters.Tony Wasserka1-3/+4
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-18EmuWindow: Add support for specifying minimal client area sizes.Tony Wasserka2-0/+23
2014-11-18Fixup EmuWindow interface and implementations thereof.Tony Wasserka2-20/+44
2014-11-18Viewport scaling and display density independenceKevin Hartman2-1/+9
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-12ARM: Fixed several dyncom bugs.bunnei1-1/+1
- Fixed NZCVT flags to properly save state when function returns. - Fixed counter to keep track of the actual number of instructions executed. - Fixed single-step mode to only execute one instruction at a time. - DefaultIni: Removed comment that no longer applied to dyncom.
2014-11-03Add support for disabling log from settingsSean4-0/+13
2014-10-28Added `gpu_refresh_rate` config setting for the new interpreter speed hack.archshift2-1/+3
2014-10-28Use configuration files to enable or disable the new dyncom interpreter.archshift3-0/+10
2014-10-26Add `override` keyword through the code.Yuri Kunde Schlesner1-4/+4
This was automated using `clang-modernize`.
2014-10-23Use config files to store whether SDMC is enabled or notarchshift3-0/+9
Before, it used to use whether the directory actually existed. As a result, .citra-emu/sdmc was never auto-created (something quite confusing to me until I read through the logs).
2014-10-19emu_window_glfw.cpp: Fixed graceful quittingarchshift1-1/+1
In PR #143, the name of the function IsOpen was originally ShouldClose, but was changed. The function's caller was changed to reflect this, but the return value wasn't.
2014-10-17Implemented graceful closing of the GLFW window, along with emulation.archshift3-1/+9
2014-10-12OpenGL renderer: Request a forward compatible context in citra-qtYuri Kunde Schlesner1-3/+0
This should fix context creation on OS X. Also requests a core context on all platforms in Citra-GLFW, for consistency.
2014-10-08Added configuration file system.archshift7-30/+156
Uses QSettings on citra-qt, and inih on citra-cli.
2014-09-12Added support for multiple input device types for KeyMap and connected Qt.Kevin Hartman2-33/+37
2014-09-12Initial HID PAD work, with GLFW only.Kevin Hartman1-3/+36
2014-09-01Remove hand-crafted Visual Studio solution.Yuri Kunde Schlesner2-238/+0
2014-09-01CMake cleanupYuri Kunde Schlesner1-6/+18
Several cleanups to the buildsystem: - Do better factoring of common libs between platforms. - Add support to building on Windows. - Remove Qt4 support. - Re-sort file lists and add missing headers.
2014-09-01Replace GLEW with a glLoadGen loader.Yuri Kunde Schlesner2-3/+2
This should fix the GL loading errors that occur in some drivers due to the use of deprecated functions by GLEW. Side benefits are more accurate auto-completion (deprecated function and symbols don't exist) and faster pointer loading (less entrypoints to load). In addition it removes an external library depency, simplifying the build system a bit and eliminating one set of binary libraries for Windows.
2014-08-31Core: Refactor core to use only one function for execution.bunnei1-1/+3
Core: Cleaned up comment to be more readable. Citra: Changed loop to be more readable.
2014-08-25Pica: Add support for dumping textures.Tony Wasserka1-1/+1
2014-08-20Removed unused citra.harchshift6-15/+3
2014-08-15Bootmanager: changed `filename` to std::stringarchshift1-1/+0
2014-06-25Loader: Implemented AppLoader interface for abstracting application loading.bunnei1-15/+8
- Various cleanups/refactorings to Loader, ELF, and NCCH modules. - Added AppLoader interface to ELF and NCCH. - Updated Qt/GLFW frontends to check AppLoader ResultStatus. NCCH: Removed extra qualification typos. Loader: Removed unnecessary #include's. NCCH: Improved readability of memcmp statements. NCCH: Added missing space. Elf: Removed unnecessary usage of unique_ptr. Loader: Removed unnecessary usage of unique_ptr.
2014-06-17Loader: Moved elf and loader modules to a "loader" subdirectory.bunnei1-1/+1
2014-06-12Preprocessor: #if's out OSX-specific GL changes on other platformsarchshift1-0/+5
2014-05-20CMakeLists: rename HEADS, improved commentsarchshift1-2/+2
Changes for clarity of comments, removed redundant compiler flags.
2014-05-17updated how we call ARM core to make things much fasterbunnei1-7/+5
2014-05-05Fixed indentsarchshift1-7/+7
2014-05-02Check arg count before attempting to access it.archshift1-1/+8
2014-05-02Use runtime arguments to specify boot filename.archshift1-1/+1
2014-05-01Fixed indentsarchshift2-8/+8
2014-05-01Reverse debugging changesarchshift1-1/+1
2014-05-01Linux supportarchshift1-1/+6
2014-05-01TGA dumps work, courtesy of @bunneiarchshift1-1/+1
2014-05-01OpenGL 3+ on OSX with GLFWarchshift1-1/+8
2014-05-01A bit of Cmake lovearchshift1-6/+6
2014-04-30Some more experimentationarchshift1-1/+1
2014-04-29IT'S ALIVE!archshift1-1/+3
2014-04-26Need to add Xcursor to linker?Thomas Edvalson1-1/+1
2014-04-25Fixed CMake's import of GLFW.Thomas Edvalson1-1/+1
2014-04-23fixes to build on linuxbunnei1-1/+1
2014-04-11removed unused macros from citra.hbunnei1-9/+0
2014-04-10fixed a bunch of errors in CMakeListsbunnei1-1/+1
2014-04-10updated CMakeListsbunnei1-2/+2
2014-04-09- removed deprecated version.hbunnei6-30/+22
- cleaned up window title - cleaned up emu_window_glfw/emu_window
2014-04-09fixed license headers in citra projectbunnei4-116/+16
2014-04-09fixed project includes to use new directory structurebunnei5-36/+30
2014-04-09got rid of 'src' folders in each sub-projectbunnei5-0/+0
2014-04-07removed unused comments, changed main processing loop to be infinitebunnei1-34/+2
2014-04-06set window size to correspond to framebuffer sizesbunnei2-5/+4
2014-04-06added project linker referencebunnei1-0/+3
2014-04-05Support vs express edition without having to get platform sdkMathieu Vaillancourt1-0/+0
2014-04-01added simple processing loop and ELF loading to main()... hackish, will cleanup laterbunnei1-4/+17
2013-10-03moved some core functions over to system moduleShizZy1-2/+2
2013-09-27upgraded proj files to vs 2013ShizZy2-2/+8
2013-09-26renamed from citrus to citraShizZy10-0/+534