diff --git a/.gitmodules b/.gitmodules
index cd8d9a98..8702c9f4 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -28,3 +28,6 @@
[submodule "external/libusb"]
path = external/libusb
url = https://github.com/libusb/libusb.git
+[submodule "external/sirit"]
+ path = external/sirit
+ url = https://github.com/N3xoX1/sirit.git
diff --git a/external/sirit b/external/sirit
new file mode 160000
index 00000000..149b6b0d
--- /dev/null
+++ b/external/sirit
@@ -0,0 +1 @@
+Subproject commit 149b6b0ddb741a90c998033b5c633667d0e093ba
diff --git a/external/sirit.vcxproj b/external/sirit.vcxproj
new file mode 100644
index 00000000..38c0ba1b
--- /dev/null
+++ b/external/sirit.vcxproj
@@ -0,0 +1,59 @@
+
+
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ {583146af-ee19-454c-8646-b202c0eb82ba}
+ sirit
+
+
+ StaticLibrary
+
+
+
+
+
+
+
+
+
+ NotUsing
+ Level3
+ $(SolutionDir)external\sirit\include;$(SolutionDir)external\sirit\src;$(SolutionDir)external\sirit\externals\SPIRV-Headers\include;%(AdditionalIncludeDirectories)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/external/sirit.vcxproj.filters b/external/sirit.vcxproj.filters
new file mode 100644
index 00000000..352ac0b2
--- /dev/null
+++ b/external/sirit.vcxproj.filters
@@ -0,0 +1,90 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd
+
+
+ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
+ rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
+
+
+ {5152efa2-5140-4f98-94cf-9cf2813e9540}
+
+
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files\instructions
+
+
+ Source Files\instructions
+
+
+ Source Files\instructions
+
+
+ Source Files\instructions
+
+
+ Source Files\instructions
+
+
+ Source Files\instructions
+
+
+ Source Files\instructions
+
+
+ Source Files\instructions
+
+
+ Source Files\instructions
+
+
+ Source Files\instructions
+
+
+ Source Files\instructions
+
+
+ Source Files\instructions
+
+
+ Source Files\instructions
+
+
+ Source Files\instructions
+
+
+ Source Files\instructions
+
+
+ Source Files\instructions
+
+
+ Source Files\instructions
+
+
+ Source Files\instructions
+
+
+
+
+ Header Files
+
+
+ Header Files
+
+
+
\ No newline at end of file
diff --git a/nxemu.sln b/nxemu.sln
index dd47227b..151eba7b 100644
--- a/nxemu.sln
+++ b/nxemu.sln
@@ -60,6 +60,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "yuzu_input_common", "src\yu
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glad", "..\nxemu-private\src\3rd_party\glad\glad.vcxproj", "{38B397D3-0155-4871-A65C-30F3F9F7DD7A}"
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sirit", "external\sirit.vcxproj", "{583146AF-EE19-454C-8646-B202C0EB82BA}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x64 = Debug|x64
@@ -212,6 +214,14 @@ Global
{38B397D3-0155-4871-A65C-30F3F9F7DD7A}.Release|x64.Build.0 = Release|x64
{38B397D3-0155-4871-A65C-30F3F9F7DD7A}.Release|x86.ActiveCfg = Release|x64
{38B397D3-0155-4871-A65C-30F3F9F7DD7A}.Release|x86.Build.0 = Release|x64
+ {583146AF-EE19-454C-8646-B202C0EB82BA}.Debug|x64.ActiveCfg = Debug|x64
+ {583146AF-EE19-454C-8646-B202C0EB82BA}.Debug|x64.Build.0 = Debug|x64
+ {583146AF-EE19-454C-8646-B202C0EB82BA}.Debug|x86.ActiveCfg = Debug|x64
+ {583146AF-EE19-454C-8646-B202C0EB82BA}.Debug|x86.Build.0 = Debug|x64
+ {583146AF-EE19-454C-8646-B202C0EB82BA}.Release|x64.ActiveCfg = Release|x64
+ {583146AF-EE19-454C-8646-B202C0EB82BA}.Release|x64.Build.0 = Release|x64
+ {583146AF-EE19-454C-8646-B202C0EB82BA}.Release|x86.ActiveCfg = Release|x64
+ {583146AF-EE19-454C-8646-B202C0EB82BA}.Release|x86.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -225,6 +235,7 @@ Global
{82A8D930-2514-48FA-B811-E5C402F2AB4A} = {29EE6611-75A5-4A1D-A994-33A5EBB4F765}
{677CA72D-E9B7-4AA5-ADBA-1C02AC84F8B0} = {F9F8A94D-341A-46BD-A4DA-13CC33489942}
{38B397D3-0155-4871-A65C-30F3F9F7DD7A} = {F9F8A94D-341A-46BD-A4DA-13CC33489942}
+ {583146AF-EE19-454C-8646-B202C0EB82BA} = {29EE6611-75A5-4A1D-A994-33A5EBB4F765}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {AF860836-279D-4187-9FAF-4E2D4B9C59CF}