diff --git a/src/getchar.c b/src/getchar.c
index 8fb1dd9..dea8c49 100644
--- a/src/getchar.c
+++ b/src/getchar.c
@@ -1545,35 +1545,67 @@
 	    (void)vgetorpeek(TRUE);
 #endif
 
-	if (c >= FIRST_KEYPAD && c <= LAST_KEYPAD)
+	/* a keypad or special function key was not mapped, use it like
+	 * its ASCII equivalent */
+	switch (c)
 	{
-	    /* a keypad key was not mapped, use it like its ASCII equivalent */
-	    switch (c)
-	    {
-		case K_KPLUS:		c = '+'; break;
-		case K_KMINUS:		c = '-'; break;
-		case K_KDIVIDE:		c = '/'; break;
-		case K_KMULTIPLY:	c = '*'; break;
-		case K_KENTER:		c = CAR; break;
-		case K_KPOINT:
+	    case K_KPLUS:		c = '+'; break;
+	    case K_KMINUS:		c = '-'; break;
+	    case K_KDIVIDE:		c = '/'; break;
+	    case K_KMULTIPLY:	c = '*'; break;
+	    case K_KENTER:		c = CAR; break;
+	    case K_KPOINT:
 #ifdef WIN32
-					/* Can be either '.' or a ',', *
-					 * depending on the type of keypad. */
-					c = MapVirtualKey(VK_DECIMAL, 2); break;
+				    /* Can be either '.' or a ',', *
+				     * depending on the type of keypad. */
+				    c = MapVirtualKey(VK_DECIMAL, 2); break;
 #else
-					c = '.'; break;
+				    c = '.'; break;
 #endif
-		case K_K0:		c = '0'; break;
-		case K_K1:		c = '1'; break;
-		case K_K2:		c = '2'; break;
-		case K_K3:		c = '3'; break;
-		case K_K4:		c = '4'; break;
-		case K_K5:		c = '5'; break;
-		case K_K6:		c = '6'; break;
-		case K_K7:		c = '7'; break;
-		case K_K8:		c = '8'; break;
-		case K_K9:		c = '9'; break;
-	    }
+	    case K_K0:		c = '0'; break;
+	    case K_K1:		c = '1'; break;
+	    case K_K2:		c = '2'; break;
+	    case K_K3:		c = '3'; break;
+	    case K_K4:		c = '4'; break;
+	    case K_K5:		c = '5'; break;
+	    case K_K6:		c = '6'; break;
+	    case K_K7:		c = '7'; break;
+	    case K_K8:		c = '8'; break;
+	    case K_K9:		c = '9'; break;
+
+	    case K_XHOME:
+	    case K_ZHOME:	if (mod_mask == MOD_MASK_SHIFT)
+				{
+				    c = K_S_HOME;
+				    mod_mask = 0;
+				}
+				else if (mod_mask == MOD_MASK_CTRL)
+				{
+				    c = K_C_HOME;
+				    mod_mask = 0;
+				}
+				else
+				    c = K_HOME;
+				break;
+	    case K_XEND:
+	    case K_ZEND:	if (mod_mask == MOD_MASK_SHIFT)
+				{
+				    c = K_S_END;
+				    mod_mask = 0;
+				}
+				else if (mod_mask == MOD_MASK_CTRL)
+				{
+				    c = K_C_END;
+				    mod_mask = 0;
+				}
+				else
+				    c = K_END;
+				break;
+
+	    case K_XUP:		c = K_UP; break;
+	    case K_XDOWN:	c = K_DOWN; break;
+	    case K_XLEFT:	c = K_LEFT; break;
+	    case K_XRIGHT:	c = K_RIGHT; break;
 	}
 
 #ifdef FEAT_MBYTE
diff --git a/src/main.aap b/src/main.aap
index ddaa5c8..564ca07 100644
--- a/src/main.aap
+++ b/src/main.aap
@@ -270,6 +270,7 @@
 	regexp.c
 	screen.c
 	search.c
+	spell.c
 	syntax.c
 	tag.c
 	term.c
diff --git a/src/message.c b/src/message.c
index a813b6b..8b4a2b3 100644
--- a/src/message.c
+++ b/src/message.c
@@ -1953,7 +1953,6 @@
 		    case BS:
 		    case 'k':
 		    case K_UP:
