Index: gnushogi/init.c
--- gnushogi/init.c.orig
+++ gnushogi/init.c
@@ -63,7 +63,7 @@ short nolist          = 1;  /* Don't list the game aft
  * or DISPLAY_X; the default is DISPLAY_X to make life easier for xshogi.
  */
 
-display_t display_type = DISPLAY_X;
+display_t display_type = DISPLAY_CURSES;
 
 /* .... MOVE GENERATION VARIABLES AND INITIALIZATIONS .... */
 
@@ -100,7 +100,7 @@ distance(short a, short b)
 short
 distance(short a, short b)
 {
-    return (use_distdata
+    return (use_distdata && a < NO_SQUARES && b < NO_SQUARES
             ? (short)(*distdata)[(int)a][(int)b]
             : (short)computed_distance(a, b));
 }
@@ -642,7 +642,7 @@ NewGame(void)
 int
 InitMain(void)
 {
-    gsrand(starttime = ((unsigned int)time((long *)0)));    /* init urand */
+    gsrand(starttime = ((unsigned int)time(NULL)));    /* init urand */
 
 #if ttblsz
     ttblsize = ttblsz;
