wwylele
3e478ca131
SwRasterizer/Lighting: implement bump mapping
9 years ago
Subv
fa228ca637
Kernel/Threads: Don't immediately switch to the new main thread when loading a new process.
...
This is necessary for loading multiple processes at the same time.
The main thread will be automatically scheduled when necessary once the scheduler runs.
9 years ago
Subv
8a9a4e2c42
GPU/Warnings: Explicitly cast the screen refresh ticks to u64.
9 years ago
Subv
65f19b51c4
Warnings: Add UNREACHABLE macros to switches that contemplate all possible values.
9 years ago
Subv
145a7293a3
HLE/Applets: Fixed some conversion warnings when creating the framebuffer shared memory objects.
9 years ago
Subv
d237a89048
CPU/Dynarmic: Fixed a warning when incrementing the number of ticks in ExecuteInstructions.
9 years ago
Subv
9d0841b48b
Dyncom: Use size_t instead of int to store the instruction offsets in the instruction cache.
...
Fixes a few warnings.
9 years ago
Subv
d3fb1d6c38
Dyncom: Fixed a conversion warning when decoding thumb instructions.
9 years ago
wwylele
63b6e802cd
swrasterizer: remove invalid TODO
...
This function is called in clipping, before the pespective divide, and is not used in later rasterization. Thus it doesn't need perspective correction.
9 years ago
wwylele
72b26ac32f
swrasterizer/clipper: remove tested TODO
...
hwtested. Current implementation is the correct behavior
9 years ago
wwylele
5a4af616c6
gl_shader_gen: simplify and clarify the depth transformation between vertex shader and fragment shader
9 years ago
wwylele
1eca380886
gl_rasterizer: add clipping plane z<=0 defined in PICA
9 years ago
Yuri Kunde Schlesner
46d1ca768d
Merge pull request #2872 from wwylele/sw-geo-factor
...
SwRasterizer/Lighting: implement geometric factor
9 years ago
James Rowe
bbfa9d0635
Merge pull request #2861 from wwylele/motion-refactor
...
Refactor MotionEmu into a InputDevice
9 years ago
wwylele
54c0c8adee
HID: fix a comment and a warning
9 years ago
James Rowe
8afa81ac1b
Merge pull request #2871 from wwylele/sw-spotlight
...
SwRasterizer/Lighting: implement spot light
9 years ago
B3n30
5d0a1e7efd
Added missing parts in libnetwork ( #2838 )
...
* Network: Set and send the game information over enet
Added Callbacks for RoomMember and GetMemberList to Room in preparation for web_services.
9 years ago
wwylele
0f35755572
pica/command_processor: build geometry pipeline and run geometry shader
...
The geometry pipeline manages data transfer between VS, GS and primitive assembler. It has known four modes:
- no GS mode: sends VS output directly to the primitive assembler (what citra currently does)
- GS mode 0: sends VS output to GS input registers, and sends GS output to primitive assembler
- GS mode 1: sends VS output to GS uniform registers, and sends GS output to primitive assembler. It also takes an index from the index buffer at the beginning of each primitive for determine the primitive size.
- GS mode 2: similar to mode 1, but doesn't take the index and uses a fixed primitive size.
hwtest shows that immediate mode also supports GS (at least for mode 0), so the geometry pipeline gets refactored into its own class for supporting both drawing mode.
In the immediate mode, some games don't set the pipeline registers to a valid value until the first attribute input, so a geometry pipeline reset flag is set in `pipeline.vs_default_attributes_setup.index` trigger, and the actual pipeline reconfigure is triggered in the first attribute input.
In the normal drawing mode with index buffer, the vertex cache is a little bit modified to support the geometry pipeline. Instead of OutputVertex, it now holds AttributeBuffer, which is the input to the geometry pipeline. The AttributeBuffer->OutputVertex conversion is done inside the pipeline vertex handler. The actual hardware vertex cache is believed to be implemented in a similar way (because this is the only way that makes sense).
Both geometry pipeline and GS unit rely on states preservation across drawing call, so they are put into the global state. In the future, the other three vertex shader units should be also placed in the global state, and a scheduler should be implemented on top of the four units. Note that the current gs_unit already allows running VS on it in the future.
9 years ago
wwylele
8285ca4ad8
pica/shader/jit: implement SETEMIT and EMIT
9 years ago
wwylele
36981a5aa6
pica/primitive_assembly: Handle winding for GS primitive
...
hwtest shows that, although GS always emit a group of three vertices as one primitive, it still respects to the topology type, as if the three vertices are input into the primitive assembler independently and sequentially. It is also shown that the winding flag in SETEMIT only takes effect for Shader topology type, which is believed to be the actual difference between List and Shader (hence removed the TODO). However, only Shader topology type is observed in official games when GS is in use, so the other mode seems to be just unintended usage.
9 years ago
wwylele
bb63ae3052
correct constness
9 years ago
wwylele
28128348f2
pica/shader/interpreter: implement SETEMIT and EMIT
9 years ago
wwylele
46c6973d2b
pica/shader: extend UnitState for GS
...
Among four shader units in pica, a special unit can be configured to run both VS and GS program. GSUnitState represents this unit, which extends UnitState (which represents the other three normal units) with extra state for primitive emitting. It uses lots of raw pointers to represent internal structure in order to keep it standard layout type for JIT to access.
This unit doesn't handle triangle winding (inverting) itself; instead, it calls a WindingSetter handler. This will be explained in the following commits
9 years ago
wwylele
223bd35450
motion_emu: no need to include thread in header
9 years ago
Yuri Kunde Schlesner
21204ba488
Merge pull request #2881 from MerryMage/dsp-firm-check
...
dsp_dsp: Remove size assertion in LoadComponent
9 years ago
MerryMage
b67c2dc82c
dsp_dsp: Remove size assertion in LoadComponent
9 years ago
Dave Leaver
bf71fc0342
Fix Spelling/English mistakes
9 years ago
Sebastian Valle
d59f503729
Merge pull request #2843 from Subv/applet_slots
...
Services/APT: Use an array to hold data about the 4 possible concurrent applet types (Application, Library, HomeMenu, System)
9 years ago
wwylele
686fb3e78c
gl_shader_gen: don't call SampleTexture when bump map is not used
9 years ago
wwylele
188194908c
move MotionEmu from core/frontend to input_common as a InputDevice
9 years ago
wwylele
867eabd6b7
HID: use MotionDevice for Accelerometer and Gyroscope
9 years ago
Weiyi Wang
53ef90d1bd
Merge pull request #2874 from danzel/spelling-1
...
Fix some spelling mistakes
9 years ago
danzel
8d3f48d0a3
Fix some spelling mistakes
9 years ago
wwylele
945f9a1b04
SwRasterizer/Lighting: implement spot light
9 years ago
wwylele
14ee32c46a
SwRasterizer/Lighting: implement geometric factor
9 years ago
Weiyi Wang
aaf5161344
Merge pull request #2863 from wwylele/pad-state-zero
...
HID: zero unused PadState bits
9 years ago
wwylele
599de29ea3
HID: zero unused PadState bits
9 years ago
wwylele
5d9d42f0d0
SwRasterizer/Lighting: use make_tuple instead of constructor
...
implicit tuple constructor is a c++17 thing, which is not supported by some not-so-old libraries. Play safe for now
9 years ago
wwylele
db309b2423
pica/regs: layout geometry shader configuration regs
...
All the register meanings are derived from ctrulib (3dbrew is outdated for most of them)
9 years ago
bunnei
c2466a2f19
Merge pull request #2862 from j-selby/update-cryptopp
...
Update CryptoPP (byte ambiguity)
9 years ago
Weiyi Wang
792dee47a7
Merge pull request #2822 from wwylele/sw_lighting-2
...
Implement fragment lighting in the sw renderer (take 2)
9 years ago
Weiyi Wang
93ab46e500
Merge pull request #2856 from wwylele/shader-share
...
pica: upload shared shader code & swizzle to both unit
9 years ago
mailwl
a6273dd56a
Service/dlp: Update function tables according 3dbrew
9 years ago
James
1a44949ef7
Update cryptopp
9 years ago
Subv
177e8ce655
Services/APT: Use the AppletAttributes union directly when dealing with applet attrs.
9 years ago
Subv
73fba0de46
Services/APT: Use an array to hold data about the 4 possible concurrent applet types (Application, Library, HomeMenu, System).
...
This gives each applet type its own set of events as per the real NS module.
9 years ago
wwylele
baa24f4ea9
pica: upload shared shader code to both unit
9 years ago
Andrea Pascal
f55b7aefd9
Quickfix typo in OpenGL 3.3 error message
...
User pointed out on the Discord server that "nothave" is erroneously concatenated. Added a space to prevent it.
9 years ago
bunnei
fb8de89859
telemetry: Add field for OsPlatform.
9 years ago
bunnei
9390d54bb3
telemetry: Add field for BuildName.
9 years ago
bunnei
5c631ec9c5
telemetry: Add field for RequiresSharedFont.
9 years ago
bunnei
a621ab6853
telemetry_session: Log BuildDate and ProgramName fields.
9 years ago
bunnei
f44a1e0291
common: Add build timestamp to scm_rev.
9 years ago
bunnei
9b8e5bea66
core: Expose AppLoader as a public interface.
9 years ago
bunnei
f5cf9960d9
loader: Expose program title.
9 years ago
wwylele
2252a63f80
SwRasterizer/Lighting: shorten file name
9 years ago
wwylele
eda28266fb
SwRasterizer/Lighting: move to its own file
9 years ago
wwylele
48b4105871
SwRasterizer/Lighting: reduce confusion
9 years ago
wwylele
c59ed47608
SwRasterizer/Lighting: move quaternion normalization to the caller
9 years ago
James
941a722ff1
Handle invalid filenames when renaming files/directories
9 years ago
Weiyi Wang
60024ad7c2
Merge pull request #2848 from wwylele/shader-loop-fix
...
pica/shader_interpreter: fix off-by-one in LOOP
9 years ago
bunnei
05a38e307c
Merge pull request #2679 from MerryMage/interp-tests
...
DynCom VFP tests
9 years ago
bunnei
f15e5522dc
Merge pull request #2840 from Subv/apt_parameter
...
Services/APT: Corrected the behavior of the Receive/Send/Glance/CancelParameter functions
9 years ago
wwylele
c89f804a01
pica/shader_interpreter: fix off-by-one in LOOP
9 years ago
bunnei
a724fb3657
Merge pull request #2837 from wwylele/shader-debugger-fix
...
Misc shader debugger fixes
9 years ago
B3n30
718423e506
Network: Moved NintendoOUI initalization to RoomMember constructor
9 years ago
MerryMage
a08edd67eb
tests: Add tests for vadd
9 years ago
MerryMage
567c3a2ee7
tests: Arm testing framework
9 years ago
Sebastian Valle
c6a2e519ef
Merge pull request #2816 from wwylele/proctex-lutlutlut
...
gl_rasterizer: use texture buffer for proctex LUT
9 years ago
Sebastian Valle
e646bd902d
Merge pull request #2834 from wwylele/depth-enable-fix
...
gl_rasterizer_cache: fix using_depth_fb
9 years ago
Weiyi Wang
045d0b5bbd
Merge pull request #2799 from yuriks/virtual-cached-range-flush
...
Add address conversion functions returning optional, Add function to flush virtual region from rasterizer cache
9 years ago
Subv
e59ab7c1d6
Service/APT: Log Send/Cancel/Receive/GlanceParameter calls even if they return an error.
9 years ago
Subv
68596a7068
Services/APT: Return the proper error code when calling SendParameter with an outstanding parameter already in memory.
9 years ago
Subv
a9bc417f59
Services/APT: Reset the APT parameter inside CancelParameter if the conditions are met.
9 years ago
Subv
e403638d9b
Services/APT: Properly clear the apt parameter after a successful ReceiveParameter call.
9 years ago
Subv
2dc720c355
Services/APT: Use the right error codes in ReceiveParameter and GlanceParameter when the parameter doesn't exist.
9 years ago
Subv
5682608df7
Services/APT: Use boost::optional for the APT parameter structure.
9 years ago
wwylele
49602139c8
debugger/shader: display LOOP
9 years ago
wwylele
b5609e1578
debugger/shader: print the invert flag for JMPU
9 years ago
wwylele
8375fd2aba
debugger/shader: fix address register for reverted arithmetic op
9 years ago
wwylele
98cd5164c5
debugger/shader: fix inverted uniform flow control
9 years ago
bunnei
df8b9863f9
telemetry: Log performance, configuration, and system data.
9 years ago
bunnei
822e8d21ea
Merge pull request #2804 from Kloen/theming
...
citra-qt: UI Themes
9 years ago
Weiyi Wang
924215a41f
Merge pull request #2818 from B3n30/network
...
Enable data transfer over ENet
9 years ago
B3n30
7dbbd8a02e
stubbed frd::UnscrambleLocalFriendCode ( #2827 )
9 years ago
B3n30
77df82f5d6
Network: Changed timeout for receiving packets to 100ms
9 years ago
B3n30
253d3dd3d8
Network: Propagate Room closing to connected members
9 years ago
B3n30
a0626221a5
Network: Made send async in RoomMember
9 years ago
B3n30
859be35d54
Network: Send the game title
9 years ago
B3n30
42e57c1218
Network: Enable sending and receiving chat messages
9 years ago
B3n30
35a0b32553
Network: Handle the disconnect of a client
9 years ago
B3n30
641346c15c
Network: Enable to send WifiPackets
9 years ago
B3n30
ebff5ba514
Network: Init Network in SDL and QT
9 years ago
B3n30
77677e205e
Network: Send JoinRequest and handle the answer in RoomMember
9 years ago
B3n30
2af9a7146d
Network: Handle join request in Room
9 years ago
B3n30
7d9b7394dd
Network: Added Packet class for serialization
9 years ago
B3n30
589dc083a5
Network: Threads for Room and RoomMember
9 years ago
Weiyi Wang
e634b75754
Merge pull request #2784 from wwylele/font-archive
...
load shared font from system archive
9 years ago
bunnei
28c3575679
web_backend: Specify api-version on JSON post.
9 years ago
bunnei
33b012e86b
web_service: Add CMake flag to enable.
9 years ago
bunnei
8af3ebb149
telemetry_session: Use TelemetryJson to submit real telemetry.
9 years ago
bunnei
fd3b4451ec
web_service: Implement JSON serialization of telemetry data.
9 years ago
bunnei
a634efa40e
web_backend: Add initial interface to POST data to Citra Web Services.
9 years ago
wwylele
4feff63ffa
SwRasterizer/Lighting: dist atten lut input need to be clamp
9 years ago
wwylele
56e5425e59
SwRasterizer/Lighting: unify float suffix
9 years ago
wwylele
e415558a4f
SwRasterizer/Lighting: get rid of nested return
9 years ago
wwylele
c6d1472513
SwRasterizer/Lighting: refactor GetLutValue into a function.
...
merging similar pattern. Also makes the code more similar to the gl one
9 years ago
wwylele
f13cf506e0
SwRasterizer: only interpolate quat and view when lighting is enabled
9 years ago
wwylele
fe44e843fe
vector_math: remove dead template parameter
9 years ago
wwylele
efc655aec0
SwRasterizer/Lighting: pass lighting state as parameter
9 years ago
wwylele
f3660ba9dd
vector_math: remove broken SFINAE stuff
...
this was originally added to eliminate warnings on MSVC, but it doesn't work for custom types.
9 years ago
Subv
9906feefbd
SwRasterizer/Lighting: Move the clamp highlight calculation to the end of the per-light loop body.
9 years ago
Subv
7526af5e52
SwRasterizer/Lighting: Move the lighting enable check outside the ComputeFragmentsColors function.
9 years ago
Subv
b8229a7684
SwRasterizer/Lighting: Do not use global registers state in ComputeFragmentsColors.
9 years ago
Subv
7bc467e872
SwRasterizer/Lighting: Do not use global state in LookupLightingLut.
9 years ago
Subv
37ac2b6657
SwRasterizer/Lighting: Fixed a bug where the distance attenuation bias was being set to the dist atten scale.
9 years ago
Subv
6250f52e93
SwRasterizer: Fixed a few conversion warnings and moved per-light values into the per-light loop.
9 years ago
Subv
2d69a9b8bf
SwRasterizer: Run clang-format
9 years ago
Subv
73566ff7a9
SwRasterizer: Flip the vertex quaternions before clipping (if necessary).
9 years ago
Subv
2a75837bc3
SwRasterizer: Corrected the light LUT lookups.
9 years ago
Subv
f2d4d5c219
SwRasterizer: Corrected the light LUT lookups.
9 years ago
Subv
80b6fc592e
SwRasterizer: Fixed the lighting lut lookup function.
9 years ago
Subv
10b0bea060
SwRasterizer: Calculate fresnel for fragment lighting.
9 years ago
Subv
46b8c8e1da
SwRasterizer: Calculate specular_1 for fragment lighting.
9 years ago
Subv
be25e78b07
SwRasterizer: Calculate specular_0 for fragment lighting.
9 years ago
Subv
b2f472a2b1
SwRasterizer: Implement primary fragment color.
9 years ago
bunnei
52fbe1e10c
web_service: Add skeleton project.
9 years ago
bunnei
8abf808854
settings: Add telemetry endpoint URL.
9 years ago
bunnei
f7a9d42592
logging: Add WebService as a log cateogry.
9 years ago
Sebastian Valle
669757a97b
Merge pull request #2815 from mailwl/bossp
...
Service/boss:P: Add some functions to FunctionTable
9 years ago
bunnei
6d4bac8522
Merge pull request #2797 from yuriks/cached-vma-free-crash
...
Memory: Fix crash when unmapping a VMA covering cached surfaces
9 years ago
B3n30
2e37ce01c9
Implement basic virtual Room support based on enet ( #2803 )
...
* Added support for network with ENet lib,
connecting is possible, but data can't be sent, yet.
* fixup! Added support for network with ENet lib,
* fixup! CLang
* fixup! Added support for network with ENet lib,
* fixup! Added support for network with ENet lib,
* fixup! Clang format
* More fixups!
* Moved ENetHost* and ENetPeer* into pimpl classes
* fixup! Moved ENetHost* and ENetPeer* into pimpl classes
* fixup! Clang again
* fixup! Moved ENetHost* and ENetPeer* into pimpl classes
* fixup! Moved ENetHost* and ENetPeer* into pimpl classes
* fixup! Moved ENetHost* and ENetPeer* into pimpl classes
9 years ago
mailwl
8582194a4c
Service/boss:P: Add some functions to FunctionTable
9 years ago
wwylele
8482933db8
gl_rasterizer: use texture buffer for proctex LUT
9 years ago
Kloen
0e428823f0
Remove unnecessary WIN32_LEAN_AND_MEAN macro definition
9 years ago
Sebastian Valle
56d718b2a1
Merge pull request #2793 from Subv/replyandreceive
...
Kernel/SVC: Partially implemented svcReplyAndReceive
9 years ago
Subv
b53fa9514f
Kernel/SVC: Pass the current thread as a parameter to ClientSession::SendSyncRequest.
9 years ago
Yuri Kunde Schlesner
686fde7e52
Merge pull request #2809 from wwylele/texture-copy-fix
...
gpu: fix edge cases for TextureCopy
9 years ago
wwylele
85a448d405
gpu: add comments for TextureCopy
9 years ago
Yuri Kunde Schlesner
a613d45de9
Merge pull request #2800 from wwylele/fog-lutlutlut
...
gl_rasterizer: use texture buffer for fog LUT
9 years ago
MerryMage
f1790e6d91
configure_debug: Add label warning that CPU JIT needs to be disabled for gdbstub to work
9 years ago
wwylele
bf16c73260
gpu: fix edge cases for TextureCopy
9 years ago
Sebastian Valle
fa53ccc74b
Merge pull request #2778 from Subv/uds_more
...
Services/UDS: Stub SendTo to generate the unencrypted data frames with the right headers
9 years ago
Subv
2eb174713b
UDS: Use the ToDS and FromDS fields to properly calculate the AAD used during encryption.
9 years ago
Subv
1f1739d366
UDS: Move the UDS keyslot used to generate the CCMP key to the AES::KeySlotID enum.
9 years ago
Subv
87168bfe8b
UDS: Run clang-format.
9 years ago
Subv
9befb8c887
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.
9 years ago
Subv
c3c9175a1c
Kernel/Sessions: Clean up the list of pending request threads of a session when the client endpoint is closed.
9 years ago
Subv
88c93a7436
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.
9 years ago
wwylele
9549eed0be
apt: load shared font from system archive
9 years ago
wwylele
22994607cc
apt/shared_font: don't relocate zero offset
9 years ago
Subv
8feeb81af2
Kernel/ServerSession: Keep track of which threads have issued sync requests.
9 years ago
B3n30
6ba089fafb
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.
9 years ago
Kloen
74cf73f9d3
citra-qt: Add option to configure the UI theme
9 years ago
Kloen
9c2335b984
citra-qt: load ui theme at startup and config change.
9 years ago
Kloen
1355f0f39e
citra-qt: Add Dark theme from https://github.com/ColinDuquesnoy/QDarkStyleSheet
9 years ago
Kloen
bbeb9f1dbb
citra-qt: add new uisetting->theme
9 years ago
Yuri Kunde Schlesner
e192d417ec
Kernel: Implement AcceptSession SVC
9 years ago
Yuri Kunde Schlesner
8c6a8edaca
Kernel: Fix SVC wrapper for CreatePort
...
The return parameters were flipped.
9 years ago
Yuri Kunde Schlesner
aa0f3047d3
Kernel: Implement CreateSessionToPort SVC
9 years ago
Yuri Kunde Schlesner
6d436d7a52
Merge pull request #2798 from yuriks/svc-create-session
...
Kernel: Implement CreateSession SVC
9 years ago
bunnei
cac1133bc4
Merge pull request #2795 from chris062689/master
...
Change default UI background from white to black.
9 years ago
bunnei
8223d18088
Merge pull request #2796 from yuriks/hle-null-handles
...
Kernel/IPC: Support translation of null handles
9 years ago
wwylele
8978ecb09c
gl_rasterizer: use texture buffer for fog LUT
9 years ago
wwylele
f1e377f57e
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
9 years ago
Yuri Kunde Schlesner
cdefefc539
Kernel: Fix typo in test name
9 years ago
Yuri Kunde Schlesner
f94093d0fd
Kernel: Implement CreateSession SVC
9 years ago
Yuri Kunde Schlesner
d553135748
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.
9 years ago
Yuri Kunde Schlesner
f2a5a77e27
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.
9 years ago
Yuri Kunde Schlesner
6ae0086b39
Memory: Add TryVirtualToPhysicalAddress, returning a boost::optional
9 years ago
Yuri Kunde Schlesner
326e7c7020
Memory: Make PhysicalToVirtualAddress return a boost::optional
...
And fix a few places in the code to take advantage of that.
9 years ago
Yuri Kunde Schlesner
72b69cea4b
Merge pull request #2792 from wwylele/lutlutlut
...
gl_rasterizer: fix lighting LUT interpolation
9 years ago
Yuri Kunde Schlesner
f64d0b3f26
Kernel/IPC: Support translation of null handles
...
Missed this in my first implementation. Thanks to @wwylele for pointing
out that this was missing.
9 years ago
wwylele
457659fe01
gl_state: reset 1d textures
9 years ago
wwylele
42f7ca7412
gl_rasterizer: fix glGetUniformLocation type
9 years ago
wwylele
be9e952bdc
gl_rasterizer: manage texture ids in one place
9 years ago
wwylele
ab60414122
gl_rasterizer/lighting: fix LUT interpolation
9 years ago
chris062689
f44b360724
Changing default values for bg_red, bg_green, and bg_blue from 1.0 to 0.0.
9 years ago
Weiyi Wang
c4f0927a62
Merge pull request #2789 from yuriks/misc-kernel
...
Trivial no-op additions
9 years ago
Yuri Kunde Schlesner
b21dfbb295
Merge pull request #2790 from yuriks/remove-movefrom
...
Remove ResultVal::MoveFrom
9 years ago
Yuri Kunde Schlesner
42b198eb0a
Memory: Add enum definitions for the n3DS FCRAM size
9 years ago
Sebastian Valle
96dcccc80c
Merge pull request #2779 from Subv/uds_more2
...
UDS: Added a hook for updating the connection status when a client connects to the network.
9 years ago
Yuri Kunde Schlesner
723dc644fa
ResultVal: Remove MoveFrom()
...
Replace it with std::move(result_val).Unwrap(), or Foo().Unwrap() in
case you already have an rvalue.
9 years ago
Yuri Kunde Schlesner
4cb47b0278
ResultVal: Add an rvalue overload of Unwrap()
9 years ago
Yuri Kunde Schlesner
90b8d4dd36
Kernel: Add comment about the extended linear heap area
9 years ago
Yuri Kunde Schlesner
60a882cd50
Kernel/IPC: Add tests for HLERequestContext buffer translation
9 years ago
Yuri Kunde Schlesner
0dfafdbe59
Kernel/IPC: Make HLERequestContext usable from outside kernel
9 years ago
Yuri Kunde Schlesner
d0888f8548
Merge pull request #2776 from wwylele/geo-factor
...
Fragment lighting: implement geometric factor
9 years ago
wwylele
5a454173a8
gl_rasterizer/lighting: use the formula from the paper for germetic factor
9 years ago
Yuri Kunde Schlesner
f6715f98f5
Stop using reserved operator names (and/or/xor) with Xbyak
...
Also has the Dynarmic upgrade with the same change
9 years ago
Subv
812b404492
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.
9 years ago
Subv
61ce89a55a
UDS: Return the correct error messages in SendTo when not connected to a network or trying to send to itself.
9 years ago
Subv
7efb64132d
UDS: Stub SendTo to generate the unencrypted data frame with the right headers.
9 years ago
Subv
38ceab13f6
UDS: Added a hook for updating the connection status when a client connects to the network.
9 years ago
wwylele
7052d43a67
gl_rasterizer/lighting: implement geometric factor
9 years ago
Yuri Kunde Schlesner
da1bec121a
Merge pull request #2762 from wwylele/light-cp-tangent
...
Fragment lighting: implement lut input 5 (CP) and tangent mapping
9 years ago
Yuri Kunde Schlesner
5fe5ccac42
Merge pull request #2743 from wwylele/wrap-fix
...
pica/rasterizer: implement/stub texture wrap mode 4-7
9 years ago
Sebastian Valle
ac168eeb5d
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.
9 years ago
Yuri Kunde Schlesner
791cd14c8d
Merge pull request #2767 from yuriks/quaternion-flip-comment
...
OpenGL: Update comment on AreQuaternionsOpposite with new information
9 years ago
Yuri Kunde Schlesner
4325a7c82d
Merge pull request #2774 from yuriks/hle-handles
...
Add basic support for IPC translation for HLE services
9 years ago
Yuri Kunde Schlesner
d8f6000f54
Kernel/IPC: Use boost::small_vector for HLE context objects
9 years ago
Yuri Kunde Schlesner
92ca422088
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).
9 years ago
Yuri Kunde Schlesner
8cb65fe65a
Kernel: Basic support for IPC translation for HLE services
9 years ago
Yuri Kunde Schlesner
7656d83df5
Service/sm: Convert srv: to use IPC helpers
9 years ago
Yuri Kunde Schlesner
21436f5ef7
IPC: Add Pop/PushObjects methods to RequestParser/Builder
...
These use the context functions to create and look-up handles for the
user.
9 years ago
Yuri Kunde Schlesner
1c4b0ebb1f
IPC: Add basic HLERequestContext support to RequestParser/Builder
9 years ago
Yuri Kunde Schlesner
05fee70211
Kernel: Add methods in HLERequestContext abstracting handle creation
9 years ago
Yuri Kunde Schlesner
20e5abb308
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.
9 years ago
wwylele
972548e3ee
gl_rasterizer/lighting: Implement tangent mapping
9 years ago
wwylele
40b7d0bf3f
gl_rasterizer/lighting: implement lut input 5 (CP)
9 years ago
Sebastian Valle
39c7c1f580
Merge pull request #2727 from wwylele/spot-light
...
Fragment lighting: implement spot light
9 years ago
wwylele
b3b9468573
gl_rasterizer_cache: depth write is disabled if allow_depth_stencil_write is false
9 years ago
Yuri Kunde Schlesner
ba01a8302a
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.
9 years ago
Kloen Lansfiel
9a8a90b52b
Remove unused import in break_points.cpp ( #2763 )
9 years ago
Yuri Kunde Schlesner
78398d0978
Merge pull request #2756 from yuriks/service-framework
...
New service framework
9 years ago
Yuri Kunde Schlesner
6f368abe13
Service/sm: Convert 'srv:' to ServiceFramework
9 years ago
Yuri Kunde Schlesner
838faf147e
Session: Remove/add some forward declarations
9 years ago
Yuri Kunde Schlesner
d666e01cdf
Kernel: Ensure objects are kept alive during ClientSession disconnection
...
Fixes #2760
9 years ago
Yuri Kunde Schlesner
c92a8a6154
Service: Remove a few redundant namespace qualifiers
9 years ago
Yuri Kunde Schlesner
84c497292a
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.
9 years ago
James Rowe
8c22334f96
Merge pull request #2737 from Subv/decryptbeacondata
...
Services/UDS: Implement DecryptBeaconData.
9 years ago
Yuri Kunde Schlesner
6dc133c24a
Kernel: Remove some unnecessary namespace qualifications
9 years ago
Subv
d7d0b46fc1
Services/UDS: Implement DecryptBeaconData.
...
This function decrypts the encrypted data tags contained in the 802.11 beacon frames.
9 years ago
Yuri Kunde Schlesner
d96a9e0c11
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.
9 years ago
Yuri Kunde Schlesner
23ec6b3d8f
Service: Make service registration part of the sm implementation
...
Also enhances the GetServiceHandle implementation to be more accurate.
9 years ago
Yuri Kunde Schlesner
e5a59ef27c
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.
9 years ago
Yuri Kunde Schlesner
1eee09f364
Service: Move SRV interface to a new sm/ subdirectory
...
This will contain the implementation of the sm (Service Manager) system
module.
9 years ago
Yuri Kunde Schlesner
6354d08359
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.
9 years ago
Yuri Kunde Schlesner
7e5dd46cf4
ResultVal: Add more convenience utils for creating and cascading results
9 years ago
Yuri Kunde Schlesner
e626a520ca
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.
9 years ago
wwylele
28d1e73d2f
pica/rasterizer: implement/stub texture wrap mode 4-7
9 years ago
Alex Touchet
e46ec64690
Edit Citra URLs ( #2728 )
9 years ago
Kloen
b763220dec
Remove unused imports in game_list_p.h
9 years ago
TheKoopaKingdom
f008b22e3b
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.
9 years ago
TheKoopaKingdom
ff04320c97
Fixed wiki URLs.
9 years ago
TheKoopaKingdom
59de38b965
Switched to the ERROR_NOT_FOUND constant from errors.h.
9 years ago
TheKoopaKingdom
cea19fd659
Moved whitelist checks from FS_User to the Archive_NCCH handler.
9 years ago
TheKoopaKingdom
a8aef599e0
Created a whitelist of system archives to prevent false positives creating dialogs.
9 years ago
TheKoopaKingdom
0409bdfea5
Optimized messages that were repetitive and added ability for core errors to specify more details optionally.
9 years ago
TheKoopaKingdom
b6bab59000
Added message to status bar to show core errors ignored by the user.
9 years ago
TheKoopaKingdom
37bec598ea
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.
9 years ago
TheKoopaKingdom
1ecb322daa
Added system for handling core errors in citra-qt.
9 years ago
TheKoopaKingdom
e523c76cc8
Fixed encrypted ROM error messages.
9 years ago
bunnei
4857eb441b
Merge pull request #2722 from wwylele/cam-ipc-helper
...
CAM: use IPCHelper
9 years ago
bunnei
af1ff4d3ce
Merge pull request #2739 from yuriks/kernel-reorg
...
Split-up kernel.h
9 years ago
bunnei
54ea95cca7
Merge pull request #2721 from wwylele/texture-cube
...
swrasterizer: implemented TextureCube
9 years ago
wwylele
10906dceec
gl_rasterizer: implement spot light
9 years ago
wwylele
686cbf3ac6
gl_rasterizer: sync spot light status
9 years ago
wwylele
b5addf8fb8
pica: prepare registers for spotlight
9 years ago
Yuri Kunde Schlesner
be031989ee
Kernel: Move HandleTable to a separate file
9 years ago
Yuri Kunde Schlesner
64ecf81a3c
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.
9 years ago
Yuri Kunde Schlesner
a4f88c7d7c
Merge pull request #2734 from yuriks/cmake-imported-libs
...
CMake: Use CMake target properties for all libraries
9 years ago
Yuri Kunde Schlesner
9453223075
Kernel: Removed HandleTable::GetWaitObject
...
This isn't necessary anymore since plain Get works correctly for
WaitObjects.
9 years ago
Yuri Kunde Schlesner
b17754f998
Kernel: Extract dynamic Object pointer cast into its own function
9 years ago
wwylele
0b9bb082c3
swrasterizer: implement TextureCube
9 years ago
wwylele
077cc683e5
pica: add registers for texture cube
9 years ago
Yuri Kunde Schlesner
3df85a103a
Merge pull request #2729 from yuriks/quaternion-fix
...
OpenGL: Improve accuracy of quaternion interpolation
9 years ago
Yuri Kunde Schlesner
cebdae6c92
CMake: Create an INTERFACE target for Catch
9 years ago
Yuri Kunde Schlesner
d736cca848
CMake: Create INTERFACE targets for microprofile and nihstro
9 years ago
Yuri Kunde Schlesner
3b68600f81
CMake: Remove unnecessary include_directories for dynarmic
...
Dynarmic already adds the correct include paths to the library target.
9 years ago
Yuri Kunde Schlesner
4f84372bc2
CMake: Add cryptopp include path to target property
9 years ago
Yuri Kunde Schlesner
74afcd5328
CMake: Add SoundTouch include path to target property
9 years ago
Yuri Kunde Schlesner
776cb91785
CMake: Define an interface target for SDL2 definitions
9 years ago
Yuri Kunde Schlesner
34b6c8bd88
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.
9 years ago
Yuri Kunde Schlesner
089baa04e8
CMake: Stop using FindOpenGL, which seems to not be required anymore
9 years ago
Yuri Kunde Schlesner
0f563111a2
CMake: Use IMPORTED target for Boost
9 years ago
Yuri Kunde Schlesner
4660bc1c78
CMake: Use IMPORTED target for libpng
9 years ago
Yuri Kunde Schlesner
7b81903756
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.
9 years ago
Yuri Kunde Schlesner
62f34c8e5c
Citra: Convert include into forward declaration
9 years ago
Yuri Kunde Schlesner
e91f2b7663
Remove some unnecessary inclusions of video_core.h
9 years ago
Yuri Kunde Schlesner
eb10f25025
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.
9 years ago
Yuri Kunde Schlesner
6665557ff7
OpenGL: Remove unused RendererOpenGL fields
9 years ago
Yuri Kunde Schlesner
ae095cfb71
Core: Fix some out-of-style includes
9 years ago
Yuri Kunde Schlesner
2579ae543b
Common: Fix some out-of-style includes
9 years ago
Yuri Kunde Schlesner
d1bf7919da
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.
9 years ago
wwylele
857510a7c0
fixup!cam: use IPCHelper
9 years ago
Yuri Kunde Schlesner
96528b3aab
Merge pull request #2725 from wwylele/texture-sampler
...
gl_shader: refactor texture sampler into its own function
9 years ago
Yuri Kunde Schlesner
669ef82aee
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.
9 years ago
wwylele
90c8d09098
gl_shader: refactor texture sampler into its own function
9 years ago
bunnei
61decd84cc
Merge pull request #2716 from yuriks/decentralized-result
...
Decentralize ResultCode
9 years ago
Yuri Kunde Schlesner
bae3799bd5
Merge pull request #2697 from wwylele/proctex
...
Implemented Procedural Texture (Texture Unit 3)
9 years ago
Yuri Kunde Schlesner
a5810d61da
FS: Remove unused result definition
9 years ago
Yuri Kunde Schlesner
c1a9e94068
Common: Clean up meta-template logic in BitField
9 years ago
Yuri Kunde Schlesner
2cdb40d709
Kernel: Centralize error definitions in errors.h
9 years ago
Yuri Kunde Schlesner
743d18f0e4
GSP_GPU: Move error codes from result.h to local file
9 years ago
Yuri Kunde Schlesner
92be29adba
FileSys: Move all result description to errors.h
9 years ago
Yuri Kunde Schlesner
3b1f0fea31
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.
9 years ago
Yuri Kunde Schlesner
a75145a2c6
Make BitField and ResultCode constexpr-initializable
9 years ago
bunnei
120b00fb1a
telemetry: Log a few simple data fields throughout core.
9 years ago
bunnei
f3e14cae1e
core: Keep track of telemetry for the current emulation session.
9 years ago
bunnei
a4760e939f
common: Add a generic interface for logging telemetry fields.
9 years ago
wwylele
8cd9522526
cam: move u32->u8 trancation to IPCHelper
9 years ago
wwylele
924292f2cc
cam: use IPCHelper
9 years ago
Sebastian Valle
c291db72e7
Merge pull request #2692 from Subv/vfp_ftz
...
Dyncom/VFP: Convert denormal outputs into 0 when the FTZ flag is enabled.
9 years ago
Yuri Kunde Schlesner
cc566dadd8
Merge pull request #2406 from Subv/session_disconnect
...
Kernel: Properly update port counters on session disconnection.
9 years ago
Subv
5b46a89230
fixup! Dyncom/VFP: Convert denormal outputs into 0 when the FTZ flag is enabled.
9 years ago
Subv
37347bfa38
Kernel/Sessions: Remove the ClientSession::Create function.
...
It is not meant to be used by anything other than CreateSessionPair.
9 years ago
Merry
188d63fdb6
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.
9 years ago
wwylele
36526c63ef
swrasterizer: add missing tc0_w and fragment lighting attribute processing
9 years ago
wwylele
4d62e75fb2
gl_rasterizer: implement procedural texture
9 years ago