Kevin Hartman
cbfd6b6e52
Rewrite of OpenGL renderer, including OS X support
...
Screen contents are now displayed using textured quads. This can be updated to expose an FBO once an OpenGL backend for when Pica rendering is being worked on. That FBO's texture can then be applied to the quads.
Previously, FBO blitting was used in order to display screen contents, which did not work on OS X. The new textured quad approach is less of a compatibility risk.
2014-08-25 20:56:59 -07:00
Tony Wasserka
a79644c9ba
Pica/Rasterizer: Clarify a TODO.
2014-08-25 22:03:19 +02:00
Tony Wasserka
697b50c3ff
Pica/VertexShader: Fix a bug in the call stack handling.
2014-08-25 22:03:19 +02:00
Tony Wasserka
b5b3aeb576
Math: Warning fixes.
2014-08-25 22:03:19 +02:00
Tony Wasserka
941762a573
GPU: Fix a compiler warning about redundant semicolons.
2014-08-25 22:03:19 +02:00
Tony Wasserka
2f1c129f64
Pica: Consolidate the primitive assembly code in PrimitiveAssembly and GeometryDumper.
2014-08-25 22:03:19 +02:00
Tony Wasserka
9679d231df
Pica/Rasterizer: Add texturing support.
2014-08-25 22:03:18 +02:00
Tony Wasserka
34fa0b6d9c
Pica/DebugUtils: Add convenient tev setup printer.
2014-08-25 22:03:18 +02:00
Tony Wasserka
27cab6477e
Pica/Rasterizer: Add initial implementation of texture combiners.
2014-08-25 22:03:18 +02:00
Tony Wasserka
c4691b784b
Pica: Add support for dumping textures.
2014-08-25 22:03:18 +02:00
Tony Wasserka
162d641a30
Pica/Math: Improved the design of the Vec2/Vec3/Vec4 classes and simplified rasterizer code accordingly.
...
- Swizzlers now return const objects so that things like "first_vec4.xyz() = some_vec3" now will fail to compile (ideally we should support some vector holding references to make this actually work).
- The methods "InsertBeforeX/Y/Z" and "Append" have been replaced by more versions of MakeVec, which now also supports building new vectors from vectors.
- Vector library now follows C++ type promotion rules (hence, the result of Vec2<u8> with another Vec2<u8> is now a Vec2<int>).
2014-08-25 22:03:18 +02:00
Tony Wasserka
62c36a4ef0
Pica/VertexShader: Fix a bug in the bitfield definitions and add the "negate" field for swizzlers.
2014-08-25 22:03:18 +02:00
Tony Wasserka
26ade98411
Pica/citra-qt: Replace command list view and command list debugging code with something more sophisticated.
2014-08-25 22:03:18 +02:00
Tony Wasserka
0465adf206
Pica/CommandProcessor: Implement parameter masking.
2014-08-25 22:03:18 +02:00
Tony Wasserka
f37e39deb9
Pica: Add debug utilities for dumping shaders.
2014-08-25 22:03:18 +02:00
Tony Wasserka
6ea003c7b5
Pica: Add debug utility functions for dumping geometry data.
2014-08-25 22:03:18 +02:00
Tony Wasserka
14b24a75b3
GSP: Update framebuffer information when necessary.
2014-08-25 22:03:18 +02:00
Tony Wasserka
590c206ac8
GSP: Implement SetBufferSwap.
2014-08-25 22:03:18 +02:00
Tony Wasserka
e832bbe554
GSP: Add a helper function for convenience.
2014-08-25 22:02:33 +02:00
Sacha
1b1205cf73
Pass format to the QGLWidget and use atomic instead of mutex.
2014-08-25 03:42:52 +10:00
Sacha
b044510fa9
Fix EmuThread loop by ensuring it exits properly.
...
Note: There is a pre-existing issue with booting a new game in that it keeps the old EmuThread.
The GL code now supports this but the Core still doesn't.
2014-08-25 01:49:34 +10:00
Sacha
a3a70e56ac
Fix the threading for GL Context in Qt5.
...
Connect the emu_thread start/finish to a moveContext slot.
2014-08-25 00:47:00 +10:00
bunnei
0ffc966e42
Merge pull request #68 from archshift/readfile
...
Added FS functions to Archive and Archive_RomFS
2014-08-22 18:50:00 -04:00
archshift
4c4a01bf41
Added FS functions to Archive and Archive_RomFS
2014-08-22 15:45:10 -07:00
bunnei
c3c66ad34d
Merge pull request #46 from archshift/citrah
...
Removed unused citra.h
2014-08-21 18:27:54 -04:00
bunnei
59d512484a
Merge pull request #58 from lioncash/clamp
...
Common: Add a clamp function to math_utils.h
2014-08-21 11:31:43 -04:00
Emmanuel Gil Peyrot
ef27770a53
ARM: Remove a forgotten const in vfp.
2014-08-20 17:50:27 +00:00
archshift
d93dc81953
Revert "Removed redundant loop in EmuThread::run()"
2014-08-20 10:15:12 -07:00
archshift
80c4d7bf48
Removed unused citra.h
2014-08-19 22:22:12 -07:00
bunnei
bc64261d29
Merge pull request #60 from xsacha/qt5
...
Use Qt5 by default for citra-qt project.
2014-08-19 19:08:01 -04:00
bunnei
0db986d92a
Merge pull request #61 from lioncash/kernel-stuff
...
Core: Use std::array for managing kernel object space
2014-08-19 19:01:22 -04:00
bunnei
39fbb0d508
Merge pull request #59 from lioncash/fwddecl
...
Common: Get rid of an unnecessary forward declaration in symbols.h
2014-08-19 19:00:22 -04:00
Sacha
90f23020f5
Add Qt5 option. Use Qt5 by default.
2014-08-19 21:34:00 +10:00
Lioncash
2f571a0d9d
Common: Add a clamp function to math_utils.h
2014-08-19 03:37:38 -04:00
Lioncash
ab4648d3ca
Core: Use std::array for managing kernel object space
...
These avoid relying on memset for clearing the arrays.
2014-08-19 00:32:48 -04:00
bunnei
e9c5c563a5
Merge pull request #55 from lioncash/string
...
Core: Alter the kernel string functions to use std::string instead of const char*.
2014-08-18 21:42:44 -04:00
bunnei
10f25866e2
SVC: Added support for svc_GetSystemTick.
...
Changed HLE function return methods to be static inline functions.
2014-08-18 21:26:20 -04:00
Lioncash
85a20a9b19
Common: Get rid of an unnecessary forward declaration in symbols.h
2014-08-18 16:40:17 -04:00
bunnei
0a1aab5b42
Merge pull request #57 from lioncash/str
...
Common: Don't return a reference to a string when calling GetName in symbols.cpp
2014-08-18 15:35:47 -04:00
Lioncash
a49a5fa4d9
Common: Don't return a reference to a string when calling GetName in symbols.cpp
...
Returning a copy of the string is what was likely meant to be done.
2014-08-18 01:59:03 -04:00
Sacha
b7ecc9543a
CMake Cleanup
2014-08-18 14:35:44 +10:00
Lioncash
98fa3f7cba
Core: Alter the kernel string functions to use std::string instead of const char*.
...
Most functions already operate on std::strings. This also removes the need to manually null terminate thread names.
2014-08-17 23:12:20 -04:00
bunnei
68c81f28d9
Merge pull request #52 from lioncash/memory
...
Common: Correctly set ptr to null if mmap fails in memory_util
2014-08-17 20:38:28 -04:00
bunnei
3cd5ede355
Merge pull request #49 from archshift/redundantloop
...
Removed redundant loop in EmuThread::run()
2014-08-17 20:35:18 -04:00
bunnei
54d5d4477f
Merge pull request #48 from linkmauve/master
...
Replace insecure temporary file creation with devshm.
2014-08-17 20:33:47 -04:00
bunnei
b26f25356d
Merge pull request #51 from lioncash/pragma
...
Common: Move header guards over to pragma once.
2014-08-17 20:32:04 -04:00
bunnei
7ed73af78f
Merge pull request #53 from lioncash/memmap
...
Core: Fix undefined behavior in mem_map_funcs' WriteBlock function
2014-08-17 20:30:30 -04:00
Lioncash
986dd27392
Core: Fix a formatting error in svc.cpp
...
entry_point would not be added to the string. Also used StringFromFormat
so that the buffer is unnecessary.
2014-08-17 14:28:39 -04:00
Lioncash
da18671166
Core: Fix undefined behavior in mem_map_funcs' WriteBlock function
2014-08-17 14:23:54 -04:00
Lioncash
cc9f352b66
Common: Correctly set ptr to null if mmap fails in memory_util
...
On POSIX systems mmap will return MAP_FAILED ((void*)-1) instead of a null pointer.
2014-08-17 14:08:43 -04:00