From 0314ec915c05eba97be774f0fd6e8a0a5fc28810 Mon Sep 17 00:00:00 2001 From: Exzap <13877693+Exzap@users.noreply.github.com> Date: Sun, 20 Sep 2026 13:37:00 +0200 Subject: [PATCH] GX2: Set correct shader mode default --- src/Cafe/OS/libs/gx2/GX2_ContextState.cpp | 4 +++- src/Cafe/OS/libs/gx2/GX2_Shader.h | 2 ++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/Cafe/OS/libs/gx2/GX2_ContextState.cpp b/src/Cafe/OS/libs/gx2/GX2_ContextState.cpp index fb631a11..e538e0c8 100644 --- a/src/Cafe/OS/libs/gx2/GX2_ContextState.cpp +++ b/src/Cafe/OS/libs/gx2/GX2_ContextState.cpp @@ -2,10 +2,10 @@ #include "Cafe/HW/Latte/ISA/RegDefines.h" #include "GX2.h" #include "Cafe/HW/Latte/Core/Latte.h" -#include "Cafe/HW/Latte/Core/LatteDraw.h" #include "Cafe/HW/Latte/Core/LattePM4.h" +#include "GX2_Shader.h" #include "GX2_Command.h" #include "GX2_State.h" #include "Cafe/CafeSystem.h" @@ -213,6 +213,8 @@ void GX2SetDefaultState() { GX2::GX2ReserveCmdSpace(0x100); + GX2::GX2SetShaderModeEx(GX2::GX2_SHADER_MODE::UNIFORM_REGISTER, 48, 64, 0, 0, 200, 192); + Latte::LATTE_PA_CL_VTE_CNTL reg{}; reg.set_VPORT_X_OFFSET_ENA(true).set_VPORT_X_SCALE_ENA(true); reg.set_VPORT_Y_OFFSET_ENA(true).set_VPORT_Y_SCALE_ENA(true); diff --git a/src/Cafe/OS/libs/gx2/GX2_Shader.h b/src/Cafe/OS/libs/gx2/GX2_Shader.h index 65f15e36..12cac938 100644 --- a/src/Cafe/OS/libs/gx2/GX2_Shader.h +++ b/src/Cafe/OS/libs/gx2/GX2_Shader.h @@ -36,6 +36,8 @@ namespace GX2 COMPUTE_SHADER = 3, }; + void GX2SetShaderModeEx(GX2_SHADER_MODE mode, uint32 shaderGprsVS, uint32 shaderStackVS, uint32 shaderGprsGS, uint32 shaderStackGS, uint32 shaderGprsPS, uint32 shaderStackPS); + void GX2ShaderInit(); }