James Benton
5f6beb8eac
latte-assembler: Clean up duplicated Gpr in grammar.
2017-05-11 00:32:15 +01:00
James Benton
fe96739b02
latte-assembler: Clean up exceptions.
2017-05-11 00:32:04 +01:00
James Benton
7c8466cc19
tools: Add a latte assembler.
...
First pass, a good start but could do with some improvements!
2017-05-10 18:06:03 +01:00
James Benton
34901fb792
tools: Add pm4-replay-qt.
...
Basic skeleton app now, let's see if we can iterate on this until we have
something useful?
2017-05-02 22:28:20 +01:00
James Benton
46d99e699c
cmake: Only build pm4-replay with DECAF_GL.
...
Only the OpenGL backend is supported for now.
2017-05-02 22:28:20 +01:00
James Benton
600df0c6b4
cmake: Fix DECAF_SDL option to actually toggle building of SDL applications.
...
Also add DECAF_QT option for future use ;).
2017-05-02 22:28:20 +01:00
James Benton
e7e8aa42bd
tools: Add wiiu-rpc tool client & server.
2017-05-02 22:28:20 +01:00
James Benton
6fff350f43
cmake: Specify render backend using DECAF_GL option.
...
Also changed define DECAF_NOGL to DECAF_GL.
Added skeleton code for Vulkan backend and driver.
2017-05-02 22:28:20 +01:00
James Benton
f0ae3f4039
Rewrite gfd reading / writing and move it to libgfd.
2017-04-25 23:34:10 +01:00
James Benton
a364565f8b
Move to a .toml config file and try to unify config loading.
...
Still not an ideal solution, but it's at least a step in the right direction.
2017-04-24 23:32:00 +01:00
James Benton
d67a59f6e4
Refactor GPU code out of libdecaf/gpu and in to libgpu.
2017-04-24 17:22:10 +01:00
James Benton
b6e752531d
cmake: Add CMake build support for CPU & HLE tests.
2017-04-21 14:16:16 +01:00
James Benton
3c3646147f
New virtual memory implementation.
2017-04-21 00:19:39 +01:00
Peter Mackay
61e22d9aa8
Remove macOS dependency on OpenGL.
2017-04-16 10:15:03 +01:00
Peter Mackay
268732e046
Looks like the bug was duplicated elsewhere.
...
Apologies for not catching it in the other commit.
2017-04-14 15:30:22 +01:00
Andrew Church
62020bb36c
Only enable the glbinding command callback when debugging.
...
Enabling the callback introduces significant overhead; I've observed
slowdown of up to 35% in GPU-bound code, with the GPU thread spending
over 15% of its time just in malloc() and free() calls from glbinding.
2017-04-05 05:51:06 +09:00
James Benton
9b26b69c9a
Add breakpoint support to JIT.
2017-04-03 22:58:49 +01:00
James Benton
4c2049bf47
New JIT implementation using libbinrec.
2017-04-01 17:04:30 +01:00
James Benton
f0f9f45fb3
Fix hardware-test build.
2017-03-27 23:19:12 +01:00
James Benton
a890721718
cmake: Cleanup install.
2017-03-16 13:27:19 +00:00
Andrew Church
83e1c6be02
hwtest-achurch: Fix Linux build error.
2017-03-02 01:20:40 +09:00
James Benton
94b97d79ef
Remove types.h and virtual_ptr.h
2017-03-01 13:43:16 +00:00
James Benton
f114c98f99
Update spdlog to v0.12.0
2017-02-21 11:41:31 +00:00
James Benton
4646c4190e
Update gsl-lite
2017-02-21 11:41:31 +00:00
James Benton
2edad665a3
Use CMake to build for Windows.
2017-02-20 19:25:39 +00:00
Andrew Church
5fff296aaa
Remove execute permissions from source files.
2016-12-14 18:11:38 +09:00
James Benton
5b3c7006dc
gfd-tool: Update to use new gfd::Reader.
...
This means we can now print all the pointed-to data, such as attribVars,
samplerVars, uniformVars, etc.
2016-10-02 12:27:55 +01:00
James Benton
d94502d600
gfdtool: Disable broken texture conversion.
...
This needs fixing... TODO!
2016-10-02 12:27:46 +01:00
James Benton
20b8ee01f3
pm4-replay: Explicitly use gsl::as_span for pm4 packets.
...
Fixes compile error on gcc.
2016-09-13 22:58:05 +01:00
James Benton
f0edddf15b
pm4-replay: Fix incorrect parameter order for file seek.
2016-09-13 22:57:40 +01:00
James Benton
92a5b60381
cmake: Add pm4-replay CMakeLists.
2016-09-13 22:57:13 +01:00
Brett Lawson
d871756e66
Fix some things that were missed in the last commit.
...
There were some crazy changes to the debugger::ui drawing
code that I hadn't noticed. I fixed them and then added
the blank DX12 drawer as I did with the rest of the draw
components.
2016-09-06 01:20:09 -07:00
Brett Lawson
e2b1d17831
Refactor decafsdl and libdecaf to support new backends.
...
Note that this refactor also includes a blank setup
for DX12 support.
2016-09-06 00:45:28 -07:00
James Benton
34cd5982da
decaf: Rewrite filesystem.
...
Adds support for writing files to host file system.
Adds file permissions to prevent corruption of game files.
2016-09-02 01:34:22 +01:00
James Benton
a5e9d5a959
Move pm4-replay to tools folder.
2016-08-31 22:55:23 +01:00
Brett Lawson
9ae08f3e40
Implement a circular buffer to handle command buffer pool.
...
This more closely mimics the behaviour present in GX2. Note that
we currently require a lock to handle the pool itself, though in
the future, we may be able to implement a lock-free queue which
is used by the GPU to store `completed` buffers in, which can
later be picked up by GX2 when it tries to do an allocation. This
commit also cleans up a few things that were wierd about our
display list implementation.
2016-08-14 03:55:50 -07:00
James Benton
d92925d662
common: Improve bitfield syntax.
...
- bitfield.field() instead of .field().get()
- bitfield.field(x) instead of .field().set(x)
2016-08-04 16:07:21 +01:00
James Benton
6cf9ece11d
Fix some type conversion issues brought up by static analysis.
2016-08-03 11:49:41 +01:00
James Benton
ec66df5284
Fix gfdtool build.
2016-07-31 21:31:30 +01:00
Brett Lawson
c3d66d983e
Updated hwtest-achurch to test paired singles.
2016-07-15 18:04:37 -07:00
James Benton
9e677c6b37
Update fuzztests and hardwaretests to use MEM2Base.
2016-07-14 11:09:14 +01:00
Brett Lawson
0e5da8c9ce
Added achurch's hardware testing system to help testing.
2016-07-10 13:49:26 -07:00
James Benton
8514a99944
Improve error messages by introducing decaf_assert.h
2016-07-10 01:38:42 +01:00
Brett Lawson
94f6ac2715
Updated hardware tests to ignore FMADD/FMSUB.
...
We are already aware that these instructions do not return
perfectly accurate results. It does not make sense to
intentionally cause these tests to fail.
2016-07-08 01:25:15 -07:00
Brett Lawson
37d803144d
Fix hardware tests to work properly with the JIT.
...
This was broken a few refactors ago and was not fixed.
2016-07-08 01:25:11 -07:00
James Benton
ac7dab4085
gx2: Move to use common enum macros.
2016-07-05 19:26:28 +01:00
James Benton
9c1b0eeba2
New simpler shader decompiler.
...
The previous shader decompiler tried to be very clever in reversing control flow,
that was a bit unreliable as it made a few assumptions which turned out to not
always be true. I believe in the future we could still write a proper decompiler
which correctly reverses control flow by inspecting the stack, but for now let's
keep it very simple and use a basic bitch decompiler which uses an actual shader
stack similar to how the GPU itself works.
2016-07-03 21:46:48 +01:00
James Benton
f5abc2367b
Fix tools builds.
2016-06-14 01:17:31 +01:00
James Benton
b98426d6dd
Fix hardware-tests build
2016-06-12 15:35:31 +01:00
James Benton
a3e0b87f58
Add missing include
2016-06-12 01:58:59 +01:00