Small changes; see ChangeLog for details.
authorTim Mann <tim@tim-mann.org>
Tue, 25 Nov 2003 05:25:19 +0000 (05:25 +0000)
committerTim Mann <tim@tim-mann.org>
Tue, 25 Nov 2003 05:25:19 +0000 (05:25 +0000)
ChangeLog
ToDo
bitmaps/icon_black.bm
bitmaps/icon_white.bm
winboard/config.h
winboard/cygwin.mak
winboard/defaults.h
winboard/winboard.c
xboard.texi
zippy.c

index d9e577d..62140d0 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,22 @@
 ChangeLog for XBoard/WinBoard
 
+* 11/23/2003: Cleaned up some minor problems in cygwin.mak.  Thanks to
+Hans Werner Strube for the problem report.
+
+* 11/23/2003: Updated the default list of chess servers in
+winboard/defaults.h.  Deleted two that appear to be dead and added a
+new one that is active.
+
+* 11/19/2003: Swapped icon_white.bm and icon_black.bm in XBoard.
+Hopefully this will get them the right way around by default on more X
+window managers.  I wish I understood this better.
+
+* 11/18/2003: Implemented a simple 32-bit random number generator for
+WinBoard, replacing the Windows rand(), which ranges only up to
+0x7fff.  Formerly on Windows, only zippy.lines sayings that started in
+the first 32767 bytes of the file could ever be used.  This was issue
+#505 from the ToDo file.
+
 * 11/16/2003: The xboard man page and info files are now built from a
 common set of texinfo source files, and the xboard man page now covers
 cmail as well.  Formerly, ever since the texinfo file was first
@@ -34,8 +51,6 @@ load, as it gets linked to from the Web.
 * Modified xboard and winboard makefiles to be able to build the
 project in the new combined directory structure.
 
-* Added woodthunk.wav sound contributed by Robert Jurjevic.
-       
 * Applied a small security fix to pxboard, from Martin Maeok.
 
 * Fixed a bug in the game list dialog.  The change in 4.2.6 to opening
diff --git a/ToDo b/ToDo
index 6da49e1..edfcea8 100644 (file)
--- a/ToDo
+++ b/ToDo
@@ -1113,12 +1113,6 @@ to initialize and wants us to wait to send commands until it says
 done=1, we fail to wait.  However, we do send commands in the right
 order and use ping, so most engines should work fine.
 
-505. On Windows we use rand() for random numbers, which ranges only up
-to 0x7fff.  That means that on Windows, only zippy.lines sayings that
-start in the first 32767 bytes of the file can ever be used.  It looks
-like the only fix is to have our own 32-bit implementation of
-random().  Sigh.
-
 506. One user wants a board size even smaller than Tiny.
 
 507. Suggested: have the cursor change to a gripping hand while moving
