diff --git a/PC/config.c b/PC/config.c
index 26772af..2efd6c2 100644
--- a/PC/config.c
+++ b/PC/config.c
@@ -67,6 +67,8 @@
 extern void initwinsound();
 extern void init_locale();
 #endif
+extern void init_codecs();
+extern void initunicodedata();
 
 /* -- ADDMODULE MARKER 1 -- */
 
@@ -113,6 +115,9 @@
 	{"_locale", init_locale},
 #endif
 
+	{"_codecs", init_codecs},
+	{"unicodedata", initunicodedata},
+
 /* -- ADDMODULE MARKER 2 -- */
 
         /* This module "lives in" with marshal.c */
diff --git a/PCbuild/python15.dsp b/PCbuild/python15.dsp
index 3cb4480..b037ddc 100644
--- a/PCbuild/python15.dsp
+++ b/PCbuild/python15.dsp
@@ -1,5 +1,5 @@
 # Microsoft Developer Studio Project File - Name="python15" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
+# Microsoft Developer Studio Generated Build File, Format Version 5.00
 # ** DO NOT EDIT **
 
 # TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
@@ -18,14 +18,16 @@
 !MESSAGE 
 !MESSAGE Possible choices for configuration are:
 !MESSAGE 
-!MESSAGE "python15 - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE "python15 - Win32 Release" (based on\
+ "Win32 (x86) Dynamic-Link Library")
 !MESSAGE "python15 - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "python15 - Win32 Alpha Debug" (based on "Win32 (ALPHA) Dynamic-Link Library")
-!MESSAGE "python15 - Win32 Alpha Release" (based on "Win32 (ALPHA) Dynamic-Link Library")
+!MESSAGE "python15 - Win32 Alpha Debug" (based on\
+ "Win32 (ALPHA) Dynamic-Link Library")
+!MESSAGE "python15 - Win32 Alpha Release" (based on\
+ "Win32 (ALPHA) Dynamic-Link Library")
 !MESSAGE 
 
 # Begin Project
-# PROP AllowPerConfigDependencies 0
 # PROP Scc_ProjName "python15"
 # PROP Scc_LocalPath ".."
 
@@ -45,10 +47,10 @@
 F90=df.exe
 CPP=cl.exe
 # ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c
-# ADD CPP /nologo /MD /W3 /GX /Zi /O2 /I "..\Include" /I "..\PC" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "USE_DL_EXPORT" /YX /FD /c
+# ADD CPP /nologo /MD /W3 /GX /Zi /O2 /I "..\Include" /I "..\PC" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "USE_DL_EXPORT" /YX /FD /Zm200 /c
 MTL=midl.exe
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32
+# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o /win32 "NUL"
+# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o /win32 "NUL"
 RSC=rc.exe
 # ADD BASE RSC /l 0x409 /d "NDEBUG"
 # ADD RSC /l 0x409 /i "..\Include" /d "NDEBUG"
@@ -76,10 +78,10 @@
 F90=df.exe
 CPP=cl.exe
 # ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c
-# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I "..\Include" /I "..\PC" /D "_DEBUG" /D "USE_DL_EXPORT" /D "WIN32" /D "_WINDOWS" /YX /FD /c
+# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I "..\Include" /I "..\PC" /D "_DEBUG" /D "USE_DL_EXPORT" /D "WIN32" /D "_WINDOWS" /YX /FD /Zm200 /c
 MTL=midl.exe
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32
+# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o /win32 "NUL"
+# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o /win32 "NUL"
 RSC=rc.exe
 # ADD BASE RSC /l 0x409 /d "_DEBUG"
 # ADD RSC /l 0x409 /i "..\Include" /d "_DEBUG"
@@ -106,11 +108,11 @@
 # PROP Ignore_Export_Lib 0
 # PROP Target_Dir ""
 MTL=midl.exe
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32
+# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o /win32 "NUL"
+# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o /win32 "NUL"
 CPP=cl.exe
