diff --git a/rpcs3/Emu/RSX/rsx_methods.cpp b/rpcs3/Emu/RSX/rsx_methods.cpp index 9d1ffd2491..61f927c543 100644 --- a/rpcs3/Emu/RSX/rsx_methods.cpp +++ b/rpcs3/Emu/RSX/rsx_methods.cpp @@ -686,11 +686,12 @@ namespace rsx rsx->m_rtts_dirty = true; } - void set_ROP_state_dirty_bit(thread* rsx, u32, u32 arg) + template + void notify_state_changed(thread* rsx, u32, u32 arg) { if (arg != method_registers.register_previous_value) { - rsx->m_graphics_state |= rsx::fragment_state_dirty; + rsx->m_graphics_state |= RsxFlags; } } @@ -722,30 +723,6 @@ namespace rsx } } - void set_vertex_env_dirty_bit(thread* rsx, u32, u32 arg) - { - if (arg != method_registers.register_previous_value) - { - rsx->m_graphics_state |= rsx::pipeline_state::vertex_state_dirty; - } - } - - void set_fragment_env_dirty_bit(thread* rsx, u32, u32 arg) - { - if (arg != method_registers.register_previous_value) - { - rsx->m_graphics_state |= rsx::pipeline_state::fragment_state_dirty; - } - } - - void set_scissor_dirty_bit(thread* rsx, u32 reg, u32 arg) - { - if (arg != method_registers.register_previous_value) - { - rsx->m_graphics_state |= rsx::pipeline_state::scissor_config_state_dirty; - } - } - void check_index_array_dma(thread* rsx, u32 reg, u32 arg) { // Check if either location or index type are invalid @@ -2974,22 +2951,23 @@ namespace rsx bind(); bind(); bind(); - bind(); - bind(); - bind(); - bind(); - bind(); - bind(); - bind(); - bind(); - bind(); - bind(); - bind(); - bind(); - bind(); - bind(); - bind(); - bind_array(); + bind>(); + bind>(); + bind>(); + bind>(); + bind>(); + bind>(); + bind>(); + bind>(); + bind>(); + bind>(); + bind>(); + bind>(); + bind>(); + bind>(); + bind>(); + bind>(); + bind_array>(); bind_range(); bind_range(); bind();