Matt Borgerson
9ab8549a4e
nv2a/vk: Insert barrier after staging buffer copies
2024-12-31 01:37:05 -07:00
Matt Borgerson
1a57d4ae94
nv2a/vk: Fix finish queue submission semaphore wait stage
2024-12-31 01:37:05 -07:00
Matt Borgerson
84c09c631c
nv2a/vk: Ensure error message is always set on instance failure
2024-12-31 01:37:05 -07:00
Matt Borgerson
0169caadd0
nv2a/vk: Fallback to UBO if maxPushConstantsSize is insufficient
2024-12-31 01:37:05 -07:00
Matt Borgerson
792ed56d58
nv2a: Block renderer finalization on display present
2024-12-31 01:37:05 -07:00
Matt Borgerson
25afb8603d
nv2a: Handle renderer init errors more gracefully
2024-12-31 01:37:05 -07:00
Matt Borgerson
c1bbe39f22
nv2a/gl: Rename some functions for clarity
2024-12-31 01:37:05 -07:00
Matt Borgerson
f3b6d50d99
nv2a: Merge renderer init, init_thread methods
2024-12-31 01:37:05 -07:00
Matt Borgerson
98fa394f84
nv2a: Add note about downloading dirty surfaces during flush
2024-12-31 01:37:05 -07:00
Matt Borgerson
6fd0f175b4
nv2a: Support switching renderers at runtime
2024-12-31 01:37:05 -07:00
Matt Borgerson
7b6b5f396c
nv2a/vk: Release report queue nodes at finalize
2024-12-31 01:37:05 -07:00
Matt Borgerson
3ccea5fa12
nv2a/vk: Release renderer state at finalize
2024-12-31 01:37:05 -07:00
Matt Borgerson
d6e8307950
nv2a/vk: Always provide early_context_init
2024-12-31 01:37:05 -07:00
Matt Borgerson
c4ac083d3d
nv2a/vk: Sync RAM buffer during renderer init
2024-12-31 01:37:05 -07:00
Matt Borgerson
71d00d2208
nv2a/vk: Ensure texture bindings exist before dirty check
2024-12-31 01:37:05 -07:00
Matt Borgerson
4bd0406797
nv2a/gl: Make sure vulkan is not set on ShaderState
2024-12-31 01:37:05 -07:00
Matt Borgerson
cd2278dd62
nv2a/gl: Ensure shader_binding exists before dirty check
2024-12-31 01:37:05 -07:00
Matt Borgerson
84dd112186
nv2a/gl: Improve renderer teardown
2024-12-31 01:37:05 -07:00
Matt Borgerson
c1eb48b62f
nv2a/vk: Fix snode->geometry init
2024-12-31 01:37:05 -07:00
Matt Borgerson
40526389f6
nv2a/vk: Clear bindings before tearing down cache
2024-12-31 01:37:05 -07:00
Matt Borgerson
6403c69326
nv2a/vk: Fix shader cache node init flag
2024-12-31 01:37:05 -07:00
Matt Borgerson
fadaf19cdd
nv2a/vk: Fix GArray free
2024-12-31 01:37:05 -07:00
Matt Borgerson
1973ed7f58
n2va/vk: Drop debug message
2024-12-31 01:37:05 -07:00
Matt Borgerson
27531ec1ca
nv2a: Wrap nv2a_vm_state_change direct renderer calls
2024-12-31 01:37:05 -07:00
Matt Borgerson
093e654725
nv2a: Wrap pfifo direct renderer calls
2024-12-31 01:37:05 -07:00
Matt Borgerson
2800b8d22a
meson: Move VMA options into meson config
2024-12-31 01:37:05 -07:00
Matt Borgerson
2bc8cb3050
nv2a/vk: Remove extraneous VK_NO_PROTOTYPES defn
2024-12-31 01:37:05 -07:00
Matt Borgerson
a5385803db
nv2a: Add Vulkan renderer
2024-12-31 01:37:05 -07:00
Matt Borgerson
212988421f
mcpx: Remove set but not used count variable
2024-12-29 18:42:12 -07:00
Fred Hallock
79441500fe
nv2a: Check supported line width
...
* Added logic to check for the supported line width range before setting the line width to avoid errors.
I also moved the glLineWidth call so that it could be after the call to get the supported line width range for the desired line type.
* Moved the glLineWidth call outside the if/else
* Moved the code to query line GL_SMOOTH_LINE_WIDTH_RANGE and GL_ALIASED_LINE_WIDTH_RANGE to nv2a_gl_context_init(void) so that it's just called while OpenGL is being initialized.
* Removed the lineWidth local variable. It's simpler to just call glLineWidth in the if and else blocks
2024-11-23 11:49:01 +13:00
Fred Hallock
7f5176bc5f
nv2a: Scale line thickness by surface scale factor
2024-11-14 21:48:22 -07:00
Matt Borgerson
a8d8ef5484
nv2a: Drop unused ShaderState field material_alpha
2024-07-22 23:52:43 -07:00
Ryzee119
e7633ed4a5
eeprom: Use sha1 and rc4 util for hashing functions
2024-06-12 17:29:02 -07:00
Matt Borgerson
2be220df98
nv2a: Implement HILO texture modifier
2024-05-21 00:44:29 -07:00
Matt Borgerson
b3fc80b3a8
nv2a: Implement ZCLIP_MIN,MAX with gl_ClipDistance
2023-10-22 00:22:03 -07:00
Matt Borgerson
5fa08d20d6
nv2a: Scale Z by full depth range in inverse viewport transform
2023-10-22 00:22:03 -07:00
Matt Borgerson
d6e5342f89
nvnet: Add unicast and multicast filtering
2023-10-18 01:33:40 -07:00
Matt Borgerson
ccb1211cd6
nvnet: Use HWADDR_PRIx for debug hwaddr printing
2023-10-18 01:33:40 -07:00
Matt Borgerson
de611d611b
nv2a: Left-align surface type in nv2a_pgraph_surface_target trace
2023-07-27 22:23:52 -07:00
Matt Borgerson
5c495db618
nv2a: Add [last_]surface_shape.clip_y to vmstate
2023-07-27 22:09:02 -07:00
Matt Borgerson
8da35b81a8
Merge remote-tracking branch 'origin/master' into sync/qemu-7.2.0
2023-07-15 17:24:01 -07:00
Erik Abair
7bfb7c8537
nv2a: Remove assert on TEXGEN_OBJECT_LINEAR
...
The behavior seems to match HW.
[Test](https://github.com/abaire/nxdk_pgraph_tests/blob/main/src/tests/texgen_tests.cpp#L22 )

Fixes #379
2023-07-09 21:19:43 -07:00
Erik Abair
22aaac801c
nv2a: Compile fix for DEBUG_NV2A enabled
2023-07-08 21:52:41 -07:00
Matt Borgerson
976319b391
Merge remote-tracking branch 'origin/master' into sync/qemu-7.2.0
2023-06-18 01:19:02 -07:00
Matt Borgerson
0ee7502c23
ui: Make aspect ratio config independent, add autodetect
2023-06-18 00:58:39 -07:00
mborgerson
129c48dd6e
ui: Blank screen when VGA SCREEN_OFF is set
2023-06-14 03:36:47 -07:00
Matt Borgerson
bb05a4f181
nv2a: Fix SET_ANTI_ALIASING_CONTROL
...
- Rename from SET_SMOOTHING_CONTROL
- Use correct register
2023-06-11 22:52:32 -07:00
Erik Abair
5cd1e3cbca
nv2a: (Probably partial) handling for `1D7C`
...
Implements handling for the unknown 0x1D7C command in order to match observed
behavior in the MS Dashboard and Tenchu: Return from Darkness.
Setting 1D7C's low bit appears to disable the line and poly smoothing commands.
Fixes #1162
[Test](https://github.com/abaire/nxdk_pgraph_tests/blob/main/src/tests/three_d_primitive_tests.cpp )
[HW Results](https://github.com/abaire/nxdk_pgraph_tests_golden_results/wiki/Results-3D_primitive )
2023-06-11 22:44:13 -07:00
Antonio Abbatangelo
546fe068de
nv2a: Ignore nop draws in SET_BEGIN_END_OP_END
2023-05-17 00:15:47 +08:00
Erik Abair
9723b435fb
nv2a: Make multiplication by 0 match HW behavior.
...
Fixes #1008
The nv2a returns 0 for anything multiplied by zero, including exceptional
values such as Inf and NaN. Desktop GPUs do not enforce this, leading to
conditions where NaNs wipe out calculations and lead to erroneous behavior.
[Test](https://github.com/abaire/nxdk_vsh_tests/blob/main/src/tests/americasarmyshader.cpp )
[HW Results](https://github.com/abaire/nxdk_vsh_tests_golden_results/wiki/Results-AmericasArmyShader )
2023-05-01 13:58:48 -07:00
wutno
065c74a00f
nv2a: Don't manually set NV_PFB_CFG0 reg
2023-03-06 14:02:41 -07:00
Dustin Holden
d8fa50e524
smc: Implement read/write of SMC error code storage
2023-02-14 17:10:40 -07:00
Matt Borgerson
3afd8456d5
xbox.c: Fix null string warning
2023-01-23 00:30:40 -07:00
Matt Borgerson
8e3a1b2b2c
xbox: Drop old pcms->pit_enabled setting
2023-01-23 00:30:40 -07:00
Matt Borgerson
b1a59ba2e9
nv2a: Add missing vga headers
2023-01-23 00:30:40 -07:00
Matt Borgerson
381ac7e72c
nv2a: Pass error_fatal to vga_common_init
2023-01-23 00:30:40 -07:00
Matt Borgerson
b135dd14ea
nv2a, mcpx: Drop minimum_version_id_old from vmsd
2023-01-23 00:30:40 -07:00
Matt Borgerson
a198f22981
include: Drop various qemu-common.h imports
2023-01-23 00:30:40 -07:00
Antonio Abbatangelo
27c99af5e3
nv2a: Set unpack alignment on surface upload
2023-01-05 13:22:18 -07:00
Antonio Abbatangelo
080022833d
nv2a: Cache shaders to disk
2022-09-10 12:52:51 -07:00
Erik Abair
f7b2acbb79
nv2a: Ensure SurfaceBinding.size can always fit surface
...
It is possible to specify a pitch that is smaller than the native size of a
surface (i.e., `pitch < width * bytes_per_pixel`). On hardware this is handled
gracefully, whereas in xemu it will cause buffer overruns when dealing with
swizzling/unswizzling.
Fixes #1152
[Test](https://github.com/abaire/nxdk_pgraph_tests/blob/main/src/tests/surface_pitch_tests.cpp )
[HW Results](https://github.com/abaire/nxdk_pgraph_tests_golden_results/wiki/Results-Surface_pitch )
Note that xemu's swizzling behavior still does not match HW with this change,
it just prevents the test from crashing.
2022-09-09 13:56:53 -07:00
Erik Abair
c2031108c5
nv2a: Cache texture attributes to avoid resetting unnecessarily
2022-07-25 10:44:38 -07:00
Erik Abair
5f306e749e
nv2a: Apply texture parameters when reusing textures
...
Fixes the edge case where a texture is reusable but has modified usage
parameters (e.g., `GL_TEXTURE_WRAP_S`). Prior to this change, texture
parameters would be cached permanently until the texture was recreated.
Fixes #1034
2022-07-25 10:44:38 -07:00
Erik Abair
c83b53e09d
nv2a: Handles depth borders in 3D bordered textures
...
3D textures with texture borders have 4 layers of border on either side of the
content layers in addition to the normal 4 pixel border per layer. This change
handles those extra depth layers in roughly the same way that the per-layer
border texels are handled.
Fixes #1171
[Test](https://github.com/abaire/nxdk_pgraph_tests/blob/main/src/tests/texture_border_tests.cpp )
[HW results](https://github.com/abaire/nxdk_pgraph_tests_golden_results/wiki/Results-Texture_border )
2022-07-25 10:02:15 -07:00
Erik Abair
248fc788c1
nv2a: Ignore pitch check for swizzled textures
2022-07-18 18:03:48 -07:00
Erik Abair
1e221e8da9
nv2a: Fallback to recreating texture on surface size mismatch.
...
There is no requirement that a surface and texture using the same VRAM address
match with respect to size (in particular pitch). This change prevents
incorrect reuse of a surface binding in the event that the texture size does
not match.
Fixes #1127
2022-07-18 11:33:53 -07:00
Erik Abair
ea0a906707
nv2a: Handle value in NV_PVIDEO_STOP writes
...
Interprets the value written to the `NV_PVIDEO_STOP` register in a manner more
consistent with hardware. Specifically, if the low bit of the value is not set,
the PVIDEO overlay should remain active.
Fixes #1049
[Test](https://github.com/abaire/nxdk_pgraph_tests/blob/main/src/tests/pvideo_tests.cpp )
Note that, as this is testing video behavior, this test is interactive and
the value passed to the final SetPvideoStop call needs to be mutated and the
behavior observed.
2022-07-18 11:14:15 -07:00
Erik Abair
f29c2ff42c
nv2a: Handle PVIDEO ds_dx and dt_dy registers
...
ds_dx and dt_dy describe how the PVIDEO content should be scaled to fit the
output area. Each is calculated via `((in - 1) << 20) / (out - 1)`, this
commit calculates the full frame scale (in / out) and applies that when
determining the texture coordinates for the overlay.
2022-07-18 10:59:08 -07:00
Erik Abair
9fd957d950
nv2a: Add hack for NV_PVIDEO_SIZE_IN sentinel
2022-07-18 10:59:08 -07:00
Erik Abair
a675666051
nv2a: Handle SIZE_IN > SIZE_OUT case
...
`NV_PVIDEO_SIZE_IN` is set to 0xFFFFFFFF during initialization and teardown
of the PVIDEO overlay. In some cases this can happen before the overlay is
explicitly stopped, leading to an assert. On hardware SIZE_IN values larger
than SIZE_OUT are capped (content is not scaled).
Fixes #330
[Test](https://github.com/abaire/nxdk_pgraph_tests/blob/main/src/tests/pvideo_tests.cpp )
2022-07-18 10:59:08 -07:00
Erik Abair
8d274e5f9a
nv2a: Match inv_w qualifier to attribute qualifier
...
Calculates both interpolated and flat shaded inv_w so that the appropriate
value may be used when undoing the perspective divide in the pixel shader.
2022-07-13 16:16:38 -07:00
Erik Abair
ae1a140ecb
nv2a: Fix missing flat qualifier for inv_w param
...
`vtx_inv_w` should also be flat, since interpolating it causes incorrect values
for the flat shaded colors.
Fixes #1179
[Test](https://github.com/abaire/nxdk_pgraph_tests/blob/main/src/tests/shade_model_tests.cpp )
[HW results](https://github.com/abaire/nxdk_pgraph_tests_golden_results/wiki/Results-Shade_model )
2022-07-13 16:16:38 -07:00
Erik Abair
4fd15c00f3
mcpx: Print actual error on OpenAudioDevice fail
2022-07-13 13:41:30 -07:00
Erik Abair
6f878ede01
nv2a: Do not force oFog to 1.0
...
This code was added ~7 years ago in
[this commit](97be3f5986
)
From what I can see from the [HW test results](https://github.com/abaire/nxdk_pgraph_tests_golden_results/wiki/Results-Fog_coord_vec4 )
the behavior on nv2a is more subtle than the cited `NV_vertex_program`
documentation.
In practice the register more or less retains its value until it is explicitly
modified.[The test](4cff2b2ebe/src/tests/fog_tests.cpp (L432)
)
renders something with an explicitly set oFog.x, then renders again with a
shader that does not modify oFog.x but references it in the pixel shader. The
value carries over rather than being forced to 1.0.
Interestingly, this test is apparently not hermetic; running the other
vec4_coord test (that explictly set various components of oFog) lead to unusual
behavior where the fogging effect is not uniform across all vertices, despite
never being set. Even more interestingly, re-running the test once it's in this
state will often produce variations as to which vertices are apparently using
a stale/incorrect fog value.
2022-07-05 19:12:03 -07:00
Lynne
6a8a967438
nv2a/psh: fix shader compilation errors
...
dotSTR had an extra bracket at the end, and an incorrect
variable type.
2022-07-02 10:39:44 -07:00
Erik Abair
d06a0c22f1
nv2a: Fix incorrect use of bytes for GL_UNPACK_ROW_LENGTH
...
`GL_UNPACK_ROW_LENGTH` is supposed to set the length in pixels, but the DXT
path is setting it to bytes, causing it to read beyond the end of the texture.
[Reference](https://www.khronos.org/registry/OpenGL-Refpages/gl4/html/glPixelStore.xhtml )
Fixes #1002
[Test](https://github.com/abaire/nxdk_pgraph_tests/blob/main/src/tests/texture_format_dxt_tests.cpp )
[HW Results](https://github.com/abaire/nxdk_pgraph_tests_golden_results/wiki/Results-Texture_DXT )
2022-07-01 13:44:20 -07:00
mborgerson
db389b1508
nv2a: Fix missing emit_vertex param
2022-06-25 22:56:11 -07:00
Matt Borgerson
83e16c996d
nv2a: Store shading mode in CONTROL_3
2022-06-25 21:11:30 -07:00
Erik Abair
4132845336
nv2a: Implement SET_SHADE_MODEL
2022-06-25 20:39:55 -07:00
Erik Abair
0d84befb82
nv2a: Implement support for border textures
2022-06-25 18:08:55 -07:00
Matt Borgerson
be8b612186
nv2a: Set C numeric locale before shader gen
2022-06-25 15:34:26 -07:00
Erik Abair
b3abb982e8
nv2a_vsh_cpu: Fix incorrect ilu input handling due to mismerge
2022-06-24 23:47:36 -07:00
Erik Abair
f54b207812
nv2a: Handle invalid w in fixed function pipeline
2022-06-24 22:44:19 -07:00
Erik Abair
9d2d8691b5
nv2a: Implement NV097_LAUNCH_TRANSFORM_PROGRAM
2022-06-24 20:41:04 -07:00
Erik Abair
8043abc738
nv2a: Add CPU emulation of nv2a vertex shader
2022-06-24 20:34:57 -07:00
Erik Abair
cc21fbea78
nv2a: Stop passing ShaderState by value
2022-06-22 15:59:49 -07:00
Matt Borgerson
bb855d43da
nv2a: Reset all draw arrays tracking on expand
2022-06-20 18:54:21 -07:00
Erik Abair
baa7e914fb
nv2a: Fix assert in single DrawArray + ArrayElement case
2022-06-20 18:33:18 -07:00
Matt Borgerson
12134404df
nv2a: Refactor inline buffer clear, clear on draw flush
2022-06-15 17:30:05 -07:00
Matt Borgerson
84260dfc18
nv2a: Add begin/end sanity debug checks
2022-06-15 17:30:05 -07:00
Matt Borgerson
d8723e047b
nv2a: Store primitive mode in vmstate
2022-06-15 17:30:05 -07:00
Matt Borgerson
d6abaca904
nv2a: Minor cleanup
2022-06-15 17:30:05 -07:00
Matt Borgerson
463c815a9b
nv2a: Always clear inline vertex buffers on begin
2022-06-15 17:30:05 -07:00
Erik Abair
88409a92bf
nv2a: Fix intermixed use of DRAW_ARRAYS and ARRAY_ELEMENTx
...
Co-authored-by: Matt Borgerson <contact@mborgerson.com>
2022-06-15 13:13:51 -07:00
Erik Abair
daa2748a2f
nv2a: Gracefully ignore draws with no target bindings
2022-06-14 18:35:00 -07:00
Matt Borgerson
191f927517
nv2a: Store zclamp config to registers
2022-06-14 17:52:55 -07:00
Erik Abair
875c0659d6
nv2a: Implement gl_depth_clamp control
2022-06-14 17:05:21 -07:00
Mike Davis
c16db47bab
nv2a: Add RenderDoc support for Windows builds
2022-06-14 14:03:26 -07:00
Erik Abair
30829497d2
nv2a: Assert on unimplemented writable const register path
2022-06-10 16:28:04 -07:00
Erik Abair
5cb31da44b
nv2a: Increase DrawArrays buffer size
...
Fixes #364
2022-06-09 22:28:28 -07:00
Erik Abair
30d3bb53b5
nv2a: Fix clip region at renderscales > 1
...
Fixes #1054
2022-06-09 20:41:38 -07:00
Erik Abair
176b574403
nv2a: Fix oFog write behavior with non-x destination masks.
2022-06-03 14:38:16 -07:00
Erik Abair
8a97cec99f
nv2a: Implement z16 float shadow comparison
2022-06-03 13:50:36 -07:00
Erik Abair
84fa8dac3e
nv2a: Check for CPU-modifications to textures before reusing
2022-06-03 13:29:38 -07:00
Erik Abair
7d6da227ba
nv2a: Fix combiner single stage color+alpha interdependence
2022-05-30 16:04:12 -07:00
Erik Abair
9f6b9670d6
nv2a: Ignore excess inline array data
2022-05-28 15:08:22 -07:00
Erik Abair
8334f294df
nv2a: Do not set surface dirty if writes were disabled
2022-05-28 11:58:27 -07:00
Matt Borgerson
0cdcdde70c
nv2a: Emulate floating Z24S8 with fixed Z24S8
2022-05-25 23:51:05 -07:00
Matt Borgerson
bb78ad0e2f
nv2a: Rename zeta surface map 'int' to 'fixed'
2022-05-25 23:51:05 -07:00
Erik Abair
7c5d8b6546
nv2a: Implement shadow comparison for PROJECT2D mode
2022-05-25 14:38:32 -07:00
Erik Abair
9fe352c56c
nv2a: Migrate surface dbg messages to trace framework
2022-05-24 16:42:23 -07:00
Matt Borgerson
280a1bb6a1
nv2a: Support compressed 2D texture padding
2022-05-24 01:46:38 -07:00
Matt Borgerson
14748d9bbb
nv2a: Limit base, max mipmap level
2022-05-24 01:46:38 -07:00
Matt Borgerson
0efef88181
nv2a: Use soft 2D texture decompression
2022-05-24 01:46:38 -07:00
Erik Abair
66b57dca9c
nv2a: Invalidate zeta when constructing non-matching color surface
2022-05-19 18:07:03 -07:00
Erik Abair
397957a36c
nv2a: Unbind dirty buffers on invalidate
2022-05-19 17:52:02 -07:00
Erik Abair
9a446a6544
nv2a: Add pitch to surface debug info
2022-05-18 16:52:32 -07:00
Erik Abair
e64ffe8091
nv2a: Invalidate GL textures after surface blit
2022-05-18 16:51:51 -07:00
Matt Borgerson
9fafe92b25
nv2a: Don't add clip offset to swizzled surfaces
2022-05-18 16:19:10 -07:00
Matt Borgerson
38a0e46f8c
nv2a: Don't bind unsampled textures
2022-05-18 03:40:04 -07:00
Matt Borgerson
2c1012ede4
nv2a: Add SHADOWCTL to shader dirty test
2022-05-17 18:13:35 -07:00
Matt Borgerson
a1f34c339a
nv2a: Add SHADOWCTL register to store depth func
2022-05-17 18:13:35 -07:00
Erik Abair
c33d96127c
nv2a: Implement shadow samplers
2022-05-17 17:45:16 -07:00
Erik Abair
b9aef0c57c
nv2a: Move palette offset behind texture reuse check
2022-05-17 17:32:32 -07:00
Erik Abair
b0f20c9bba
nv2a: Fix stale texture in surface input and output case
2022-05-17 17:18:15 -07:00
Matt Borgerson
3451fdb8c0
gloffscreen.h: Remove platform-specific includes
2022-05-17 16:55:41 -07:00
Erik Abair
a6cd0c2110
nv2a: Prevent GPU download after blit operation
2022-05-17 16:29:16 -07:00
Erik Abair
aec2883c6b
nv2a: Process pending surface uploads before render to texture
2022-05-10 17:56:58 -07:00
Erik Abair
2d50239832
nv2a: Fix subscreen pvideo overlay position
2022-05-10 14:51:51 -07:00
Erik Abair
989dbcc76d
nv2a: Match HW behavior when setting window clip
2022-05-10 13:15:30 -07:00
Matt Borgerson
9c06980275
ui: Redesign user interface
...
Introduces a new user interface that looks much nicer, is easier to
navigate with controllers, provides more context to users, and is
scalable. Some additional features are included.
* Adds 'popup menu' with actions that can be used easily from controller
* Adds 'main menu', unifying other configuration dialogs
* Adds port-forwarding user interface
* Adds screenshot feature
* Adds volume control feature
* Adds gamepad auto-bind option
* Adds vsync configuration option
* Adds auto UI scaling
* Adds preferred window size selection
* Adds AV pack selection
* Exposes some existing config items in GUI
2022-05-07 16:09:34 -07:00
Erik Abair
306891b98c
nv2a: Disable stderr print on image_blit when GL debugging is enabled
2022-05-05 14:50:07 -07:00
Erik Abair
6d7f329880
nv2a: Fix glsl ambiguous overload to prevent renderdoc failure
2022-04-26 22:08:51 -07:00
Antonio Abbatangelo
4bd1a07706
nv2a: adjust display resolution in 1080i mode
2022-04-26 13:46:28 -07:00
Erik Abair
a654a1f99a
nv2a: Prevent renderdoc from crashing xemu when capturing a frame
2022-04-26 13:44:13 -07:00
Erik Abair
8125e1302f
nv2a: Fix renderdoc detection on macOS
2022-04-25 13:30:47 -07:00
Matt Borgerson
d14cdbc7ba
config: Migrate to genconfig system
2022-04-24 21:15:57 -07:00
Erik Abair
440f4c53ec
nv2a: Ignore color/depth mask in CLEAR_SURFACE
2022-04-24 15:41:10 -07:00
Erik Abair
6dbd51fbe1
nv2a: Fix MAC/ILU independence
2022-04-24 15:34:14 -07:00
Erik Abair
4c8342725e
nv2a: Make combiner assignment independent
2022-04-24 15:11:47 -07:00
Erik Abair
f245e08560
nv2a: Set oFog.x with most significant oFog mutation
2022-04-24 15:02:39 -07:00
Erik Abair
6f507c80af
nv2a: Fix handling of 0-stride vertex attributes
2022-03-22 17:35:26 -07:00
Matt Borgerson
6e1969001e
nv2a: Rename sum to muxsum, simplify mux string build
2022-03-18 18:28:09 -07:00
Erik Abair
cb0a92b46c
nv2a: Handle LSB mux flag
2022-03-18 17:35:32 -07:00
Erik Abair
f0abe3c4fc
nv2a: Fix handling of R8B8 and G8B8 texture modes
2022-03-18 16:09:55 -07:00
wutno
d58f4e7051
xbox: Add a dummy device in place of memory controller
2022-03-16 22:39:49 -07:00
Erik Abair
2ff5f23235
nv2a: Implement v1r0_sum flags
2022-03-16 21:22:16 -07:00
Erik Abair
4cff9c27f3
nv2a: Fix swapped R and Q texgen planes
2022-03-16 20:36:41 -07:00
Erik Abair
83d4cbb418
nv2a: Update attribute inline_value as rendering side-effect
2022-02-22 15:01:46 -07:00
Antonio Abbatangelo
2218cdea67
nv2a/mcpx: fix freezing on loadvm failure
2022-02-22 14:40:26 -07:00