}
}
-/*
- * Determine the time that has passed since the search was started. If the
- * elapsed time exceeds the target(ResponseTime + ExtraTime) then set timeout
- * to true which will terminate the search.
- * iop = COMPUTE_MODE calculate et, bump ETnodes
- * iop = COMPUTE_AND_INIT_MODE calculate et, set timeout if time exceeded,
- * set reference time
- */
-void
-Curses_ElapsedTime(ElapsedTime_mode iop)
-{
- long current_time;
-#ifdef HAVE_GETTIMEOFDAY
- struct timeval tv;
-#endif
-
- PollForInput();
-
-#ifdef HAVE_GETTIMEOFDAY
- gettimeofday(&tv, NULL);
- current_time = tv.tv_sec*100 + (tv.tv_usec/10000);
-#else
- et = ((current_time = time((long *) 0)) - time0) * 100;
-#endif
-
-#ifdef INTERRUPT_TEST
- if (iop == INIT_INTERRUPT_MODE)
- {
- itime0 = current_time;
- }
- else if (iop == COMPUTE_INTERRUPT_MODE)
- {
- it = current_time - itime0;
- }
- else
-#endif
- {
-#ifdef HAVE_GETTIMEOFDAY
- et = current_time - time0;
-#endif
- ETnodes = NodeCnt + znodes;
-
- if (et < 0)
- {
-#ifdef INTERRUPT_TEST
- printf("elapsed time %ld not positive\n", et);
-#endif
- et = 0;
- }
-
- if (iop == COMPUTE_AND_INIT_MODE)
- {
- if ((et > (ResponseTime + ExtraTime)) && (Sdepth > MINDEPTH))
- flag.timeout = true;
-
- time0 = current_time;
- }
-
-#ifdef QUIETBACKGROUND
- if (!background)
-#endif
- UpdateClocks();
- }
-}
void
Curses_SetupBoard(void)
void Curses_DoDebug(void);
void Curses_DoTable(short table[NO_SQUARES]);
void Curses_EditBoard(void);
-void Curses_ElapsedTime(ElapsedTime_mode iop);
void Curses_ExitShogi(void);
void Curses_GiveHint(void);
void Curses_Initialize(void);
DISPLAY_VOIDFUNC(ClearScreen)
DISPLAY_VOIDFUNC(DoDebug)
DISPLAY_FUNC(DoTable, (short table[NO_SQUARES]), (table))
-DISPLAY_FUNC(ElapsedTime, (ElapsedTime_mode iop), (iop))
DISPLAY_VOIDFUNC(EditBoard)
DISPLAY_VOIDFUNC(ExitShogi)
DISPLAY_VOIDFUNC(GiveHint)
extern void ClearScreen(void);
extern void DoDebug(void);
extern void DoTable(short table[NO_SQUARES]);
-extern void ElapsedTime(ElapsedTime_mode iop);
extern void EditBoard(void);
extern void ExitShogi(void);
extern void GiveHint(void);
extern int pick(short p1, short p2);
extern short repetition(void);
extern void TimeCalc(void);
+extern void ElapsedTime(ElapsedTime_mode iop);
extern short
DropPossible(short piece, short side, short sq); /* genmoves.c */
flag.bothsides = false;
}
}
-
-
-/*
- * Determine the time that has passed since the search was started. If the
- * elapsed time exceeds the target(ResponseTime + ExtraTime) then set timeout
- * to true which will terminate the search.
- * iop = COMPUTE_MODE calculate et, bump ETnodes
- * iop = COMPUTE_AND_INIT_MODE calculate et, set timeout if time exceeded,
- * set reference time
- */
-void
-Raw_ElapsedTime(ElapsedTime_mode iop)
-{
- long current_time;
-#ifdef HAVE_GETTIMEOFDAY
- struct timeval tv;
-#endif
-
- PollForInput();
-
-#ifdef HAVE_GETTIMEOFDAY
- gettimeofday(&tv, NULL);
- current_time = tv.tv_sec*100 + (tv.tv_usec/10000);
-#else
- et = ((current_time = time((long *) 0)) - time0) * 100;
-#endif
-
-#ifdef INTERRUPT_TEST
- if (iop == INIT_INTERRUPT_MODE)
- {
- itime0 = current_time;
- }
- else if (iop == COMPUTE_INTERRUPT_MODE)
- {
- it = current_time - itime0;
- }
- else
-#endif
- {
-#ifdef HAVE_GETTIMEOFDAY
- et = current_time - time0;
-#endif
- ETnodes = NodeCnt + znodes;
-
- if (et < 0)
- {
-#ifdef INTERRUPT_TEST
- printf("elapsed time %ld not positive\n", et);
-#endif
- et = 0;
- }
-
- if (iop == COMPUTE_AND_INIT_MODE)
- {
- if ((et > (ResponseTime + ExtraTime)) && (Sdepth > MINDEPTH))
- flag.timeout = true;
-
- time0 = current_time;
- }
-
-#ifdef QUIETBACKGROUND
- if (!background)
-#endif
- UpdateClocks();
- }
-}
void Raw_DoDebug(void);
void Raw_DoTable(short table[NO_SQUARES]);
void Raw_EditBoard(void);
-void Raw_ElapsedTime(ElapsedTime_mode iop);
void Raw_ExitShogi(void);
void Raw_GiveHint(void);
void Raw_Initialize(void);
if (flag.timeout)
ShowMessage("timeout");
}
+
+
+/*
+ * Determine the time that has passed since the search was started. If the
+ * elapsed time exceeds the target(ResponseTime + ExtraTime) then set timeout
+ * to true which will terminate the search.
+ * iop = COMPUTE_MODE calculate et, bump ETnodes
+ * iop = COMPUTE_AND_INIT_MODE calculate et, set timeout if time exceeded,
+ * set reference time
+ */
+void
+ElapsedTime(ElapsedTime_mode iop)
+{
+ long current_time;
+#ifdef HAVE_GETTIMEOFDAY
+ struct timeval tv;
+#endif
+
+ PollForInput();
+
+#ifdef HAVE_GETTIMEOFDAY
+ gettimeofday(&tv, NULL);
+ current_time = tv.tv_sec*100 + (tv.tv_usec/10000);
+#else
+ et = ((current_time = time((long *) 0)) - time0) * 100;
+#endif
+
+#ifdef INTERRUPT_TEST
+ if (iop == INIT_INTERRUPT_MODE)
+ {
+ itime0 = current_time;
+ }
+ else if (iop == COMPUTE_INTERRUPT_MODE)
+ {
+ it = current_time - itime0;
+ }
+ else
+#endif
+ {
+#ifdef HAVE_GETTIMEOFDAY
+ et = current_time - time0;
+#endif
+ ETnodes = NodeCnt + znodes;
+
+ if (et < 0)
+ {
+#ifdef INTERRUPT_TEST
+ printf("elapsed time %ld not positive\n", et);
+#endif
+ et = 0;
+ }
+
+ if (iop == COMPUTE_AND_INIT_MODE)
+ {
+ if ((et > (ResponseTime + ExtraTime)) && (Sdepth > MINDEPTH))
+ flag.timeout = true;
+
+ time0 = current_time;
+ }
+
+#ifdef QUIETBACKGROUND
+ if (!background)
+#endif
+ UpdateClocks();
+ }
+}