diff --git a/Core/CMakeLists.txt b/Core/CMakeLists.txt
index f2106e43a5..59eb9c83f1 100644
--- a/Core/CMakeLists.txt
+++ b/Core/CMakeLists.txt
@@ -284,6 +284,8 @@ add_library(Core STATIC
Debugger/Breakpoints.cpp
Debugger/Breakpoints.h
Debugger/DebugInterface.h
+ Debugger/LineInfo.cpp
+ Debugger/LineInfo.h
Debugger/MemBlockInfo.cpp
Debugger/MemBlockInfo.h
Debugger/SymbolMap.cpp
diff --git a/Core/Core.vcxproj b/Core/Core.vcxproj
index 2b4c3acb22..c9694ce3fb 100644
--- a/Core/Core.vcxproj
+++ b/Core/Core.vcxproj
@@ -441,6 +441,7 @@
+
@@ -982,6 +983,7 @@
+
diff --git a/Core/Core.vcxproj.filters b/Core/Core.vcxproj.filters
index 83ea1b310b..94946d503c 100644
--- a/Core/Core.vcxproj.filters
+++ b/Core/Core.vcxproj.filters
@@ -967,6 +967,9 @@
MIPS\fake
+
+ Debugger
+
Debugger
@@ -2112,6 +2115,9 @@
MIPS\fake
+
+ Debugger
+
Debugger
diff --git a/Core/Debugger/LineInfo.cpp b/Core/Debugger/LineInfo.cpp
new file mode 100644
index 0000000000..16526b4b2a
--- /dev/null
+++ b/Core/Debugger/LineInfo.cpp
@@ -0,0 +1,421 @@
+// Copyright (c) 2026- PPSSPP Project.
+
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, version 2.0 or later versions.
+
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License 2.0 for more details.
+
+// A copy of the GPL 2.0 should have been included with the program.
+// If not, see http://www.gnu.org/licenses/
+
+// Official git repository and contact information can be found at
+// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/.
+
+#include
+#include
+#include