76a586de49
Pica: Add command processor.
2014-08-12 13:47:30 +02:00
98ad16a45b
Pica: Add float24 structure.
...
24-bit floating points are used internally for calculations on the GPU, however the current code will still emulate that with 32-bit floating points.
In the future we might want to accurately perform the calculations with correct bitness in the future, but for now we just wrap the calculations around this class.
2014-08-12 13:46:24 +02:00
8528c810cf
Video core: Add utility class for vector operations.
...
I wrote most of this for ppsspp, so I hold full copyright over it.
In addition to the original release in ppsspp, this provides functionality to easily extend e.g. two-dimensional vectors to three-dimensional vectors.
2014-08-12 13:46:20 +02:00
7b6a7d7dfb
Pica/GPU: Change hardware registers to use physical addresses rather than virtual ones.
...
This cleans up the mess that address reading/writing had become and makes the code a *lot* more sensible.
This adds a physical<->virtual address converter to mem_map.h. For further accuracy, we will want to properly extend this to support a wider range of address regions. For now, this makes simply homebrew applications work in a good manner though.
2014-08-12 13:32:56 +02:00
bd798390d5
GSP: Fix a major regression introduced in ffda035c, due to which no display transfers were triggered at all anymore.
2014-08-12 13:32:18 +02:00
a3e029fad0
Merge pull request #38 from neobrain/replace_registerset
...
Remove the fancy RegisterSet class introduced in 4c2bff61e
.
2014-08-11 22:21:54 -04:00
9c781a6c76
Remove the fancy RegisterSet class introduced in 4c2bff61e
.
...
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-12 02:17:21 +02:00
29365e67d6
Merge pull request #40 from bentley/master
...
Use pthread_set_name_np() on OpenBSD.
2014-08-08 09:58:08 -04:00
dad3655a6d
Use pthread_set_name_np() on OpenBSD.
2014-08-07 22:56:58 -06:00
d0c1794853
Merge pull request #34 from bunnei/gsp-command-synch
...
Gsp command synch
2014-08-06 18:30:01 -04:00
0805ecbaca
GPU: Updated g_last_ticks variable to be more descriptive (represents CPU tick count of last vertical line).
2014-08-06 18:20:02 -04:00
7ada2625fe
GPU: Updated horizontal sync line counter to use framebuffer height.
2014-08-06 18:20:01 -04:00
d4bd2f2e5d
Thread: Added more descriptive comment to WaitCurrentThread.
2014-08-06 18:19:59 -04:00
cad2f21985
GSP: Cleaned up command buffer decoding.
...
GSP: Cleaned up code and added additional comments.
GSP: Removed unnecessary TODO comment.
GSP: Changed u32 iterators in TriggerCmdReqQueue to unsigned.
2014-08-06 18:19:56 -04:00
36fd1c169e
GSP: Added reinitialization of other state objects.
2014-08-05 23:58:00 -04:00
4e9f305ed2
GSP: Removed dumb GX prefixes to functions/structs in GSP namespace.
...
- Various other cleanups.
2014-08-05 23:58:00 -04:00
99e404e221
GSP: Removed unnecessary GX_FinishCommand function.
2014-08-05 23:57:59 -04:00
ec14ffe1cd
GSP: Implements preliminary command synchronization via GPU interrupts.
...
Core: Added a comment to explain the logic for the RunLoop iterations.
2014-08-05 23:57:53 -04:00
c48ab0bd9e
MemMap: Fixed typo with GetPointer to VRAM address.
2014-08-05 23:54:28 -04:00
2542350b85
AddressArbiter: Removed unnecessary HLE::Reschedule.
2014-08-05 23:54:28 -04:00
60078baab1
AddressArbiter: Fixed bug with break statements missing from case statements.
2014-08-05 23:54:27 -04:00
1b247b8031
SRV: Updated GetProcSemaphore to create an event instead of a mutex.
2014-08-05 23:54:27 -04:00
4d4607041b
SVC: Removed ArbitrateAddress log message that spams to much.
2014-08-05 23:53:58 -04:00
7a1f813be1
Kernel: Updated Event and Mutex to specify handle that they are blocking for.
2014-08-05 20:14:51 -04:00
2003ccf09d
Qt: Removed unnecessary HW::Update.
2014-08-05 20:14:49 -04:00
90aaab1df0
Merge pull request #36 from bunnei/fix-memory-unaligned-reads
...
Fix memory unaligned reads
2014-08-05 20:09:04 -04:00
967e5629de
MemMap: Added an error for unaligned 16-bit memory reads.
2014-08-05 20:05:06 -04:00
da81742439
MemMap: Removed Read64 function.
...
- Unused code
- Was not correct for unaligned memory reads
2014-08-05 20:01:55 -04:00
81fa804b3c
FS: Fix port name (old port name was based on an unaligned memory read).
2014-08-05 19:58:33 -04:00
2b52ec4829
MemMap: Fix Read32 for unaligned memory reads.
...
MemMap: Cleaned up Read32 unaligned memory access.
2014-08-05 19:58:28 -04:00
8a9f155f29
Merge pull request #35 from bunnei/skyeye-3dmoo
...
ARM: Synchronize Citra's SkyEye core with 3dmoo's.
2014-08-05 17:45:44 -04:00
77fc029a00
ARM: Synchronize Citra's SkyEye core with 3dmoo's.
2014-07-23 19:16:40 -04:00
866d2a62e9
Merge pull request #27 from neobrain/disassembly_view_rewrite
...
citra-qt: Rewrite disassembly view.
2014-07-23 10:43:46 -04:00
daa924b906
Merge pull request #31 from neobrain/gpu_framebuffer
...
GPU framebuffer emulation improvements
2014-07-22 19:20:57 -04:00
c131fb2c27
citra-qt: Show function names in disassembler based on bunnei's suggestion.
2014-07-23 00:58:52 +02:00
456b9feb25
Disassembler: Chose slightly lower value for chunk size.
2014-07-23 00:50:28 +02:00
9fd2537e93
Use uniform formatting when printing hexadecimal numbers.
2014-07-23 00:44:31 +02:00
afcb250b31
Fix a few warnings.
...
Templates shouldn't be marked as inline if they aren't defined in the header.
2014-07-23 00:44:31 +02:00
2eb61dafc0
GPU: Clarify display transfer code.
...
Also makes the illogical component order more obvious.
2014-07-23 00:44:31 +02:00
61e2ffd448
GPU: Add documentation.
2014-07-23 00:44:31 +02:00
4b141791ed
GSP: Add a few comments.
2014-07-23 00:44:31 +02:00
9b0d0c81a0
GSP: Clean up GX command processing a lot and treat command id as a u8 rather than a u32.
...
Anonymous structs are not standard C++, hence don't use them.
2014-07-23 00:44:31 +02:00
246cb75584
RegisterSet: Simplify code by using structs for register definition instead of unions.
2014-07-23 00:33:08 +02:00
75775e9ef4
GPU: Make use of RegisterSet.
2014-07-23 00:33:08 +02:00
357d893b26
GPU: Make framebuffer code format-aware.
2014-07-23 00:33:08 +02:00
c6fdeb7b23
Renderer: Fix component order in bottom framebuffer.
2014-07-23 00:33:08 +02:00
cb6f97b2eb
Renderer: Respect the active_fb GPU register.
2014-07-23 00:33:08 +02:00
9b96407e8e
Renderer: Add a few TODOs.
2014-07-23 00:33:08 +02:00
9d618d0b70
GPU: Interface cleanup.
2014-07-23 00:33:08 +02:00
46950ee4de
GPU: Initialize GPU registers to some sensible default state.
2014-07-23 00:33:08 +02:00