-		    case K_XUP:
 			if (!more_back_used)
 			{
 			    msg_moremsg(TRUE);
@@ -1966,7 +1965,6 @@
 		    case NL:
 		    case 'j':
 		    case K_DOWN:
-		    case K_XDOWN:
 			lines_left = 1;
 			break;
 		    case ':':		/* start new command line */
diff --git a/src/normal.c b/src/normal.c
index 8780b95..fb6f8f9 100644
--- a/src/normal.c
+++ b/src/normal.c
@@ -384,17 +384,13 @@
     {K_KINS,	nv_edit,	0,			0},
     {K_BS,	nv_ctrlh,	0,			0},
     {K_UP,	nv_up,		NV_SSS|NV_STS,		FALSE},
-    {K_XUP,	nv_up,		NV_SSS|NV_STS,		FALSE},
     {K_S_UP,	nv_page,	NV_SS,			BACKWARD},
     {K_DOWN,	nv_down,	NV_SSS|NV_STS,		FALSE},
-    {K_XDOWN,	nv_down,	NV_SSS|NV_STS,		FALSE},
     {K_S_DOWN,	nv_page,	NV_SS,			FORWARD},
     {K_LEFT,	nv_left,	NV_SSS|NV_STS|NV_RL,	0},
-    {K_XLEFT,	nv_left,	NV_SSS|NV_STS|NV_RL,	0},
     {K_S_LEFT,	nv_bck_word,	NV_SS|NV_RL,		0},
     {K_C_LEFT,	nv_bck_word,	NV_SSS|NV_RL|NV_STS,	1},
     {K_RIGHT,	nv_right,	NV_SSS|NV_STS|NV_RL,	0},
-    {K_XRIGHT,	nv_right,	NV_SSS|NV_STS|NV_RL,	0},
     {K_S_RIGHT,	nv_wordcmd,	NV_SS|NV_RL,		FALSE},
     {K_C_RIGHT,	nv_wordcmd,	NV_SSS|NV_RL|NV_STS,	TRUE},
     {K_PAGEUP,	nv_page,	NV_SSS|NV_STS,		BACKWARD},
@@ -403,12 +399,10 @@
     {K_KPAGEDOWN, nv_page,	NV_SSS|NV_STS,		FORWARD},
     {K_END,	nv_end,		NV_SSS|NV_STS,		FALSE},
     {K_KEND,	nv_end,		NV_SSS|NV_STS,		FALSE},
-    {K_XEND,	nv_end,		NV_SSS|NV_STS,		FALSE},
     {K_S_END,	nv_end,		NV_SS,			FALSE},
     {K_C_END,	nv_end,		NV_SSS|NV_STS,		TRUE},
     {K_HOME,	nv_home,	NV_SSS|NV_STS,		0},
     {K_KHOME,	nv_home,	NV_SSS|NV_STS,		0},
-    {K_XHOME,	nv_home,	NV_SSS|NV_STS,		0},
     {K_S_HOME,	nv_home,	NV_SS,			0},
     {K_C_HOME,	nv_goto,	NV_SSS|NV_STS,		FALSE},
     {K_DEL,	nv_abbrev,	0,			0},
@@ -842,12 +836,10 @@
 	{
 	    case 'l':	    ca.cmdchar = 'h'; break;
 	    case K_RIGHT:   ca.cmdchar = K_LEFT; break;
-	    case K_XRIGHT:  ca.cmdchar = K_XLEFT; break;
 	    case K_S_RIGHT: ca.cmdchar = K_S_LEFT; break;
 	    case K_C_RIGHT: ca.cmdchar = K_C_LEFT; break;
 	    case 'h':	    ca.cmdchar = 'l'; break;
 	    case K_LEFT:    ca.cmdchar = K_RIGHT; break;
-	    case K_XLEFT:   ca.cmdchar = K_XRIGHT; break;
 	    case K_S_LEFT:  ca.cmdchar = K_S_RIGHT; break;
 	    case K_C_LEFT:  ca.cmdchar = K_C_RIGHT; break;
 	    case '>':	    ca.cmdchar = '<'; break;
@@ -4333,9 +4325,7 @@
 	    else if (nchar == 'l'
 		    || nchar == 'h'
 		    || nchar == K_LEFT
-		    || nchar == K_XLEFT
-		    || nchar == K_RIGHT
-		    || nchar == K_XRIGHT)
+		    || nchar == K_RIGHT)
 	    {
 		cap->count1 = n ? n * cap->count1 : cap->count1;
 		goto dozet;
@@ -4442,7 +4432,6 @@
 		/* "zh" - scroll screen to the right */
     case 'h':
     case K_LEFT:
-    case K_XLEFT:
 		if (!curwin->w_p_wrap)
 		{
 		    if ((colnr_T)cap->count1 > curwin->w_leftcol)
@@ -4460,7 +4449,6 @@
 		/* "zl" - scroll screen to the left */
     case 'l':
     case K_RIGHT:
-    case K_XRIGHT:
 		if (!curwin->w_p_wrap)
 		{
 		    /* scroll the window left */
@@ -5353,7 +5341,7 @@
 			    && vim_strchr(p_ww, 's') != NULL)
 			|| (cap->cmdchar == 'l'
 			    && vim_strchr(p_ww, 'l') != NULL)
-			|| ((cap->cmdchar == K_RIGHT || cap->cmdchar == K_XRIGHT)
+			|| (cap->cmdchar == K_RIGHT
 			    && vim_strchr(p_ww, '>') != NULL))
 		    && curwin->w_cursor.lnum < curbuf->b_ml.ml_line_count)
 	    {
@@ -5453,7 +5441,7 @@
 			    && vim_strchr(p_ww, 'b') != NULL)
 			|| (cap->cmdchar == 'h'
 			    && vim_strchr(p_ww, 'h') != NULL)
-			|| ((cap->cmdchar == K_LEFT || cap->cmdchar == K_XLEFT)
+			|| (cap->cmdchar == K_LEFT
 			    && vim_strchr(p_ww, '<') != NULL))
 		    && curwin->w_cursor.lnum > 1)
 	    {
@@ -7261,7 +7249,6 @@
      */
     case 'j':
     case K_DOWN:
-    case K_XDOWN:
 	/* with 'nowrap' it works just like the normal "j" command; also when
 	 * in a closed fold */
 	if (!curwin->w_p_wrap
@@ -7281,7 +7268,6 @@
 
     case 'k':
     case K_UP:
-    case K_XUP:
 	/* with 'nowrap' it works just like the normal "k" command; also when
 	 * in a closed fold */
 	if (!curwin->w_p_wrap
@@ -7318,7 +7304,6 @@
     case 'm':
     case K_HOME:
     case K_KHOME:
-    case K_XHOME:
 	oap->motion_type = MCHAR;
 	oap->inclusive = FALSE;
 	if (curwin->w_p_wrap
@@ -7381,7 +7366,6 @@
     case '$':
     case K_END:
     case K_KEND:
-    case K_XEND:
 	{
 	    int col_off = curwin_col_off();
 
@@ -7827,6 +7811,8 @@
 	cap->count0 = 1;
 	nv_pipe(cap);
     }
+    ins_at_eol = FALSE;	    /* Don't move cursor past eol (only necessary in a
+			       one-character line). */
 }
 
 /*
diff --git a/src/spell.c b/src/spell.c
index c92eb65..f72325b 100644
--- a/src/spell.c
+++ b/src/spell.c
@@ -526,7 +526,7 @@
 {
     int		fd;
     size_t	len;
-    size_t	l;
+    int		l;
     char_u	*p = NULL, *np;
     sblock_T	*bl = NULL;
     int		bl_used = 0;
diff --git a/src/window.c b/src/window.c
index f339034..7cd2f02 100644
--- a/src/window.c
+++ b/src/window.c
@@ -263,7 +263,6 @@
 /* cursor to window below */
     case 'j':
     case K_DOWN:
-    case K_XDOWN:
     case Ctrl_J:
 		CHECK_CMDWIN
 #ifdef FEAT_VERTSPLIT
@@ -279,7 +278,6 @@
 /* cursor to window above */
     case 'k':
     case K_UP:
-    case K_XUP:
     case Ctrl_K:
 		CHECK_CMDWIN
 #ifdef FEAT_VERTSPLIT
@@ -296,7 +294,6 @@
 /* cursor to left window */
     case 'h':
     case K_LEFT:
-    case K_XLEFT:
     case Ctrl_H:
     case K_BS:
 		CHECK_CMDWIN
@@ -306,7 +303,6 @@
 /* cursor to right window */
     case 'l':
     case K_RIGHT:
-    case K_XRIGHT:
     case Ctrl_L:
 		CHECK_CMDWIN
 		win_goto_hor(FALSE, Prenum1);