-# ADD BASE CPP /nologo /MTd /Gt0 /W3 /GX /Zi /Od /I "..\Include" /I "..\PC" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "USE_DL_EXPORT" /YX /FD /c
-# ADD CPP /nologo /MDd /Gt0 /W3 /GX /Zi /Od /I "..\Include" /I "..\PC" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "USE_DL_EXPORT" /YX /FD /c
+# ADD BASE CPP /nologo /Gt0 /W3 /GX /Zi /Od /I "..\Include" /I "..\PC" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "USE_DL_EXPORT" /YX /FD /MTd /c
+# ADD CPP /nologo /Gt0 /W3 /GX /Zi /Od /I "..\Include" /I "..\PC" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "USE_DL_EXPORT" /YX /FD /MDd /c
 RSC=rc.exe
 # ADD BASE RSC /l 0x409 /i "..\Include" /d "_DEBUG"
 # ADD RSC /l 0x409 /i "..\Include" /d "_DEBUG"
@@ -138,8 +140,8 @@
 # PROP Ignore_Export_Lib 0
 # PROP Target_Dir ""
 MTL=midl.exe
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32
+# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o /win32 "NUL"
+# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o /win32 "NUL"
 CPP=cl.exe
 # ADD BASE CPP /nologo /MT /Gt0 /W3 /GX /Zi /O2 /I "..\Include" /I "..\PC" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "USE_DL_EXPORT" /YX /FD /c
 # ADD CPP /nologo /MD /Gt0 /W3 /GX /O2 /I "..\Include" /I "..\PC" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "USE_DL_EXPORT" /YX /FD /c
@@ -165,6 +167,21 @@
 # Name "python15 - Win32 Alpha Release"
 # Begin Source File
 
+SOURCE=..\Modules\_codecsmodule.c
+
+!IF  "$(CFG)" == "python15 - Win32 Release"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Debug"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Alpha Debug"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Alpha Release"
+
+!ENDIF 
+
+# End Source File
+# Begin Source File
+
 SOURCE=..\Modules\_localemodule.c
 
 !IF  "$(CFG)" == "python15 - Win32 Release"
@@ -360,6 +377,21 @@
 # End Source File
 # Begin Source File
 
+SOURCE=..\Python\codecs.c
+
+!IF  "$(CFG)" == "python15 - Win32 Release"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Debug"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Alpha Debug"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Alpha Release"
+
+!ENDIF 
+
+# End Source File
+# Begin Source File
+
 SOURCE=..\Python\compile.c
 
 !IF  "$(CFG)" == "python15 - Win32 Release"
@@ -1256,6 +1288,17 @@
 # Begin Source File
 
 SOURCE=..\PC\python_nt.rc
+
+!IF  "$(CFG)" == "python15 - Win32 Release"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Debug"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Alpha Debug"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Alpha Release"
+
+!ENDIF 
+
 # End Source File
 # Begin Source File
 
@@ -1619,6 +1662,66 @@
 # End Source File
 # Begin Source File
 
+SOURCE=..\Objects\unicodectype.c
+
+!IF  "$(CFG)" == "python15 - Win32 Release"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Debug"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Alpha Debug"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Alpha Release"
+
+!ENDIF 
+
+# End Source File
+# Begin Source File
+
+SOURCE=..\Modules\unicodedata.c
+
+!IF  "$(CFG)" == "python15 - Win32 Release"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Debug"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Alpha Debug"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Alpha Release"
+
+!ENDIF 
+
+# End Source File
+# Begin Source File
+
+SOURCE=..\Modules\unicodedatabase.c
+
+!IF  "$(CFG)" == "python15 - Win32 Release"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Debug"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Alpha Debug"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Alpha Release"
+
+!ENDIF 
+
+# End Source File
+# Begin Source File
+
+SOURCE=..\Objects\unicodeobject.c
+
+!IF  "$(CFG)" == "python15 - Win32 Release"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Debug"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Alpha Debug"
+
+!ELSEIF  "$(CFG)" == "python15 - Win32 Alpha Release"
+
+!ENDIF 
+
+# End Source File
+# Begin Source File
+
 SOURCE=..\PC\winsound.c
 
 !IF  "$(CFG)" == "python15 - Win32 Release"
