Commit graph

3349 commits

Author SHA1 Message Date
bunnei
859c36c269 Merge pull request #1810 from JayFoxRox/fix-float-exceptions
Fix float exceptions
2016-05-26 18:28:00 -04:00
bunnei
201a7af92a Merge pull request #1846 from JayFoxRox/missing-dirty-lighting
OpenGL: Set shader_dirty on lighting changes
2016-05-26 17:35:12 -04:00
Mat M
ade0889519 Merge pull request #1855 from MerryMage/memory-headers-20160526
Memory: Added necessary headers and removed unnecessary header
2016-05-26 14:19:31 -04:00
MerryMage
80abe6eb08 Memory: Added necessary headers and removed unnecessary header 2016-05-26 18:55:37 +01:00
bunnei
f50a32bfce Merge pull request #1817 from linkmauve/smdh-stuff
Improve SMDH support in loaders and frontends
2016-05-25 16:40:36 -04:00
bunnei
c106f71beb New3DS: Minor style cleanup to #1520. 2016-05-24 17:24:11 -04:00
bunnei
2e5e7d9be0 Merge pull request #1520 from JamePeng/checknew3ds
Implement CheckNew3DS and CheckNew3DSApp
2016-05-24 17:19:26 -04:00
bunnei
a316fbb15a Merge pull request #1733 from lioncash/vert_loader
VertexLoader: Minor changes
2016-05-23 21:13:34 -04:00
Jannik Vogel
6a28f46844 OpenGL: Set shader_dirty on lighting changes 2016-05-23 23:28:13 +02:00
Jannik Vogel
30a01584f2 Pica: Name LightSrc.config register 2016-05-23 23:28:13 +02:00
Jannik Vogel
8e905b3af6 Pica: Name lighting.config0 and .config1 registers 2016-05-23 23:28:13 +02:00
Jannik Vogel
068bd6f728 OpenGL: Use uniforms for dist_atten_bias and dist_atten_scale 2016-05-23 23:28:13 +02:00
bunnei
e054e55ca2 Merge pull request #1837 from wwylele/sync-trap
SVC::WaitSynchronizationN: Reschedule at the end
2016-05-22 20:07:20 -04:00
Emmanuel Gil Peyrot
080a2d719c Loader: Split SMDH into its own header and import helpers from QGameList
Also rewrite Qt wrappers to use those.
2016-05-21 20:15:42 +01:00
MerryMage
64068583fb CFG: Remove use of Memory::GetPointer 2016-05-21 11:14:13 -05:00
MerryMage
fddd243b17 APT: Remove use of Memory::GetPointer 2016-05-21 11:14:12 -05:00
MerryMage
1ebaaf9bb1 Kernel/Thread: Remove use of Memory::GetPointer 2016-05-21 11:14:11 -05:00
MerryMage
aa84cab4e9 Applets/swkdb: Remove use of Memory::GetPointer 2016-05-21 11:14:10 -05:00
MerryMage
ca17df5757 Memory: ZeroBlock 2016-05-21 11:14:09 -05:00
MerryMage
2be17a0c6e FileSys/Path: Replace Memory::GetPointer with Memory::ReadBlock 2016-05-21 11:14:03 -05:00
MerryMage
b3b3dd7591 Debugger/Callstack: Replace Memory::GetPointer with Memory::IsValidVirtualAddress 2016-05-21 11:12:38 -05:00
MerryMage
3873b36db3 Memory: ReadBlock/WriteBlock 2016-05-21 11:12:36 -05:00
MerryMage
c084fc824c Memory: IsValidVirtualAddress/IsValidPhysicalAddress 2016-05-21 11:12:35 -05:00
Emmanuel Gil Peyrot
314ce5e505 CitraQt: Simplify the game list loader code 2016-05-21 17:09:59 +01:00
Emmanuel Gil Peyrot
9a35d1fb4a Loader: Add a GetFileType method to get the type of a loaded file 2016-05-21 17:09:59 +01:00
Emmanuel Gil Peyrot
8fc9c03126 Loader, Frontends: Refactor loader creation and game loading
This allows frontends to keep a single loader and use it multiple times
e.g. for code loading and SMDH parsing.
2016-05-21 17:09:56 +01:00
Emmanuel Gil Peyrot
8ab6f26c09 Common: Make recursive FileUtil functions take a maximum recursion
Fixes #1115.

Also improves the performances of DiskArchive’s directory
implementation a lot, simply by not going through the entire tree
instead of just listing the first level files.