index a2085cc..b7c120e 100644 (file)
@@ -1,14 +1,14 @@
 #define icon_black_width 32
 #define icon_black_height 32
 static unsigned char icon_black_bits[] = {
-   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0x00, 0x00,
-   0x00, 0x63, 0x00, 0x00, 0x00, 0xe7, 0x00, 0x00, 0x00, 0xff, 0x03, 0x00,
-   0x00, 0xe7, 0x0c, 0x00, 0x80, 0xfb, 0x33, 0x00, 0x80, 0xff, 0x6f, 0x00,
-   0xc0, 0xf9, 0xdf, 0x00, 0xc0, 0xfe, 0xbf, 0x01, 0xc0, 0xfe, 0x3f, 0x01,
-   0xe0, 0xff, 0x7f, 0x03, 0xe0, 0xff, 0x7f, 0x02, 0xf0, 0xff, 0xfe, 0x06,
-   0xf0, 0xff, 0xff, 0x04, 0xf8, 0xff, 0xff, 0x05, 0xf8, 0x3f, 0xff, 0x09,
-   0xec, 0x0f, 0xff, 0x09, 0xec, 0x87, 0xff, 0x09, 0xbc, 0x83, 0xff, 0x09,
-   0xfc, 0xc1, 0xff, 0x0b, 0xf8, 0xe0, 0xff, 0x13, 0x00, 0xf0, 0xff, 0x13,
-   0x00, 0xf8, 0xff, 0x13, 0x00, 0xfc, 0xff, 0x13, 0x00, 0xfc, 0xff, 0x13,
-   0x00, 0xfe, 0xff, 0x13, 0x00, 0xfe, 0xff, 0x17, 0x00, 0xfe, 0xff, 0x1f,
-   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
+   0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbe, 0xff, 0xff,
+   0xff, 0x9c, 0xff, 0xff, 0xff, 0x18, 0xff, 0xff, 0xff, 0x00, 0xfc, 0xff,
+   0xff, 0x18, 0xf3, 0xff, 0x7f, 0x04, 0xcc, 0xff, 0x7f, 0x00, 0x90, 0xff,
+   0x3f, 0x06, 0x20, 0xff, 0x3f, 0x01, 0x40, 0xfe, 0x3f, 0x01, 0xc0, 0xfe,
+   0x1f, 0x00, 0x80, 0xfc, 0x1f, 0x00, 0x80, 0xfd, 0x0f, 0x00, 0x01, 0xf9,
+   0x0f, 0x00, 0x00, 0xfb, 0x07, 0x00, 0x00, 0xfa, 0x07, 0xc0, 0x00, 0xf6,
+   0x13, 0xf0, 0x00, 0xf6, 0x13, 0x78, 0x00, 0xf6, 0x43, 0x7c, 0x00, 0xf6,
+   0x03, 0x3e, 0x00, 0xf4, 0x07, 0x1f, 0x00, 0xec, 0xff, 0x0f, 0x00, 0xec,
+   0xff, 0x07, 0x00, 0xec, 0xff, 0x03, 0x00, 0xec, 0xff, 0x03, 0x00, 0xec,
+   0xff, 0x01, 0x00, 0xec, 0xff, 0x01, 0x00, 0xe8, 0xff, 0x01, 0x00, 0xe0,
+   0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff};
index 9a48e44..8c3c98e 100644 (file)
@@ -1,14 +1,14 @@
 #define icon_white_width 32
 #define icon_white_height 32
 static unsigned char icon_white_bits[] = {
-   0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbe, 0xff, 0xff,
-   0xff, 0x9c, 0xff, 0xff, 0xff, 0x18, 0xff, 0xff, 0xff, 0x00, 0xfc, 0xff,
-   0xff, 0x18, 0xf3, 0xff, 0x7f, 0x04, 0xcc, 0xff, 0x7f, 0x00, 0x90, 0xff,
-   0x3f, 0x06, 0x20, 0xff, 0x3f, 0x01, 0x40, 0xfe, 0x3f, 0x01, 0xc0, 0xfe,
-   0x1f, 0x00, 0x80, 0xfc, 0x1f, 0x00, 0x80, 0xfd, 0x0f, 0x00, 0x01, 0xf9,
-   0x0f, 0x00, 0x00, 0xfb, 0x07, 0x00, 0x00, 0xfa, 0x07, 0xc0, 0x00, 0xf6,
-   0x13, 0xf0, 0x00, 0xf6, 0x13, 0x78, 0x00, 0xf6, 0x43, 0x7c, 0x00, 0xf6,
-   0x03, 0x3e, 0x00, 0xf4, 0x07, 0x1f, 0x00, 0xec, 0xff, 0x0f, 0x00, 0xec,
-   0xff, 0x07, 0x00, 0xec, 0xff, 0x03, 0x00, 0xec, 0xff, 0x03, 0x00, 0xec,
-   0xff, 0x01, 0x00, 0xec, 0xff, 0x01, 0x00, 0xe8, 0xff, 0x01, 0x00, 0xe0,
-   0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff};
+   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0x00, 0x00,
+   0x00, 0x63, 0x00, 0x00, 0x00, 0xe7, 0x00, 0x00, 0x00, 0xff, 0x03, 0x00,
+   0x00, 0xe7, 0x0c, 0x00, 0x80, 0xfb, 0x33, 0x00, 0x80, 0xff, 0x6f, 0x00,
+   0xc0, 0xf9, 0xdf, 0x00, 0xc0, 0xfe, 0xbf, 0x01, 0xc0, 0xfe, 0x3f, 0x01,
+   0xe0, 0xff, 0x7f, 0x03, 0xe0, 0xff, 0x7f, 0x02, 0xf0, 0xff, 0xfe, 0x06,
+   0xf0, 0xff, 0xff, 0x04, 0xf8, 0xff, 0xff, 0x05, 0xf8, 0x3f, 0xff, 0x09,
+   0xec, 0x0f, 0xff, 0x09, 0xec, 0x87, 0xff, 0x09, 0xbc, 0x83, 0xff, 0x09,
+   0xfc, 0xc1, 0xff, 0x0b, 0xf8, 0xe0, 0xff, 0x13, 0x00, 0xf0, 0xff, 0x13,
+   0x00, 0xf8, 0xff, 0x13, 0x00, 0xfc, 0xff, 0x13, 0x00, 0xfc, 0xff, 0x13,
+   0x00, 0xfe, 0xff, 0x13, 0x00, 0xfe, 0xff, 0x17, 0x00, 0xfe, 0xff, 0x1f,
+   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
index 391b0aa..c10b2fc 100644 (file)
 \r
 #define HAVE_GETTIMEOFDAY 0\r
 \r
-#define HAVE_RANDOM 0\r
+/* Use our own random() defined in winboard.c. */\r
+#define HAVE_RANDOM 1\r
+#define random myrandom\r
+#define srandom mysrandom\r
 \r
 #define HAVE_SYS_SOCKET_H 0\r
 \r
index d966b32..c83f0a7 100644 (file)
@@ -12,24 +12,27 @@ allobj=  winboard.o backend.o parser.o moves.o lists.o \
         gamelist.o pgntags.o wedittags.o wgamelist.o zippy.o \
          wsockerr.o wbres.o wclipbrd.o woptions.o
 
