diff --git a/aegisub/src/config/config_windows.h b/aegisub/src/config/config_windows.h
index ab53f7861a242b4c6e386253322a27d232c4f217..acf79f13693e2f530e9d93772a54a3ebcc6bced3 100644
--- a/aegisub/src/config/config_windows.h
+++ b/aegisub/src/config/config_windows.h
@@ -1,20 +1,33 @@
-// Build configuration for Aegisub 2.1.8 release for Windows
+/*
+This is the configuration used to build the official Windows release binaries
+of Aegisub 2.1.9, provided for completeness. Also see config_windows0.h for
+more detailed documentation.
 
-// If making a custom 2.1.8 build please ensure you change the BUILD_CREDIT
-// define and check that the FT2_LIB_* defines are correct.
+Only Microsoft Visual C++ 2008 SP1 is supported for building, any other version
+is at your own risk.
+Non-Microsoft toolchains will likely not work and should not be attempted.
 
+Remember to provide appropriate link libraries for all external dependencies.
+
+Ensure the #error directive is removed before attempting to use these settings.
+*/
 
 #pragma once
 
+#error Please make sure to edit configure_windows.h to your needs before attempting to build Aegisub.
+
 
+// BUILD_CREDIT should be set to the name you want to identify your builds by
 #ifndef BUILD_CREDIT
-#define BUILD_CREDIT "nielsm"
+//#define BUILD_CREDIT "anonymous"
 #endif
 
+// Only little endian is supported on Windows
 #define HAVE_LITTLE_ENDIAN
 #undef HAVE_BIG_ENDIAN
 
 
+// Perl and Ruby automation engines are deprecated
 #define WITH_AUTOMATION
 #define WITH_AUTO4_LUA
 #define WITH_AUTO3
@@ -23,6 +36,7 @@
 //#define WITH_RUBY
 
 
+// While PortAudio and OpenAL do work on Windows, they are not recommended.
 #define WITH_DIRECTSOUND
 //#define WITH_PORTAUDIO
 //#define WITH_ALSA
@@ -30,31 +44,58 @@
 //#define WITH_PULSEAUDIO
 
 
+// Avisynth is not officially supported for 64 bit builds, though it may work
 #if !defined(_M_X64) && !defined(_M_IA64)
 # define WITH_AVISYNTH
-# define WITH_FFMPEGSOURCE
 #endif
+// FFmpegSource is strongly recommended
+#define WITH_FFMPEGSOURCE
+// DirectShow video provider is deprecated and probably doesn't compile
 //#define WITH_DIRECTSHOW
-//#define WITH_FFMPEG
-//#define WITH_STATIC_FFMPEG
 
 
+// Freetype2 is required, FontConfig is not supported on Windows.
 #define WITH_FREETYPE2
-#define FT2_LIB_RELEASE "freetype237.lib"
-#define FT2_LIB_DEBUG "freetype237_D.lib"
 //#define WITH_FONTCONFIG
 
+// Just use it.
 #define WITH_UNIVCHARDET
 
+// Remember to link in a CSRI library, either the included dynamic discovery
+// helper, or straight to a CSRI VSFilter build.
 #define WITH_CSRI
 //#define WITH_LIBASS
 
+// Recommended.
 #define WITH_HUNSPELL
 
+// WITH_STARTUPLOG causes lots of annoying messages to be shown during startup
 //#define WITH_STARTUPLOG
+
+// This is what causes the program to identify itself as 2.1.9 and not as some
+// development build
 #define FINAL_RELEASE
 
-// Define this if building an EXE for portable versions only. It makes the application
-// manifest link the latest runtimes instead of the RTM version, but it might not work
-// with plain vcredist_x86.exe installations.
-//#define _BIND_TO_CURRENT_VCLIBS_VERSION 1
+// These tags define what kinds of updates will be offered
+#if defined(_M_IX86)
+# define UPDATE_CHECKER_ACCEPT_TAGS "windows"
+#elif defined(_M_X64)
+# define UPDATE_CHECKER_ACCEPT_TAGS "win64"
+#endif
+
+// This block is required if you want to link to VSFilter directly
+/*
+#if defined(_M_IX86)
+# if defined(_DEBUG)
+#  pragma comment(linker, "\"/manifestdependency:type='win32' name='Microsoft.VC90.DebugMFC' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' language='*'\"")
+# else
+#  pragma comment(linker, "\"/manifestdependency:type='win32' name='Microsoft.VC90.MFC' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' language='*'\"")
+# endif
+#elif defined(_M_X64)
+# if defined(_DEBUG)
+#  pragma comment(linker, "\"/manifestdependency:type='win32' name='Microsoft.VC90.DebugMFC' version='9.0.21022.8' processorArchitecture='amd64' publicKeyToken='1fc8b3b9a1e18e3b' language='*'\"")
+# else
+#  pragma comment(linker, "\"/manifestdependency:type='win32' name='Microsoft.VC90.MFC' version='9.0.21022.8' processorArchitecture='amd64' publicKeyToken='1fc8b3b9a1e18e3b' language='*'\"")
+# endif
+#endif
+*/
diff --git a/aegisub/src/config/config_windows0.h b/aegisub/src/config/config_windows0.h
index 7e22aacc84daf95b1259b391053763b0df0635a4..7dd170785f2bed8972ac9034df71b2b1736f8770 100644
--- a/aegisub/src/config/config_windows0.h
+++ b/aegisub/src/config/config_windows0.h
@@ -206,22 +206,6 @@
 //#define WITH_LIBASS
 
 
-// Enable FFmpeg video and audio decoders
-// Deprecated by the FFmpegSource library, might not compile
-// Requires: libavcodec, libavformat, libswscale, libavutil
-// If you compiled static libraries (yes, by default), uncomment the second line as well,
-// and remember to add the correct .a files to the linker's additional dependencies.
-//#define WITH_FFMPEG
-//#define WITH_STATIC_FFMPEG
-#ifdef WITH_FFMPEG
-# ifndef WITH_STATIC_FFMPEG
-#  pragma comment(lib, "avcodec-51.lib")
-#  pragma comment(lib, "avformat-51.lib")
-#  pragma comment(lib, "avutil-49.lib")
-# endif
-#endif
-
-
 // Enable Ruby support for Automation, unmaintained
 // Requires: Ruby 1.9
 //#define WITH_RUBY