Thanks to JayRoxFox for rebasing this on current master!
2016-05-21 16:41:02 +01:00
wwylele
86ea7995ad SVC::WaitSynchronizationN: Reschedule at the end 2016-05-21 18:29:38 +03:00
bunnei
5edff287b6 Merge pull request #1564 from MerryMage/this-is-only-a-test
tests: Infrastructure for unit tests
2016-05-21 10:15:13 -04:00
Jannik Vogel
d77279a415 Refactor Tev stage dumper 2016-05-21 03:11:27 +02:00
Jannik Vogel
324c21c922 Extend Tev stage dumper 2016-05-21 03:08:59 +02:00
James Rowe
98923ab6e5 Config: Restore previously selected audio sink option (#1824) 2016-05-20 20:37:34 +02:00
bunnei
af258584d9 Merge pull request #1797 from MerryMage/audio-mixer
DSP/HLE: Implement mixer processing
2016-05-19 18:11:14 -04:00
MerryMage
87de1ca968 Tests: Run tests on CI 2016-05-19 19:28:08 +01:00
MerryMage
a03f9b6fb6 tests: Infrastructure for unit tests 2016-05-19 08:38:03 +01:00
MerryMage
f4d364a60e DSP/HLE: Audio output 2016-05-19 07:25:26 +01:00
MerryMage
6542c60602 DSP/HLE: Implement mixer processing 2016-05-19 07:24:39 +01:00
bunnei
d895bc1543 Merge pull request #1785 from MerryMage/mp-dpi
Microprofile: DPI-aware drawing
2016-05-18 18:03:59 -04:00
Maribel
d014873916 Config: Audio sink configuration (#1798) 2016-05-18 18:01:03 -04:00
Jannik Vogel
edf30d84cc Remove exceptions parameter from normaliseround VFP functions 2016-05-18 16:28:13 +02:00
Jannik Vogel
693cca8f1f Fix exception propagation for VFP single precision 2016-05-18 15:24:42 +02:00
Jannik Vogel
7dde13f875 Fix exception propagation for VFP double precision 2016-05-18 15:24:42 +02:00
Jannik Vogel
3a45eacb16 Fix read-after-write in SMUAD, SMLAD, SMUSD, SMLSD 2016-05-18 14:03:02 +02:00
András Domonkos
960297e577 Update ACT:U and create ACT:A (#1809)
* Update ACT_U
* Create act_a.h
* Create act_a.cpp
* Add service ACT:A
* Add ACT:A source and header
* Fix wrong header
2016-05-17 21:28:25 -04:00
bunnei
a39144050b Merge pull request #1800 from JayFoxRox/set-fpscr
Set fpscr for new threads
2016-05-17 21:24:57 -04:00
Jannik Vogel
af37dd0d52 Set fpscr for new threads 2016-05-17 08:59:52 +02:00
bunnei
e5599ed300 Merge pull request #1786 from JayFoxRox/blend-equation
OpenGL: Support blend equation
2016-05-16 20:00:21 -04:00
Jannik Vogel
ff0fa86b17 Retrieve shader result from new OutputRegisters-type 2016-05-16 18:55:51 +02:00
linkmauve
f40fabd688 Merge pull request #1787 from JayFoxRox/refactor-jit
Refactor JIT
2016-05-16 17:54:45 +01:00
Jannik Vogel
501d0bc5ed Fix ftoi behaviour 2016-05-16 15:00:45 +02:00
Jannik Vogel
6fe0cb671d Respect fpscr in ftoiz 2016-05-16 15:00:45 +02:00
Jannik Vogel
1643786c04 Disable VFP3 instructions 2016-05-16 15:00:45 +02:00
bunnei
bd9ac24631 Merge pull request #1792 from JayFoxRox/avoid-uninitialised
Avoid uninitialised in hw renderer + Only sync depth if necessary
2016-05-15 20:44:32 -04:00
Maribel
5c8beca792 DSP_DSP: Remove GetHeadphoneStatus logspam (#1799) 2016-05-15 20:43:01 -04:00
wwylele
6cccdcacd2 fixup! fixup! Refactor input system 2016-05-15 19:35:06 +03:00
wwylele
6d49e4621c fixup! Refactor input system 2016-05-15 13:35:45 +03:00
wwylele
416faa20d1 implement circle pad modifier 2016-05-15 13:24:22 +03:00
wwylele
03631f9b8f Refactor input subsystem 2016-05-15 13:24:22 +03:00
Maribel
6f6af6928f AudioCore: Implement time stretcher (#1737)
* AudioCore: Implement time stretcher

* fixup! AudioCore: Implement time stretcher

* fixup! fixup! AudioCore: Implement time stretcher

* fixup! fixup! fixup! AudioCore: Implement time stretcher

* fixup! fixup! fixup! fixup! AudioCore: Implement time stretcher

* fixup! fixup! fixup! fixup! fixup! AudioCore: Implement time stretcher
2016-05-14 22:04:03 -04:00
Subv
64da2bf0cd Memory: Fixed a regression caused by #1695 and #1689.
Reserve enough space in the vector that holds the linear heap memory to prevent relocations of the backing memory when growing too much.

Closes #1790
2016-05-14 11:24:19 -05:00
Jannik Vogel
5389dedfa1 OpenGL: Only update depth uniforms if the depth changed 2016-05-14 10:31:18 +02:00
Jannik Vogel
f8a11a664f OpenGL: value-initialize variables which cause uninitialised access otherwise 2016-05-14 10:16:11 +02:00
bunnei
18b517e236 Merge pull request #1689 from Subv/shmem
Kernel: Implemented shared memory.
2016-05-13 15:33:44 -04:00
Jannik Vogel
1308afe2c2 Use new shader-jit signature for interpreter 2016-05-13 09:41:55 +02:00
Jannik Vogel
4e01e9ffc5 Refactor access to state in shader-jit 2016-05-13 09:20:14 +02:00
bunnei
0d8bd3ba36 Merge pull request #1695 from Subv/tls_alloc
Kernel/Threads: Dynamically allocate the TLS region for threads.
2016-05-12 21:51:35 -04:00
Subv
ac2de12ed8 HLE/Applets: Give each applet its own block of heap memory, and use that when creating the framebuffer shared memory block. 2016-05-12 20:01:59 -05:00
Subv
d261984f54 Kernel: Account for automatically-allocated shared memories in the amount of used linear heap memory. 2016-05-12 20:01:59 -05:00
Subv
abf8dcd700 APT: Move the shared font loading and relocation functions to their own subdirectory services/apt/bcfnt. 2016-05-12 20:01:54 -05:00
Subv
5679d066b5 Kernel/SharedMemory: Log an error when Map fails. 2016-05-12 20:01:27 -05:00
Subv
0fb6d2a247 Kernel: Implemented shared memory permissions. 2016-05-12 20:01:26 -05:00
Subv
9005cda664 APT: Implement relocating the shared font to its true address. 2016-05-12 20:01:20 -05:00
Subv
f72bd57212 Kernel/Memory: Remove the Shared Memory region from the legacy memory map. 2016-05-12 20:00:33 -05:00
Subv
1bd0cf542f Kernel/SharedMemory: Properly implemented shared memory support.
Applications can request the kernel to allocate a piece of the linear heap for them when creating a shared memory object.
Shared memory areas are now properly mapped into the target processes when calling svcMapMemoryBlock.

Removed the APT Shared Font hack as it is no longer needed.
2016-05-12 20:00:32 -05:00
Subv
42a50da76b Kernel/SVC: Fixed the register order for svcCreateMemoryBlock.
R0 is used as the last parameter instead of R4.
2016-05-12 20:00:29 -05:00
Jannik Vogel
5864cb7e00 OpenGL: Support blend equation 2016-05-12 22:57:40 +02:00
MerryMage
9b4187974b Microprofile: DPI-aware drawing 2016-05-12 21:49:02 +01:00
Jannik Vogel
7e756faaba Move program_counter and call_stack from UnitState to interpreter 2016-05-12 19:05:42 +02:00
Jannik Vogel
6c6d99ca51 Move default_attributes into Pica state 2016-05-12 19:05:41 +02:00
bunnei
f6eb62d062 Merge pull request #1690 from JayFoxRox/tex-type-3
Pica: Implement texture type 3 (Projection2D)
2016-05-11 21:47:08 -04:00
Jannik Vogel
ae7a82fa1c Turn ShaderSetup into struct 2016-05-11 23:48:24 +02:00
Jannik Vogel
5a7306d6df OpenGL: Implement texture type 3 2016-05-11 08:07:37 +02:00
Jannik Vogel
4311297eb1 Rasterizer: Implement texture type 3 2016-05-11 08:07:36 +02:00
Jannik Vogel
2f8e8e1455 Pica: Add tc0.w to OutputVertex 2016-05-11 08:07:36 +02:00
Jannik Vogel
9cfebb9334 Pica: Add texture type to state 2016-05-11 08:07:36 +02:00
bunnei
86ecbdfa4d Merge pull request #1621 from JayFoxRox/w-buffer
Implement W-buffer and fix depth-mapping
2016-05-10 23:00:40 -04:00
bunnei
feecc76333 Merge pull request #1774 from lioncash/warn
gdbstub: Silence missing prototype warnings
2016-05-10 12:14:41 -04:00
Lioncash
75e5d0a6a0 gl_rasterizer: Fix compilation for debug builds 2016-05-10 09:22:02 -04:00
Lioncash
0a52e1f587 gdbstub: Silence missing prototype warnings 2016-05-10 09:17:07 -04:00
Jannik Vogel
fc9cc21024 OpenGL: Implement W-Buffers and fix depth-mapping 2016-05-10 08:58:52 +02:00
Jannik Vogel
4c98113b57 Pica: Implement W-Buffer in SW rasterizer 2016-05-10 08:58:52 +02:00
linkmauve
006fe5fc0f Merge pull request #1704 from JayFoxRox/pod-config
Pica: PicaShaderConfig is TC and cleared before use
2016-05-10 01:16:53 +01:00
bunnei
976bacf5f7 Merge pull request #1771 from lioncash/user
dyncom: Reset the context into user mode correctly
2016-05-09 18:54:09 -04:00
Lioncash
0f941d0245 dyncom: Reset the context into user mode correctly
The other mode was system mode.
2016-05-09 16:30:55 -04:00
Lioncash
da2400a601 source: Fix missing logging arguments
Silences two warnings on OSX.
2016-05-09 09:41:03 -04:00
Lioncash
d5b983a8c0 swap: Get rid of pointer casting for swapping structs
These shouldn't haphazardly convert types
2016-05-08 23:33:52 -04:00
Lioncash
47ca79ba4b swap: Get rid of undefined behavior in swapf and swapd
This isn't well-defined in C++.
2016-05-08 23:21:47 -04:00
Lioncash
aef4630102 swap: Remove unused methods
Also gets rid of pointer data variants as this prevents the use of
the regular swapping routines as unary predicates in std lib functions.

They also cast to stricter alignment types, which is undefined behavior.
2016-05-08 23:12:04 -04:00
Lioncash
6d5f2a3cff vertex_loader: Correct forward declaration of InputVertex
It's actually a struct, not a class.
2016-05-08 23:08:18 -04:00
Lioncash
5587383eb7 vertex_loader: Provide an assertion for ensuring the loader has been setup
Also adds an assert to ensure that Setup is not called more than once
during a VertexLoader's lifetime.
2016-05-08 23:08:12 -04:00
Lioncash
1357724cd9 vertex_loader: Add constructors to facilitate immediate and two-step initialization 2016-05-08 23:03:32 -04:00
Lioncash
769f4a7018 vertex_loader: initialize_num_total_attributes.
Keeps the public API sane.
2016-05-08 23:03:32 -04:00
Lioncash
8ea5e7dfb5 vertex_loader: Use std::array instead of raw C arrays 2016-05-08 23:03:32 -04:00
Lioncash
a286b61f75 vertex_loader: Correct header ordering 2016-05-08 23:01:26 -04:00
bunnei
282a2ad539 Merge pull request #1766 from Subv/log_cpu
Kernel/Threading: Warn when a thread can be scheduled in the Syscore (Core 1)
2016-05-08 15:03:08 -04:00
bunnei
6abc6003f5 Merge pull request #1718 from alex-laties/fixup-type-conversions
fixup simple type conversions where possible
2016-05-07 17:24:16 -04:00
bunnei
8e9b33a34a Merge pull request #1761 from Subv/applets_fb
HLE/Applets: Use the correct size for the framebuffer SharedMemory
2016-05-07 17:21:48 -04:00
Alexander Laties
0a31e373f1 fixup simple type conversions where possible 2016-05-07 11:41:55 -04:00
Subv
5b7f86708c Kernel/Threading: Warn when a thread can be scheduled in the Syscore (Core 1).
We do not currently implement any cores other than the AppCore (Core 0).
2016-05-07 10:23:03 -05:00
Subv
d192fb066d Kernel/Threads: Dynamically allocate the TLS region for threads in the BASE region of the linear heap.
Each thread gets a 0x200-byte area from the 0x1000-sized page, when all 8 thread slots in a single page are used up, the kernel allocates a new page to hold another 8 entries.

This is consistent with what the real kernel does.
2016-05-07 10:18:47 -05:00
bunnei
c549c36076 Merge pull request #1736 from MerryMage/sdl2-sink
AudioCore: SDL2 Sink
2016-05-07 11:08:13 -04:00
Subv
6970b7d3d5 HLE/Applets: Use the correct size for the framebuffer SharedMemory in the swkbd and MiiSelector applets. 2016-05-07 10:01:40 -05:00
MerryMage
920d2cf41d AudioCore: SDL2 Sink 2016-05-07 11:32:48 +01:00
Jannik Vogel
7d7849d71a citra_qt: Replace 'Pica Framebuffer Debugger' with 'Pica Surface Viewer' 2016-05-07 11:30:47 +02:00
bunnei
1a6cd7eb4b HLE: Fix recent DSP change for Visual Studio. 2016-05-07 00:54:31 -04:00
bunnei
8043a35cf9 Merge pull request #1544 from linkmauve/move-glad-init
Move glad initialisation to the frontend
2016-05-07 00:33:06 -04:00
wwylele
d2182568ad fix:return proper error 2016-05-06 21:42:13 +03:00
Emmanuel Gil Peyrot
aa4d4ff23c Frontends, VideoCore: Move glad initialisation to the frontend
On SDL2 this allows it to use SDL_GL_GetProcAddress() instead of the
default function loader, and fixes a crash when using apitrace with an
EGL context.

On Qt we will need to migrate from QGLWidget to QOpenGLWidget and
QOpenGLContext before we can use gladLoadGLLoader() instead of
gladLoadGL(), since the former doesn’t expose a function loader.
2016-05-06 03:10:14 +01:00
bunnei
75cbfeee58 Merge pull request #1762 from bunnei/global
hle: Get rid of direct global access to g_reschedule
2016-05-05 21:45:57 -04:00
bunnei
4cb2995c61 HLE: Rename RescheduleIsPending to IsReschedulePending. 2016-05-05 21:34:10 -04:00
bunnei
55946cdc11 Merge pull request #1700 from wwylele/gamelist-icon
Qt: display game icon and title in the game list
2016-05-05 18:35:24 -04:00
mailwl
e311398a22 Layout Mii parameters input/output, and return success as result of applet work 2016-05-05 22:31:33 +03:00
bunnei
f5e839066a Merge pull request #1757 from JayFoxRox/rename-vertexloaded-bp
Pica: Rename VertexLoaded breakpoint to VertexShaderInvocation
2016-05-05 05:54:14 -04:00
bunnei
07411fb631 Merge pull request #1734 from MerryMage/dsp-hle-source
DSP/HLE: Implement Source processing
2016-05-04 10:13:59 -04:00
wwylele
9da1534237 add missing header 2016-05-04 13:02:49 +03:00
wwylele
0176e2786f make the name column larger as default 2016-05-04 13:02:49 +03:00
wwylele
5d5dd66d92 add icon & title to game list 2016-05-04 13:02:49 +03:00
Jannik Vogel
7a77b8356c Pica: Rename VertexLoaded breakpoint to VertexShaderInvocation 2016-05-04 10:21:51 +02:00
MerryMage
b242bdf945 DSP/HLE: Implement Source processing 2016-05-03 20:58:28 +01:00
wwylele
9b66e0dc8b clean up config block 2016-05-03 19:27:47 +03:00
Jannik Vogel
f74652d2fe Pica: Use a union for PicaShaderConfig 2016-05-03 15:06:49 +02:00
Jannik Vogel
5fc8eb227a Pica: Add TevStageConfigRaw to PicaShaderConfig (MSVC workaround) 2016-05-03 15:06:46 +02:00
Jannik Vogel
f3f7018c9e Pica: Make PicaShaderConfig trivially_copyable and clear it before use 2016-05-03 14:10:11 +02:00
Jannik Vogel
5ec1140f8b OpenGL: Don't copy const_color (Reverts #1745) 2016-05-03 12:34:52 +02:00
bunnei
6d02fe39f5 Merge pull request #1750 from JayFoxRox/cleanup-shader-input
Pica: Replace logic in shader.cpp with loop
2016-05-02 20:44:53 -04:00
Jannik Vogel
696cb197a5 Pica: Replace logic in shader.cpp with loop 2016-05-03 01:40:47 +02:00
bunnei
a6e76c0903 Merge pull request #1732 from wwylele/config00170000
add config block 0x00170000; remove duplicated content
2016-05-02 19:04:20 -04:00
bunnei
15d0e98267 Merge pull request #1741 from linkmauve/iwyu-video_core
Fix video_core includes (and dependencies) using include-what-you-use
2016-05-01 17:44:57 -04:00
Jannik Vogel
7e0d6903ff OpenGL: Copy TevStageConfig using a loop. Fixes bug: const_color not copied 2016-05-01 16:35:54 +02:00
wwylele
7e1b76d406 remove duplicated function declaration 2016-05-01 07:44:55 +03:00
Jannik Vogel
aab41604f7 OpenGL: border_color was never set. Fixed. (#1740) 2016-04-30 12:20:23 -07:00
Emmanuel Gil Peyrot
691a42fe98 VideoCore: Run include-what-you-use and fix most includes. 2016-04-30 17:02:41 +01:00
Emmanuel Gil Peyrot
387d935a54 LCD: Remove unneeded #undef with no matching #define. 2016-04-30 13:58:26 +01:00
linkmauve
d8aa2460ef Merge pull request #1735 from JayFoxRox/remove-tga
Remove TGA dumper
2016-04-30 13:57:45 +01:00
bunnei
c1f0044a4b Merge pull request #1729 from MerryMage/null-sink
Audio Config: Implement null sink and implement sink configuration
2016-04-30 03:49:11 -04:00
Jannik Vogel
49bfe9bf91 Remove TGA dumper 2016-04-30 09:43:59 +02:00
MerryMage
4e971f44a2 Audio: Add sink selection to configuration files 2016-04-30 07:41:02 +01:00
MerryMage
8b94422e3e AudioCore: List of sink types 2016-04-30 07:39:48 +01:00
MerryMage
7d106eff10 AudioCore: Implement NullSink 2016-04-30 07:39:37 +01:00
bunnei
594bd182b4 Merge pull request #1650 from JamePeng/update-the-ndm-code
Update the stub code of NDM service!
2016-04-30 00:38:15 -04:00
bunnei
15d21c0dc5 Merge pull request #1647 from mailwl/acu-closeasync
ac:u: stub CloseAsync; align memory size in svc:GetProcessInfo(type=2)
2016-04-30 00:11:08 -04:00
bunnei
eb2d6e4015 Merge pull request #1699 from mailwl/gpu-rights
gsp::Gpu: implement AcquireRight, ReleaseRight functions
2016-04-29 20:50:08 -04:00
bunnei
73624b4721 Merge pull request #1726 from MerryMage/read-write-region
AudioCore: CurrentRegion() -> ReadRegion(), WriteRegion()
2016-04-29 12:18:26 -04:00
MerryMage
22995bd9bf AudioCore: CurrentRegion() -> ReadRegion(), WriteRegion() 2016-04-29 16:32:29 +01:00
bunnei
4c235955cf Merge pull request #1723 from MerryMage/audio-interp
AudioCore: Implement interpolation
2016-04-29 10:43:20 -04:00
bunnei
90243c56fb Merge pull request #1730 from hrydgard/vertex-loader
* Remove late accesses to attribute_config

* Refactor: Extract VertexLoader from command_processor.cpp.

Preparation for a similar concept to Dolphin or PPSSPP. These can be JIT-ed and cached.

* Move "&" to their proper place, add missing includes and make some properly relative.

* Don't keep base_address in the loader, it doesn't belong there (with it, the loader can't be cached).

* Optimize the vertex loader, nearly doubling its speed.

* Debugger fix

* Move and rename the MemoryAccesses class to MemoryAccessTracker.
2016-04-29 09:42:47 -04:00
wwylele
84ade0713c add config block 0x00170000 2016-04-29 13:31:29 +03:00
Yuri Kunde Schlesner
e3a8292495 Common: Remove section measurement from profiler (#1731)
This has been entirely superseded by MicroProfile. The rest of the code
can go when a simpler frametime/FPS meter is added to the GUI.
2016-04-29 00:07:10 -07:00
MerryMage
111275bfbd AudioCore: Implement interpolation 2016-04-29 08:05:41 +01:00
Henrik Rydgard
a86d7cacc1 Move and rename the MemoryAccesses class to MemoryAccessTracker. 2016-04-29 08:50:21 +02:00
Henrik Rydgård
90501f20e6 Make Citra build with MICROPROFILE_ENABLED set to 0 (#1709)
* Make Citra build with MICROPROFILE_ENABLED set to 0

* Buildfix with microprofile kept on

* moc did not like a dialog to conditionally exist.

* Cleanup

* Fix end of line
2016-04-28 20:17:31 -04:00
Henrik Rydgard
a442ee07f4 Debugger fix 2016-04-28 22:30:01 +02:00
Henrik Rydgard
251f29dd7f Optimize the vertex loader, nearly doubling its speed. 2016-04-28 22:21:39 +02:00
Henrik Rydgard
2403e86cbb Don't keep base_address in the loader, it doesn't belong there (with it, the loader can't be cached). 2016-04-28 20:17:35 +02:00
Henrik Rydgard
d00e2340c6 Move "&" to their proper place, add missing includes and make some properly relative. 2016-04-28 19:40:11 +02:00
Henrik Rydgard
47ff008817 Refactor: Extract VertexLoader from command_processor.cpp.
Preparation for a similar concept to Dolphin or PPSSPP. These can be JIT-ed and cached.
2016-04-28 19:05:55 +02:00
Henrik Rydgard
0cf15f64ef Remove late accesses to attribute_config 2016-04-28 18:07:34 +02:00
bunnei
fda578e19d Merge pull request #1727 from MerryMage/minor-commit
AudioCore: Move samples_per_frame and num_sources into hle/common.h
2016-04-28 09:47:08 -04:00
bunnei
2f76dc6758 Merge pull request #1722 from MerryMage/soundtouch
Externals: Add soundtouch
2016-04-28 09:45:15 -04:00
MerryMage
27ce3b3f51 Externals: Add soundtouch 2016-04-28 13:33:14 +01:00
MerryMage
dda9ffe790 AudioCore: Move samples_per_frame and num_sources into hle/common.h 2016-04-28 11:22:40 +01:00
bunnei
1ecee38468 Merge pull request #1708 from MerryMage/dsp_dsp
DSP Service: Cleanup
2016-04-27 11:34:38 -04:00
MerryMage
c379b22117 DSP_DSP: Fix log format strings and arguments 2016-04-27 06:35:12 +01:00
MerryMage
a47f149e07 AudioCore: Hack to prevent regressions: Trigger Binary pipe interrupt every audio frame 2016-04-27 06:35:10 +01:00
MerryMage
2929b67c5f DSP_DSP: Add return IPC headers 2016-04-27 06:35:08 +01:00
MerryMage
ff6db69c60 DSP_DSP: Updated interrupt implementation 2016-04-27 06:35:06 +01:00
bunnei
12f72a6597 y2r_u: Cleanup some formatting. 2016-04-26 21:50:56 -04:00
bunnei
61992170ac Merge pull request #1447 from JamePeng/update-y2r-service
Update the code of service y2r!
2016-04-26 19:29:57 -04:00
Emmanuel Gil Peyrot
591ffad670 Qt Frontend: Add Threads::Threads import in CMakeLists.txt.
This had been forgotten in df81fa11fc.

Fixes #1711.
2016-04-26 21:01:11 +01:00
bunnei
15c907317c Merge pull request #1710 from hrydgard/optimize-event-breakpoints
Replace std::map with std::array for graphics event breakpoints
2016-04-25 21:37:43 -04:00
MerryMage
555907ce8d DSP/Pipe: There are 8 pipes 2016-04-25 07:50:53 +01:00
Sam Spilsbury
656a442433 shader: Shader size is long uint, not uint. 2016-04-25 00:40:03 +08:00
Sam Spilsbury
c6709d97bc shader: Handle non-CALL opcodes with a break 2016-04-25 00:39:54 +08:00
Sam Spilsbury
bbffa6ad69 shader: Format string must be provided inline and not as a variable 2016-04-24 23:40:52 +08:00
Sam Spilsbury
e16541e47c am: title_id is long long uint 2016-04-24 23:40:41 +08:00
Sam Spilsbury
ef6873980e assert: Allow UNREACHABLE_MSG to have just one argument 2016-04-24 23:40:14 +08:00
Sam Spilsbury
df81fa11fc CMakeLists: Use imported version of Threads::Threads
This requires bumping up to a minimum of CMake 3.1. The benefit
of using the imported target is that you can switch to the -pthread
compiler flag on request, which may be necessary for some systems if
available.
2016-04-24 23:39:25 +08:00
Henrik Rydgard
01a1555b5d Replace std::map with std::array for graphics event breakpoints, and allow the compiler to inline. Saves 1%+ in vertex heavy situations. 2016-04-24 14:19:49 +02:00
MerryMage
913f7ee524 DSP_DSP: Remove unused variable 2016-04-24 09:01:53 +01:00
bunnei
0964a3ff53 Merge pull request #1576 from smspillaz/fix-build-errors-03272016
Fix various build errors encountered on Clang 3.9 on OS X
2016-04-24 02:02:45 -04:00
LittleWhite
9572652ddc Protect use of std::is_trivially_copyable to compile with GCC 4.9 2016-04-23 15:45:35 +02:00
mailwl
67c657bf80 return checks if event and memory created 2016-04-23 16:17:03 +03:00
Sam Spilsbury
205e8f9f9e assert: Add _MSG variations for UNREACHABLE and UNIMPLEMENTED 2016-04-23 11:54:02 +08:00
Sam Spilsbury
39d4994c15 pica: Handle default lighting case 2016-04-23 11:54:02 +08:00
Sam Spilsbury
60f2587eac ncch: Use correct format specifier (for long long uint) 2016-04-23 11:54:02 +08:00
Sam Spilsbury
040b7386a9 fs: Fix what appears to be a typo (filename_size / file_size) 2016-04-23 11:54:02 +08:00
Sam Spilsbury
41ec40e9aa gdbstub: Don't check if unsigned int is > 0 2016-04-23 11:54:02 +08:00
Sam Spilsbury
2850a22359 debugger: Warn if we reach an unreachable format 2016-04-23 11:54:02 +08:00
Sam Spilsbury
d051bd3032 CMakeLists: Use CMAKE_THREAD_LIBS_INIT 2016-04-23 11:48:58 +08:00
mailwl
efdff9ad3e gsp::Gpu: implement AcquireRight, ReleaseRight functions 2016-04-22 21:15:25 +03:00
tfarley
562f36a144 HWRasterizer: reorder declarations to match defs 2016-04-22 10:52:02 -04:00
tfarley
3268cab26b HWRasterizer: sync specular uniform for new shaders 2016-04-22 10:48:00 -04:00
bunnei
bab30bcd6e Merge pull request #1436 from tfarley/hw-tex-forwarding
Hardware Renderer Texture Forwarding
2016-04-22 08:15:51 -04:00
tfarley
22f3a7e94c HWRasterizer: Texture forwarding 2016-04-21 17:27:56 -04:00
tfarley
e46d086189 Config: Add scaled resolution option 2016-04-21 17:27:48 -04:00
bunnei
14cc1ed911 Merge pull request #1655 from JayFoxRox/hw-dot3
OpenGL: Implement color combiner Operation::Dot3_RGB
2016-04-21 16:39:36 -04:00
mailwl
bd8cc69893 ac:u: stub CloseAsync; check memory size aling in svc:GetProcessInfo(type=2) 2016-04-21 10:34:45 +03:00
JamePeng
14602287f7 Update the stub code of NDM service! 2016-04-21 02:25:58 +08:00
JamePeng
854912ca5d Update the code of service y2r! 2016-04-20 18:38:01 +08:00
JamePeng
7129611e65 Implement CheckNew3DS and CheckNew3DSApp
Append an item[is_new3ds] to config file[System] group

Implement APT::SetNSStateField,it will update the unknown NS_state_field
2016-04-20 18:12:05 +08:00
Emmanuel Gil Peyrot
164c15f911 SDL2 Frontend: Use argv[0], add a --version, and reorder options. 2016-04-20 01:35:27 +01:00
bunnei
6d29c20208 Merge pull request #1672 from wwylele/win-driver-fix
Fix driver root identification on Windows
2016-04-19 17:40:13 -04:00
bunnei
32dfd4b4fe Merge pull request #1612 from ObsidianX/get-set-sockopt
SOC:U GetSockOpt/SetSockOpt
2016-04-18 20:45:19 -04:00
bunnei
142a5dc3f5 Merge pull request #1625 from JayFoxRox/sw-blend-func
Rasterizer: Allow all blend factors for alpha blend-func
2016-04-17 20:20:15 -04:00
Jannik Vogel
e2b63a2dd7 Rasterizer: Allow all blend factors for alpha blend-func 2016-04-17 22:44:24 +02:00
Lioncash
1cc183703a core: Clean out some unnecessary header includes 2016-04-16 00:08:49 -04:00
bunnei
2b422fbcc5 Merge pull request #1667 from wwylele/ncch-loader-fix
loader: only decompress code section
2016-04-15 17:13:34 -04:00
bunnei
7805f66784 Merge pull request #1673 from MerryMage/config-minimumSize
Configure Dialog: Remove minimumSize property
2016-04-15 10:00:58 -04:00
wwylele
43b6cbd762 fix driver root identification on Windows 2016-04-15 14:50:34 +03:00
Mathew Maidment
d496969c9c Merge pull request #1671 from lioncash/mem
debug_utils: use std::make_unique for initializing PicaTrace
2016-04-15 07:37:10 -04:00
MerryMage
fd771d7a87 Configure Dialog: Remove minimumSize property 2016-04-15 11:34:08 +01:00
JamePeng
8d5a6110f7 Y2R: num_tiles should be allowed when its value is 128 (#1669) 2016-04-14 21:36:07 -07:00
Lioncash
4501a9eb50 debug_utils: use std::make_unique for initializing PicaTrace 2016-04-14 22:05:28 -04:00
bunnei
23f967b0af Merge pull request #1666 from MerryMage/barrier
Thread: Correct Common::Barrier implementation
2016-04-14 22:03:17 -04:00
bunnei
aff35d3e58 Merge pull request #1665 from lioncash/file
IOFile: Minor API changes
2016-04-14 16:28:15 -04:00
wwylele
727d508e02 ncch:only decompress .code section 2016-04-14 18:33:42 +03:00
MerryMage
3c710f9b10 Thread: Make Barrier reusable 2016-04-14 13:59:58 +01:00
MerryMage
8c50833445 common/thread: Correct code style 2016-04-14 13:58:28 +01:00
bunnei
d7fe2784cc shader_jit_x64: Rename RuntimeAssert to Compile_Assert. 2016-04-13 23:04:53 -04:00
bunnei
3f623b2561 shader_jit_x64.cpp: Rename JitCompiler to JitShader. 2016-04-13 23:04:53 -04:00
bunnei
847fb951e2 shader_jit_x64: Free memory that's no longer needed after compilation. 2016-04-13 23:04:52 -04:00
bunnei
60aa72e117 shader_jit_x64: Use a sorted vector instead of a set for keeping track of return addresses. 2016-04-13 23:04:52 -04:00
bunnei
60749f2cda shader_jit_x64: Use CALL/RET instead of JMP for subroutines. 2016-04-13 23:04:52 -04:00
bunnei
507e0b5989 emitter: Add CALL that can be fixed up. 2016-04-13 23:04:50 -04:00
bunnei
1d45b57939 shader_jit_x64: Separate initialization and code generation for readability. 2016-04-13 23:04:50 -04:00
bunnei
6e0319eec9 shader_jit_x64: Get rid of unnecessary last_program_counter variable. 2016-04-13 23:04:49 -04:00
bunnei
f3afe24594 shader_jit_x64: Execute certain asserts at runtime.
- This is because we compile the full shader code space, and therefore its common to compile malformed instructions.
2016-04-13 23:04:49 -04:00
bunnei
ffcf7ecee9 shader: Remove unused 'state' argument from 'Setup' function. 2016-04-13 23:04:48 -04:00
bunnei
a5a74eb121 shader_jit_x64: Specify shader main offset at runtime. 2016-04-13 23:04:47 -04:00
bunnei
c9d10de644 shader_jit_x64: Allocate each program independently and persist for emu session. 2016-04-13 23:04:47 -04:00
bunnei
4632791a40 shader_jit_x64: Rewrite flow control to support arbitrary CALL and JMP instructions. 2016-04-13 23:04:44 -04:00
bunnei
135aec7bea shader_jit_x64: Fix strict memory aliasing issues. 2016-04-13 23:04:43 -04:00
bunnei
e5d417213c emitter: Support arbitrary FixupBranch targets. 2016-04-13 23:04:42 -04:00
Lioncash
5f51622e9d file_util: In-class initialize data members 2016-04-13 20:17:24 -04:00
Lioncash
655623ebb2 file_util: const qualify IOFile's Tell and GetSize functions 2016-04-13 20:17:23 -04:00
Lioncash
a4120ca66c file_util: Don't expose IOFile internals through the API 2016-04-13 20:17:17 -04:00
Lioncash
bf9945b81b file_util: Check for is_trivially_copyable
Also applies the template checks to ReadArray as well.
2016-04-13 19:20:26 -04:00
Lioncash
3ee4432fe3 file_util: Make IOFile data members private 2016-04-13 19:10:54 -04:00
MerryMage
226c5546e2 FileUtil: Missing #include, Add const to IOFile methods 2016-04-12 14:50:20 +01:00
bunnei
38f4c9cce9 Merge pull request #1613 from mailwl/anp
Set Kernel config "Hardware Inited" to 1 (true)
2016-04-11 16:26:47 -04:00