diff options
| author | 2014-05-17 23:01:58 +0200 | |
|---|---|---|
| committer | 2014-06-12 06:10:50 -0400 | |
| commit | d4530765ceaf75cecd16b3ed5a7829611af2d82c (patch) | |
| tree | 16e0e9cd41102a5201bc97fefe5dd0d1ebebf114 /src | |
| parent | Rename LCD to GPU. (diff) | |
| download | yuzu-d4530765ceaf75cecd16b3ed5a7829611af2d82c.tar.gz yuzu-d4530765ceaf75cecd16b3ed5a7829611af2d82c.tar.xz yuzu-d4530765ceaf75cecd16b3ed5a7829611af2d82c.zip | |
GPU: Cleanup register definitions.
Diffstat (limited to 'src')
| -rw-r--r-- | src/core/hle/service/gsp.cpp | 6 | ||||
| -rw-r--r-- | src/core/hw/gpu.cpp | 26 | ||||
| -rw-r--r-- | src/core/hw/gpu.h | 30 |
3 files changed, 31 insertions, 31 deletions
diff --git a/src/core/hle/service/gsp.cpp b/src/core/hle/service/gsp.cpp index d51e6c66d..15e9d19a5 100644 --- a/src/core/hle/service/gsp.cpp +++ b/src/core/hle/service/gsp.cpp | |||
| @@ -123,9 +123,9 @@ void TriggerCmdReqQueue(Service::Interface* self) { | |||
| 123 | break; | 123 | break; |
| 124 | 124 | ||
| 125 | case GXCommandId::SET_COMMAND_LIST_LAST: | 125 | case GXCommandId::SET_COMMAND_LIST_LAST: |
| 126 | GPU::Write<u32>(GPU::CommandListAddress, cmd_buff[1] >> 3); | 126 | GPU::Write<u32>(GPU::Registers::CommandListAddress, cmd_buff[1] >> 3); |
| 127 | GPU::Write<u32>(GPU::CommandListSize, cmd_buff[2] >> 3); | 127 | GPU::Write<u32>(GPU::Registers::CommandListSize, cmd_buff[2] >> 3); |
| 128 | GPU::Write<u32>(GPU::ProcessCommandList, 1); // TODO: Not sure if we are supposed to always write this | 128 | GPU::Write<u32>(GPU::Registers::ProcessCommandList, 1); // TODO: Not sure if we are supposed to always write this |
| 129 | break; | 129 | break; |
| 130 | 130 | ||
| 131 | case GXCommandId::SET_MEMORY_FILL: | 131 | case GXCommandId::SET_MEMORY_FILL: |
diff --git a/src/core/hw/gpu.cpp b/src/core/hw/gpu.cpp index 632e1aaac..ec2d0e156 100644 --- a/src/core/hw/gpu.cpp +++ b/src/core/hw/gpu.cpp | |||
| @@ -86,39 +86,39 @@ const u8* GetFramebufferPointer(const u32 address) { | |||
| 86 | template <typename T> | 86 | template <typename T> |
| 87 | inline void Read(T &var, const u32 addr) { | 87 | inline void Read(T &var, const u32 addr) { |
| 88 | switch (addr) { | 88 | switch (addr) { |
| 89 | case REG_FRAMEBUFFER_TOP_LEFT_1: | 89 | case Registers::FramebufferTopLeft1: |
| 90 | var = g_regs.framebuffer_top_left_1; | 90 | var = g_regs.framebuffer_top_left_1; |
| 91 | break; | 91 | break; |
| 92 | 92 | ||
| 93 | case REG_FRAMEBUFFER_TOP_LEFT_2: | 93 | case Registers::FramebufferTopLeft2: |
| 94 | var = g_regs.framebuffer_top_left_2; | 94 | var = g_regs.framebuffer_top_left_2; |
| 95 | break; | 95 | break; |
| 96 | 96 | ||
| 97 | case REG_FRAMEBUFFER_TOP_RIGHT_1: | 97 | case Registers::FramebufferTopRight1: |
| 98 | var = g_regs.framebuffer_top_right_1; | 98 | var = g_regs.framebuffer_top_right_1; |
| 99 | break; | 99 | break; |
| 100 | 100 | ||
| 101 | case REG_FRAMEBUFFER_TOP_RIGHT_2: | 101 | case Registers::FramebufferTopRight2: |
| 102 | var = g_regs.framebuffer_top_right_2; | 102 | var = g_regs.framebuffer_top_right_2; |
| 103 | break; | 103 | break; |
| 104 | 104 | ||
| 105 | case REG_FRAMEBUFFER_SUB_LEFT_1: | 105 | case Registers::FramebufferSubLeft1: |
| 106 | var = g_regs.framebuffer_sub_left_1; | 106 | var = g_regs.framebuffer_sub_left_1; |
| 107 | break; | 107 | break; |
| 108 | 108 | ||
| 109 | case REG_FRAMEBUFFER_SUB_RIGHT_1: | 109 | case Registers::FramebufferSubRight1: |
| 110 | var = g_regs.framebuffer_sub_right_1; | 110 | var = g_regs.framebuffer_sub_right_1; |
| 111 | break; | 111 | break; |
| 112 | 112 | ||
| 113 | case CommandListSize: | 113 | case Registers::CommandListSize: |
| 114 | var = g_regs.command_list_size; | 114 | var = g_regs.command_list_size; |
| 115 | break; | 115 | break; |
| 116 | 116 | ||
| 117 | case CommandListAddress: | 117 | case Registers::CommandListAddress: |
| 118 | var = g_regs.command_list_address; | 118 | var = g_regs.command_list_address; |
| 119 | break; | 119 | break; |
| 120 | 120 | ||
| 121 | case ProcessCommandList: | 121 | case Registers::ProcessCommandList: |
| 122 | var = g_regs.command_processing_enabled; | 122 | var = g_regs.command_processing_enabled; |
| 123 | break; | 123 | break; |
| 124 | 124 | ||
| @@ -130,16 +130,16 @@ inline void Read(T &var, const u32 addr) { | |||
| 130 | 130 | ||
| 131 | template <typename T> | 131 | template <typename T> |
| 132 | inline void Write(u32 addr, const T data) { | 132 | inline void Write(u32 addr, const T data) { |
| 133 | switch (addr) { | 133 | switch (static_cast<Registers::Id>(addr)) { |
| 134 | case CommandListSize: | 134 | case Registers::CommandListSize: |
| 135 | g_regs.command_list_size = data; | 135 | g_regs.command_list_size = data; |
| 136 | break; | 136 | break; |
| 137 | 137 | ||
| 138 | case CommandListAddress: | 138 | case Registers::CommandListAddress: |
| 139 | g_regs.command_list_address = data; | 139 | g_regs.command_list_address = data; |
| 140 | break; | 140 | break; |
| 141 | 141 | ||
| 142 | case ProcessCommandList: | 142 | case Registers::ProcessCommandList: |
| 143 | g_regs.command_processing_enabled = data; | 143 | g_regs.command_processing_enabled = data; |
| 144 | if (g_regs.command_processing_enabled & 1) | 144 | if (g_regs.command_processing_enabled & 1) |
| 145 | { | 145 | { |
diff --git a/src/core/hw/gpu.h b/src/core/hw/gpu.h index c81b1bb3f..f26f25e98 100644 --- a/src/core/hw/gpu.h +++ b/src/core/hw/gpu.h | |||
| @@ -9,6 +9,21 @@ | |||
| 9 | namespace GPU { | 9 | namespace GPU { |
| 10 | 10 | ||
| 11 | struct Registers { | 11 | struct Registers { |
| 12 | enum Id : u32 { | ||
| 13 | FramebufferTopLeft1 = 0x1EF00468, // Main LCD, first framebuffer for 3D left | ||
| 14 | FramebufferTopLeft2 = 0x1EF0046C, // Main LCD, second framebuffer for 3D left | ||
| 15 | FramebufferTopRight1 = 0x1EF00494, // Main LCD, first framebuffer for 3D right | ||
| 16 | FramebufferTopRight2 = 0x1EF00498, // Main LCD, second framebuffer for 3D right | ||
| 17 | FramebufferSubLeft1 = 0x1EF00568, // Sub LCD, first framebuffer | ||
| 18 | FramebufferSubLeft2 = 0x1EF0056C, // Sub LCD, second framebuffer | ||
| 19 | FramebufferSubRight1 = 0x1EF00594, // Sub LCD, unused first framebuffer | ||
| 20 | FramebufferSubRight2 = 0x1EF00598, // Sub LCD, unused second framebuffer | ||
| 21 | |||
| 22 | CommandListSize = 0x1EF018E0, | ||
| 23 | CommandListAddress = 0x1EF018E8, | ||
| 24 | ProcessCommandList = 0x1EF018F0, | ||
| 25 | }; | ||
| 26 | |||
| 12 | u32 framebuffer_top_left_1; | 27 | u32 framebuffer_top_left_1; |
| 13 | u32 framebuffer_top_left_2; | 28 | u32 framebuffer_top_left_2; |
| 14 | u32 framebuffer_top_right_1; | 29 | u32 framebuffer_top_right_1; |
| @@ -52,21 +67,6 @@ enum { | |||
| 52 | PADDR_VRAM_SUB_FRAME2 = 0x18249CF0, | 67 | PADDR_VRAM_SUB_FRAME2 = 0x18249CF0, |
| 53 | }; | 68 | }; |
| 54 | 69 | ||
| 55 | enum { | ||
| 56 | REG_FRAMEBUFFER_TOP_LEFT_1 = 0x1EF00468, // Main LCD, first framebuffer for 3D left | ||
| 57 | REG_FRAMEBUFFER_TOP_LEFT_2 = 0x1EF0046C, // Main LCD, second framebuffer for 3D left | ||
| 58 | REG_FRAMEBUFFER_TOP_RIGHT_1 = 0x1EF00494, // Main LCD, first framebuffer for 3D right | ||
| 59 | REG_FRAMEBUFFER_TOP_RIGHT_2 = 0x1EF00498, // Main LCD, second framebuffer for 3D right | ||
| 60 | REG_FRAMEBUFFER_SUB_LEFT_1 = 0x1EF00568, // Sub LCD, first framebuffer | ||
| 61 | REG_FRAMEBUFFER_SUB_LEFT_2 = 0x1EF0056C, // Sub LCD, second framebuffer | ||
| 62 | REG_FRAMEBUFFER_SUB_RIGHT_1 = 0x1EF00594, // Sub LCD, unused first framebuffer | ||
| 63 | REG_FRAMEBUFFER_SUB_RIGHT_2 = 0x1EF00598, // Sub LCD, unused second framebuffer | ||
| 64 | |||
| 65 | CommandListSize = 0x1EF018E0, | ||
| 66 | CommandListAddress = 0x1EF018E8, | ||
| 67 | ProcessCommandList = 0x1EF018F0, | ||
| 68 | }; | ||
| 69 | |||
| 70 | /// Framebuffer location | 70 | /// Framebuffer location |
| 71 | enum FramebufferLocation { | 71 | enum FramebufferLocation { |
| 72 | FRAMEBUFFER_LOCATION_UNKNOWN, ///< Framebuffer location is unknown | 72 | FRAMEBUFFER_LOCATION_UNKNOWN, ///< Framebuffer location is unknown |