summaryrefslogtreecommitdiffstats
path: root/src/citra_qt (unfollow)
Commit message (Collapse)AuthorFilesLines
2016-12-07Config: auto-select region and languagewwylele4-3/+14
2016-12-06Implement Frame rate limiter (#2223)emmauss3-0/+11
* implement frame limiter * fixes
2016-12-01Remove unused version.hJannik Vogel2-12/+0
2016-11-28Kernel/Loader: Grab the system mode from the NCCH ExHeader.Subv1-5/+4
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 Peyrot1-2/+0
Fixes #1960.
2016-11-20Kernel/Loader: Grab the system mode from the NCCH ExHeader.Subv2-9/+22
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-14Add mingw compile supportJames Rowe1-0/+4
2016-11-11Minor Menu FixesPringo2-2/+2
2016-11-05Add default hotkey to swap primary screens.James Rowe4-2/+13
Also minor style changes
2016-11-05Support additional screen layouts.James Rowe5-44/+90
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-10-20Fix typosRicardo de Almeida Gonzaga3-4/+4
2016-09-22qt: shutdown system if errorwwylele1-2/+3
2016-09-22implement wait tree widgetwwylele5-0/+620
2016-09-21Use negative priorities to avoid special-casing the self-includeYuri Kunde Schlesner19-19/+19
2016-09-21Remove empty newlines in #include blocks.Emmanuel Gil Peyrot47-133/+50
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 Schlesner20-93/+71
2016-09-18Sources: Run clang-format on everything.Emmanuel Gil Peyrot54-969/+984
2016-09-15qt: Add UI configuration option to enable CPU JIT.bunnei2-0/+25
2016-09-15core: Add configuration option for CPU JIT.bunnei1-0/+2
2016-09-13Qt: fix birthday combo box updatingwwylele1-2/+3
2016-09-02Qt: unify running detectionwwylele5-12/+9
2016-09-01qt: Rename all "toogle" to "toggle".bunnei6-24/+24
2016-08-31configure_audio: User-configuratble option to enable/disable audio stretchingMerryMage3-0/+15
2016-08-30qt: Add an option to settings for enabling V-Sync.bunnei1-0/+4
2016-08-30qt: Recreate GL context on startup to support changing V-Sync.bunnei3-25/+39
2016-08-30config: Add a setting for graphics V-Sync.bunnei4-1/+12
2016-08-30qt: Add a configuration tab for Graphics and move relevant fields.bunnei8-48/+169
2016-08-16citra: Default to HW renderer.bunnei1-1/+1
2016-07-29Input GUI: Add tab to remap controls (#1900)Anon9-8/+825
2016-07-21CMake: Fix Info.plist template for citra_qt/OSXDale Whinham1-1/+1
The Info.plist template incorrectly uses parentheses instead of curly braces, which means that building the .app bundle using regular 'make' results in the variable not being replaced, and hence the app bundle won't start because the executable name is incorrect. This commit fixes this issue.
2016-07-10Qt: add system settings config tabwwylele8-4/+450
2016-06-19Fix recursive scanning of directoriesYuri Kunde Schlesner1-5/+3
ForeachDirectoryEntry didn't actually do anything with the `recursive` parameter, and the corresponding callback parameter was shadowing the actual recursion counters in the user functions.
2016-06-19Qt: Fix MicroProfile dpi scalingYuri Kunde Schlesner1-7/+6
2016-06-02Remove unused and bitrotted "controller config" filesarchshift6-671/+0
2016-06-01AddFstEntriesToGameList - prevent loading a directoryLFsWang1-3/+3
2016-05-24New3DS: Minor style cleanup to #1520.bunnei1-2/+2
2016-05-21Loader: Split SMDH into its own header and import helpers from QGameListEmmanuel Gil Peyrot1-42/+11
Also rewrite Qt wrappers to use those.
2016-05-21Debugger/Callstack: Replace Memory::GetPointer with Memory::IsValidVirtualAddressMerryMage1-1/+4
2016-05-21CitraQt: Simplify the game list loader codeEmmanuel Gil Peyrot2-19/+5
2016-05-21Loader, Frontends: Refactor loader creation and game loadingEmmanuel Gil Peyrot1-1/+9
This allows frontends to keep a single loader and use it multiple times e.g. for code loading and SMDH parsing.
2016-05-21Common: Make recursive FileUtil functions take a maximum recursionEmmanuel Gil Peyrot2-6/+7
Fixes #1115. Also improves the performances of DiskArchive’s directory implementation a lot, simply by not going through the entire tree instead of just listing the first level files. Thanks to JayRoxFox for rebasing this on current master!
2016-05-20Config: Restore previously selected audio sink option (#1824)James Rowe1-3/+3
2016-05-19Config: Audio sink configuration (#1798)Maribel6-0/+134
2016-05-15implement circle pad modifierwwylele1-0/+3
2016-05-15Refactor input subsystemwwylele2-4/+8
2016-05-12Microprofile: DPI-aware drawingMerryMage1-4/+12
2016-05-12Move default_attributes into Pica stateJannik Vogel1-1/+1
2016-05-11Turn ShaderSetup into structJannik Vogel1-1/+1
2016-05-07fixup simple type conversions where possibleAlexander Laties2-2/+2
2016-05-07citra_qt: Replace 'Pica Framebuffer Debugger' with 'Pica Surface Viewer'Jannik Vogel9-583/+876
2016-05-06Frontends, VideoCore: Move glad initialisation to the frontendEmmanuel Gil Peyrot1-0/+11
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-05-04add missing headerwwylele1-0/+1
2016-05-04make the name column larger as defaultwwylele1-1/+5
2016-05-04add icon & title to game listwwylele3-13/+105
2016-05-04Pica: Rename VertexLoaded breakpoint to VertexShaderInvocationJannik Vogel2-3/+3
2016-04-30VideoCore: Run include-what-you-use and fix most includes.Emmanuel Gil Peyrot1-0/+4
2016-04-30Audio: Add sink selection to configuration filesMerryMage1-0/+8
2016-04-29Common: Remove section measurement from profiler (#1731)Yuri Kunde Schlesner1-24/+2
This has been entirely superseded by MicroProfile. The rest of the code can go when a simpler frametime/FPS meter is added to the GUI.
2016-04-29Make Citra build with MICROPROFILE_ENABLED set to 0 (#1709)Henrik Rydgård4-1/+26
* Make Citra build with MICROPROFILE_ENABLED set to 0 * Buildfix with microprofile kept on * moc did not like a dialog to conditionally exist. * Cleanup * Fix end of line
2016-04-26Qt Frontend: Add Threads::Threads import in CMakeLists.txt.Emmanuel Gil Peyrot1-1/+1
This had been forgotten in df81fa11fc8972a5775a57ccde1e0ef8d7fbfe64. Fixes #1711.
2016-04-24Replace std::map with std::array for graphics event breakpoints, and allow the compiler to inline. Saves 1%+ in vertex heavy situations.Henrik Rydgard1-2/+2
2016-04-23debugger: Warn if we reach an unreachable formatSam Spilsbury1-0/+6
2016-04-21Config: Add scaled resolution optiontfarley3-0/+11
2016-04-20Implement CheckNew3DS and CheckNew3DSAppJamePeng1-2/+4
Append an item[is_new3ds] to config file[System] group Implement APT::SetNSStateField,it will update the unknown NS_state_field
2016-04-15Configure Dialog: Remove minimumSize propertyMerryMage1-12/+0
2016-04-11CitraQt: Apply config at startupJannik Vogel4-12/+3
2016-04-05Common: Remove Common::make_unique, use std::make_uniqueMerryMage1-2/+2
2016-03-31remove debug codeLFsWang1-1/+1
2016-03-31Fix encode problem On WindowsLFsWang2-6/+6
2016-03-28Compilation fixLittleWhite1-1/+1
2016-03-22Add more stuff to configure.LittleWhite15-120/+211
2016-03-21Whole config is handled by Config class.LittleWhite8-118/+181
This also means : we have only one config file, now
2016-03-21Add Configure widgetLittleWhite18-142/+533
2016-03-17Fix Qt chinese words encode problem on WindowsLFsWang2-3/+3
2016-03-16Register ROM started through the gamelist in the list of ROM recently startedLittleWhite2-5/+4
2016-03-15PICA: Fix MAD/MADI encodingJannik Vogel1-2/+10
2016-03-09Fix attribute mapping in vs debuggerJannik Vogel1-2/+2
2016-03-08Improve error report from Init() functionsLittleWhite2-12/+40
Add error popup when citra initialization failed
2016-03-07Set the appropriate locale to get float conversion working using std::to_stringLittleWhite1-0/+4
2016-03-03Display errors in GUI when loading ROM failedLittleWhite1-1/+26
2016-03-03Add immediate mode vertex submissionDwayne Slater4-1/+5
2016-03-02Dependencies: Remove GLFW, Add SDL2MerryMage1-18/+7
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.
2016-02-04Add a configuration entry to enable/disable the checkLittleWhite2-9/+10
2016-02-04Add check before closure when emulation is runningLittleWhite2-0/+25
Implement confirmation in a specific function Fix typos and coding style Coding convention
2016-01-07Change default gameListRootDir from "" to "."archshift1-1/+1
Not much thought went into that one...
2016-01-01Gamelist: supply default settings for QSettings configarchshift1-1/+1
2015-12-30core: Use unique_ptr for holding the interpreter instancesLioncash2-12/+8
2015-11-27Refactor ScanDirectoryTreeAndCallback to separate errors and retvalsarchshift1-7/+9
ScanDirectoryTreeAndCallback, before this change, coupled error/return codes and actual return values (number of entries found). This caused confusion and difficulty interpreting the precise way the function worked. Supersedes, and closes #1255.
2015-10-22Handle changes pointed out in comments on PRpolaris-1-2/+1
2015-10-20change file path encoding to Local8bit()wwylele2-5/+5
to support non-latin characters
2015-10-18citra-qt: persist hardware-rendering and shaders-jit settingsPierre de La Morinerie1-0/+8
Before this changing these settings from the GUI would apply the settings, but they were reseted to the default values when exiting citra.
2015-10-14citra-qt: Add icon to Mac appPierre de La Morinerie1-1/+3
Previously the Mac app didn't have any icon.
2015-10-09CitraQt, SkyEye, Loader, VideoCore: Remove newlines in LOG_* calls.Emmanuel Gil Peyrot1-1/+1
The LOG_* function itself already appends one.
2015-10-07Silence -Wsign-compare warnings.Rohit Nirmal1-4/+4
2015-10-06Game list: propely hide on toggling window modearchshift1-0/+1
Properly hides the game list upon toggling from external window mode to single window mode. Previously, both the game list and the render window would have been shown at the same time upon toggling.
2015-10-04citra-qt: Fix mouse events coordinates on high-DPI screensPierre de La Morinerie2-12/+21
2015-10-04citra-qt: Enable high-DPI widgets on Mac appPierre de La Morinerie1-0/+4
The OS will render the widgets using the system screen DPI (instead of being locked at @1x resolution). This has no impact on the existing high-DPI rendering code in Citra, which means that the resolution of the emulated content is increased to the real number of pixels, as on other platforms.
2015-10-04citra-qt: Use custom Info.plist for Mac buildsPierre de La Morinerie2-0/+38
Instead of letting CMake re-generate an automatic Info.plist file on every build, use our own. This allows greater control on the application bundle settings.
2015-10-04Implement gdbstubpolaris-4-0/+32
2015-10-02Game list: save and load column sizes, sort order, to QSettingsarchshift3-0/+24
2015-10-02Add menu item for selecting the game list folderarchshift3-1/+23
2015-10-02Initial implementation of a game listarchshift6-2/+356
2015-10-02Add helper function for creating a readable byte size string.archshift2-0/+16
2015-10-02Don't show render window until a game is startedarchshift2-4/+13
2015-09-24Fix for the refresh issue when no rendering is doneLittleWhite2-4/+14
2015-09-20Implement gdbstubpolaris-4-0/+40
2015-09-18citra-qt: Fix connect error on startupKloen2-5/+13
2015-09-14GSP: Implement command 0x05, used for flushing cachesYuri Kunde Schlesner1-2/+2
May fix additional texture caching issues. (Though mostly in homebrew, I haven't seen any commercial software use this to flush anything but command lists.)
2015-09-12general: Replace 0 literals with nullptr where applicableLioncash2-2/+2
2015-09-11graphics_breakpoints_p: Add missing override specifierLioncash1-1/+1
2015-09-11General: Replace NULL and '0' usages with nullptr where applicableLioncash7-7/+7
2015-09-11citra_qt: Reorganize headersLioncash24-100/+81
2015-09-08citra-qt: Separate UI layout state in a separate section of the configYuri Kunde Schlesner1-0/+7
Closes #1113
2015-09-08citra-qt: Trim recently used files list to size when insterting new itemYuri Kunde Schlesner1-0/+4
Even though they weren't visible in the UI, old entries would never be removed from the list and would be stored in the config file across sessions.
2015-09-07Shader Debugger: Allow editing of input vertex dataYuri Kunde Schlesner1-0/+2
2015-09-07Shader Debugger: Highlight current instruction instead of focusingYuri Kunde Schlesner1-4/+15
This avoid some annoying focus stealing in some situations, and looks nicer in general.
2015-09-07Shader Debugger: Remove useless signalYuri Kunde Schlesner2-10/+2
2015-09-07Shader Debugger: Fix only first vertex attribute being loadedYuri Kunde Schlesner1-7/+7
2015-09-07Shader Debugger: Fix freeze when double-clicking shader disassemblyYuri Kunde Schlesner3-14/+4
2015-09-07Shader Debugger: Improve space efficiency of the layoutYuri Kunde Schlesner1-9/+18
2015-09-07Shader Disassembly: Fix printing of jump offsetsYuri Kunde Schlesner1-4/+4
2015-09-07Shader Disassembly: Fix disassembly of IFU/CALLU instructionsYuri Kunde Schlesner1-0/+1
2015-09-07Shader Disassembly: Implement support for MAD/MADIYuri Kunde Schlesner1-0/+31
2015-09-07Shader Disassembly: Introduce variables to hold common subexpressionsYuri Kunde Schlesner1-16/+20
2015-09-07Shader Debugger: Initialize input_vertex to prevent crashesYuri Kunde Schlesner1-0/+7
If the first type of breakpoint to be hit wasn't "Vertex Loaded", the input_vertex would contain garbage, which would be passed to the shader interpreter and ocasionally cause crashes.
2015-09-07Shader Disassembly: Cleanup code and improve output alignmentYuri Kunde Schlesner1-66/+79
2015-09-07citra-qt: Use monospace font on Disassembler and ARM RegistersKloen2-1/+35
2015-09-07Stop emulation when render window is closedLittleWhite3-0/+15
2015-09-03citra-qt: Move system shutdown to run inside EmuThreadYuri Kunde Schlesner2-3/+3
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-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-26citra-qt: Add a missing header guard to util.hLioncash1-0/+2
2015-08-25Integrate the MicroProfile profiling libraryYuri Kunde Schlesner5-0/+240
This brings goodies such as a configurable user interface and multi-threaded timeline view.
2015-08-25citra-qt: Add helper function to get a monospace QFontYuri Kunde Schlesner6-5/+32
2015-08-19Improvements for MRULittleWhite2-11/+33
avoid duplicates always put the last file loaded to top of the list
2015-08-16citra-qt/VertexShader: Minor UI improvements.Tony Wasserka2-10/+11
Renamed "Iteration index" to the (hopefully) more intuitive "Cycle Index". Added flexible space at the bottom of the widget.
2015-08-16citra-qt: Fix comment style.Tony Wasserka1-5/+6
2015-08-16Introduce a shader tracer to allow inspection of input/output values for each processed instruction.Tony Wasserka2-42/+261
2015-08-16Pica/DebugUtils: Include uniform information into shader dumps.Tony Wasserka1-3/+2
2015-08-16citra-qt: Improve shader debugger.Tony Wasserka2-3/+20
Now supports dumping the current shader and recognizes a larger number of output semantics.
2015-08-16citra-qt: Print the correct swizzle mask for SRC2 in the shader disassembler.Tony Wasserka1-3/+3
2015-08-16citra-qt: Give RG8 format a proper name in the texture viewerYuri Kunde Schlesner1-1/+1
2015-08-16Shader: Initial implementation of x86_x64 JIT compiler for Pica vertex shaders.bunnei4-0/+20
- 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-08-15Shader: Move shader code to its own subdirectory, "shader".bunnei1-1/+1
2015-08-15GPU: Refactor "VertexShader" namespace to "Shader".bunnei1-1/+1
- Also renames "vertex_shader.*" to "shader_interpreter.*"
2015-08-11ARM Core, Video Core, CitraQt, Citrace: Use CommonTypes types instead of the standard u?int*_t types.Emmanuel Gil Peyrot2-5/+9
2015-08-11Add menu and logic to save and load recently loaded files.LittleWhite3-18/+91
This menu is only for ROM and will not save symbols recently loaded. When the menu is empty, the menu is disabled (greyed out)
2015-08-07registers: Support viewing VFP registersLioncash2-44/+172
2015-08-07registers: Fix a typo with CPSR's nameLioncash2-36/+36
2015-07-31Save the path leading where the last file have been loadedLittleWhite1-5/+20
I use two variables to save the path for the ROMs and the symbols. Use of QSettings to avoid new member variable to the class. Global settings of QSettings is done in main.
2015-07-29citra-qt: Adjust initializer list orderLioncash2-2/+2
Silences a warning.
2015-07-29citra-qt: Pass string by const referenceLioncash2-2/+2
2015-07-28Update Start menu text to match with the real state of the emulator.LittleWhite1-0/+3
Move start menu text update in ShutdownGame as adviced by neobrain
2015-07-28Settings: Fix saving wrong values for input configurationTrung Do1-1/+2
2015-07-28Move input values into an arrayJames Rowe2-72/+19
2015-07-26citra-qt/command list: Do not recreate a widget after each selectionLectem1-10/+10
Recreating / replacing a widget is slow since it triggers a layout pass.
2015-07-26citra-qt/command list: Add mask columnLectem1-8/+10
2015-07-26citra-qt/command list: monospace font on windowsLectem1-1/+3
2015-07-26dyncom: Rename armdefs.h to armstate.hLioncash1-1/+0
2015-07-26dyncom: Get rid of skyeye typedefsLioncash1-1/+1
2015-07-25citra-qt/command list: Enable uniform row heights and automatically resize columns.Lectem1-0/+8
Uniform row heights enables some optimisations for a smoother scrolling. Resize columns to content so that we don't have to do it manually
2015-07-25citra-qt/command list: Split register and value columns.Lectem1-12/+14
Also removed the extra spaces for each cell
2015-07-24Qt/GPU Breakpoints: Changed the widget so that we don't have to select and click the Enable button when enabling/disabling a breakpoint, now it is done via a checkbox next to the breakpoint's name.Subv3-71/+40
2015-07-23Qt/GPU Breakpoints: Added three more breakpoint types:Subv1-3/+6
* IncomingDisplayTransfer: Triggered just before a display transfer is performed. * GSPCommandProcessed: Triggered right after a GSP command is processed. * BufferSwapped: Triggered when the frames flip
2015-07-21Resolve issue accidentally left unaddressed in PR #930Yuri Kunde Schlesner1-1/+1
2015-07-19Rasterizer/Textures: Fixed a bug where the I4 format would get twice the real stride.Subv1-1/+1
Also added its name to the texture viewer widget
2015-07-19Citra_QT : Another Conversion Warning Fixzawata1-1/+1
2015-07-19Citra_QT : Fix Conversion Warningszawata2-2/+2
2015-07-15citra-qt: Add support for copying the command list contents to clipboard.Tony Wasserka2-1/+31
2015-07-15Pica/Shader: Add geometry shader definitions.Tony Wasserka1-1/+1
2015-07-13citra-qt: Add depth formats to framebuffer viewing widget.Tony Wasserka2-6/+33
2015-07-13citra-qt: Properly specify the framebuffer format.Tony Wasserka2-3/+28
2015-07-13CiTrace: Clean up initialization method.Tony Wasserka1-9/+15
2015-07-13CiTrace: Record LCD registers. Cleanup recording code.Tony Wasserka1-7/+11
2015-07-13CiTrace: Record default vertex attributes.Tony Wasserka1-0/+8
2015-07-13citra-qt: Properly disable the CiTrace widget upon starting/stopping emulation.Tony Wasserka3-2/+39
2015-07-13Add CiTrace recording support.Tony Wasserka5-1/+159
This is exposed in the GUI as a new "CiTrace Recording" widget. Playback is implemented by a standalone 3DS homebrew application (which only runs reliably within Citra currently; on an actual 3DS it will often crash still).
2015-07-13Qt: Fix disassembly widget steppingaroulin2-2/+5
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-28CitraQt: Cleanup includes.Emmanuel Gil Peyrot7-6/+17
2015-06-27Common: Remove now-unused EMU_PLATFORM define, fixes issue #373.Emmanuel Gil Peyrot1-4/+0
2015-06-19Make the call stack entries not editableGreg Wicks1-0/+3
2015-06-09Robocopy doesn't like trailing slashesClienthax1-4/+4
2015-05-30Move video_core/color.h to common/color.harchshift1-1/+2
2015-05-30Move video_core/math.h to common/vector_math.harchshift1-2/+2
The file only contained vector manipulation code, and such widely-useable code doesn't belong in video_core.
2015-05-30Remove gpu_refresh_rate configuration optionYuri Kunde Schlesner1-2/+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 Peyrot5-7/+7
2015-05-29QT: Remove border around widgetsSean Maas1-2/+15
2015-05-25Assets: Move citra.ico from src/assets to dist.Emmanuel Gil Peyrot1-0/+0
2015-05-23Qt: Silence a bogus warning printed when using the debug runtimeYuri Kunde Schlesner1-1/+7
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-23Pica: Create 'State' structure and move state memory there.bunnei3-10/+10
2015-05-23MakeCurrent race condition fixtfarley2-2/+3
2015-05-23OpenGL renderertfarley3-0/+19
2015-05-22INI hw/sw renderer toggletfarley1-0/+4
2015-05-18Use condition var to properly pause the CPU threadJames Rowe2-2/+14
Adds support for threaded pausing so citra doesn't spin wait on pause
2015-05-15Memmap: Re-organize memory function in two filesYuri Kunde Schlesner4-4/+4
memory.cpp/h contains definitions related to acessing memory and configuring the address space mem_map.cpp/h contains higher-level definitions related to configuring the address space accoording to the kernel and allocating memory.
2015-05-13Qt: Shutdown emulation session only if EmuThread exists.bunnei1-1/+3
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-09Memory: Add GetPhysicalPointer helper functionYuri Kunde Schlesner2-3/+3
2015-05-09Memory: Support more regions in the VAddr-PAddr translation functionsYuri Kunde Schlesner2-3/+3
Also adds better documentation and removes the one-off reimplementation of the function in pica.h.
2015-05-09Loader: Remove .bin file supportYuri Kunde Schlesner1-1/+1
It is of very limited practical utility currently, and will soon be impossible to support due to more accurate memory map emulation.
2015-05-07Common: Remove common.hYuri Kunde Schlesner7-6/+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-05-02Qt: Shutdown game on emulator close event.bunnei1-0/+2
2015-05-02Qt: Disable "Start" unless we are paused (it otherwise has no meaning and causes a crash).bunnei2-1/+4
2015-05-02Qt: Fixed a bug in shutdown procedure, various cleanups.bunnei7-35/+26
2015-05-02Qt: Clear registers widget on shutdown.bunnei3-8/+31
2015-05-02Qt: Use signals for emu_thread start/stop and fix disasm widget.bunnei6-79/+138
2015-05-02Qt: Restructured to remove unnecessary shutdown event and various cleanups.bunnei4-90/+40
2015-05-02Qt: Fix loading a new game without stopping emulation.bunnei2-15/+25
2015-05-02Qt: Create emu thread on bootup, kill it on shutdown.bunnei3-31/+44
2015-05-02EmuThread: Remove unused filename attribute.bunnei3-18/+2
2015-05-02Qt: Move EmuThread ownership from render window to main window.bunnei6-69/+57
2015-04-14citra-qt: Use std::abs() to get the right absolute function for s64.Emmanuel Gil Peyrot1-1/+2
2015-04-14Headers: Add some forgotten overrides, thanks clang!Emmanuel Gil Peyrot2-2/+2
2015-04-10Silence some -Wsign-compare warnings.Rohit Nirmal1-2/+2
2015-04-04Allow the user to set the background clear color during emulationarchshift1-0/+13
The background color can be seen at the sides of the bottom screen or when the window is wider than normal.
2015-03-30disassembler: Get rid of a const_castLioncash1-4/+1
2015-03-30callstack: Remove unnecessary disassembler instantiationLioncash1-2/+1
Decode is a static function. There's no need to allocate a disassembler instance.
2015-03-26unsetting a few more variables that arent needed outside of this functionJames Rowe1-0/+3
2015-03-26Updated the copy commands to run on post_build and use generator expressions to simplify the code as wellJames Rowe1-27/+26
2015-03-26Changes to bring the previous commits in line with the comments on thepull request. Made the debug build a true debug build with no optimizxations and the RelWithDebInfo is what it says it is too. Changed the copying of the dlls to the build directories to happen at configuration time instead of build timeJames Rowe1-22/+12
2015-03-26More changes to the CMakeFiles for better MSVC compatibility. Added in the RelWithDebInfo target and setup copying the Qt 5 Dlls to the output directories.James Rowe1-0/+44
2015-03-11HID: Complete refactor of pad/touch input to fix threading issues.bunnei1-14/+8
2015-03-10Qt: Implemented EmuWindow touchpad support.bunnei2-0/+29
2015-03-10GPU: Added the stencil test structure to the Pica Regs struct.Subv2-6/+6
2015-03-10Frontend/Qt: Allow the framebuffer widget to inspect the depth bufferSubv2-5/+66
2015-03-08Update nihstro submodule to the initial release version.archshift1-20/+21
Includes more opcodes to implement in the future.
2015-03-08Build app bundles on OS X. Fixes the issue where the menubar would not appear.archshift1-1/+5
2015-03-07Set framebuffer layout from EmuWindow.bunnei1-1/+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-03-04GPU: Added RGB565/RGB8 framebuffer support and various cleanups.bunnei3-59/+33
- Centralizes color format encode/decode functions. - Fixes endianness issues. - Implements remaining framebuffer formats in the debugger.
2015-03-02Add profiling infrastructure and widgetYuri Kunde Schlesner6-0/+232
2015-02-27GPU: Implemented bits 3 and 1 from the display transfer flags.Subv1-6/+16
Bit 3 is used to specify a raw copy, where no processing is done to the data, seems to behave exactly as a DMA. Bit 1 is used to specify whether to convert from a tiled format to a linear format or viceversa.
2015-02-22Frontends, HID: Add New 3DS specific pad buttons, and stub the touch one.Emmanuel Gil Peyrot2-12/+34
2015-02-11citra-qt: Add a vertex shader debugger.Tony Wasserka4-0/+357
2015-02-11Pica/DebugUtils: Factor out BreakPointObserverDock into its own file.Tony Wasserka5-50/+68
2015-02-11Asserts: break/crash program, fit to style guide; log.h->assert.harchshift4-6/+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 functionspurpasmart961-0/+8
2015-02-03citra-qt: Fix horrible scrolling responsiveness in disassembler by giving the uniformRowHeight hint.Tony Wasserka1-57/+60
2015-02-03citra-qt: Fix a crash when double-clicking a disassembler list item.Tony Wasserka2-12/+6
2015-02-01arm: Adios armemuLioncash1-2/+0
2015-01-30Silence a few warnings.Rohit Nirmal2-3/+3
2015-01-21Added HID_SPVR service and split HID_U implementation into service/hid/hid.xxxarchshift1-18/+18
2015-01-20citra-qt: Add option to hide dock widget title barsKingcom3-34/+86
2015-01-13Pica/Rasterizer: Add ETC1 texture decompression support.Tony Wasserka1-0/+2
2015-01-12Qt Callstack: Clear the callstack every time it's updatedarchshift2-0/+14
This fixes the issue that old members of the callstack would stick around, even when the callstack shortened.
2015-01-11citra-qt: Replace OnCpuStepped signal by new signals DebugModeEntered and DebugModeLeftKingcom9-15/+60
2015-01-10citra-qt: Add explicit casts to prevent some warnings.Subv1-2/+2
2015-01-10citra-qt: Fixed some Qt errors on initializationSubv2-4/+4
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-8/+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-09Move ThreadContext to core/core.h and deal with the falloutYuri Kunde Schlesner1-0/+1
2015-01-07citra-qt: Add check for valid address to call stackKingcom1-0/+3
2015-01-06citra-qt: Renamed all .hxx headers to .hchrisvj30-45/+45
2015-01-05Add support load 3DS roomDante384901-1/+1
2015-01-04citra-qt: Added license headers to files.chrisvj18-0/+72
2015-01-04Frontends: Shutdown core when emulation is stoppedYuri Kunde Schlesner1-0/+3
2015-01-01Silence some -Wsign-compare warnings.Rohit Nirmal3-12/+12
2015-01-01Make letter cases consistent in menus and widgetsDaniel Lundqvist6-10/+10
In various menu options letter cases were not consistent. This was also the case within various debugging widgets. This attempts to make letter cases consistent, but it is of course a matter of opinion which way is the correct one.
2015-01-01Change popout mode to "Single Window Mode"Daniel Lundqvist2-9/+9
2015-01-01Set object name for the graphics debuggerDaniel Lundqvist1-1/+1
Setting an object name for GPUCommandStreamWidget allows for saving the graphics debugger's state (if it's show, position, etc). This state is then restored when restarting the application.
2014-12-31SOC_U: Preliminary implementation of sockets.Subv1-1/+1
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-31Pica: Cleanup color conversion.Tony Wasserka1-8/+5
2014-12-31citra-qt: Fix displaying RGBA5551 framebuffers.Tony Wasserka1-0/+4
(not that it matters at the moment, because this code is not used yet)
2014-12-31citra-qt: Always show pica framebuffers as RGBA8.Tony Wasserka1-1/+2
We actually don't really know yet how the format is encoded. Hence just use what works.
2014-12-31Add citra icon to Windows executable and title barChin2-0/+1
2014-12-29GPU: Implement frameskip and remove forced framebuffer swap hack.bunnei1-0/+2
2014-12-28Qt: we don't need to check if model is valid.xdec1-1/+1
2014-12-28Fix crash when the disassembler pause button is pressed while no game is running.xdec1-1/+3
2014-12-27GPU: Change internal framerate to 30fps.bunnei1-1/+1
2014-12-26Remove duplicate workDaniel Lundqvist1-7/+0
2014-12-26Allow focus only when in popout modeDaniel Lundqvist2-4/+10
Only allow manually setting focus to the rendering widget when in Single Window mode. Apply this behavior to when changing the mode while an app is running.
2014-12-26Allow focus on the Qt render widgetDaniel Lundqvist2-0/+4
By default widgets are set to the focus policy Qt::NoFocus which disallows manually focusing it. Changing the policy to allow clicking the widget to set focus to it allows for keyboard input when not rendering to a popout window. This commit also sets focus to the widget when showing it. Fixes issue #158.
2014-12-21License changepurpasmart9613-13/+13
2014-12-20Pica/DebugUtils: Add an event triggered after loading a vertex.Tony Wasserka1-0/+1
2014-12-20Add support for a ridiculous number of texture formats.Tony Wasserka1-1/+8
2014-12-20Pica: Unify ugly address translation hacks.Tony Wasserka2-8/+8
2014-12-20Pica: Merge texture lookup logic for DebugUtils and Rasterizer.Tony Wasserka1-1/+1
This effectively adds support for a lot texture formats in the rasterizer.
2014-12-20citra-qt: Fix invalid memory read upon program startup.Tony Wasserka1-1/+2
This was caused by the framebuffer display widget not checking whether we are actually in a valid emulation state or not.
2014-12-20Pica: Initial support for multitexturing.Tony Wasserka1-7/+32
2014-12-20citra-qt: static-constify a map.Tony Wasserka1-6/+7
2014-12-20Clean up some warningsChin3-9/+9
2014-12-16HLE: Rename namespaces to match move & fix initialization orderYuri Kunde Schlesner1-6/+0
2014-12-15Clean up CMake library specificationYuri Kunde Schlesner1-0/+4
The X11 libraries don't need to be specified when doing dynamic linking
2014-12-13Remove old logging systemYuri Kunde Schlesner1-1/+0
2014-12-13Add configurable per-class log filteringYuri Kunde Schlesner2-7/+9
2014-12-13Convert old logging calls to new logging macrosYuri Kunde Schlesner4-9/+9
2014-12-13New logging systemYuri Kunde Schlesner1-3/+15
2014-12-09More cleanups.Tony Wasserka2-6/+13
2014-12-09citra-qt: Rename "Stop Tracing" to "Finish Tracing".Tony Wasserka1-1/+1
This better reflects that no commands are supposed to show up until you hit the button a second time.
2014-12-09More coding style fixes.Tony Wasserka2-2/+2
2014-12-09Some code cleanup.Tony Wasserka6-64/+63
2014-12-09citra-qt: Add pica framebuffer widget.Tony Wasserka4-0/+382
2014-12-09citra_qt: Add enhanced texture debugging widgets.Tony Wasserka2-18/+179
Double-clicking a texture parameter command in the pica command lists will spawn these as a new tab in the pica command list dock area.
2014-12-09citra-qt: Add texture viewer to Pica command list.Tony Wasserka2-1/+71
The texture viewer is enabled when selecting a write command to one of the texture config registers.
2014-12-09Add GUI widget for controlling pica breakpoints.Tony Wasserka4-0/+339
2014-12-09Pica/DebugUtils: Add breakpoint functionality.Tony Wasserka2-2/+15
2014-12-09citra-qt: Polish the pica tracing widget.Tony Wasserka2-1/+26
Changed start/stop button to reflect current tracing status. Properly labeled column headers.
2014-12-09citra-qt: Add a utility spinbox class called CSpinBox.Tony Wasserka3-0/+393
This class has a few advantages over the regular QSpinBox: - QSpinBox stores its as signed 32 bit integers, which for instance is unsuitable for representing memory addresses. CSpinBox uses 64 bit integers instead. - QSpinBox does not provide an easy way to handle number input from bases different than 10. - QSpinBox is quite inflexible in general and almost any sort of customization requires reimplementing it anyway.
2014-12-08Loader: Add 3DSX supportichfly1-1/+1
2014-12-03Change NULLs to nullptrs.Rohit Nirmal3-7/+7
2014-11-19Remove tabs in all files except in skyeye imports and in generated GL codeEmmanuel Gil Peyrot4-21/+21
2014-11-19Remove trailing spaces in every file but the ones imported from SkyEye, AOSP or generatedEmmanuel Gil Peyrot4-7/+7
2014-11-19Merge Config::ReadXYZsarchshift2-44/+19
2014-11-18citra-qt: Small cleanup.Tony Wasserka1-2/+1
2014-11-18EmuWindow: Remove window title getters/setters.Tony Wasserka2-9/+5
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/+9
2014-11-18Fixup EmuWindow interface and implementations thereof.Tony Wasserka2-25/+47
2014-11-18Viewport scaling and display density independenceKevin Hartman2-0/+25
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-12Citra-Qt: Use Core::RunLoop when not single stepping.bunnei1-12/+9
2014-11-05Qt: Auto-start game when selected, play game that's passed via argv[1].archshift1-2/+7
Also moves system initialization to when the game is booted.
2014-11-03Add support for disabling log from settingsSean3-0/+22
2014-11-02Fixed capitalization issuesGareth Poole1-2/+2
2014-10-28Added `gpu_refresh_rate` config setting for the new interpreter speed hack.archshift1-0/+2
2014-10-28Use configuration files to enable or disable the new dyncom interpreter.archshift2-1/+17
2014-10-26Add `override` keyword through the code.Yuri Kunde Schlesner4-12/+12
This was automated using `clang-modernize`.
2014-10-25ARM: Reorganized file structure to move shared SkyEye code to a more common area.bunnei1-1/+1
Removed s_ prefix
2014-10-23Use config files to store whether SDMC is enabled or notarchshift2-0/+17
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-12OpenGL renderer: Request a forward compatible context in citra-qtYuri Kunde Schlesner1-3/+3
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.archshift6-31/+135
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-18/+33
2014-09-07bootmanager::EmuThread: fixed initialization orderarchshift1-3/+2
2014-09-06core: Make the ARM disassembler use std::string internallyLioncash2-6/+4
2014-09-01Remove hand-crafted Visual Studio solution.Yuri Kunde Schlesner5-1105/+0
2014-09-01CMake cleanupYuri Kunde Schlesner1-16/+23
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 Schlesner1-1/+1
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-31Loader: Added support for loading raw BIN executables.bunnei1-1/+1
- Useful for debugging homebrew Qt: Updated GUI to support loading .bin files.
2014-08-28Loader: Added support for loading raw BIN executables.bunnei1-1/+1
- Useful for debugging homebrew Qt: Updated GUI to support loading .bin files.
2014-08-25Pica: Add support for dumping textures.Tony Wasserka1-1/+1
2014-08-25Pica/citra-qt: Replace command list view and command list debugging code with something more sophisticated.Tony Wasserka3-126/+64
2014-08-24Pass format to the QGLWidget and use atomic instead of mutex.Sacha2-13/+5
2014-08-24Fix EmuThread loop by ensuring it exits properly.Sacha2-9/+29
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-24Fix the threading for GL Context in Qt5.Sacha3-9/+21
Connect the emu_thread start/finish to a moveContext slot.
2014-08-20Revert "Removed redundant loop in EmuThread::run()"archshift1-7/+10
2014-08-19Add Qt5 option. Use Qt5 by default.Sacha1-13/+19
2014-08-18CMake CleanupSacha1-23/+9
2014-08-17Removed redundant loop in EmuThread::run()archshift1-10/+7
2014-08-15Bootmanager: changed `filename` to std::stringarchshift4-9/+10
2014-08-12Pica: Add command processor.Tony Wasserka1-1/+1
2014-08-12Changed iterators to use auto, some of which using range-based loopsarchshift1-15/+15
2014-08-12Remove the fancy RegisterSet class introduced in 4c2bff61e.Tony Wasserka1-1/+1
While it was some nice and fancy template usage, it ultimately had many practical issues regarding length of involved expressions under regular usage as well as common code completion tools not being able to handle the structures. Instead, we now use a more conventional approach which is a lot more clean to use.
2014-08-06GSP: Removed dumb GX prefixes to functions/structs in GSP namespace.bunnei1-8/+8
- Various other cleanups.
2014-08-06Qt: Removed unnecessary HW::Update.bunnei1-1/+0
2014-07-23citra-qt: Show function names in disassembler based on bunnei's suggestion.Tony Wasserka1-5/+21
2014-07-23Disassembler: Chose slightly lower value for chunk size.Tony Wasserka1-1/+3
2014-07-23GSP: Clean up GX command processing a lot and treat command id as a u8 rather than a u32.Tony Wasserka1-16/+18
Anonymous structs are not standard C++, hence don't use them.
2014-07-05Qt: Updated open dialog to include NCCH formats.bunnei1-1/+1
2014-07-02citra-qt: Rewrite disassembly view.Tony Wasserka2-60/+186
2014-06-25Loader: Implemented AppLoader interface for abstracting application loading.bunnei1-5/+2
- 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-22citra_qt: Removed autogenerated files from repo and fixed build issues.bunnei11-710/+5
2014-06-17Loader: Moved elf and loader modules to a "loader" subdirectory.bunnei2-2/+3
2014-06-12Further refine GPU command list debugging.Tony Wasserka1-4/+10
2014-06-12Refine command list debugging functionality and its qt interface.Tony Wasserka2-19/+107
2014-06-12citra-qt: Add command list view.Tony Wasserka7-0/+127
2014-06-12citra-qt: Add GX command history viewer.Tony Wasserka7-7/+151
2014-06-05qt: updated disassembler to show 2X as many instructionsbunnei1-1/+1
2014-05-20Improved clarity and whitespacearchshift1-1/+1
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-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-0/+3
2014-05-16added ability to load AXF files (same as ELF)bunnei1-1/+1
2014-05-01added symbol map load function to Qt GUIbunnei4-11/+31
2014-05-01Fixed indentsarchshift2-20/+20
2014-05-01Linux supportarchshift1-1/+1
2014-05-01Sets OGL version for Qt; will only work with Qt5archshift1-6/+10
2014-05-01A bit of Cmake lovearchshift1-2/+2
2014-04-29IT'S ALIVE!archshift1-2/+23
2014-04-24made qt window title consistentbunnei1-0/+4
2014-04-23fixes to build on linuxbunnei1-12/+12
2014-04-23updated CMakeLists for missing filesShizZy1-6/+6
2014-04-22Re-enable toggling window mode.Mathieu Vaillancourt4-48/+55
2014-04-22fixed order of LogManager and System initbunnei1-1/+1
2014-04-19Remove unused QTableViewMathieu Vaillancourt3-37/+2
2014-04-19UI/debugger changesMathieu Vaillancourt19-233/+285
2014-04-13Init window size from VideoCore. Start changing the default window behavior...Mathieu Vaillancourt5-29/+17
2014-04-13Show symbols in disasmMathieu Vaillancourt1-1/+9
2014-04-11Fixed GPLv2 license issuebunnei1-2/+7
Doing this from work via GitHub - Sorry for not combining with previous commits
2014-04-11Fixed GPLv2 license issuebunnei1-2/+7
Doing this from work via GitHub - Sorry for not combining with previous commits
2014-04-11Fixed GPLv2 license issuebunnei1-2/+7
2014-04-11Temporarily "fix" citra_qt for WindowsMathieu Vaillancourt17-577/+90
2014-04-09fixed project includes to use new directory structurebunnei2-76/+108
2014-04-09got rid of 'src' folders in each sub-projectbunnei34-0/+0
2014-04-05Remove Core::GetState(). Use new ARM_Interface instead.Mathieu Vaillancourt3-27/+25
2014-04-04More Qt changes for debuggerMathieu Vaillancourt9-187/+190
2014-04-01Load file in qt windowMathieu Vaillancourt1-12/+12
2014-04-01Basic QT windowMathieu Vaillancourt40-0/+4463