mailwl
edef1d54bb
Service/boss:P: Add some functions to FunctionTable
2017-07-01 12:21:38 +03:00
wwylele
54eafa42ce
gl_rasterizer: use texture buffer for proctex LUT
2017-07-01 11:02:48 +03:00
Kloen
1e5a589a66
Remove unnecessary WIN32_LEAN_AND_MEAN macro definition
2017-06-30 01:59:55 +02:00
Sebastian Valle
4f7e8c6f1e
Merge pull request #2793 from Subv/replyandreceive
...
Kernel/SVC: Partially implemented svcReplyAndReceive
2017-06-29 17:05:22 -05:00
Subv
4a8de6bb00
Kernel/SVC: Pass the current thread as a parameter to ClientSession::SendSyncRequest.
2017-06-29 12:30:34 -05:00
Yuri Kunde Schlesner
f2ca6e8d8d
Merge pull request #2809 from wwylele/texture-copy-fix
...
gpu: fix edge cases for TextureCopy
2017-06-29 09:29:40 -07:00
wwylele
60f6d78648
gpu: add comments for TextureCopy
2017-06-29 13:09:23 +03:00
Yuri Kunde Schlesner
36ed66c9ad
Merge pull request #2800 from wwylele/fog-lutlutlut
...
gl_rasterizer: use texture buffer for fog LUT
2017-06-28 21:52:20 -07:00
MerryMage
8ac1da24c5
configure_debug: Add label warning that CPU JIT needs to be disabled for gdbstub to work
2017-06-28 08:50:22 +01:00
wwylele
36a523b7cf
gpu: fix edge cases for TextureCopy
2017-06-27 23:20:23 +03:00
Sebastian Valle
0481516faf
Merge pull request #2778 from Subv/uds_more
...
Services/UDS: Stub SendTo to generate the unencrypted data frames with the right headers
2017-06-26 19:35:52 -05:00
Subv
49d391d757
UDS: Use the ToDS and FromDS fields to properly calculate the AAD used during encryption.
2017-06-26 12:24:14 -05:00
Subv
1ae0d3c450
UDS: Move the UDS keyslot used to generate the CCMP key to the AES::KeySlotID enum.
2017-06-26 12:24:13 -05:00
Subv
0a6a3dc5de
UDS: Run clang-format.
2017-06-26 12:24:11 -05:00
Subv
7f5c4beca2
UDS: Added functions to encrypt and decrypt the data frames.
...
The responsibility of encryption and encapsulation into an 802.11 MAC frame will fall into the callers of GenerateDataPayload.
2017-06-26 12:24:09 -05:00
Subv
44f4737f99
Kernel/Sessions: Clean up the list of pending request threads of a session when the client endpoint is closed.
2017-06-25 23:38:29 -05:00
Subv
820509103c
Kernel/SVC: Partially implemented svcReplyAndReceive.
...
It behaves mostly as WaitSynchronizationN with wait_all = false, except for IPC buffer translation.
The target thread of an IPC response will now wake up when responding.
IPC buffer translation is currently not implemented.
Error passing back to svcSendSyncRequest is currently not implemented.
2017-06-25 23:38:28 -05:00
wwylele
e93f183170
apt: load shared font from system archive
2017-06-26 01:38:12 +03:00
wwylele
e770625812
apt/shared_font: don't relocate zero offset
2017-06-26 00:43:23 +03:00
Subv
d7538409fb
Kernel/ServerSession: Keep track of which threads have issued sync requests.
2017-06-25 14:47:25 -05:00
B3n30
2a652f3324
Set global definition WIN32_LEAN_AND_MEAN ( #2807 )
...
Set definition WIN32_LEAN_AND_MEAN to avoid windows.h including a lot of libs that are usually not used.
2017-06-24 17:38:16 -07:00
Kloen
9c525330b9
citra-qt: Add option to configure the UI theme
2017-06-24 05:48:43 +02:00
Kloen
ffa035529d
citra-qt: load ui theme at startup and config change.
2017-06-24 05:48:42 +02:00
Kloen
0b22d01043
citra-qt: Add Dark theme from https://github.com/ColinDuquesnoy/QDarkStyleSheet
2017-06-24 05:48:42 +02:00
Kloen
45c1d80518
citra-qt: add new uisetting->theme
2017-06-24 05:48:35 +02:00
Yuri Kunde Schlesner
afa851d0a4
Kernel: Implement AcceptSession SVC
2017-06-23 11:26:37 -07:00
Yuri Kunde Schlesner
0539afd69b
Kernel: Fix SVC wrapper for CreatePort
...
The return parameters were flipped.
2017-06-23 11:22:04 -07:00
Yuri Kunde Schlesner
cf12983372
Kernel: Implement CreateSessionToPort SVC
2017-06-23 11:22:02 -07:00
Yuri Kunde Schlesner
917e708cfb
Merge pull request #2798 from yuriks/svc-create-session
...
Kernel: Implement CreateSession SVC
2017-06-23 11:18:49 -07:00
bunnei
29a8893020
Merge pull request #2795 from chris062689/master
...
Change default UI background from white to black.
2017-06-22 22:00:03 -04:00
bunnei
b08b662e76
Merge pull request #2796 from yuriks/hle-null-handles
...
Kernel/IPC: Support translation of null handles
2017-06-22 21:59:25 -04:00
wwylele
f1afe2baa8
gl_rasterizer: use texture buffer for fog LUT
2017-06-22 20:41:00 +03:00
wwylele
b3f9d734f0
gl_rasterizer: create the texture before applying the state
...
this is a rebasing error from #2792 . It doesn't affect much though, because the later more Apply() call fixes/hides it
2017-06-22 17:47:46 +03:00
Yuri Kunde Schlesner
0c20b6e519
Kernel: Fix typo in test name
2017-06-22 02:21:18 -07:00
Yuri Kunde Schlesner
364ef24f77
Kernel: Implement CreateSession SVC
2017-06-22 00:39:27 -07:00
Yuri Kunde Schlesner
1423b3b10e
Memory: Add function to flush a virtual range from the rasterizer cache
...
This is slightly more ergonomic to use, correctly handles virtual
regions which are disjoint in physical addressing space, and checks only
regions which can be cached by the rasterizer.
2017-06-21 22:57:12 -07:00
Yuri Kunde Schlesner
3bc1034465
Memory: Fix crash when unmapping a VMA covering cached surfaces
...
Unmapping pages tries to flush any cached GPU surfaces touching that
region. When a cached page is invalidated, GetPointerFromVMA() is used
to restore the original pagetable pointer. However, since that VMA has
already been deleted, this hits an UNREACHABLE case in that function.
Now when this happens, just set the page type to Unmapped and continue,
which arrives at the correct end result.
2017-06-21 22:56:31 -07:00
Yuri Kunde Schlesner
75be7907c1
Memory: Add TryVirtualToPhysicalAddress, returning a boost::optional
2017-06-21 22:55:18 -07:00
Yuri Kunde Schlesner
1dd91e371b
Memory: Make PhysicalToVirtualAddress return a boost::optional
...
And fix a few places in the code to take advantage of that.
2017-06-21 22:55:17 -07:00
Yuri Kunde Schlesner
294e6b6306
Merge pull request #2792 from wwylele/lutlutlut
...
gl_rasterizer: fix lighting LUT interpolation
2017-06-21 14:55:23 -07:00
Yuri Kunde Schlesner
b3e13d653f
Kernel/IPC: Support translation of null handles
...
Missed this in my first implementation. Thanks to @wwylele for pointing
out that this was missing.
2017-06-21 14:27:03 -07:00
wwylele
3e20762caa
gl_state: reset 1d textures
2017-06-21 23:13:06 +03:00
wwylele
49cf57c079
gl_rasterizer: fix glGetUniformLocation type
2017-06-21 23:13:06 +03:00
wwylele
4dc2b38ce2
gl_rasterizer: manage texture ids in one place
2017-06-21 23:13:06 +03:00
wwylele
98a84efd39
gl_rasterizer/lighting: fix LUT interpolation
2017-06-21 23:13:06 +03:00
chris062689
b3426b6b51
Changing default values for bg_red, bg_green, and bg_blue from 1.0 to 0.0.
2017-06-21 13:45:07 -04:00
Weiyi Wang
d910f9cc85
Merge pull request #2789 from yuriks/misc-kernel
...
Trivial no-op additions
2017-06-21 20:34:12 +03:00
Yuri Kunde Schlesner
03964e9cd2
Merge pull request #2790 from yuriks/remove-movefrom
...
Remove ResultVal::MoveFrom
2017-06-20 22:04:09 -07:00
Yuri Kunde Schlesner
2cb9a2538b
Memory: Add enum definitions for the n3DS FCRAM size
2017-06-20 22:03:25 -07:00
Sebastian Valle
b91c1e214c
Merge pull request #2779 from Subv/uds_more2
...
UDS: Added a hook for updating the connection status when a client connects to the network.
2017-06-21 02:29:00 +00:00
Yuri Kunde Schlesner
c27dad4cd1
ResultVal: Remove MoveFrom()
...
Replace it with std::move(result_val).Unwrap(), or Foo().Unwrap() in
case you already have an rvalue.
2017-06-18 19:03:15 -07:00
Yuri Kunde Schlesner
ec6a30b8bb
ResultVal: Add an rvalue overload of Unwrap()
2017-06-18 18:49:46 -07:00
Yuri Kunde Schlesner
41376f050a
Kernel: Add comment about the extended linear heap area
2017-06-18 18:38:40 -07:00
Yuri Kunde Schlesner
d8ee9cb5c3
Kernel/IPC: Add tests for HLERequestContext buffer translation
2017-06-18 16:05:58 -07:00
Yuri Kunde Schlesner
6382e341f8
Kernel/IPC: Make HLERequestContext usable from outside kernel
2017-06-18 16:05:12 -07:00
Yuri Kunde Schlesner
2f5b8ebc73
Merge pull request #2776 from wwylele/geo-factor
...
Fragment lighting: implement geometric factor
2017-06-18 14:18:48 -07:00
wwylele
7318329bbb
gl_rasterizer/lighting: use the formula from the paper for germetic factor
2017-06-18 10:29:02 +03:00
Yuri Kunde Schlesner
ccdeacf149
Stop using reserved operator names (and/or/xor) with Xbyak
...
Also has the Dynarmic upgrade with the same change
2017-06-17 12:20:22 -07:00
Subv
bc8fe1c226
UDS: Clarify comment about the first 4 bytes of the SecureData header.
...
It is likely that these 4 bytes are actually a different header, part of some protocol that encapsulates the SecureData protocol.
2017-06-15 12:08:55 -05:00
Subv
39d3a3aa7e
UDS: Return the correct error messages in SendTo when not connected to a network or trying to send to itself.
2017-06-15 12:08:54 -05:00
Subv
2761536b1d
UDS: Stub SendTo to generate the unencrypted data frame with the right headers.
2017-06-15 12:08:53 -05:00
Subv
8cc1a34f7e
UDS: Added a hook for updating the connection status when a client connects to the network.
2017-06-15 11:57:49 -05:00
wwylele
a8f1a9cbb4
gl_rasterizer/lighting: implement geometric factor
2017-06-15 14:59:01 +03:00
Yuri Kunde Schlesner
186edf7ed7
Merge pull request #2762 from wwylele/light-cp-tangent
...
Fragment lighting: implement lut input 5 (CP) and tangent mapping
2017-06-14 20:08:26 -07:00
Yuri Kunde Schlesner
b865e7904d
Merge pull request #2743 from wwylele/wrap-fix
...
pica/rasterizer: implement/stub texture wrap mode 4-7
2017-06-13 21:28:12 -07:00
Sebastian Valle
cc8c999994
Services/UDS: Set the proper bit in the ConnectionStatus structure when creating a network. ( #2738 )
...
* Services/UDS: Set the proper bit in the ConnectionStatus structure when creating a network.
This lets the application know that the host was successfully added to the session.
* Services/UDS: Reset the connection status when destroying the network
* Services/UDS: Reset the connection status's bitmask of changed nodes after reporting it to the game.
2017-06-13 22:00:58 +03:00
Yuri Kunde Schlesner
0056022b1d
Merge pull request #2767 from yuriks/quaternion-flip-comment
...
OpenGL: Update comment on AreQuaternionsOpposite with new information
2017-06-12 16:31:55 -07:00
Yuri Kunde Schlesner
8542637065
Merge pull request #2774 from yuriks/hle-handles
...
Add basic support for IPC translation for HLE services
2017-06-11 21:39:49 -07:00
Yuri Kunde Schlesner
48b7e2b061
Kernel/IPC: Use boost::small_vector for HLE context objects
2017-06-11 16:34:13 -07:00
Yuri Kunde Schlesner
192a95390e
Kernel: Allow clearing request_objects to re-use buffer space
...
Reduces the necessary allocation to max(in_handles, out_handles) rather
than (in_handles + out_handles).
2017-06-11 13:10:21 -07:00
Yuri Kunde Schlesner
e639024013
Kernel: Basic support for IPC translation for HLE services
2017-06-11 13:10:21 -07:00
Yuri Kunde Schlesner
7747a25345
Service/sm: Convert srv: to use IPC helpers
2017-06-11 13:10:21 -07:00
Yuri Kunde Schlesner
a74dbc2c24
IPC: Add Pop/PushObjects methods to RequestParser/Builder
...
These use the context functions to create and look-up handles for the
user.
2017-06-11 13:10:20 -07:00
Yuri Kunde Schlesner
2102e5e907
IPC: Add basic HLERequestContext support to RequestParser/Builder
2017-06-11 13:10:16 -07:00
Yuri Kunde Schlesner
ccba9e903f
Kernel: Add methods in HLERequestContext abstracting handle creation
2017-06-11 13:07:33 -07:00
Yuri Kunde Schlesner
1e8c1ed676
ServiceFramework: Use separate copy of command buffer
...
Copy the IPC command buffer to/from the request context before/after the
handler is invoked. This is part of a move away from using global data
for handling IPC requests.
2017-06-11 13:07:33 -07:00
wwylele
bd01da889f
gl_rasterizer/lighting: Implement tangent mapping
2017-06-11 21:30:53 +03:00
wwylele
8b2aeb449c
gl_rasterizer/lighting: implement lut input 5 (CP)
2017-06-11 21:30:53 +03:00
Sebastian Valle
e789d1f1c4
Merge pull request #2727 from wwylele/spot-light
...
Fragment lighting: implement spot light
2017-06-11 18:23:47 +00:00
wwylele
13481c8131
gl_rasterizer_cache: depth write is disabled if allow_depth_stencil_write is false
2017-06-10 15:10:34 +03:00
Yuri Kunde Schlesner
5903948a7a
OpenGL: Update comment on AreQuaternionsOpposite with new information
...
While debugging the software renderer implementation, it was noticed
that this is actually exactly what the hardware does, upgrading the
status of this "hack" to being a proper implementation. And there was
much rejoicing.
2017-06-10 01:55:17 -07:00
Kloen Lansfiel
715eb0dee5
Remove unused import in break_points.cpp ( #2763 )
2017-06-08 21:16:46 -07:00
Yuri Kunde Schlesner
74aaf0d5c7
Merge pull request #2756 from yuriks/service-framework
...
New service framework
2017-06-08 21:03:03 -07:00
Yuri Kunde Schlesner
211fea5441
Service/sm: Convert 'srv:' to ServiceFramework
2017-06-08 20:59:19 -07:00
Yuri Kunde Schlesner
5a6d4a2f19
Session: Remove/add some forward declarations
2017-06-08 00:33:57 -07:00
Yuri Kunde Schlesner
82a355b3cd
Kernel: Ensure objects are kept alive during ClientSession disconnection
...
Fixes #2760
2017-06-08 00:33:24 -07:00
Yuri Kunde Schlesner
147ec9e842
Service: Remove a few redundant namespace qualifiers
2017-06-08 00:11:37 -07:00
Yuri Kunde Schlesner
0a7f4f531f
Service: Add new ServiceFramework framework for writing HLE services
...
The old "Interface" class had a few problems such as using free
functions (Which didn't allow you to write the service handler as if it
were a regular class.) which weren't very extensible. (Only received one
parameter with a pointer to the Interface object.)
The new ServiceFramework aims to solve these problems by working with
member functions and passing a generic context struct as parameter. This
struct can be extended in the future without having to update all
existing service implementations.
2017-06-08 00:11:37 -07:00
James Rowe
5639a00972
Merge pull request #2737 from Subv/decryptbeacondata
...
Services/UDS: Implement DecryptBeaconData.
2017-06-07 10:08:43 -06:00
Yuri Kunde Schlesner
1e267fd653
Kernel: Remove some unnecessary namespace qualifications
2017-06-06 14:51:42 -07:00
Subv
656f26c4df
Services/UDS: Implement DecryptBeaconData.
...
This function decrypts the encrypted data tags contained in the 802.11 beacon frames.
2017-06-06 11:31:20 -05:00
Yuri Kunde Schlesner
f68fd997cd
Service: Remove unnecessary includes from service.h
...
This has a huge fallout in terms of needing to fix other files because
all service implementations included that file.
2017-06-06 02:57:23 -07:00
Yuri Kunde Schlesner
0e3e091a0d
Service: Make service registration part of the sm implementation
...
Also enhances the GetServiceHandle implementation to be more accurate.
2017-06-06 02:57:04 -07:00
Yuri Kunde Schlesner
d9e7be32de
Service/sm: Use an actual semaphore for the notification semaphore
...
An Event was used way back then when we didn't have proper working
semaphores. Our Semaphore implementation is good enough now.
2017-06-06 02:57:04 -07:00
Yuri Kunde Schlesner
c17330e05f
Service: Move SRV interface to a new sm/ subdirectory
...
This will contain the implementation of the sm (Service Manager) system
module.
2017-06-06 02:57:04 -07:00
Yuri Kunde Schlesner
8a35f3634e
Kernel: Add a dedicated SetHleHandler method to ServerPort/ServerSession
...
This allows attaching a HLE handle to a ServerPort at any point after it
is created, allowing port/session creation to be generic between HLE and
regular services.
2017-06-06 02:56:32 -07:00
Yuri Kunde Schlesner
9dd1fd5b9e
ResultVal: Add more convenience utils for creating and cascading results
2017-06-06 00:51:57 -07:00
Yuri Kunde Schlesner
41a3feea66
HLE: Move SessionRequestHandler from Service:: to Kernel::
...
Most of the code that works with this is or will be in the kernel, so
it's a more appropriate place for it to be.
2017-06-05 23:40:11 -07:00
wwylele
a13b327035
pica/rasterizer: implement/stub texture wrap mode 4-7
2017-06-04 09:47:25 +03:00
Alex Touchet
75e006ac06
Edit Citra URLs ( #2728 )
2017-06-03 23:51:45 +03:00
Kloen
1edf3c80d6
Remove unused imports in game_list_p.h
2017-06-03 17:43:37 +02:00
TheKoopaKingdom
e0f8f75f43
Addressed Bunnei's review comments, and made some other tweaks:
...
- Deleted GetStatus() because it wasn't used anywhere outside of Core::System.
- Fixed design flaw where the message bar status could be set despite the game being stopped.
2017-06-02 18:40:39 -04:00
TheKoopaKingdom
b5b8dd22e5
Fixed wiki URLs.
2017-06-02 18:40:39 -04:00
TheKoopaKingdom
fa11f957f4
Switched to the ERROR_NOT_FOUND constant from errors.h.
2017-06-02 18:40:39 -04:00
TheKoopaKingdom
af0a2f11d9
Moved whitelist checks from FS_User to the Archive_NCCH handler.
2017-06-02 18:40:27 -04:00
TheKoopaKingdom
b817071212
Created a whitelist of system archives to prevent false positives creating dialogs.
2017-06-02 18:28:14 -04:00
TheKoopaKingdom
4799017aec
Optimized messages that were repetitive and added ability for core errors to specify more details optionally.
2017-06-02 18:28:14 -04:00
TheKoopaKingdom
beefa1482e
Added message to status bar to show core errors ignored by the user.
2017-06-02 18:28:14 -04:00
TheKoopaKingdom
cee9b78a15
Made some changes from review comments:
...
- Made LoadKernelSystemMode return a pair consisting of a system mode and a result code (Could use review).
- Deleted ErrorOpenGL error code in favor of just having ErrorVideoCore.
- Made dialog messages more clear.
- Compared archive ID in fs_user.cpp to ArchiveIdCode::NCCH as opposed to hex magic.
- Cleaned up some other stuff.
2017-06-02 18:28:14 -04:00
TheKoopaKingdom
3a32a33fde
Added system for handling core errors in citra-qt.
2017-06-02 18:27:56 -04:00
TheKoopaKingdom
1b9c3436ab
Fixed encrypted ROM error messages.
2017-06-02 18:25:32 -04:00
bunnei
c5b12080e7
Merge pull request #2722 from wwylele/cam-ipc-helper
...
CAM: use IPCHelper
2017-05-31 19:47:37 -04:00
bunnei
11b66db774
Merge pull request #2739 from yuriks/kernel-reorg
...
Split-up kernel.h
2017-05-31 19:46:15 -04:00
bunnei
fedc51fec1
Merge pull request #2721 from wwylele/texture-cube
...
swrasterizer: implemented TextureCube
2017-05-30 10:21:05 -04:00
wwylele
03fbc7f914
gl_rasterizer: implement spot light
2017-05-30 10:54:58 +03:00
wwylele
35339a578c
gl_rasterizer: sync spot light status
2017-05-30 10:54:58 +03:00
wwylele
0ade09f28a
pica: prepare registers for spotlight
2017-05-30 10:54:58 +03:00
Yuri Kunde Schlesner
ecfda5317e
Kernel: Move HandleTable to a separate file
2017-05-29 17:34:39 -07:00
Yuri Kunde Schlesner
6f662625d3
Kernel: Move WaitObject to a separate file
...
Now that HandleTable doesn't directly depend on WaitObject anymore, this
can be separated from the main kernel.h header.
2017-05-29 16:16:46 -07:00
Yuri Kunde Schlesner
dfa8e600b0
Merge pull request #2734 from yuriks/cmake-imported-libs
...
CMake: Use CMake target properties for all libraries
2017-05-29 15:12:21 -07:00
Yuri Kunde Schlesner
ddbf9cec1b
Kernel: Removed HandleTable::GetWaitObject
...
This isn't necessary anymore since plain Get works correctly for
WaitObjects.
2017-05-29 15:10:06 -07:00
Yuri Kunde Schlesner
74aa9efe3e
Kernel: Extract dynamic Object pointer cast into its own function
2017-05-29 14:42:27 -07:00
wwylele
06dfd8eee1
swrasterizer: implement TextureCube
2017-05-29 22:28:48 +03:00
wwylele
1295e20de3
pica: add registers for texture cube
2017-05-29 22:03:08 +03:00
Yuri Kunde Schlesner
a6222bbbc7
Merge pull request #2729 from yuriks/quaternion-fix
...
OpenGL: Improve accuracy of quaternion interpolation
2017-05-28 01:24:06 -07:00
Yuri Kunde Schlesner
e04bfa22e7
CMake: Create an INTERFACE target for Catch
2017-05-27 22:46:59 -07:00
Yuri Kunde Schlesner
1f22f0939c
CMake: Create INTERFACE targets for microprofile and nihstro
2017-05-27 22:34:52 -07:00
Yuri Kunde Schlesner
49ef9a6270
CMake: Remove unnecessary include_directories for dynarmic
...
Dynarmic already adds the correct include paths to the library target.
2017-05-27 22:19:37 -07:00
Yuri Kunde Schlesner
dfd2db3e37
CMake: Add cryptopp include path to target property
2017-05-27 22:16:57 -07:00
Yuri Kunde Schlesner
f9a960614d
CMake: Add SoundTouch include path to target property
2017-05-27 22:09:28 -07:00
Yuri Kunde Schlesner
d84915c4a1
CMake: Define an interface target for SDL2 definitions
2017-05-27 21:38:49 -07:00
Yuri Kunde Schlesner
1e2a31410c
CMake: Remove CITRA_QT_LIBS var
...
This used to be required to support both Qt4 and Qt5, but we dropped Qt4
so it's not needed anymore.
2017-05-27 20:53:39 -07:00
Yuri Kunde Schlesner
08a93f99d2
CMake: Stop using FindOpenGL, which seems to not be required anymore
2017-05-27 20:48:00 -07:00
Yuri Kunde Schlesner
97f922e583
CMake: Use IMPORTED target for Boost
2017-05-27 20:44:51 -07:00
Yuri Kunde Schlesner
96dc0780e9
CMake: Use IMPORTED target for libpng
2017-05-27 20:44:51 -07:00
Yuri Kunde Schlesner
b78ce2bce5
CMake: Correct inter-module dependencies and library visibility
...
Modules didn't correctly define their dependencies before, which relied
on the frontends implicitly including every module for linking to
succeed.
Also changed every target_link_libraries call to specify visibility of
dependencies to avoid leaking definitions to dependents when not
necessary.
2017-05-27 18:41:24 -07:00
Yuri Kunde Schlesner
c201307b74
Citra: Convert include into forward declaration
2017-05-27 18:41:24 -07:00
Yuri Kunde Schlesner
7d74a5daf0
Remove some unnecessary inclusions of video_core.h
2017-05-27 18:41:24 -07:00
Yuri Kunde Schlesner
b868036561
Move screen size constants from video_core to core
...
video_core didn't even properly use them, and they were the source of
many otherwise-unnecessary dependencies from core to video_core.
2017-05-27 18:41:24 -07:00
Yuri Kunde Schlesner
2010024c2d
OpenGL: Remove unused RendererOpenGL fields
2017-05-27 18:02:46 -07:00
Yuri Kunde Schlesner
7b560a8b81
Core: Fix some out-of-style includes
2017-05-27 16:31:42 -07:00
Yuri Kunde Schlesner
8b55ffb74a
Common: Fix some out-of-style includes
2017-05-27 16:14:10 -07:00
Yuri Kunde Schlesner
e6dc5926fb
Move framebuffer_layout from Common to Core
...
This removes a dependency inversion between core and common. It's also
the proper place for the file since it makes screen layout decisions
specific to the 3DS.
2017-05-27 16:10:25 -07:00
wwylele
3342bb1fa9
fixup!cam: use IPCHelper
2017-05-27 21:30:07 +03:00
Yuri Kunde Schlesner
4db60b39e7
Merge pull request #2725 from wwylele/texture-sampler
...
gl_shader: refactor texture sampler into its own function
2017-05-27 03:26:50 -07:00
Yuri Kunde Schlesner
24ca113f3c
OpenGL: Improve accuracy of quaternion interpolation
...
Current order of operations (rotate then normalize) seems to produce a
lot more distortion than normalizing and then rotating. This makes Citra
results match pretty closesly with hardware, and indicates that hardware
may also be using lerp instead of slerp to interpolate the quaternions.
2017-05-27 00:13:41 -07:00
wwylele
5e5816c800
gl_shader: refactor texture sampler into its own function
2017-05-27 01:56:22 +03:00
bunnei
030121014f
Merge pull request #2716 from yuriks/decentralized-result
...
Decentralize ResultCode
2017-05-26 11:59:57 -04:00
Yuri Kunde Schlesner
85c524bc45
Merge pull request #2697 from wwylele/proctex
...
Implemented Procedural Texture (Texture Unit 3)
2017-05-24 21:37:42 -07:00
Yuri Kunde Schlesner
782c6b1923
FS: Remove unused result definition
2017-05-24 21:06:00 -07:00
Yuri Kunde Schlesner
0ba04b2166
Common: Clean up meta-template logic in BitField
2017-05-24 21:06:00 -07:00
Yuri Kunde Schlesner
467545ed48
Kernel: Centralize error definitions in errors.h
2017-05-24 21:06:00 -07:00
Yuri Kunde Schlesner
6210a1aaf3
GSP_GPU: Move error codes from result.h to local file
2017-05-24 21:06:00 -07:00
Yuri Kunde Schlesner
2d147a1c0d
FileSys: Move all result description to errors.h
2017-05-24 21:06:00 -07:00
Yuri Kunde Schlesner
f2e65b5cbc
result: Make error description a generic integer
...
It is now known that result code description vary depending on the
module, and so they're best defined on a per-module basis. To support
this, allow passing in an arbitrary integer instead of limiting to the
ones in the ErrorDescription enum. These will be gradually migrated to
their individual users, but a few will be kept as "common" codes shared
by all modules.
2017-05-24 21:05:59 -07:00
Yuri Kunde Schlesner
a786199c4b
Make BitField and ResultCode constexpr-initializable
2017-05-24 21:05:59 -07:00
bunnei
68100e88e0
telemetry: Log a few simple data fields throughout core.
2017-05-24 19:16:23 -04:00
bunnei
e65f4cc882
core: Keep track of telemetry for the current emulation session.
2017-05-24 19:16:22 -04:00
bunnei
f9a850bb59
common: Add a generic interface for logging telemetry fields.
2017-05-24 19:16:21 -04:00
wwylele
3b34518bcf
cam: move u32->u8 trancation to IPCHelper
2017-05-24 12:50:19 +03:00
wwylele
e82ac2e80f
cam: use IPCHelper
2017-05-24 12:45:36 +03:00
Sebastian Valle
1483d53541
Merge pull request #2692 from Subv/vfp_ftz
...
Dyncom/VFP: Convert denormal outputs into 0 when the FTZ flag is enabled.
2017-05-22 12:16:53 -05:00
Yuri Kunde Schlesner
464dc927af
Merge pull request #2406 from Subv/session_disconnect
...
Kernel: Properly update port counters on session disconnection.
2017-05-21 17:18:16 -07:00
Subv
c67cd54049
fixup! Dyncom/VFP: Convert denormal outputs into 0 when the FTZ flag is enabled.
2017-05-21 18:56:09 -05:00
Subv
8e4b05c22a
Kernel/Sessions: Remove the ClientSession::Create function.
...
It is not meant to be used by anything other than CreateSessionPair.
2017-05-21 18:52:42 -05:00
Merry
aee6dcf1f7
Merge pull request #2694 from Subv/vfp_vsub_ftz
...
Dyncom/VFP: Perform flush-to-zero on the second operand of vsub before sending it to vadd.
2017-05-22 00:50:52 +01:00
wwylele
e965922607
swrasterizer: add missing tc0_w and fragment lighting attribute processing
2017-05-21 09:09:15 +03:00
wwylele
19583dfd61
gl_rasterizer: implement procedural texture
2017-05-20 13:50:50 +03:00
wwylele
b010ff8174
pica/swrasterizer: implement procedural texture
2017-05-20 13:50:50 +03:00
bunnei
fa45d8a35e
Merge pull request #2661 from Subv/uds5
...
Services/UDS: Generate 802.11 beacon frames when a network is open.
2017-05-19 11:04:34 -04:00
bunnei
ec8e58a9fa
Merge pull request #2710 from emmauss/ptm_ipc
...
use IPCHelper for PTM services
2017-05-19 11:03:55 -04:00
emmaus
603f9246e1
use IPCHelper for PTM services
2017-05-19 08:44:58 +00:00
wwylele
c033f16977
pica: use correct register value for shader bool_uniforms
...
variable value is not masked. the masked and combined register value should be used instead
2017-05-17 22:14:09 +03:00
Yuri Kunde Schlesner
27a2664711
Merge pull request #2703 from wwylele/pica-reg-revise
...
pica: correct bit field length for some registers
2017-05-16 10:00:37 -07:00
wwylele
2a89d391c9
pica: correct bit field length for some registers
2017-05-16 19:24:06 +03:00
Subv
56031253c4
Services/UDS: Use the new IPC helper functions.
2017-05-15 13:05:17 -05:00
Subv
2472e71eb0
Services/UDS: Implement RecvBeaconBroadcastData.
...
This allows the applications to retrieve 802.11 beacon frames from nearby UDS networks.
Note that the networks are still not announced anywhere.
2017-05-15 13:05:16 -05:00
Subv
b722ca78a2
Services/UDS: Generate the UDS beacons when the beacon callback fires.
2017-05-15 13:05:15 -05:00
Subv
f98eb7d315
Kernel: Remove a now unused enum and variable regarding a session's status.
2017-05-15 11:22:16 -05:00
Subv
9c496013b3
Kernel: Use a Session object to keep track of the status of a Client/Server session pair.
...
Reduce the associated port's connection count when a ServerSession is destroyed.
2017-05-15 11:22:15 -05:00
Yuri Kunde Schlesner
d704ab4fea
Merge pull request #2687 from yuriks/address-mappings
...
Kernel: Map special regions according to ExHeader
2017-05-14 13:52:40 -07:00
Subv
8533b511e8
Dyncom/VFP: Perform flush-to-zero on the second operand of vsub before sending it to vadd.
...
Previously we were letting vadd flush the value to positive 0, but there are cases where this behavior is wrong, for example,
vsub: -0 - +0 = -0
vadd: -0 + +0 = +0
Now we'll flush the value to +0 inside vsub, and then negate it.
2017-05-13 18:03:41 -05:00
Weiyi Wang
e8a577eb03
Merge pull request #2695 from JayFoxRox/gs-regs
...
Prepare Pica registers for Geometry Shaders
2017-05-12 18:02:45 +03:00
Jannik Vogel
f3efa5e031
Pica: Write GS registers
...
This adds the handlers for the geometry shader register writes which will call the functions from the previous commit to update registers for the GS.
2017-05-12 16:22:37 +02:00
Jannik Vogel
52c66441ab
Pica: Write shader registers in functions
...
The commit after this one adds GS register writes, so this moves the VS handlers into functions so they can be re-used and extended more easily.
2017-05-12 16:22:37 +02:00
Jannik Vogel
b9cc8596a2
Pica: Set program code / swizzle data limit to 4096
...
One of the later commits will enable writing to GS regs.
It turns out that on startup, most games will write 4096 GS program words.
The current limit of 1024 would hence result in 3072 (4096 - 1024) error messages:
```
HW.GPU <Error> video_core/shader/shader.cpp:WriteProgramCode:229: Invalid GS program offset 1024
```
New constants have been introduced to represent these limits.
The swizzle data size has also been raised. This matches the given field sizes of [GPUREG_SH_OPDESCS_INDEX](https://3dbrew.org/wiki/GPU/Internal_Registers#GPUREG_SH_OPDESCS_INDEX ) and [GPUREG_SH_CODETRANSFER_INDEX](https://www.3dbrew.org/wiki/GPU/Internal_Registers#GPUREG_SH_CODETRANSFER_INDEX ) (12 bit = [0; 4095]).
2017-05-11 15:01:27 +02:00
Yuri Kunde Schlesner
e69c563ca2
Merge pull request #2669 from jroweboy/async_file_watcher
...
Frontend: Prevent FileSystemWatcher from blocking UI thread
2017-05-10 18:44:06 -07:00
James Rowe
d2b1114c2c
Frontend: Prevent FileSystemWatcher from blocking UI thread
...
Instead of tying the QFileSystemWatcher to the GameList and updating in
the UI thread, this change moves it to the worker thread. Since it gets
deleted and recreated as part of the worker thread, this prevents it from
ever getting used from multiple threads (which is why it was originally
done on the UI thread)
2017-05-10 09:37:44 -06:00
bunnei
5e8debd0b4
Merge pull request #2676 from wwylele/irrst
...
ir: implement new 3ds HID via ir:rst
2017-05-10 09:56:27 -04:00
Yuri Kunde Schlesner
2668c26a68
Kernel: Map special regions according to ExHeader
...
This replaces the hardcoded VRAM/DSP mappings with ones made based on
the ExHeader ARM11 Kernel caps list. While this has no visible effect
for most applications (since they use a standard set of mappings) it
does improve support for system modules and n3DS exclusives.
2017-05-09 21:44:00 -07:00
Yuri Kunde Schlesner
03ad0ec0e5
DSP: Create backing memory for entire DSP RAM
...
Also move address space mapping out of video_core.
2017-05-09 21:44:00 -07:00
Yuri Kunde Schlesner
2af0a2a4b7
Memory: Add constants for the n3DS additional RAM
...
This is 4MB of extra, separate memory that was added on the New 3DS.
2017-05-09 21:43:59 -07:00
Yuri Kunde Schlesner
b73cc8d51b
Merge pull request #2696 from Subv/vfp_revert
...
Dyncom/VFP: Revert 7d2670f and fix the FPSCR getting invalid values.
2017-05-08 21:38:45 -07:00
Subv
338eb4204e
Dyncom/VFP: Strip the VFP_NAN_FLAG sentinel value when setting vfp exceptions.
2017-05-09 00:36:23 -05:00
Subv
55a42d3764
Revert "Remove exceptions parameter from normaliseround VFP functions"
...
This reverts commit 7d2670f08e .
Conflicts:
src/core/arm/skyeye_common/vfp/vfp_helper.h
src/core/arm/skyeye_common/vfp/vfpdouble.cpp
src/core/arm/skyeye_common/vfp/vfpsingle.cpp
2017-05-09 00:36:22 -05:00
Subv
934af07e88
Dyncom/VFP: Convert denormal outputs into 0 when the FTZ flag is enabled.
...
Inputs are still not flushed to 0 if they are denormals.
2017-05-08 14:34:16 -05:00
Yuri Kunde Schlesner
3d5dacdc57
Dyncom: Remove disassembler code
...
Had licensing issue around it, in addition to several bugs.
Closes #1632 , #1280
2017-05-07 15:33:46 -07:00
Yuri Kunde Schlesner
2945356d11
Dyncom: Tweak types and log formatting
2017-05-07 15:33:42 -07:00
Yuri Kunde Schlesner
89fe2c033d
Remove unused symbols code
2017-05-07 15:33:39 -07:00
Yuri Kunde Schlesner
88fddcbce4
Remove ability to load symbol maps
...
This was now mostly unused except by thread creation, which used a
symbol of the entrypoint, if available, to name the thread.
2017-05-07 15:33:07 -07:00