diff --git a/src/Android.mk b/src/Android.mk
index 035d48887..235c4b81e 100644
--- a/src/Android.mk
+++ b/src/Android.mk
@@ -8,11 +8,7 @@ LOCAL_SRC_FILES := am_map.c \
command.c \
comptime.c \
console.c \
- d_clisrv.c \
d_main.c \
- d_net.c \
- d_netcmd.c \
- d_netfil.c \
dehacked.c \
f_finale.c \
f_wipe.c \
@@ -20,7 +16,6 @@ LOCAL_SRC_FILES := am_map.c \
g_game.c \
g_input.c \
hu_stuff.c \
- i_tcp.c \
info.c \
lzf.c \
m_argv.c \
@@ -32,7 +27,6 @@ LOCAL_SRC_FILES := am_map.c \
m_queue.c \
m_random.c \
md5.c \
- mserv.c \
p_ceilng.c \
p_enemy.c \
p_fab.c \
@@ -61,6 +55,7 @@ LOCAL_SRC_FILES := am_map.c \
r_things.c \
s_sound.c \
screen.c \
+ snake.c \
sounds.c \
st_stuff.c \
string.c \
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index b926b3b7a..22c1def27 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -6,10 +6,6 @@ add_executable(SRB2SDL2 MACOSX_BUNDLE WIN32
config.h.in
string.c
d_main.c
- d_clisrv.c
- d_net.c
- d_netfil.c
- d_netcmd.c
dehacked.c
deh_soc.c
deh_lua.c
@@ -83,12 +79,10 @@ add_executable(SRB2SDL2 MACOSX_BUNDLE WIN32
sounds.c
w_wad.c
filesrch.c
- mserv.c
- http-mserv.c
- i_tcp.c
lzf.c
b_bot.c
u_list.c
+ snake.c
lua_script.c
lua_baselib.c
lua_mathlib.c
@@ -149,6 +143,7 @@ set(SRB2_CONFIG_DEV_BUILD OFF CACHE BOOL
"Compile a development build of SRB2.")
add_subdirectory(blua)
+add_subdirectory(netcode)
# OS macros
if (UNIX)
diff --git a/src/netcode/CMakeLists.txt b/src/netcode/CMakeLists.txt
new file mode 100644
index 000000000..69b976d17
--- /dev/null
+++ b/src/netcode/CMakeLists.txt
@@ -0,0 +1,15 @@
+target_sources(SRB2SDL2 PRIVATE
+ d_clisrv.c
+ server_connection.c
+ client_connection.c
+ tic_command.c
+ net_command.c
+ gamestate.c
+ commands.c
+ d_net.c
+ d_netcmd.c
+ d_netfil.c
+ http-mserv.c
+ i_tcp.c
+ mserv.c
+)
diff --git a/src/sdl/Srb2SDL-vc10.vcxproj b/src/sdl/Srb2SDL-vc10.vcxproj
index 0b95cd0b2..9b51cfb80 100644
--- a/src/sdl/Srb2SDL-vc10.vcxproj
+++ b/src/sdl/Srb2SDL-vc10.vcxproj
@@ -262,7 +262,6 @@
-
@@ -297,6 +296,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -329,6 +343,7 @@
+
@@ -400,11 +415,7 @@
-
-
-
-
@@ -427,10 +438,6 @@
-
- true
-
-
@@ -451,8 +458,6 @@
-
-
@@ -466,6 +471,22 @@
+
+
+
+
+
+
+
+
+
+ true
+
+
+
+
+
+
@@ -510,6 +531,7 @@
+
diff --git a/src/sdl/Srb2SDL-vc10.vcxproj.filters b/src/sdl/Srb2SDL-vc10.vcxproj.filters
index eb37ce9da..96501b216 100644
--- a/src/sdl/Srb2SDL-vc10.vcxproj.filters
+++ b/src/sdl/Srb2SDL-vc10.vcxproj.filters
@@ -156,24 +156,12 @@
D_Doom
-
- D_Doom
-
D_Doom
D_Doom
-
- D_Doom
-
-
- D_Doom
-
-
- D_Doom
-
D_Doom
@@ -279,9 +267,6 @@
I_Interface
-
- I_Interface
-
I_Interface
@@ -306,12 +291,6 @@
I_Interface
-
- I_Interface
-
-
- I_Interface
-
LUA
@@ -372,6 +351,54 @@
M_Misc
+
+ D_Doom
+
+
+ D_Doom
+
+
+ D_Doom
+
+
+ D_Doom
+
+
+ D_Doom
+
+
+ D_Doom
+
+
+ D_Doom
+
+
+ I_Interface
+
+
+ I_Interface
+
+
+ I_Interface
+
+
+ I_Interface
+
+
+ I_Interface
+
+
+ D_Doom
+
+
+ D_Doom
+
+
+ D_Doom
+
+
+ D_Doom
+
O_Other
@@ -465,6 +492,9 @@
R_Rend
+
+ M_Misc
+
S_Sounds
@@ -639,21 +669,9 @@
D_Doom
-
- D_Doom
-
D_Doom
-
- D_Doom
-
-
- D_Doom
-
-
- D_Doom
-
D_Doom
@@ -732,18 +750,9 @@
I_Interface
-
- I_Interface
-
I_Interface
-
- I_Interface
-
-
- I_Interface
-
LUA
@@ -831,6 +840,48 @@
M_Misc
+
+ D_Doom
+
+
+ D_Doom
+
+
+ D_Doom
+
+
+ D_Doom
+
+
+ D_Doom
+
+
+ D_Doom
+
+
+ D_Doom
+
+
+ I_Interface
+
+
+ I_Interface
+
+
+ I_Interface
+
+
+ I_Interface
+
+
+ D_Doom
+
+
+ D_Doom
+
+
+ D_Doom
+
M_Misc
@@ -954,6 +1005,9 @@
R_Rend
+
+ M_Misc
+
S_Sounds