Some VS 6.0 compatibility fixes from Hirokazu Yamamoto which are also useful for later versions of MSVC. VS6 claims that fortran is a reserved word
diff --git a/PC/msvcrtmodule.c b/PC/msvcrtmodule.c
index a137ed0..eeee99f 100755
--- a/PC/msvcrtmodule.c
+++ b/PC/msvcrtmodule.c
@@ -145,6 +145,7 @@
 	return PyString_FromStringAndSize(s, 1);
 }
 
+#if _MSC_VER >= 1300
 static PyObject *
 msvcrt_getwch(PyObject *self, PyObject *args)
 {
@@ -160,6 +161,7 @@
 	u[0] = ch;
 	return PyUnicode_FromUnicode(u, 1);
 }
+#endif
 
 static PyObject *
 msvcrt_getche(PyObject *self, PyObject *args)
@@ -177,6 +179,7 @@
 	return PyString_FromStringAndSize(s, 1);
 }
 
+#if _MSC_VER >= 1300
 static PyObject *
 msvcrt_getwche(PyObject *self, PyObject *args)
 {
@@ -192,6 +195,7 @@
 	s[0] = ch;
 	return PyUnicode_FromUnicode(s, 1);
 }
+#endif
 
 static PyObject *
 msvcrt_putch(PyObject *self, PyObject *args)
@@ -207,6 +211,7 @@
 }
 
 
+#if _MSC_VER >= 1300
 static PyObject *
 msvcrt_putwch(PyObject *self, PyObject *args)
 {
@@ -225,6 +230,7 @@
 	Py_RETURN_NONE;
 
 }
+#endif
 
 static PyObject *
 msvcrt_ungetch(PyObject *self, PyObject *args)
@@ -240,6 +246,7 @@
 	return Py_None;
 }
 
+#if _MSC_VER >= 1300
 static PyObject *
 msvcrt_ungetwch(PyObject *self, PyObject *args)
 {
@@ -253,6 +260,7 @@
 	Py_INCREF(Py_None);
 	return Py_None;
 }
+#endif
 
 static void
 insertint(PyObject *d, char *name, int value)
@@ -341,10 +349,12 @@
 	{"CrtSetReportMode",	msvcrt_setreportmode, METH_VARARGS},
 	{"set_error_mode",	msvcrt_seterrormode, METH_VARARGS},
 #endif
+#if _MSC_VER >= 1300
 	{"getwch",		msvcrt_getwch, METH_VARARGS},
 	{"getwche",		msvcrt_getwche, METH_VARARGS},
 	{"putwch",		msvcrt_putwch, METH_VARARGS},
 	{"ungetwch",		msvcrt_ungetwch, METH_VARARGS},
+#endif
 	{NULL,			NULL}
 };