diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8fe807763f..bfa85f981c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1894,6 +1894,8 @@ add_library(${CoreLibName} ${CoreLinkType}
Core/HLE/scePspNpDrm_user.h
Core/HLE/sceNp.cpp
Core/HLE/sceNp.h
+ Core/HLE/sceNp2.cpp
+ Core/HLE/sceNp2.h
Core/HLE/scePauth.cpp
Core/HLE/scePauth.h
Core/HW/SimpleAudioDec.cpp
diff --git a/Core/Core.vcxproj b/Core/Core.vcxproj
index bb5688fb30..bdfaea4361 100644
--- a/Core/Core.vcxproj
+++ b/Core/Core.vcxproj
@@ -535,6 +535,7 @@
+
@@ -1087,6 +1088,7 @@
+
diff --git a/Core/Core.vcxproj.filters b/Core/Core.vcxproj.filters
index 8fc7db771d..3a24903dbc 100644
--- a/Core/Core.vcxproj.filters
+++ b/Core/Core.vcxproj.filters
@@ -1187,6 +1187,9 @@
HW
+
+ HLE\Libraries
+
@@ -1916,6 +1919,9 @@
HW
+
+ HLE\Libraries
+
diff --git a/Core/HLE/sceNp.cpp b/Core/HLE/sceNp.cpp
index fd6eb1563c..c7328a8ed0 100644
--- a/Core/HLE/sceNp.cpp
+++ b/Core/HLE/sceNp.cpp
@@ -18,9 +18,6 @@
// This is pretty much a stub implementation. Doesn't actually do anything, just tries to return values
// to keep games happy anyway.
-#include
-#include
-#include
@@ -1761,6 +1764,9 @@
+
+ HLE
+
diff --git a/android/jni/Android.mk b/android/jni/Android.mk
index 33db892245..a0c9774d37 100644
--- a/android/jni/Android.mk
+++ b/android/jni/Android.mk
@@ -518,6 +518,7 @@ EXEC_AND_LIB_FILES := \
$(SRC)/Core/HLE/scePspNpDrm_user.cpp \
$(SRC)/Core/HLE/sceGameUpdate.cpp \
$(SRC)/Core/HLE/sceNp.cpp \
+ $(SRC)/Core/HLE/sceNp2.cpp \
$(SRC)/Core/HLE/scePauth.cpp \
$(SRC)/Core/FileSystems/BlobFileSystem.cpp \
$(SRC)/Core/FileSystems/BlockDevices.cpp \
diff --git a/libretro/Makefile.common b/libretro/Makefile.common
index dca3bde0d1..9143600e09 100644
--- a/libretro/Makefile.common
+++ b/libretro/Makefile.common
@@ -547,6 +547,7 @@ SOURCES_CXX += \
$(COREDIR)/HLE/sceVaudio.cpp \
$(COREDIR)/HLE/scePspNpDrm_user.cpp \
$(COREDIR)/HLE/sceNp.cpp \
+ $(COREDIR)/HLE/sceNp2.cpp \
$(COREDIR)/HLE/scePauth.cpp \
$(COREDIR)/HLE/sceUsbGps.cpp \
$(COREDIR)/HW/BufferQueue.cpp \