diff --git a/src/channel.c b/src/channel.c
index e08081d..8f0577f 100644
--- a/src/channel.c
+++ b/src/channel.c
@@ -4290,7 +4290,7 @@
     int		r;
     ch_part_T	part = PART_SOCK;
 #ifdef ELAPSED_FUNC
-    ELAPSED_TYPE  start_tv;
+    elapsed_T	start_tv;
 
     ELAPSED_INIT(start_tv);
 #endif
diff --git a/src/gui.c b/src/gui.c
index cf1cee6..8677787 100644
--- a/src/gui.c
+++ b/src/gui.c
@@ -2951,9 +2951,9 @@
     int
 gui_wait_for_chars(long wtime, int tb_change_cnt)
 {
-    int	    retval;
+    int		retval;
 #if defined(ELAPSED_FUNC)
-    ELAPSED_TYPE start_tv;
+    elapsed_T	start_tv;
 #endif
 
 #ifdef FEAT_MENU
@@ -3002,7 +3002,7 @@
     if (gui_wait_for_chars_or_timer(p_ut) == OK)
 	retval = OK;
     else if (trigger_cursorhold()
-#ifdef ELAPSED_FUNC
+#if defined(ELAPSED_FUNC)
 	    && ELAPSED_FUNC(start_tv) >= p_ut
 #endif
 	    && typebuf.tb_change_cnt == tb_change_cnt)
diff --git a/src/misc1.c b/src/misc1.c
index 0a6dc87..a4b5628 100644
--- a/src/misc1.c
+++ b/src/misc1.c
@@ -3891,7 +3891,7 @@
 	{
 #ifdef ELAPSED_FUNC
 	    static int		did_init = FALSE;
-	    static ELAPSED_TYPE	start_tv;
+	    static elapsed_T	start_tv;
 
 	    /* Only beep once per half a second, otherwise a sequence of beeps
 	     * would freeze Vim. */
diff --git a/src/os_unix.c b/src/os_unix.c
index 04823a1..b8a92d9 100644
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -374,7 +374,7 @@
     long	wait_time;
     long	elapsed_time = 0;
 #ifdef ELAPSED_FUNC
-    ELAPSED_TYPE start_tv;
+    elapsed_T	start_tv;
 
     ELAPSED_INIT(start_tv);
 #endif
@@ -480,7 +480,7 @@
 	}
 
 	/* no character available */
-#if !(defined(HAVE_GETTIMEOFDAY) && defined(HAVE_SYS_TIME_H))
+#ifndef ELAPSED_FUNC
 	/* estimate the elapsed time */
 	elapsed_time += wait_time;
 #endif
@@ -1907,11 +1907,11 @@
 #ifdef SET_SIG_ALARM
 	RETSIGTYPE (*sig_save)();
 #endif
-#if defined(HAVE_GETTIMEOFDAY) && defined(HAVE_SYS_TIME_H)
-	struct timeval  start_tv;
+#ifdef ELAPSED_FUNC
+	elapsed_T start_tv;
 
 	if (p_verbose > 0)
-	    gettimeofday(&start_tv, NULL);
+	    ELAPSED_INIT(start_tv);
 #endif
 
 #ifdef SET_SIG_ALARM
@@ -4831,8 +4831,8 @@
 		int	    fromshell_fd;
 		garray_T    ga;
 		int	    noread_cnt;
-# if defined(HAVE_GETTIMEOFDAY) && defined(HAVE_SYS_TIME_H)
-		struct timeval  start_tv;
+# ifdef ELAPSED_FUNC
+		elapsed_T   start_tv;
 # endif
 
 # ifdef FEAT_GUI
@@ -6073,8 +6073,8 @@
 # ifdef ELAPSED_FUNC
     /* Remember at what time we started, so that we know how much longer we
      * should wait after being interrupted. */
-    long	    start_msec = msec;
-    ELAPSED_TYPE  start_tv;
+    long	start_msec = msec;
+    elapsed_T	start_tv;
 
     if (msec > 0)
 	ELAPSED_INIT(start_tv);
@@ -7494,7 +7494,7 @@
 	int (*oldIOhandler)();
 #endif
 # ifdef ELAPSED_FUNC
-	ELAPSED_TYPE  start_tv;
+	elapsed_T start_tv;
 
 	if (p_verbose > 0)
 	    ELAPSED_INIT(start_tv);
diff --git a/src/version.c b/src/version.c
index b98c7e6..217d13d 100644
--- a/src/version.c
+++ b/src/version.c
@@ -792,6 +792,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    770,
+/**/
     769,
 /**/
     768,
diff --git a/src/vim.h b/src/vim.h
index b11f1cc..9ae3b30 100644
--- a/src/vim.h
+++ b/src/vim.h
@@ -2625,17 +2625,15 @@
 # define ELAPSED_TIMEVAL
 # define ELAPSED_INIT(v) gettimeofday(&v, NULL)
 # define ELAPSED_FUNC(v) elapsed(&v)
-# define ELAPSED_TYPE struct timeval
-    long elapsed(struct timeval *start_tv);
-#else
-# if defined(WIN32)
-#  define ELAPSED_TICKCOUNT
-#  define ELAPSED_INIT(v) v = GetTickCount()
-#  define ELAPSED_FUNC(v) elapsed(v)
-#  define ELAPSED_TYPE DWORD
-#   ifndef PROTO
-     long elapsed(DWORD start_tick);
-#   endif
+typedef struct timeval elapsed_T;
+long elapsed(struct timeval *start_tv);
+#elif defined(WIN32)
+# define ELAPSED_TICKCOUNT
+# define ELAPSED_INIT(v) v = GetTickCount()
+# define ELAPSED_FUNC(v) elapsed(v)
+typedef DWORD elapsed_T;
+# ifndef PROTO
+long elapsed(DWORD start_tick);
 # endif
 #endif
 
