Boggle kjs-3
Last updated 1999-03-28.
This file lives at http://www.pobox.com/~kragen/sw/boggle.html.
I downloaded the latest NetBSD version of Boggle and got it to compile on
Linux. It seems to be a little better than the one that came with my
Slackware96 system (it uses select() instead of ioctl(x, FIONREAD))
but it didn't compile. Being a lazy SOB, instead of going out and searching
the Net for the necessaries to make it compile, I hacked on it until it
compiled and ran correctly.
I made the following changes in boggle-kjs-2:
- removed all the calls to the __COPYRIGHT and __RCSID macros, since I don't
have 'em (probably should have removed the #ifdefs around them, but I didn't)
- added a comment or two
- fixed a warning (comparing a char to NULL)
- added #include <time.h> where it was needed.
- as shipped, it would wait one millisecond between each time it checked to
see if the clock needed to be updated. I changed that to 50 milliseconds
because I was spending a lot of time reading strace output.
- added err.h to mkdict.c so it would compile without warnings.
- added `build' and `install' scripts that don't require Berkeley make.
I made the following changes in boggle-kjs-3:
- fixed it so it can handle input dictionaries that have no words beginning
with a certain letter,
- simplified the `dictindex' array and mkindex program. (If it matters,
it can still use dictindex files from other versions, but its new,
simpler dictindex files cannot be used by other versions of boggle.)
I also wrote my
own implementation of the err.h functions, figuring it was faster
to write my own from the man page than to find the source on the Net.
You can download boggle release kjs-3 from
http://www.pobox.com/~kragen/sw/boggle-kjs-3.tar.gz.
You can download boggle release kjs-2 from
http://www.pobox.com/~kragen/sw/boggle-kjs-2.tar.gz.
Enjoy.
-- kjs