+dotc=   winboard.c backend.c parser.c moves.c lists.c \
+        gamelist.c pgntags.c wedittags.c wgamelist.c zippy.c \
+         wsockerr.c winboard.rc wclipbrd.c woptions.c
 
-# Currently WinBoard will build either with or without cygwin1.dll
+# Currently WinBoard will build either with or without -mno-cygwin
+# however, a Cygwin bug in forming the command line to WinMain() is
+# exposed if -mno-cygwin is not used.
 cygwin= -mno-cygwin
 
 VPATH= .:..
 CFLAGS= $(cdebug)
 INCLUDES= -I. -I..
-CVARS= $(INCLUDES) -mwindows $(cygwin)
+CVARS= $(INCLUDES) $(cygwin)
 CC = gcc $(CVARS)
-WCC = $(CC) -mwindows -Xlinker "-e" -Xlinker "_mainCRTStartup" \
-  $(linkdebug) $(cygwin)
-LD = ld
+WCC = $(CC) -mwindows $(linkdebug)
 HC="/c/program files/help workshop/hcrtf.exe" -xn
 
 all: $(proj).exe
 
-depend:
-       makedepend -f cygwin.mak $(INCLUDES) *.c *.rc
+depend: $(dotc)
+       makedepend -Y -f cygwin.mak $(INCLUDES) $^
 
 clean:
        rm -f *.obj *~ $(proj).exe $(proj).err $(proj).rbj \
@@ -55,216 +58,34 @@ parser.c: parser.l
 
 $(proj).exe: $(allobj) $(proj).hlp $(proj).rc
        $(WCC) $(guiflags) $(allobj) \
-       -lwsock32 -lcomctl32 -lwinmm  -lkernel32 \
-       -ladvapi32 -luser32 -lgdi32 -lcomdlg32 -lwinspool \
+       -lwsock32 -lwinmm \
        -o $(proj).exe
+
 # DO NOT DELETE
 
