summaryrefslogtreecommitdiff
path: root/src/core/hw/hw.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/hw/hw.cpp')
-rw-r--r--src/core/hw/hw.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/core/hw/hw.cpp b/src/core/hw/hw.cpp
index bf4722cf7..bed50af50 100644
--- a/src/core/hw/hw.cpp
+++ b/src/core/hw/hw.cpp
@@ -6,17 +6,19 @@
6 6
7#include "core/hw/hw.h" 7#include "core/hw/hw.h"
8#include "core/hw/gpu.h" 8#include "core/hw/gpu.h"
9#include "core/hw/lcd.h"
9 10
10namespace HW { 11namespace HW {
11 12
12template <typename T> 13template <typename T>
13inline void Read(T &var, const u32 addr) { 14inline void Read(T &var, const u32 addr) {
14 switch (addr & 0xFFFFF000) { 15 switch (addr & 0xFFFFF000) {
15
16 case VADDR_GPU: 16 case VADDR_GPU:
17 GPU::Read(var, addr); 17 GPU::Read(var, addr);
18 break; 18 break;
19 19 case VADDR_LCD:
20 LCD::Write(var, addr);
21 break;
20 default: 22 default:
21 LOG_ERROR(HW_Memory, "unknown Read%lu @ 0x%08X", sizeof(var) * 8, addr); 23 LOG_ERROR(HW_Memory, "unknown Read%lu @ 0x%08X", sizeof(var) * 8, addr);
22 } 24 }
@@ -25,11 +27,12 @@ inline void Read(T &var, const u32 addr) {
25template <typename T> 27template <typename T>
26inline void Write(u32 addr, const T data) { 28inline void Write(u32 addr, const T data) {
27 switch (addr & 0xFFFFF000) { 29 switch (addr & 0xFFFFF000) {
28
29 case VADDR_GPU: 30 case VADDR_GPU:
30 GPU::Write(addr, data); 31 GPU::Write(addr, data);
31 break; 32 break;
32 33 case VADDR_LCD:
34 LCD::Write(addr, data);
35 break;
33 default: 36 default:
34 LOG_ERROR(HW_Memory, "unknown Write%lu 0x%08X @ 0x%08X", sizeof(data) * 8, (u32)data, addr); 37 LOG_ERROR(HW_Memory, "unknown Write%lu 0x%08X @ 0x%08X", sizeof(data) * 8, (u32)data, addr);
35 } 38 }
@@ -54,6 +57,7 @@ void Update() {
54/// Initialize hardware 57/// Initialize hardware
55void Init() { 58void Init() {
56 GPU::Init(); 59 GPU::Init();
60 LCD::Init();
57 LOG_DEBUG(HW, "initialized OK"); 61 LOG_DEBUG(HW, "initialized OK");
58} 62}
59 63