Lioncash
7e4fb4db19
dyncom: Remove code duplication regarding thumb instructions
2015-07-27 22:22:00 -04:00
Lioncash
a507ea23c1
dyncom: Migrate exclusive memory access control into armstate
2015-07-27 22:06:59 -04:00
Lioncash
db4e99c186
dyncom: Remove duplicated typedef and extern
...
These are already present in arm_dyncom_dec.h.
2015-07-27 22:06:51 -04:00
bunnei
62caa89f48
Merge pull request #1001 from lioncash/arm
...
dyncom: Centralize state-related functions.
2015-07-27 01:09:46 -04:00
bunnei
e1a3fed6ff
Merge pull request #991 from yuriks/globjects
...
OpenGL: Make OpenGL object resource wrappers fully inline
2015-07-26 16:37:33 -04:00
Lioncash
816b1ca776
dyncom: Use std::array for register arrays
2015-07-26 13:21:04 -04:00
Lioncash
0ecc6e2f04
dyncom: Use ARMul_State as an object
...
Gets rid of C-like parameter passing.
2015-07-26 13:18:32 -04:00
bunnei
cb76453ec4
Merge pull request #992 from yuriks/hot-path-debug
...
VideoCore: #ifdef out some debugging routines
2015-07-26 11:45:51 -04:00
Lectem
facb2555a9
citra-qt/debug_utils: Use lock_guard everywhere
...
unique_lock were being used as lock_guards.
Also replaced manual lock/unlock by lock_guard for harmonization.
2015-07-26 16:28:44 +02: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
Yuri Kunde Schlesner
1762267de4
OpenGL: Make OpenGL object resource wrappers fully inline
...
The functions are so simple that having them separate only bloats the
code and hinders optimization.
2015-07-26 10:58:58 -03:00
Tony Wasserka
72237a9305
Merge pull request #987 from yuriks/regnames
...
Videocore: Don't reinitialize register name map on every query.
2015-07-26 15:56:56 +02:00
Yuri Kunde Schlesner
e130dac7de
Videocore: Don't reinitialize register name map on every query
...
This greatly speeds up the command list debug widget.
2015-07-26 10:10:10 -03:00
Yuri Kunde Schlesner
a99fb226fe
Merge pull request #995 from linkmauve/remove-dead-option
...
Remove dead gpu_refresh_rate option from the default ini file
2015-07-26 05:18:39 -07: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
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
Yuri Kunde Schlesner
edc8b11e25
Merge pull request #994 from yuriks/vsh-interpreter-opt
...
Optimisations and cleanups in the shader interpreter
2015-07-26 04:56:51 -07:00
Yuri Kunde Schlesner
4909a1486e
Videocore: Simplify variables in vertex shader interpreter
...
Simplifies the code and gives a tiny speed-up.
2015-07-26 08:49:35 -03:00
Yuri Kunde Schlesner
877d2a0e48
Videocore: Replace std::stack in shader interpreter with static_vector
...
Shaves off 1/3rd of the vertex shader time in Fire Emblem
2015-07-26 08:49:35 -03:00
Tony Wasserka
31a7b93c89
Merge pull request #993 from yuriks/update-nihstro
...
Update nihstro to latest master.
2015-07-26 13:33:33 +02:00
Yuri Kunde Schlesner
a25d1814d5
Update nihstro to latest master
2015-07-26 07:12:28 -03:00
Yuri Kunde Schlesner
13347997ba
VideoCore: #ifdef out some debugging routines
...
Some disabled debugging functionality was being called from rendering
routines in VideoCore. Although disabled, many of them still allocated
memory or did some extra work that was enough to show up in a profiler.
Gives a slight (~2ms) speedup.
2015-07-26 06:55:47 -03:00
bunnei
392c7feba0
Merge pull request #990 from lioncash/arm
...
dyncom: General cleanup
2015-07-25 23:12:34 -04:00
Lioncash
03213f893e
dyncom: Remove unnecessary initialization code.
...
Targeting ARM version variants was only a thing on armemu.
The reset routine also does basically the same thing as NewState.
2015-07-25 22:10:54 -04:00
Lioncash
3257d797e1
dyncom: Remove unnecessary abort-related cruft
...
Both the MPCore and the ARM9 have the same data abort model (base restored), so differentiating isn't necessary.
2015-07-25 22:10:53 -04: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
Lioncash
0191c26521
dyncom: Move helper functions to their own header
2015-07-25 20:35:18 -04:00
Lioncash
6b73e4566b
dyncom: Move arminit.cpp and armsupp.cpp into skyeye_common
2015-07-25 20:01:44 -04:00
Yuri Kunde Schlesner
453764aefc
Merge pull request #989 from lioncash/extern
...
armdefs: Remove unnecessary extern keywords
2015-07-25 15:40:23 -07:00
Lioncash
f7ba683dc3
armdefs: Remove unnecessary extern keywords
2015-07-25 18:32:57 -04:00
Yuri Kunde Schlesner
6e1659c9fd
Merge pull request #988 from lioncash/else
...
loader: Remove unnecessary else usages
2015-07-25 15:19:38 -07:00
Lioncash
43d799fd9d
loader: Remove unnecessary else usages
2015-07-25 18:10:13 -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
24d7c05c8d
Merge pull request #888 from zawata/Warning-Fixes-2
...
Core\HLE : Fix Warning
2015-07-25 12:55:34 -07:00
Yuri Kunde Schlesner
00529c71d4
Address error that remained in last merge
2015-07-25 16:54:51 -03: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
599744921d
Service/APT: Fixed a regression, PreloadLibraryApplet should also start an applet when called.
2015-07-23 21:32:30 -05:00
Subv
ce31184557
Service/APT: Return proper parameters in GetLockHandle.
...
Documented some APT functions
This allows applets to boot.
2015-07-23 20:46:11 -05: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
Yuri Kunde Schlesner
a989522384
Merge pull request #983 from yuriks/null-memory-fill
...
GSP: Don't try to write memory fill registers if start address is 0
2015-07-23 17:31:38 -07:00
Yuri Kunde Schlesner
3b61dd97e0
GSP: Don't try to write memory fill registers if start address is 0
...
Verified to be what GSP does via REing. Fixes invalid virt->phys
translation error spam in some games.
2015-07-23 21:20:01 -03:00
Tony Wasserka
1760eb5ca6
Merge pull request #980 from Subv/more_breakpoints
...
Qt/GPU Breakpoints: Added three more breakpoint types.
2015-07-24 01:58:11 +02:00
Yuri Kunde Schlesner
1fe9b0b82e
VideoCore: Fix values of unset components in input attribute arrays
...
If an input attribute array had a field with less than 4 components, the
remaining components were left unset if not specified by a default
vertex attribute. If neither mechanism would set a component, it would
assume a garbage value.
It has been verified that the hardware behavior is to instead to set the
missing components from the fixed default of (0 0 0 1). The default
vertex attribute values aren't used at all if a vertex array is
specified for that attribute.
Fixes UI graphics on Fire Emblem: Awakening, a small texturing glitch
when selecting a character in Cubic Ninja, as well as eliminating the
unset-W hack which was required for Ocarina of Time to not have
garbled triangles.
This change has been tested against hardware.
2015-07-23 16:51:25 -03:00
Yuri Kunde Schlesner
4e09202226
VideoCore: Saturate vertex colors before interpolating
...
During testing, it was discovered that hardware does not interpolate
colors output by the vertex shader as-is. Rather, it drops the sign and
saturates the value to 1.0. This is done before interpolation, such that
(e.g.) interpolating outputs 1.5 and -0.5 is equivalent to as if the
shader had output the values 1.0 and 0.5 instead, with the interpolated
value never crossing 0.0.
This change has been tested against hardware.
2015-07-23 16:51:24 -03: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