-parser.o: /usr/include/stdio.h /usr/include/_ansi.h /usr/include/newlib.h
-parser.o: /usr/include/sys/config.h /usr/include/machine/ieeefp.h
-parser.o: /usr/include/sys/reent.h /usr/include/sys/_types.h
-parser.o: /usr/include/sys/types.h /usr/include/machine/types.h
-parser.o: /usr/include/sys/stdio.h config.h /usr/include/ctype.h
-parser.o: /usr/include/stdlib.h /usr/include/machine/stdlib.h
-parser.o: /usr/include/alloca.h /usr/include/string.h ../common.h
-parser.o: ../backend.h ../lists.h ../frontend.h ../parser.h ../moves.h
-wclipbrd.o: config.h /usr/include/w32api/windows.h
-wclipbrd.o: /usr/include/w32api/windef.h /usr/include/w32api/winnt.h
-wclipbrd.o: /usr/include/w32api/winerror.h /usr/include/string.h
-wclipbrd.o: /usr/include/_ansi.h /usr/include/newlib.h
-wclipbrd.o: /usr/include/sys/config.h /usr/include/machine/ieeefp.h
-wclipbrd.o: /usr/include/sys/reent.h /usr/include/sys/_types.h
-wclipbrd.o: /usr/include/w32api/basetsd.h /usr/include/w32api/pshpack4.h
-wclipbrd.o: /usr/include/w32api/poppack.h /usr/include/w32api/wincon.h
-wclipbrd.o: /usr/include/w32api/winbase.h /usr/include/w32api/wingdi.h
-wclipbrd.o: /usr/include/w32api/winuser.h /usr/include/w32api/winnls.h
-wclipbrd.o: /usr/include/w32api/winver.h /usr/include/w32api/winnetwk.h
-wclipbrd.o: /usr/include/w32api/winreg.h /usr/include/w32api/winsvc.h
-wclipbrd.o: /usr/include/w32api/cderr.h /usr/include/w32api/dde.h
-wclipbrd.o: /usr/include/w32api/ddeml.h /usr/include/w32api/dlgs.h
-wclipbrd.o: /usr/include/w32api/imm.h /usr/include/w32api/lzexpand.h
-wclipbrd.o: /usr/include/w32api/mmsystem.h /usr/include/w32api/nb30.h
-wclipbrd.o: /usr/include/w32api/rpc.h /usr/include/w32api/rpcdce.h
-wclipbrd.o: /usr/include/w32api/basetyps.h /usr/include/w32api/rpcdcep.h
-wclipbrd.o: /usr/include/w32api/rpcnsi.h /usr/include/w32api/rpcnterr.h
-wclipbrd.o: /usr/include/w32api/shellapi.h /usr/include/w32api/pshpack2.h
-wclipbrd.o: /usr/include/w32api/winperf.h /usr/include/w32api/commdlg.h
-wclipbrd.o: /usr/include/w32api/winspool.h /usr/include/w32api/winsock2.h
-wclipbrd.o: /usr/include/stdio.h /usr/include/sys/types.h
-wclipbrd.o: /usr/include/machine/types.h /usr/include/sys/stdio.h
-wclipbrd.o: /usr/include/stdlib.h /usr/include/machine/stdlib.h
-wclipbrd.o: /usr/include/alloca.h /usr/include/malloc.h
-wclipbrd.o: /usr/include/machine/malloc.h /usr/include/sys/stat.h
-wclipbrd.o: /usr/include/time.h /usr/include/machine/time.h
-wclipbrd.o: /usr/include/sys/features.h ../common.h winboard.h resource.h
-wclipbrd.o: ../frontend.h ../backend.h ../lists.h wclipbrd.h
-wedittags.o: config.h /usr/include/w32api/windows.h
-wedittags.o: /usr/include/w32api/windef.h /usr/include/w32api/winnt.h
-wedittags.o: /usr/include/w32api/winerror.h /usr/include/string.h
-wedittags.o: /usr/include/_ansi.h /usr/include/newlib.h
-wedittags.o: /usr/include/sys/config.h /usr/include/machine/ieeefp.h
-wedittags.o: /usr/include/sys/reent.h /usr/include/sys/_types.h
-wedittags.o: /usr/include/w32api/basetsd.h /usr/include/w32api/pshpack4.h
-wedittags.o: /usr/include/w32api/poppack.h /usr/include/w32api/wincon.h
-wedittags.o: /usr/include/w32api/winbase.h /usr/include/w32api/wingdi.h
-wedittags.o: /usr/include/w32api/winuser.h /usr/include/w32api/winnls.h
-wedittags.o: /usr/include/w32api/winver.h /usr/include/w32api/winnetwk.h
-wedittags.o: /usr/include/w32api/winreg.h /usr/include/w32api/winsvc.h
-wedittags.o: /usr/include/w32api/cderr.h /usr/include/w32api/dde.h
-wedittags.o: /usr/include/w32api/ddeml.h /usr/include/w32api/dlgs.h
-wedittags.o: /usr/include/w32api/imm.h /usr/include/w32api/lzexpand.h
-wedittags.o: /usr/include/w32api/mmsystem.h /usr/include/w32api/nb30.h
-wedittags.o: /usr/include/w32api/rpc.h /usr/include/w32api/rpcdce.h
-wedittags.o: /usr/include/w32api/basetyps.h /usr/include/w32api/rpcdcep.h
-wedittags.o: /usr/include/w32api/rpcnsi.h /usr/include/w32api/rpcnterr.h
-wedittags.o: /usr/include/w32api/shellapi.h /usr/include/w32api/pshpack2.h
-wedittags.o: /usr/include/w32api/winperf.h /usr/include/w32api/commdlg.h
-wedittags.o: /usr/include/w32api/winspool.h /usr/include/w32api/winsock2.h
-wedittags.o: /usr/include/stdio.h /usr/include/sys/types.h
-wedittags.o: /usr/include/machine/types.h /usr/include/sys/stdio.h
-wedittags.o: /usr/include/stdlib.h /usr/include/machine/stdlib.h
-wedittags.o: /usr/include/alloca.h /usr/include/malloc.h
-wedittags.o: /usr/include/machine/malloc.h /usr/include/fcntl.h
-wedittags.o: /usr/include/sys/fcntl.h /usr/include/sys/stat.h
-wedittags.o: /usr/include/time.h /usr/include/machine/time.h
-wedittags.o: /usr/include/sys/features.h /usr/include/math.h ../common.h
-wedittags.o: winboard.h resource.h ../frontend.h ../backend.h ../lists.h
-wgamelist.o: config.h /usr/include/w32api/windows.h
-wgamelist.o: /usr/include/w32api/windef.h /usr/include/w32api/winnt.h
-wgamelist.o: /usr/include/w32api/winerror.h /usr/include/string.h
-wgamelist.o: /usr/include/_ansi.h /usr/include/newlib.h
-wgamelist.o: /usr/include/sys/config.h /usr/include/machine/ieeefp.h
-wgamelist.o: /usr/include/sys/reent.h /usr/include/sys/_types.h
-wgamelist.o: /usr/include/w32api/basetsd.h /usr/include/w32api/pshpack4.h
-wgamelist.o: /usr/include/w32api/poppack.h /usr/include/w32api/wincon.h
-wgamelist.o: /usr/include/w32api/winbase.h /usr/include/w32api/wingdi.h
-wgamelist.o: /usr/include/w32api/winuser.h /usr/include/w32api/winnls.h
-wgamelist.o: /usr/include/w32api/winver.h /usr/include/w32api/winnetwk.h
-wgamelist.o: /usr/include/w32api/winreg.h /usr/include/w32api/winsvc.h
-wgamelist.o: /usr/include/w32api/cderr.h /usr/include/w32api/dde.h
-wgamelist.o: /usr/include/w32api/ddeml.h /usr/include/w32api/dlgs.h
-wgamelist.o: /usr/include/w32api/imm.h /usr/include/w32api/lzexpand.h
-wgamelist.o: /usr/include/w32api/mmsystem.h /usr/include/w32api/nb30.h
-wgamelist.o: /usr/include/w32api/rpc.h /usr/include/w32api/rpcdce.h
-wgamelist.o: /usr/include/w32api/basetyps.h /usr/include/w32api/rpcdcep.h
-wgamelist.o: /usr/include/w32api/rpcnsi.h /usr/include/w32api/rpcnterr.h
-wgamelist.o: /usr/include/w32api/shellapi.h /usr/include/w32api/pshpack2.h
-wgamelist.o: /usr/include/w32api/winperf.h /usr/include/w32api/commdlg.h
-wgamelist.o: /usr/include/w32api/winspool.h /usr/include/w32api/winsock2.h
-wgamelist.o: /usr/include/stdio.h /usr/include/sys/types.h
-wgamelist.o: /usr/include/machine/types.h /usr/include/sys/stdio.h
-wgamelist.o: /usr/include/stdlib.h /usr/include/machine/stdlib.h
-wgamelist.o: /usr/include/alloca.h /usr/include/malloc.h
-wgamelist.o: /usr/include/machine/malloc.h /usr/include/fcntl.h
-wgamelist.o: /usr/include/sys/fcntl.h /usr/include/sys/stat.h
-wgamelist.o: /usr/include/time.h /usr/include/machine/time.h
-wgamelist.o: /usr/include/sys/features.h /usr/include/math.h ../common.h
-wgamelist.o: winboard.h resource.h ../frontend.h ../backend.h ../lists.h
-winboard.o: config.h /usr/include/w32api/windows.h
-winboard.o: /usr/include/w32api/windef.h /usr/include/w32api/winnt.h
-winboard.o: /usr/include/w32api/winerror.h /usr/include/string.h
-winboard.o: /usr/include/_ansi.h /usr/include/newlib.h
-winboard.o: /usr/include/sys/config.h /usr/include/machine/ieeefp.h
-winboard.o: /usr/include/sys/reent.h /usr/include/sys/_types.h
-winboard.o: /usr/include/w32api/basetsd.h /usr/include/w32api/pshpack4.h
-winboard.o: /usr/include/w32api/poppack.h /usr/include/w32api/wincon.h
-winboard.o: /usr/include/w32api/winbase.h /usr/include/w32api/wingdi.h
-winboard.o: /usr/include/w32api/winuser.h /usr/include/w32api/winnls.h
-winboard.o: /usr/include/w32api/winver.h /usr/include/w32api/winnetwk.h
-winboard.o: /usr/include/w32api/winreg.h /usr/include/w32api/winsvc.h
-winboard.o: /usr/include/w32api/cderr.h /usr/include/w32api/dde.h
-winboard.o: /usr/include/w32api/ddeml.h /usr/include/w32api/dlgs.h
-winboard.o: /usr/include/w32api/imm.h /usr/include/w32api/lzexpand.h
-winboard.o: /usr/include/w32api/mmsystem.h /usr/include/w32api/nb30.h
-winboard.o: /usr/include/w32api/rpc.h /usr/include/w32api/rpcdce.h
-winboard.o: /usr/include/w32api/basetyps.h /usr/include/w32api/rpcdcep.h
-winboard.o: /usr/include/w32api/rpcnsi.h /usr/include/w32api/rpcnterr.h
-winboard.o: /usr/include/w32api/shellapi.h /usr/include/w32api/pshpack2.h
-winboard.o: /usr/include/w32api/winperf.h /usr/include/w32api/commdlg.h
-winboard.o: /usr/include/w32api/winspool.h /usr/include/w32api/winsock2.h
-winboard.o: /usr/include/stdio.h /usr/include/sys/types.h
-winboard.o: /usr/include/machine/types.h /usr/include/sys/stdio.h
-winboard.o: /usr/include/stdlib.h /usr/include/machine/stdlib.h
-winboard.o: /usr/include/alloca.h /usr/include/malloc.h
-winboard.o: /usr/include/machine/malloc.h /usr/include/io.h
-winboard.o: /usr/include/sys/stat.h /usr/include/time.h
-winboard.o: /usr/include/machine/time.h /usr/include/sys/features.h
-winboard.o: /usr/include/fcntl.h /usr/include/sys/fcntl.h /usr/include/math.h
-winboard.o: /usr/include/w32api/richedit.h /usr/include/errno.h
-winboard.o: /usr/include/sys/errno.h ../common.h winboard.h resource.h
-winboard.o: ../frontend.h ../backend.h ../lists.h ../moves.h wclipbrd.h
-winboard.o: wgamelist.h wedittags.h woptions.h wsockerr.h defaults.h
-winboard.o: /usr/include/w32api/winsock.h
-woptions.o: config.h /usr/include/w32api/windows.h
-woptions.o: /usr/include/w32api/windef.h /usr/include/w32api/winnt.h
-woptions.o: /usr/include/w32api/winerror.h /usr/include/string.h
-woptions.o: /usr/include/_ansi.h /usr/include/newlib.h
-woptions.o: /usr/include/sys/config.h /usr/include/machine/ieeefp.h
-woptions.o: /usr/include/sys/reent.h /usr/include/sys/_types.h
-woptions.o: /usr/include/w32api/basetsd.h /usr/include/w32api/pshpack4.h
-woptions.o: /usr/include/w32api/poppack.h /usr/include/w32api/wincon.h
-woptions.o: /usr/include/w32api/winbase.h /usr/include/w32api/wingdi.h
-woptions.o: /usr/include/w32api/winuser.h /usr/include/w32api/winnls.h
-woptions.o: /usr/include/w32api/winver.h /usr/include/w32api/winnetwk.h
-woptions.o: /usr/include/w32api/winreg.h /usr/include/w32api/winsvc.h
-woptions.o: /usr/include/w32api/cderr.h /usr/include/w32api/dde.h
-woptions.o: /usr/include/w32api/ddeml.h /usr/include/w32api/dlgs.h
-woptions.o: /usr/include/w32api/imm.h /usr/include/w32api/lzexpand.h
-woptions.o: /usr/include/w32api/mmsystem.h /usr/include/w32api/nb30.h
-woptions.o: /usr/include/w32api/rpc.h /usr/include/w32api/rpcdce.h
-woptions.o: /usr/include/w32api/basetyps.h /usr/include/w32api/rpcdcep.h
-woptions.o: /usr/include/w32api/rpcnsi.h /usr/include/w32api/rpcnterr.h
-woptions.o: /usr/include/w32api/shellapi.h /usr/include/w32api/pshpack2.h
-woptions.o: /usr/include/w32api/winperf.h /usr/include/w32api/commdlg.h
-woptions.o: /usr/include/w32api/winspool.h /usr/include/w32api/winsock2.h
-woptions.o: /usr/include/stdio.h /usr/include/sys/types.h
-woptions.o: /usr/include/machine/types.h /usr/include/sys/stdio.h
-woptions.o: /usr/include/stdlib.h /usr/include/machine/stdlib.h
-woptions.o: /usr/include/alloca.h ../common.h winboard.h resource.h
-woptions.o: ../backend.h ../lists.h ../frontend.h woptions.h defaults.h
-woptions.o: wedittags.h /usr/include/w32api/richedit.h /usr/include/errno.h
-woptions.o: /usr/include/sys/errno.h
-wsockerr.o: /usr/include/w32api/windows.h /usr/include/w32api/windef.h
-wsockerr.o: /usr/include/w32api/winnt.h /usr/include/w32api/winerror.h
-wsockerr.o: /usr/include/string.h /usr/include/_ansi.h /usr/include/newlib.h
-wsockerr.o: /usr/include/sys/config.h /usr/include/machine/ieeefp.h
-wsockerr.o: /usr/include/sys/reent.h /usr/include/sys/_types.h
-wsockerr.o: /usr/include/w32api/basetsd.h /usr/include/w32api/pshpack4.h
-wsockerr.o: /usr/include/w32api/poppack.h /usr/include/w32api/wincon.h
-wsockerr.o: /usr/include/w32api/winbase.h /usr/include/w32api/wingdi.h
-wsockerr.o: /usr/include/w32api/winuser.h /usr/include/w32api/winnls.h
-wsockerr.o: /usr/include/w32api/winver.h /usr/include/w32api/winnetwk.h
-wsockerr.o: /usr/include/w32api/winreg.h /usr/include/w32api/winsvc.h
-wsockerr.o: /usr/include/w32api/cderr.h /usr/include/w32api/dde.h
-wsockerr.o: /usr/include/w32api/ddeml.h /usr/include/w32api/dlgs.h
-wsockerr.o: /usr/include/w32api/imm.h /usr/include/w32api/lzexpand.h
-wsockerr.o: /usr/include/w32api/mmsystem.h /usr/include/w32api/nb30.h
-wsockerr.o: /usr/include/w32api/rpc.h /usr/include/w32api/rpcdce.h
-wsockerr.o: /usr/include/w32api/basetyps.h /usr/include/w32api/rpcdcep.h
-wsockerr.o: /usr/include/w32api/rpcnsi.h /usr/include/w32api/rpcnterr.h
-wsockerr.o: /usr/include/w32api/shellapi.h /usr/include/w32api/pshpack2.h
-wsockerr.o: /usr/include/w32api/winperf.h /usr/include/w32api/commdlg.h
-wsockerr.o: /usr/include/w32api/winspool.h /usr/include/w32api/winsock2.h
-wsockerr.o: /usr/include/w32api/winsock.h wsockerr.h
-winboard.o: resource.h /usr/include/w32api/windows.h
-winboard.o: /usr/include/w32api/windef.h /usr/include/w32api/winnt.h
-winboard.o: /usr/include/w32api/winerror.h /usr/include/string.h
-winboard.o: /usr/include/_ansi.h /usr/include/newlib.h
-winboard.o: /usr/include/sys/config.h /usr/include/machine/ieeefp.h
-winboard.o: /usr/include/sys/reent.h /usr/include/sys/_types.h
-winboard.o: /usr/include/w32api/basetsd.h /usr/include/w32api/pshpack4.h
-winboard.o: /usr/include/w32api/poppack.h /usr/include/w32api/wincon.h
-winboard.o: /usr/include/w32api/winbase.h /usr/include/w32api/wingdi.h
-winboard.o: /usr/include/w32api/winuser.h /usr/include/w32api/winnls.h
-winboard.o: /usr/include/w32api/winver.h /usr/include/w32api/winnetwk.h
-winboard.o: /usr/include/w32api/winreg.h /usr/include/w32api/winsvc.h
-winboard.o: /usr/include/w32api/cderr.h /usr/include/w32api/dde.h
-winboard.o: /usr/include/w32api/ddeml.h /usr/include/w32api/dlgs.h
-winboard.o: /usr/include/w32api/imm.h /usr/include/w32api/lzexpand.h
-winboard.o: /usr/include/w32api/mmsystem.h /usr/include/w32api/nb30.h
-winboard.o: /usr/include/w32api/rpc.h /usr/include/w32api/rpcdce.h
-winboard.o: /usr/include/w32api/basetyps.h /usr/include/w32api/rpcdcep.h
-winboard.o: /usr/include/w32api/rpcnsi.h /usr/include/w32api/rpcnterr.h
-winboard.o: /usr/include/w32api/shellapi.h /usr/include/w32api/pshpack2.h
-winboard.o: /usr/include/w32api/winperf.h /usr/include/w32api/commdlg.h
-winboard.o: /usr/include/w32api/winspool.h /usr/include/w32api/winsock2.h
+winboard.o: config.h ../common.h winboard.h resource.h ../frontend.h
+winboard.o: ../backend.h ../lists.h ../moves.h wclipbrd.h wgamelist.h
+winboard.o: wedittags.h woptions.h wsockerr.h defaults.h
+backend.o: config.h ../common.h ../frontend.h ../backend.h ../lists.h
+backend.o: ../parser.h ../moves.h ../zippy.h ../backendz.h
+parser.o: config.h ../common.h ../backend.h ../lists.h ../frontend.h
+parser.o: ../parser.h ../moves.h
+moves.o: config.h ../common.h ../backend.h ../lists.h ../frontend.h
+moves.o: ../moves.h ../parser.h
+lists.o: config.h ../common.h ../lists.h
+gamelist.o: config.h ../common.h ../frontend.h ../backend.h ../lists.h
+gamelist.o: ../parser.h
+pgntags.o: config.h ../common.h ../frontend.h ../backend.h ../lists.h
+pgntags.o: ../parser.h
+wedittags.o: config.h ../common.h winboard.h resource.h ../frontend.h
+wedittags.o: ../backend.h ../lists.h
+wgamelist.o: config.h ../common.h winboard.h resource.h ../frontend.h
+wgamelist.o: ../backend.h ../lists.h
+zippy.o: config.h ../common.h ../zippy.h ../frontend.h ../backend.h
+zippy.o: ../lists.h ../backendz.h
+wsockerr.o: wsockerr.h
+winboard.o: resource.h
+wclipbrd.o: config.h ../common.h winboard.h resource.h ../frontend.h
+wclipbrd.o: ../backend.h ../lists.h wclipbrd.h
+woptions.o: config.h ../common.h winboard.h resource.h ../backend.h
+woptions.o: ../lists.h ../frontend.h woptions.h defaults.h wedittags.h
index 032e381..f129447 100644 (file)
 chessclub.com /icsport=5000 /icshelper=timestamp\n\\r
 freechess.org /icsport=5000 /icshelper=timeseal\n\\r
 global.chessparlor.com /icsport=6000 /icshelper=timeseal\n\\r
