Brett Lawson
e8587a44b1
Don't use arrays for uniform buffers, and map pixel uniforms to binding 16+.
2016-06-21 14:12:28 -07:00
Brett Lawson
ab06b17ffe
Don't endian swap uniform buffers as GX2 API already requires this.
2016-06-21 14:12:28 -07:00
Brett Lawson
a1bbe26756
Implement stubby snd_core user/voice protection locking.
2016-06-21 14:12:27 -07:00
Brett Lawson
1b95a3d4f2
Remove superfluous texture parameter settings.
2016-06-21 14:12:27 -07:00
Brett Lawson
ca1f84a8be
Return the correct error code from async filesystem functions.
2016-06-21 14:12:26 -07:00
Brett Lawson
464c15607f
Fix some asserts to be emuasserts instead.
2016-06-21 14:12:26 -07:00
Brett Lawson
b95da47640
Added AXUserIsProtected and fixed error with FrameCallback registration.
2016-06-21 14:12:26 -07:00
Brett Lawson
2247cfc64a
Update AX to support invoking user frame callbacks.
2016-06-21 14:12:25 -07:00
Brett Lawson
b0f125e2fd
Fix bug in ppcinvoke for argumentless functions.
2016-06-21 14:12:25 -07:00
Brett Lawson
8492f5de1d
Increase JIT maximum instruction count.
...
Some games were actually bumping into this due to massive
unrolled loops.
2016-06-21 14:12:24 -07:00
Brett Lawson
b8aee15c6c
Fixed JIT Fallback instruction view to work properly.
2016-06-21 14:12:24 -07:00
Brett Lawson
e42f401588
Added compile-time option for tracing super-common functions.
2016-06-20 23:58:53 -07:00
Brett Lawson
f7f3584757
Fixed GX2 dumping to use the new configuration handling.
2016-06-20 23:58:35 -07:00
Brett Lawson
4cd02db1e6
Added JIT fallback statistics to on-screen debugger.
2016-06-20 04:41:15 -07:00
Brett Lawson
525443c4d0
Implemented GX2RSetAttributeBuffer within GX2 module.
2016-06-20 02:19:30 -07:00
Brett Lawson
604f1cfc30
Use a mutex to guarentee thread-safe reservations.
...
Previously, reservations were not atomically handled, PPC does
not require that the reservation address match the storage
address, this means a compare_and_exchange is not possible.
We have reverted to using a lock for this case. Note that the
AtomicityLock class is templated to remove all locking overhead
from non-atomic instructions in spite of using a generic
function to handle most load and store operations.
2016-06-20 01:28:59 -07:00
Brett Lawson
a64975c327
Properly handle GHS exception setup function pointer.
2016-06-19 04:49:48 -07:00
Brett Lawson
92a7b61e11
Added support for branch tracing.
2016-06-19 04:49:47 -07:00
Brett Lawson
fac14338f1
Added global symbol table to loader.
...
This is used by branch tracing as well as the debugger
to identify symbols at particular addresses.
2016-06-19 04:49:47 -07:00
Brett Lawson
14cc257cf7
Fixed access violation handler from crashing on Windows.
2016-06-19 04:49:46 -07:00
Brett Lawson
f076c816c1
Ensure that all loaded sections are recorded.
...
Previously, only PROGBITS sections were actually
included in the list of active sections.
2016-06-19 04:49:46 -07:00
Brett Lawson
46705edd8d
Update RPL loader to load ALL symbols from RPL.
...
This is needed to load debug symbols from games which
contain them for the debugger and branch tracer.
2016-06-19 04:49:46 -07:00
Brett Lawson
8ae146cfd1
Move Fiber* from OSThread to OSContext.
2016-06-19 04:49:45 -07:00
Brett Lawson
20e655c17d
Make threads inherit their parent affinity if not set.
2016-06-19 04:25:21 -07:00
Brett Lawson
dfd7b24e63
Force ColorBuffer and DepthBuffer to preset values.
...
This is how it was in the past and resolves some frustrating
problems that were occuring due to our imperfect handling
of determining GL type from surface type.
2016-06-19 04:25:21 -07:00
Brett Lawson
ce64a7523c
Use proper DEPTH_COMPONENT for depth buffer texture types.
2016-06-19 04:25:21 -07:00
Brett Lawson
5b5a97de8f
Remove unused JIT log spam...
2016-06-19 04:25:20 -07:00
Brett Lawson
4bcc364706
Kernel tracing should be off by default if not in config.
2016-06-19 04:02:06 -07:00
Brett Lawson
4012dc9c58
Corrected issue causing RTT to be inverted on the Y-axis.
2016-06-18 21:48:10 -07:00
James Benton
79c1b824b5
opengl: Fix reuse of same attrib buffer address.
2016-06-18 12:13:13 +01:00
James Benton
a43f88d251
opengl: Reorder includes to prevent collision with WINAPI in glbinding.
2016-06-18 12:13:13 +01:00
Brett Lawson
168103c640
Fix bug causing "gpu force sync" to always be enabled.
2016-06-18 03:49:02 -07:00
Brett Lawson
e9b296c780
Fix incorrect handling of depth buffer surface data.
2016-06-18 03:49:02 -07:00
Brett Lawson
39ae129ac1
Implemented common surface textures in GPU.
...
Previously our color buffers, depth buffers and textures were
all loaded individually through separate maps from ppc to host.
This meant that games doing RTT would not render correctly.
2016-06-18 03:04:22 -07:00
Brett Lawson
23b9d67ec9
Fix bug with default values assigned to fs_out shader variables.
...
This cause some games to start rendering!
2016-06-17 23:27:08 -07:00
Brett Lawson
1b263f0f94
Added option gpu::force_sync which forces emulator to run in step with GPU.
...
This option causes the GPU Driver to block inside of getSwapBuffers
until the game actually performs a SwapBuffer. This is neccessary to
enable the use of effective Nsight debugging.
2016-06-17 23:26:45 -07:00
Brett Lawson
e8817166a7
Fix bug where swap buffers are rendered before they are set up.
2016-06-17 23:19:37 -07:00
Brett Lawson
05fcd09553
Added stub implementations for snd_core voices.
2016-06-17 23:06:47 -07:00
James Benton
4b37a1a9c7
gx2: Remove trailing spaces from gx2_display.
2016-06-17 23:16:31 +01:00
James Benton
9634144913
gx2: Fix display lists overwriting active buffer.
2016-06-17 23:16:31 +01:00
Brett Lawson
1a81838f82
Added code to invoke debugger when an access violation occurs.
2016-06-17 06:34:44 -07:00
Brett Lawson
7548900d20
Added support for viewing registers of paused threads in debugger.
2016-06-17 06:31:02 -07:00
Brett Lawson
27dbf67307
Added information about branch targets based on analysis data.
2016-06-17 12:57:33 -07:00
Brett Lawson
0bf63d40d5
Fix GCC warnings in debugger_analysis.cpp
2016-06-17 12:56:31 -07:00
Brett Lawson
8ecc9b2f6e
Fix OFFSET warnings for GCC builds.
2016-06-17 04:11:11 -07:00
Brett Lawson
e039c9ee47
Fix linux GCC builds.
2016-06-17 03:44:39 -07:00
Brett Lawson
961b3d3e16
Added missing string in analyser.cpp for gcc builds.
2016-06-16 03:25:48 -07:00
Brett Lawson
c1504ec926
Fix slash error on debugger_analysis.cpp
2016-06-16 03:11:37 -07:00
Brett Lawson
075fca40ab
Improved thread view to show priority/affinity/coretime.
2016-06-16 02:59:23 -07:00
Brett Lawson
387453b389
Added tracking of per-thread core time.
2016-06-16 02:59:18 -07:00