Commit Graph

394 Commits

Author SHA1 Message Date
polaris-
31dee93e84 Implement gdbstub 2015-10-04 11:16:59 -04:00
bunnei
11a64acf23 Merge pull request #1095 from archshift/game-list
Initial implementation of a game list
2015-10-01 23:35:19 -04:00
archshift
0fae76c741 Game list: save and load column sizes, sort order, to QSettings 2015-10-01 19:39:15 -07:00
archshift
797b91a449 Add menu item for selecting the game list folder 2015-10-01 19:39:14 -07:00
archshift
6e1bb58ee8 Initial implementation of a game list 2015-10-01 19:39:14 -07:00
archshift
f297a59985 Add helper function for creating a readable byte size string. 2015-10-01 19:39:14 -07:00
archshift
afd06675fa Don't show render window until a game is started 2015-10-01 19:39:14 -07:00
LittleWhite
d06824809f Fix for the refresh issue when no rendering is done 2015-09-24 21:48:41 +02:00
Kloen
541fc80240 citra-qt: Fix connect error on startup 2015-09-18 11:36:59 +02:00
Yuri Kunde Schlesner
b3af7aad9e Merge pull request #1123 from yuriks/gsp-flush
GSP: Implement command 0x05, used for flushing caches
2015-09-14 17:00:45 -03:00
bunnei
d6e56b8c88 Merge pull request #1111 from LittleWhite-tb/qt-close-renderwindow
Stop emulation when render window is closed
2015-09-14 15:23:08 -04:00
Yuri Kunde Schlesner
1ed7f3e028 GSP: Implement command 0x05, used for flushing caches
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-14 16:19:05 -03:00
Lioncash
07bfe0abbb general: Replace 0 literals with nullptr where applicable 2015-09-11 23:11:01 -04:00
Yuri Kunde Schlesner
5bca1e6adf Merge pull request #1147 from lioncash/nullptr
General: Replace NULL and '0' usages with nullptr where applicable
2015-09-11 18:56:41 -03:00
Yuri Kunde Schlesner
5bf8eed96c Merge pull request #1149 from lioncash/override
graphics_breakpoints_p: Add missing override specifier
2015-09-11 18:24:24 -03:00
Lioncash
ec93d6e19a graphics_breakpoints_p: Add missing override specifier 2015-09-11 16:32:02 -04:00
Lioncash
60b3fc01a2 General: Replace NULL and '0' usages with nullptr where applicable 2015-09-11 14:59:49 -04:00
Lioncash
abe5bb4019 citra_qt: Reorganize headers 2015-09-11 00:57:24 -04:00
Yuri Kunde Schlesner
2aad510c84 Merge pull request #1125 from yuriks/uilayout-config
citra-qt: Separate UI layout state in a separate section of the config
2015-09-07 23:52:13 -03:00
Yuri Kunde Schlesner
3244b2b79e citra-qt: Separate UI layout state in a separate section of the config
Closes #1113
2015-09-07 22:11:21 -03:00
Yuri Kunde Schlesner
06b3891c66 citra-qt: Trim recently used files list to size when insterting new item
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-07 22:00:08 -03:00
bunnei
0f2005c370 Merge pull request #1118 from Kloen/monospace-font
citra-qt: Use monospace font on Disassembler and ARM Registers
2015-09-07 17:52:07 -04:00
Yuri Kunde Schlesner
2011f9a042 Shader Debugger: Allow editing of input vertex data 2015-09-07 16:46:31 -03:00
Yuri Kunde Schlesner
2bdf9ede91 Shader Debugger: Highlight current instruction instead of focusing
This avoid some annoying focus stealing in some situations, and looks
nicer in general.
2015-09-07 16:46:31 -03:00
Yuri Kunde Schlesner
2c98275b51 Shader Debugger: Remove useless signal 2015-09-07 16:46:30 -03:00
Yuri Kunde Schlesner
f77dfb3966 Shader Debugger: Fix only first vertex attribute being loaded 2015-09-07 16:46:29 -03:00
Yuri Kunde Schlesner
c1beb2ce20 Shader Debugger: Fix freeze when double-clicking shader disassembly 2015-09-07 16:46:29 -03:00
Yuri Kunde Schlesner
2d195ba64e Shader Debugger: Improve space efficiency of the layout 2015-09-07 16:46:28 -03:00
Yuri Kunde Schlesner
8540e02176 Shader Disassembly: Fix printing of jump offsets 2015-09-07 16:46:27 -03:00
Yuri Kunde Schlesner
3194f40e96 Shader Disassembly: Fix disassembly of IFU/CALLU instructions 2015-09-07 16:46:27 -03:00
Yuri Kunde Schlesner
bc3f57efd0 Shader Disassembly: Implement support for MAD/MADI 2015-09-07 16:46:26 -03:00
Yuri Kunde Schlesner
86d5461bcd Shader Disassembly: Introduce variables to hold common subexpressions 2015-09-07 16:46:25 -03:00
Yuri Kunde Schlesner
ecbad494d9 Shader Debugger: Initialize input_vertex to prevent crashes
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-07 16:46:25 -03:00
Yuri Kunde Schlesner
9431ee330a Shader Disassembly: Cleanup code and improve output alignment 2015-09-07 16:46:23 -03:00
Kloen
a962c30df1 citra-qt: Use monospace font on Disassembler and ARM Registers 2015-09-07 21:02:45 +02:00
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
Lioncash
e7ebb9d36c citra-qt: Add a missing header guard to util.h 2015-08-25 23:07:33 -04: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
Yuri Kunde Schlesner
c7745408f7 citra-qt: Add helper function to get a monospace QFont 2015-08-24 22:16:28 -03:00
LittleWhite
adee93d784 Improvements for MRU
avoid duplicates
always put the last file loaded to top of the list
2015-08-19 21:33:34 +02:00
bunnei
1f18c9f8dd Merge pull request #1034 from yuriks/rg8-textures
videocore: Added RG8 texture support
2015-08-16 22:17:12 -04:00
Tony Wasserka
f5144e6c10 Merge pull request #997 from Lectem/cmdlist_full_debug
citra-qt: Improve pica command list widget (add mask, fix some issues)
2015-08-16 13:34:45 +02:00
Tony Wasserka
32592364b8 citra-qt/VertexShader: Minor UI improvements.
Renamed "Iteration index" to the (hopefully) more intuitive "Cycle Index".
Added flexible space at the bottom of the widget.
2015-08-16 14:12:12 +02:00
Tony Wasserka
493c432d1e citra-qt: Fix comment style. 2015-08-16 14:12:11 +02:00
Tony Wasserka
33ba604fd9 Introduce a shader tracer to allow inspection of input/output values for each processed instruction. 2015-08-16 14:12:11 +02:00
Tony Wasserka
2e3601f415 Pica/DebugUtils: Include uniform information into shader dumps. 2015-08-16 13:22:01 +02:00
Tony Wasserka
4cb302c8ae citra-qt: Improve shader debugger.
Now supports dumping the current shader and recognizes a larger number of output semantics.
2015-08-16 13:22:00 +02:00
Tony Wasserka
6a5d560c4f citra-qt: Print the correct swizzle mask for SRC2 in the shader disassembler. 2015-08-16 13:19:40 +02:00
Yuri Kunde Schlesner
7d0c17d2ae citra-qt: Give RG8 format a proper name in the texture viewer 2015-08-16 02:36:33 -03:00
bunnei
882040fde7 Merge pull request #1017 from LittleWhite-tb/qt-recent-files
citra-qt: save path for recent files loaded
2015-08-16 00:22:10 -04: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
bunnei
18527b9e21 Shader: Move shader code to its own subdirectory, "shader". 2015-08-15 17:33:42 -04:00
bunnei
642b9b5030 GPU: Refactor "VertexShader" namespace to "Shader".
- Also renames "vertex_shader.*" to "shader_interpreter.*"
2015-08-15 17:33:41 -04:00
bunnei
cebf245504 Merge pull request #1027 from lioncash/debugger
debugger: Add the ability to view VFP register contents
2015-08-13 18:13:25 -04:00
Emmanuel Gil Peyrot
5115d0177e ARM Core, Video Core, CitraQt, Citrace: Use CommonTypes types instead of the standard u?int*_t types. 2015-08-11 22:38:44 +01:00
LittleWhite
66eabd326f Add menu and logic to save and load recently loaded files.
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-11 18:45:44 +02:00
Lioncash
132961b14f registers: Support viewing VFP registers 2015-08-07 02:11:07 -04:00
Lioncash
5855cf087d registers: Fix a typo with CPSR's name 2015-08-06 21:11:25 -04:00
LittleWhite
cb405ad1b4 Save the path leading where the last file have been loaded
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-31 17:51:01 +02:00
bunnei
9221e6e67a Merge pull request #1011 from lioncash/initializer
citra-qt: Adjust initializer list order
2015-07-29 16:46:34 -04:00
Lioncash
5df3afd522 citra-qt: Adjust initializer list order
Silences a warning.
2015-07-29 12:03:59 -04:00
Lioncash
13ddf60f60 citra-qt: Pass string by const reference 2015-07-29 11:54:07 -04:00
LittleWhite
5e1c32048f Update Start menu text to match with the real state of the emulator.
Move start menu text update in ShutdownGame as adviced by neobrain
2015-07-28 21:04:14 +02:00
Trung Do
cc98866b25 Settings: Fix saving wrong values for input configuration 2015-07-28 13:51:09 -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
Lectem
b335cce22e citra-qt/command list: Do not recreate a widget after each selection
Recreating / replacing a widget is slow since it triggers a layout pass.
2015-07-26 16:23:28 +02:00
Lectem
e663751f8b citra-qt/command list: Add mask column 2015-07-26 16:23:12 +02:00
Lectem
cd06f5cedb citra-qt/command list: monospace font on windows 2015-07-26 16:07:46 +02:00
Tony Wasserka
7a132e2a77 Merge pull request #986 from Lectem/better_widgets
citra-qt: Improve pica command list widget.
2015-07-26 14:09:03 +02:00
Lioncash
dfb424b6d1 dyncom: Rename armdefs.h to armstate.h 2015-07-25 22:10:44 -04:00
Lioncash
4bb1a5ca47 dyncom: Get rid of skyeye typedefs 2015-07-25 20:52:10 -04:00
Lectem
e286cfbadf citra-qt/command list: Enable uniform row heights and automatically resize columns.
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-25 22:13:23 +02:00
Lectem
129e3dedc3 citra-qt/command list: Split register and value columns.
Also removed the extra spaces for each cell
2015-07-25 22:13:04 +02:00
Yuri Kunde Schlesner
9a0f9f12cd Merge pull request #892 from zawata/another-warning-fixes
Yet More Warning Fixes
2015-07-25 12:50:32 -07:00
Yuri Kunde Schlesner
43e1f56ff5 Merge pull request #981 from Subv/checkboxes
Qt/GPU Breakpoints: Changed the widget to have a checkbox next to each bp type
2015-07-25 12:00:10 -07:00
Subv
23fd13dd64 Qt/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. 2015-07-23 19:37:52 -05:00
Subv
6c0ea5f5e8 Qt/GPU Breakpoints: Added three more breakpoint types:
* 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-23 11:47:34 -05:00
Tony Wasserka
aa6dfdb827 Merge pull request #929 from neobrain/geoshader_definitions
Pica/Shader: Add geometry shader definitions.
2015-07-21 15:24:48 +02:00
Yuri Kunde Schlesner
a48aa4f924 Resolve issue accidentally left unaddressed in PR #930 2015-07-21 06:48:30 -03:00
Yuri Kunde Schlesner
8833852acd Merge pull request #930 from neobrain/copypaste_commandlist
citra-qt: Add support for copying the command list contents to clipboard.
2015-07-20 21:44:57 -07:00
Subv
3600c32483 Rasterizer/Textures: Fixed a bug where the I4 format would get twice the real stride.
Also added its name to the texture viewer widget
2015-07-19 13:15:23 -05:00
zawata
c66b5ca3d9 Citra_QT : Another Conversion Warning Fix 2015-07-19 03:59:52 -07:00
zawata
3c802b06e9 Citra_QT : Fix Conversion Warnings 2015-07-19 03:59:44 -07:00
Tony Wasserka
7fd03750bd citra-qt: Add support for copying the command list contents to clipboard. 2015-07-15 17:51:59 +02:00
Tony Wasserka
33568494af Pica/Shader: Add geometry shader definitions. 2015-07-15 17:31:57 +02:00
Yuri Kunde Schlesner
1fc0347d27 Merge pull request #924 from aroulin/qt-disassembly-step
Qt: Fix disassembly widget stepping
2015-07-13 14:16:36 -07:00
Tony Wasserka
302e9a20f3 citra-qt: Add depth formats to framebuffer viewing widget. 2015-07-13 23:54:38 +02:00
Tony Wasserka
88df3fbf27 citra-qt: Properly specify the framebuffer format. 2015-07-13 23:52:29 +02:00
Tony Wasserka
29abb11e8f CiTrace: Clean up initialization method. 2015-07-13 22:27:21 +02:00
Tony Wasserka
dc8295298e CiTrace: Record LCD registers. Cleanup recording code. 2015-07-13 22:27:21 +02:00
Tony Wasserka
fd62580985 CiTrace: Record default vertex attributes. 2015-07-13 22:27:21 +02:00
Tony Wasserka
01a526e1c4 citra-qt: Properly disable the CiTrace widget upon starting/stopping emulation. 2015-07-13 22:27:21 +02:00
Tony Wasserka
902fa4da52 Add CiTrace recording support.
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-13 22:27:20 +02:00
aroulin
7ccce98389 Qt: Fix disassembly widget stepping 2015-07-13 17:27:12 +02: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