+chessanytime.com /icsport=5000\n\\r
 chess.net /icsport=5000\n\\r
-chess-square.com /icsport=5000\n\\r
-icchess.net /icsport=5000\n\\r
 zics.org /icsport=5000\n\\r
 jogo.cex.org.br /icsport=5000\n\\r
 ajedrez.cec.uchile.cl /icsport=5000\n\\r
index cd2e98c..7bd3de0 100644 (file)
@@ -4072,6 +4072,26 @@ WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
  *\r
 \*---------------------------------------------------------------------------*/\r
 \r
+/*\r
+ * Decent random number generator, at least not as bad as Windows\r
+ * standard rand, which returns a value in the range 0 to 0x7fff.\r
+ */\r
+unsigned int randstate;\r
+\r
+int\r
+myrandom(void)\r
+{\r
+  randstate = randstate * 1664525 + 1013904223;\r
+  return (int) randstate & 0x7fffffff;\r
+}\r
+\r
+void\r
+mysrandom(unsigned int seed)\r
+{\r
+  randstate = seed;\r
+}\r
+\r
+\r
 /* \r
  * returns TRUE if user selects a different color, FALSE otherwise \r
  */\r
index bde5cc1..b6e9634 100644 (file)
@@ -865,23 +865,11 @@ Shows the current XBoard version number.
 @item Iconize
 Pressing the @kbd{i} or @kbd{c} key iconizes XBoard. The graphical
 icon displays a white knight if it is White's move, or a black knight
