aboutsummaryrefslogtreecommitdiff
path: root/src/core/3ds.h
diff options
context:
space:
mode:
authorYuri Kunde Schlesner <yuriks@yuriks.net>2017-05-27 18:06:59 -0700
committerYuri Kunde Schlesner <yuriks@yuriks.net>2017-05-27 18:41:24 -0700
commiteb10f250254a0153abd789e49a36945d996631a7 (patch)
tree5f7a0e290892f1137ccd28420991ef7981377cf6 /src/core/3ds.h
parent6665557ff76cf8a04c025da90cad49dbe02d808d (diff)
Move screen size constants from video_core to core
video_core didn't even properly use them, and they were the source of many otherwise-unnecessary dependencies from core to video_core.
Diffstat (limited to 'src/core/3ds.h')
-rw-r--r--src/core/3ds.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/core/3ds.h b/src/core/3ds.h
new file mode 100644
index 000000000..8715e27db
--- /dev/null
+++ b/src/core/3ds.h
@@ -0,0 +1,21 @@
+// Copyright 2017 Citra Emulator Project
+// Licensed under GPLv2 or any later version
+// Refer to the license.txt file included.
+
+#pragma once
+
+namespace Core {
+
+// 3DS Video Constants
+// -------------------
+
+// NOTE: The LCDs actually rotate the image 90 degrees when displaying. Because of that the
+// framebuffers in video memory are stored in column-major order and rendered sideways, causing
+// the widths and heights of the framebuffers read by the LCD to be switched compared to the
+// heights and widths of the screens listed here.
+constexpr int kScreenTopWidth = 400; ///< 3DS top screen width
+constexpr int kScreenTopHeight = 240; ///< 3DS top screen height
+constexpr int kScreenBottomWidth = 320; ///< 3DS bottom screen width
+constexpr int kScreenBottomHeight = 240; ///< 3DS bottom screen height
+
+} // namespace Core