Commit Graph

119154 Commits

Author SHA1 Message Date
Matt Borgerson 1930934908 nv2a/glsl: Clean up some includes 2025-06-28 00:18:28 -07:00
Matt Borgerson b8fd711012 nv2a/glsl/vsh-prog.h: Include mstring.h 2025-06-28 00:18:28 -07:00
Matt Borgerson afadedf90b nv2a/glsl/vsh-prog.h: Drop 'Based on' claim 2025-06-28 00:18:28 -07:00
Matt Borgerson 34e8c62a42 nv2a: Move {Vsh,Psh}State generation into glsl subdir 2025-06-28 00:18:28 -07:00
Matt Borgerson bebffc7d64 nv2a/glsl: Let pgraph_gen_geom_glsl take VshState and GlslOptions 2025-06-28 00:18:28 -07:00
Matt Borgerson 8bda9507bd nv2a/glsl: Invert fog gen blocks for readability 2025-06-28 00:18:28 -07:00
Matt Borgerson 45724b34e6 nv2a: Drop some unnecessary comments 2025-06-28 00:18:28 -07:00
Matt Borgerson c88bac1706 nv2a: Simplify shader uniform declaration and update
This patch moves uniform declaration into {vsh, psh}.h headers, using
macros to generate accessory definitions. Mapping of PGRAPH state to
uniform values is factored out of parallel paths in GL/Vk renderers into
common renderer-agnostic helper functions, with renderer-specific
uniform value update paths being automated.
2025-06-28 00:18:28 -07:00
Matt Borgerson 18872f2eb9 nv2a: Update various copyright headers 2025-06-28 00:18:28 -07:00
Matt Borgerson d3821c5513 nv2a: Structure shader uniform locs 2025-06-28 00:18:28 -07:00
Matt Borgerson 07ff078373 nv2a/gl: Move program validation to generate_shaders 2025-06-28 00:18:28 -07:00
Matt Borgerson 4977e65bd5 nv2a/vk: Clean up layout binding ids 2025-06-28 00:18:28 -07:00
Matt Borgerson 23312f384b nv2a: Separate VshState and PshState generation 2025-06-28 00:18:28 -07:00
Matt Borgerson 9020913e29 nv2a: Extract GLSL generation options from {Vsh,Psh}State 2025-06-28 00:18:28 -07:00
Matt Borgerson c575b08b5f nv2a: Extract VshState from ShaderState 2025-06-28 00:18:28 -07:00
Matt Borgerson 9d9c88f71d nv2a: Unset some FF ShaderState if unnecessary 2025-06-28 00:18:28 -07:00
Matt Borgerson 3ad4eb3101 nv2a: Remove colorkey_mask from PshState
It's a uniform, so we don't want it to be part of the PSH setup state,
which used as the shader cache key.
2025-06-28 00:18:28 -07:00
Erik Abair 634577c753 nv2a: Clamp fog factor to valid float range 2025-06-26 14:20:20 -07:00
Matt Borgerson 1343d5873f ci: Remove all subproject .gitignores for PPA upload 2025-06-23 15:14:45 -07:00
Matt Borgerson 1fa242bd00 nv2a/vk: Only include palette in texture key when necessary
Fixes degraded performance due to garbage palette details polluting the
texture cache.
2025-06-23 01:09:51 -07:00
dependabot[bot] 3f2dee438b ci: bump docker/setup-buildx-action from 3.10.0 to 3.11.1
---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-version: 3.11.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-22 23:01:42 -07:00
dependabot[bot] 8848c5f915 ci: bump astral-sh/setup-uv from 6.1.0 to 6.3.0
---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 6.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-22 23:01:17 -07:00
Matt Borgerson a242964793 nv2a/vk: Require fillModeNonSolid feature 2025-06-22 16:44:14 -07:00
Matt Borgerson cbcfd1d1d6 nv2a/vk: Enable wideLines feature before use 2025-06-22 16:44:14 -07:00
Matt Borgerson df1ac31eb2 nv2a/vk: Set line width state dynamically 2025-06-22 16:44:14 -07:00
specialfred453@gmail.com d8afb35c40 nv2a/vk: Scale line width by surface scale 2025-06-22 16:44:14 -07:00
Erik Abair 348b03d6ce
nv2a: Handle PGRAPH color keying 2025-06-21 13:25:24 -07:00
Matt Borgerson 14a0a5f481 nvnet: Drop unnecessary switch 2025-06-21 09:55:26 -07:00
Ryan Wendland fe93634c78 nvnet: Return MII status on MMIO reads 2025-06-21 09:51:35 -07:00
Matt Borgerson 7d9739df4c apu/vp: Make number of voice workers dynamic
Adds a new config option to control number of workers. If the value of
the option is 0 (default), then the logical CPU count, as reported by
SDL, is used.
2025-06-20 17:41:24 -07:00
Matt Borgerson 8881537de2 nvnet: Reduce auto-negotiation duration to 250ms 2025-06-20 16:11:01 -07:00
Matt Borgerson 6a99c038b1 nvnet: Assert MMIO writes are 32b aligned 2025-06-20 16:11:01 -07:00
Matt Borgerson 78a45f2955 nvnet: Drop useless assert 2025-06-20 16:11:01 -07:00
Matt Borgerson 4794f9d543 nvnet: Define auto-negotiation duration constant 2025-06-20 16:11:01 -07:00
Matt Borgerson 4b310661b1 nvnet: Fixup some trace formatting 2025-06-20 16:11:01 -07:00
Matt Borgerson 19bb45d9d7 nvnet: Add trace for packet send 2025-06-20 16:11:01 -07:00
Matt Borgerson 1d2f75fb76 nvnet: Drop more useless dprintfs 2025-06-20 16:11:01 -07:00
Matt Borgerson 0c7a352c31 nvnet: Add traces for tx/rx dma 2025-06-20 16:11:01 -07:00
Matt Borgerson 00f828111d nvnet: Use load_ring_desc in dump_ring_descriptors 2025-06-20 16:11:01 -07:00
Matt Borgerson 556b08cd88 nvnet: Add trace for descriptor stores 2025-06-20 16:11:01 -07:00
Matt Borgerson 8bfefd4a27 nvnet: Add trace for irq updates 2025-06-20 16:11:01 -07:00
Matt Borgerson 36b8db38b5 nvnet: Add trace for tx/rx blockers 2025-06-20 16:11:01 -07:00
Matt Borgerson f86e79a500 nvnet: Move ring descriptor load/store out to function 2025-06-20 16:11:01 -07:00
Matt Borgerson 6bbd86a293 nvnet: Drop useless dprintf 2025-06-20 16:11:01 -07:00
Matt Borgerson 2f78df32af nvnet: Move dma idle status update out to function 2025-06-20 16:11:01 -07:00
Matt Borgerson 40712109c5 nvnet: Move tx descriptor pointer updates out 2025-06-20 16:11:01 -07:00
Matt Borgerson 2e625e6cce nvnet: Check for rx buffer availability in can_receive 2025-06-20 16:11:01 -07:00
Matt Borgerson d7a1773755 nvnet: Clean up tx/rx prechecks 2025-06-20 16:11:01 -07:00
Matt Borgerson 0200224d7e nvnet: Idle before interrupt in dma_packet_from_guest 2025-06-20 16:11:01 -07:00
Matt Borgerson e6c8b2ebf7 nvnet: Drop return value from dma_packet_from_guest 2025-06-20 16:11:01 -07:00