-if it is Black's move. If your X window manager displays only text icons,
-not graphical ones, check its documentation; there is probably a way to
-enable graphical icons. If you are running the Motif window manager
-@file{mwm}, add these lines to your @file{.Xdefaults} file and
-restart mwm:
-
-@example
-Mwm*iconDecoration: activelabel label image
-Mwm*XBoard*iconImageBackground: White
-Mwm*XBoard*iconImageForeground: Black
-@end example
-@noindent
-The first line above enables graphical icons in mwm; you don't need it
-if you already have them. The next two lines force the white knights to
-come out white and the black knights black. Unfortunately these resources
-can't be set from inside XBoard; you have to set them in your
-@file{.Xdefaults} file.
+if it is Black's move. If your X window manager displays only text
+icons, not graphical ones, check its documentation; there is probably
+a way to enable graphical icons.  If you get black and white reversed,
+we would like to hear about it; see @ref{Problems} below for
+instructions on how to report this problem.
 @end table
 
 You can add or remove shortcut keys using the X resources
diff --git a/zippy.c b/zippy.c
index b1a7fc8..c295459 100644 (file)
--- a/zippy.c
+++ b/zippy.c
@@ -308,7 +308,8 @@ void Speak(how, whom)
        if (now - lastShout < 1*60) return;
        lastShout = now;
        if (appData.zippyUseI) {
-           how = swifties[random() % (sizeof(swifties)/sizeof(char *))];
+           how = swifties[(unsigned) random() %
+                          (sizeof(swifties)/sizeof(char *))];
        }
     }
 
