Subv
7b6868e908
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 +07:00
Subv
85d820b1b4
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 +07:00
Subv
a64b936cbe
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 +07:00
Sebastian Valle
46f9d4b4a3
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 +07:00
Subv
aa586fa268
GPU: Store uploaded GPU macros and keep track of the number of method parameters.
2018-03-18 11:51:46 +07:00
Subv
7ac8657432
GPU: Macros are specific to the Maxwell3D engine, so handle them internally.
2018-03-18 11:51:45 +07:00
bunnei
29981fa2eb
Merge pull request #245 from Subv/set_shader2
...
GPU: Store shader constbuffer bindings in the GPU state.
2018-03-17 21:19:39 +07:00
Subv
ccb8da1512
GPU: Renamed ShaderType to ShaderStage as that is less confusing.
2018-03-17 18:32:57 +07:00
Subv
88698c156f
GPU: Store shader constbuffer bindings in the GPU state.
2018-03-17 18:32:57 +07:00
Subv
66dae22790
GPU: Corrected some register offsets and removed superfluous macro registers.
2018-03-17 18:32:56 +07:00
Subv
1d9d9c16e8
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 +07:00
Subv
579000e747
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 +07:00
bunnei
516ef4f19f
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 +07:00
bunnei
c286921739
Merge pull request #243 from Subv/vertex_buffer
...
GPU: Added the vertex array registers.
2018-03-17 00:04:31 +07:00
Subv
f93d769a1c
GPU: Handle the SetShader method call (0xE24) and store the shader config.
2018-03-16 22:51:06 +07:00
Subv
d2888f7e90
GPU: Added the vertex array registers.
2018-03-16 22:47:45 +07:00
bunnei
cd4e8a989c
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 +07:00
Subv
29feece4b8
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 +07:00
bunnei
0eff775264
Merge pull request #239 from Subv/shaders
...
GPU: Added some shader-related registers.
2018-03-16 21:09:35 +07:00
bunnei
e453b09a61
Merge pull request #238 from bunnei/fix-buffer-check
...
nvflinger: Remove superfluous buffer format check.
2018-03-16 21:04:39 +07:00
Subv
bf310a41b8
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 +07:00
Subv
cbec739e7b
GPU: Added Maxwell registers for Shader Program control.
2018-03-16 19:23:11 +07:00
bunnei
494275fd38
nvflinger: Remove superfluous buffer format check.
2018-03-16 20:11:50 +07:00
bunnei
e7ba2a4447
Merge pull request #232 from bunnei/heap-fixes
...
Various heap fixes for libtransistor
2018-03-16 20:06:27 +07:00
bunnei
cc6f22e0e4
process: MirrorMemory should use MemoryState::Mapped.
2018-03-16 19:24:54 +07:00
bunnei
e9a857ce82
process: Unmap previously allocated heap.
2018-03-16 18:32:25 +07:00
bunnei
403f8e79ea
arm_interface: Support unmapping previously mapped memory.
2018-03-16 18:32:24 +07:00
bunnei
34a29ad051
svc: Use more correct values for GetInfo MapRegion and NewMapRegion.
2018-03-16 18:32:23 +07:00
bunnei
8581404482
kernel: Move stack region outside of application heap.
2018-03-16 18:32:23 +07:00
bunnei
69ee9edd8d
memory: Add regions for map region, "new" map region, etc.
2018-03-16 18:32:22 +07:00
bunnei
3923b0f589
process: Fix stack memory state.
2018-03-16 18:32:21 +07:00
bunnei
8be7131033
MemoryState: Add additional memory states and improve naming.
2018-03-16 18:32:21 +07:00
bunnei
07ae1f972d
Merge pull request #237 from mailwl/nifm-module
...
Service/NIFM: convert to module
2018-03-16 18:26:02 +07:00
mailwl
fbfa7ddd62
IGeneralService: fix function list
2018-03-16 16:34:12 +07:00
mailwl
9289255314
Service/NIFM: stub cancel function
2018-03-16 11:08:22 +07:00
mailwl
ec030a542f
Service/NIFM: convert to module
2018-03-16 11:00:29 +07:00
bunnei
cde9386e0f
Merge pull request #236 from bunnei/refactor-process-creation
...
core: Move process creation out of global state.
2018-03-14 19:33:27 +07:00
bunnei
7d6653268f
core: Move process creation out of global state.
2018-03-14 18:42:19 +07:00
bunnei
8538e0bc3d
Merge pull request #213 from Hexagon12/dynarmic-default
...
Make Dynarmic the default CPU core
2018-03-07 18:21:13 +07:00
bunnei
5750f6f046
Merge pull request #230 from Subv/gpu_draw
...
GPU: Intercept writes to the VERTEX_END_GL register.
2018-03-05 09:58:58 +07:00
Subv
5fb4c718cc
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 +07:00
bunnei
80562aaf64
Merge pull request #229 from Subv/ensuresavedata_impl
...
FS: Make EnsureSaveData create the save data if it doesn't already exist.
2018-03-04 15:49:42 +07:00
Subv
84e1c0a430
FS: Use the correct error code when trying to open files that don't exist.
2018-03-04 14:34:48 +07:00
Subv
e4b7a1d160
FS: Stubbed CreateSaveData. It currently does nothing.
2018-03-04 14:31:57 +07:00
Subv
0eefe6e4d1
FS: Make EnsureSaveData create the savedata folder when called for the first time.
2018-03-04 14:30:07 +07:00
bunnei
3c3d5eeddf
Merge pull request #228 from Subv/unschedule_events
...
CoreTiming: Unschedule the pending events when an Interface is destroyed
2018-03-04 11:52:08 +07:00
Subv
248881fa7f
CoreTiming: Unschedule the pending events when an Interface is destroyed.
2018-03-04 10:34:25 +07:00
bunnei
7e7110b3b9
Merge pull request #226 from Subv/buffer_queue_event
...
Vi: Signal the BufferQueue's Native Handle right after ReleaseBuffer is called
2018-03-03 12:38:18 +07:00
bunnei
aef7a15b93
Merge pull request #225 from mailwl/settings
...
Service/Set: add more services
2018-03-03 12:25:13 +07:00
Subv
656e7aab29
Vi: Signal the BufferQueue's Native Handle right after ReleaseBuffer is called.
...
This prevents a thread starvation issue in Puyo Puyo Tetris.
We should hwtest this behavior and figure out where exactly this event is signaled.
2018-03-03 11:51:36 +07:00