bunnei
341925e40a
Merge pull request #250 from bunnei/buffer-dequeue-wait
...
vi: TransactParcel DequeueBuffer should wait current thread
2018-03-18 22:25:09 -04:00
bunnei
e5f0affc54
Merge pull request #249 from Subv/macro_E1A
...
GPU: Implement macro 0xE1A BindTextureInfoBuffer in HLE.
2018-03-18 21:04:29 -04:00
bunnei
bae5ccd6d2
vi: Remove DequeueBuffer and wait until next available buffer.
2018-03-18 20:56:35 -04:00
bunnei
7750edae39
hle_ipc: Add SleepClientThread to block current thread within HLE routines.
2018-03-18 20:56:34 -04:00
bunnei
01d72e813e
hle_ipc: Use shared_ptr instead of unique_ptr to allow copies.
2018-03-18 20:56:33 -04:00
bunnei
479400acc8
hle_ipc: Remove GetPointer(..) usage with WriteToOutgoingCommandBuffer.
2018-03-18 20:56:33 -04:00
bunnei
d6c27e6b28
thread: Add THREADSTATUS_WAIT_HLE_EVENT, remove THREADSTATUS_WAIT_ARB.
2018-03-18 20:56:32 -04:00
Subv
36c527131f
GPU: Implement macro 0xE1A BindTextureInfoBuffer in HLE.
...
This macro simply sets the current CB_ADDRESS to the texture buffer address for the input shader stage.
2018-03-18 19:03:40 -05:00
bunnei
4b716e163a
Merge pull request #248 from Subv/cb_data
...
GPU: Handle writes to the CB_DATA method.
2018-03-18 19:45:40 -04:00
Subv
80b0f4d681
GPU: Implement the BindStorageBuffer macro method in HLE.
...
This macro binds the SSBO Info Buffer as the current ConstBuffer.
This buffer is usually bound to c0 during shader execution.
Games seem to use this macro instead of directly writing the address for some reason.
2018-03-18 16:50:42 -05:00
Subv
845415cc3d
GPU: Handle writes to the CB_DATA method.
...
Writing to this method will cause the written value to be stored in the currently-set ConstBuffer plus CB_POS.
This method is usually used to upload uniforms or other shader-visible data.
2018-03-18 15:23:24 -05:00
Subv
46bbeeb54a
GPU: Move the GPU's class constructor and destructors to a cpp file.
...
This should reduce recompile times when editing the Maxwell3D register structure.
2018-03-18 15:23:24 -05:00
Sebastian Valle
96e8a52180
Merge pull request #246 from Subv/gpu_macro_calls
...
GPU: Store uploaded GPU macros and keep track of the number of method arguments.
2018-03-18 15:13:40 -05:00
Subv
a8cb6ba213
GPU: Store uploaded GPU macros and keep track of the number of method parameters.
2018-03-18 11:51:46 -05:00
Subv
29c026fae1
GPU: Macros are specific to the Maxwell3D engine, so handle them internally.
2018-03-18 11:51:45 -05:00
bunnei
5994bd13ad
Merge pull request #245 from Subv/set_shader2
...
GPU: Store shader constbuffer bindings in the GPU state.
2018-03-17 21:19:39 -04:00
Subv
5979796df8
GPU: Renamed ShaderType to ShaderStage as that is less confusing.
2018-03-17 18:32:57 -05:00
Subv
7b48098c60
GPU: Store shader constbuffer bindings in the GPU state.
2018-03-17 18:32:57 -05:00
Subv
5f181aec24
GPU: Corrected some register offsets and removed superfluous macro registers.
2018-03-17 18:32:56 -05:00
Subv
8a5c0e873b
GPU: Make the SetShader macro call do the same as the real macro's code.
...
It'll now set the CB_SIZE, CB_ADDRESS and CB_BIND registers when it's called.
Presumably this SetShader function is binding the constant shader uniforms to buffer 1 (c1[]).
2018-03-17 18:32:55 -05:00
Subv
e3e0625ff7
GPU: Corrected the parameter documentation for the SetShader macro call.
...
Register 0xE24 is actually a macro that sets some shader parameters in the register structure.
Macros are uploaded to the GPU at startup and have their own ISA, we'll probably write an interpreter for this in the future.
2018-03-17 13:55:42 -05:00
bunnei
bed06310f2
Merge pull request #242 from Subv/set_shader
...
GPU: Handle the SetShader method call (0xE24) and store the shader config.
2018-03-17 00:34:17 -04:00
bunnei
78d81b84e4
Merge pull request #243 from Subv/vertex_buffer
...
GPU: Added the vertex array registers.
2018-03-17 00:04:31 -04:00
Subv
c9850b0d3a
GPU: Handle the SetShader method call (0xE24) and store the shader config.
2018-03-16 22:51:06 -05:00
Subv
dbade2db3e
GPU: Added the vertex array registers.
2018-03-16 22:47:45 -05:00
bunnei
b849a04b2f
Merge pull request #241 from Subv/gpu_method_call
...
GPU: Process command mode 5 (IncreaseOnce) differently from other commands
2018-03-16 22:28:22 -04:00
Subv
6796e37911
GPU: Process command mode 5 (IncreaseOnce) differently from other commands.
...
Accumulate all arguments before calling the desired method.
Note: Maybe we should do the same for the NonIncreasing mode?
2018-03-16 20:32:44 -05:00
bunnei
2c2acce091
Merge pull request #239 from Subv/shaders
...
GPU: Added some shader-related registers.
2018-03-16 21:09:35 -04:00
bunnei
3f1b1e34e9
Merge pull request #238 from bunnei/fix-buffer-check
...
nvflinger: Remove superfluous buffer format check.
2018-03-16 21:04:39 -04:00
Subv
3247b8f9dd
GPU: Assert that we get a 0 CODE_ADDRESS register in the 3D engine.
...
Shader address calculation depends on this value to some extent, we do not currently know what it being 0 entails.
2018-03-16 19:24:41 -05:00
Subv
d468c046f9
GPU: Added Maxwell registers for Shader Program control.
2018-03-16 19:23:11 -05:00
bunnei
b437a08a21
nvflinger: Remove superfluous buffer format check.
2018-03-16 20:11:50 -04:00
bunnei
23c0f07893
Merge pull request #232 from bunnei/heap-fixes
...
Various heap fixes for libtransistor
2018-03-16 20:06:27 -04:00
bunnei
dd2e72f1aa
process: MirrorMemory should use MemoryState::Mapped.
2018-03-16 19:24:54 -04:00
bunnei
d7bb09afe7
process: Unmap previously allocated heap.
2018-03-16 18:32:25 -04:00
bunnei
256153c50c
arm_interface: Support unmapping previously mapped memory.
2018-03-16 18:32:24 -04:00
bunnei
a0b00fe2d1
svc: Use more correct values for GetInfo MapRegion and NewMapRegion.
2018-03-16 18:32:23 -04:00
bunnei
a26561ce20
kernel: Move stack region outside of application heap.
2018-03-16 18:32:23 -04:00
bunnei
89312134f6
memory: Add regions for map region, "new" map region, etc.
2018-03-16 18:32:22 -04:00
bunnei
67bac363d8
process: Fix stack memory state.
2018-03-16 18:32:21 -04:00
bunnei
29bda49fc0
MemoryState: Add additional memory states and improve naming.
2018-03-16 18:32:21 -04:00
bunnei
0143a21c70
Merge pull request #237 from mailwl/nifm-module
...
Service/NIFM: convert to module
2018-03-16 18:26:02 -04:00
mailwl
f5fbe99e28
IGeneralService: fix function list
2018-03-16 16:34:12 +03:00
mailwl
44739126a5
Service/NIFM: stub cancel function
2018-03-16 11:08:22 +03:00
mailwl
db6c7e714c
Service/NIFM: convert to module
2018-03-16 11:00:29 +03:00
bunnei
3ceb9d97bb
Merge pull request #236 from bunnei/refactor-process-creation
...
core: Move process creation out of global state.
2018-03-14 19:33:27 -04:00
bunnei
f16763ed52
core: Move process creation out of global state.
2018-03-14 18:42:19 -04:00
bunnei
b2b51850a1
Merge pull request #213 from Hexagon12/dynarmic-default
...
Make Dynarmic the default CPU core
2018-03-07 18:21:13 -05:00
bunnei
ac6fe3fd01
Merge pull request #230 from Subv/gpu_draw
...
GPU: Intercept writes to the VERTEX_END_GL register.
2018-03-05 09:58:58 -05:00
Subv
083e494083
GPU: Intercept writes to the VERTEX_END_GL register.
...
This is the register that gets written after a game calls DrawArrays().
We should collect all GPU state and draw using our graphics API here.
2018-03-04 19:14:04 -05:00