@@ -322,7 +323,7 @@ void Speak(how, whom)
     }
                
     for (;;) {
-       fseek(zipfile, random() % zipstat.st_size, 0);
+       fseek(zipfile, (unsigned) random() % zipstat.st_size, 0);
        do {
          c = getc(zipfile);
        } while (c != NULLCHAR && c != '^' && c != EOF);
@@ -528,7 +529,7 @@ int ZippyControl(buf, i)
            sprintf(reply, "%stell %s %s\n", ics_prefix,
                    player, programVersion);
            SendToICS(reply);
-       } else if (appData.zippyTalk && ((random() % 10) < 9)) {
+       } else if (appData.zippyTalk && (((unsigned) random() % 10) < 9)) {
            if (strcmp(player, ics_handle) != 0) {
                Speak("tell", player);
            }
@@ -571,7 +572,7 @@ int ZippyConverse(buf, i)
     }
 
     if (looking_at(buf, i, "* kibitzes: *")) {
-      if (appData.zippyTalk && (random() % 10) < 9) {
+      if (appData.zippyTalk && ((unsigned) random() % 10) < 9) {
        char *player = StripHighlightAndTitle(star_match[0]);
        if (strcmp(player, ics_handle) != 0) {
            Speak("kibitz", NULL);
@@ -581,7 +582,7 @@ int ZippyConverse(buf, i)
     }
 
     if (looking_at(buf, i, "* whispers: *")) {
-      if (appData.zippyTalk && (random() % 10) < 9) {
+      if (appData.zippyTalk && ((unsigned) random() % 10) < 9) {
        char *player = StripHighlightAndTitle(star_match[0]);
        if (strcmp(player, ics_handle) != 0) {
            Speak("whisper", NULL);
@@ -598,7 +599,7 @@ int ZippyConverse(buf, i)
        char *player = StripHighlightAndTitle(star_match[0]);
 
        if (strcmp(player, ics_handle) != 0) {
-           if ((random() % 10) < 9)
+           if (((unsigned) random() % 10) < 9)
              Speak("message", player);
            f = fopen("zippy.messagelog", "a");
            fprintf(f, "%s (%s:%s): %s\n", player,
@@ -632,7 +633,8 @@ int ZippyConverse(buf, i)
          channel[strlen(channel)-1] = NULLCHAR;
 #if 0
          /* Always tell to the channel (probability 90%) */
-         if (strcmp(player, ics_handle) != 0 && (random() % 10) < 9) {
+         if (strcmp(player, ics_handle) != 0 &&
+             ((unsigned) random() % 10) < 9) {
            Speak("tell", channel);
          }
 #else
@@ -658,7 +660,7 @@ int ZippyConverse(buf, i)
     }
 
     if (looking_at(buf, i, "Notification: * has arrived")) {
-       if ((random() % 3) == 0) {
+       if (((unsigned) random() % 3) == 0) {
            char *player = StripHighlightAndTitle(star_match[0]);
            strcpy(lastgreet, player);
            sprintf(reply, "greet %s\n", player);
@@ -668,7 +670,7 @@ int ZippyConverse(buf, i)
     }  
 
     if (looking_at(buf, i, "Notification: * has departed")) {
-       if ((random() % 3) == 0) {
+       if (((unsigned) random() % 3) == 0) {
            char *player = StripHighlightAndTitle(star_match[0]);
            sprintf(reply, "farewell %s\n", player);
            SendToICS(reply);