diff options
Diffstat (limited to '')
| -rw-r--r-- | src/video_core/macro/macro_hle.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/video_core/macro/macro_hle.cpp b/src/video_core/macro/macro_hle.cpp index b64dc67c0..768ae9139 100644 --- a/src/video_core/macro/macro_hle.cpp +++ b/src/video_core/macro/macro_hle.cpp | |||
| @@ -12,8 +12,7 @@ namespace Tegra { | |||
| 12 | 12 | ||
| 13 | namespace { | 13 | namespace { |
| 14 | // HLE'd functions | 14 | // HLE'd functions |
| 15 | static void HLE_771BB18C62444DA0(Engines::Maxwell3D& maxwell3d, | 15 | void HLE_771BB18C62444DA0(Engines::Maxwell3D& maxwell3d, const std::vector<u32>& parameters) { |
| 16 | const std::vector<u32>& parameters) { | ||
| 17 | const u32 instance_count = parameters[2] & maxwell3d.GetRegisterValue(0xD1B); | 16 | const u32 instance_count = parameters[2] & maxwell3d.GetRegisterValue(0xD1B); |
| 18 | 17 | ||
| 19 | maxwell3d.regs.draw.topology.Assign( | 18 | maxwell3d.regs.draw.topology.Assign( |
| @@ -33,8 +32,7 @@ static void HLE_771BB18C62444DA0(Engines::Maxwell3D& maxwell3d, | |||
| 33 | maxwell3d.mme_draw.current_mode = Engines::Maxwell3D::MMEDrawMode::Undefined; | 32 | maxwell3d.mme_draw.current_mode = Engines::Maxwell3D::MMEDrawMode::Undefined; |
| 34 | } | 33 | } |
| 35 | 34 | ||
| 36 | static void HLE_0D61FC9FAAC9FCAD(Engines::Maxwell3D& maxwell3d, | 35 | void HLE_0D61FC9FAAC9FCAD(Engines::Maxwell3D& maxwell3d, const std::vector<u32>& parameters) { |
| 37 | const std::vector<u32>& parameters) { | ||
| 38 | const u32 count = (maxwell3d.GetRegisterValue(0xD1B) & parameters[2]); | 36 | const u32 count = (maxwell3d.GetRegisterValue(0xD1B) & parameters[2]); |
| 39 | 37 | ||
| 40 | maxwell3d.regs.vertex_buffer.first = parameters[3]; | 38 | maxwell3d.regs.vertex_buffer.first = parameters[3]; |
| @@ -52,8 +50,7 @@ static void HLE_0D61FC9FAAC9FCAD(Engines::Maxwell3D& maxwell3d, | |||
| 52 | maxwell3d.mme_draw.current_mode = Engines::Maxwell3D::MMEDrawMode::Undefined; | 50 | maxwell3d.mme_draw.current_mode = Engines::Maxwell3D::MMEDrawMode::Undefined; |
| 53 | } | 51 | } |
| 54 | 52 | ||
| 55 | static void HLE_0217920100488FF7(Engines::Maxwell3D& maxwell3d, | 53 | void HLE_0217920100488FF7(Engines::Maxwell3D& maxwell3d, const std::vector<u32>& parameters) { |
| 56 | const std::vector<u32>& parameters) { | ||
| 57 | const u32 instance_count = (maxwell3d.GetRegisterValue(0xD1B) & parameters[2]); | 54 | const u32 instance_count = (maxwell3d.GetRegisterValue(0xD1B) & parameters[2]); |
| 58 | const u32 element_base = parameters[4]; | 55 | const u32 element_base = parameters[4]; |
| 59 | const u32 base_instance = parameters[5]; | 56 | const u32 base_instance = parameters[5]; |
| @@ -81,7 +78,7 @@ static void HLE_0217920100488FF7(Engines::Maxwell3D& maxwell3d, | |||
| 81 | maxwell3d.CallMethodFromMME(0x8e5, 0x0); | 78 | maxwell3d.CallMethodFromMME(0x8e5, 0x0); |
| 82 | maxwell3d.mme_draw.current_mode = Engines::Maxwell3D::MMEDrawMode::Undefined; | 79 | maxwell3d.mme_draw.current_mode = Engines::Maxwell3D::MMEDrawMode::Undefined; |
| 83 | } | 80 | } |
| 84 | } // namespace | 81 | } // Anonymous namespace |
| 85 | 82 | ||
| 86 | constexpr std::array<std::pair<u64, HLEFunction>, 3> hle_funcs{{ | 83 | constexpr std::array<std::pair<u64, HLEFunction>, 3> hle_funcs{{ |
| 87 | {0x771BB18C62444DA0, &HLE_771BB18C62444DA0}, | 84 | {0x771BB18C62444DA0, &HLE_771BB18C62444DA0}, |