  TkGames.SF.Net
  Author: Stevenaaus
  Last updated: 28 June 2014

  ____________________________________________________________

  Table of Contents


  1. General
     1.1 About TkGames
     1.2 About Tcl/Tk
     1.3 Download
     1.4 Installation
        1.4.1 Unix
        1.4.2 Windows
        1.4.3 MacOSX

  2. Projects
     2.1 PolyPuzzle
     2.2 Scid vs. PC
     2.3 M.A.M.E. front-end
     2.4 Tk TiMidity++

  3. Card Games
     3.1 TkHearts
     3.2 TkSpider
     3.3 TkTk
     3.4 TkTp
     3.5 TkSol

  4. Other Games
     4.1 TkYahtzee
     4.2 TkHangman

  5. Utilities
     5.1 Tkvol and Tkgamma
     5.2 Alert
     5.3 Tkexe

  6. Links
     6.1 Utilities
        6.1.1 TkDiff
        6.1.2 TkCVS
        6.1.3 TkInfo
     6.2 Games
     6.3 Other Links

  7. Author


  ______________________________________________________________________


  In TkGames 1.3
  <http://prdownloads.sourceforge.net/tkgames/tkgames-1.3.tgz?download>
  , you'll find the latest version of most games. The below links are
  probably outdated.

  1.  General


  1.1.  About TkGames

  Welcome to my SourceForge Tk Games page.

  This page is a compiler free zone (mostly). All you'll need to hack my
  programs is a text editor!

  While learning the powerful Tcl/Tk programming language, I've adopted
  several abandoned games, contributed to some larger projects, and
  coded a few widgets of my own.

  You'll also find links to other cool Tcl/Tk projects on the web.

  1.2.  About Tcl/Tk

  Tcl/Tk <http://tcl.tk>, also known as Wish, is a powerful computer
  language which was popular on early Unix systems, especially in
  commercial and scientific fields. The latest version - Wish 8.5 - has
  brought long overdue improvements in aliased fonts, vastly improving
  the ascetics of Tk applications.

  It's first part is Tcl - an elegant scripting language whose only data
  structure is a string(!), and uses lists extensively. This allows for
  very readable and deeply nested code. It is also reminiscent of
  functional computer languages (as opposed to procedural languages like
  C and Bourne Shell) and, as such, can be hard for beginners to
  understand.

  Tk is the powerful graphics library that the user sees on the computer
  screen.  Versions prior to 8.5 had a slightly unpolished look and feel
  - which may be the reason it never gained more popularity. Tk allows
  for very rapid and correct application development. A simple Tcl/Tk
  application takes one line:

  #!/usr/bin/wish
  pack [button .b -text Finish -command {destroy .} -activeforeground RoyalBlue]


  Another feature of Tcl is that it is designed to interface with other
  languages such as C and Perl, allowing best use to made of (for
  example) C's speed and Tk's easy to build interface.

  1.3.  Download

  The latest version of these puzzles are found in this tarball
  <http://prdownloads.sourceforge.net/tkgames/tkgames-1.3.tgz?download>.
  At the file archive
  <https://sourceforge.net/project/showfiles.php?group_id=143086> you
  can still find individual packages, but they are most likely a little
  outdated.

  1.4.  Installation

  1.4.1.  Unix

  Linux and FreeBSD should have Tcl/Tk installed by default.

  To verify this, look for a command named wish or wish8.4.  Users
  needing to install Tcl should visit Tcl.Tk <http://tcl.tk> for the
  source code, or try RpmFind <http://rpmfind.net/> or Active State
  <http://www.activestate.com/Products/ActiveTcl/> for binary packages.

  Sometimes the symbolic link "wish" is not created. To do this, type:
  cd /usr/bin (or /usr/local/bin) and ln -s wish8.4 wish

  Building from source is fairly easy, with parallel installation of
  different versions no problem.  For example, if "wish8.4" is in
  "/usr/bin", you can install wish8.5 in "/usr/local/bin". After
  downloading and uncompressing the tcl-8.5.2 and tk-8.5.2 source code:

      cd tcl8.5.2/unix && ./configure --prefix=/usr/local && make install
      cd tk8.5.2/unix && ./configure --prefix=/usr/local && make install


  1.4.2.  Windows

  To run on Windows boxes, install Tcl/Tk, and rename each program with
  a ".tcl" extension (eg. rename tksol tksol.tcl).  I recommend using
  Active State Tcl <http://www.activestate.com/Products/ActiveTcl/>.

  1.4.3.  MacOSX

  Mac users can install a standard version of Tcl/Tk from either Aqua
  Tcl/Tk <http://tcltkaqua.sourceforge.net> or Active State
  <http://www.activestate.com/Products/ActiveTcl/>, or try the
  Batteries-Included
  <http://www.maths.mq.edu.au/%7Esteffen/tcltk/TclTkAqua/> version.

  The standard OSX installations of Tcl do not allow programs to be
  launched from the Finder.  They must be run from the command line by
  typing

  cd {directory where program is}
  wish {program name}


  Alternatively, you can install the Mac Tcl/Tk Launcher
  <http://www.maths.mq.edu.au/%7Esteffen/tcltk/Launcher/>, which is also
  included with the "batteries-included" version.

  2.  Projects

   These programs require Tcl/Tk 8.4, but may work with earlier
  versions.  For more info see the ``installation'' section.

  2.1.  PolyPuzzle

  Based on a tessellation puzzle named Beat the Computer, this is my
  first "original" Tk program.  Over the last couple of years, I've
  implemented most of the different puzzles.  Download
  <http://prdownloads.sourceforge.net/tkgames/polypuzzle-1.8.2.tgz?download>.
  Version 1.8.2 has attractive Help, Changelog and About widgets, and a
  minor hack which should finally fix Wish8.5's precision issue.

  You can find photos of the original puzzles
  <http://www.huybers.net/poly/btc.html> and some mathematical
  background <http://www.huybers.net/poly/polyominoe.html> at Pascal's
  web page.


  2.2.  Scid vs. PC

  Scid vs. PC <http://scidvspc.sourceforge.net/> is a usability and bug-
  fix fork of Scid. With it you can play chess online or against the
  computer, browse tournaments downloaded in pgn format, and create huge
  chess databases.
  2.3.  M.A.M.E. front-end

  M.A.M.E. stands for Multiple Arcade Machine Emulator, and is an
  amazing project that brings the arcade classics to your PC. There are
  many, many versions and front-ends for this fairly chaotic project.

  Mamex is a minimalist front-end written for the Linux M.A.M.E. port,
  XMame <http://x.mame.net/faq.html> (versions 0.96 and 0.106). I've
  written many new widgets - overhauling functionality and appearance,
  and also hacked a useful "Mute" option into the game. You'll find more
  info in Mamex-1.4.1
  <http://prdownloads.sourceforge.net/tkgames/mamex-1.4.1.gz?download>.

  A front-end for SDLMame <http://rbelmont.mameworld.info/?page_id=163>,
  which is a more current M.A.M.E. port, is here: SDLMamex-1.4.1
  <http://prdownloads.sourceforge.net/tkgames/sdlmamex-1.4.1.gz?download>.


  2.4.  Tk TiMidity++

  Linux midi support is such a mess. I've given the Tk interface an
  overhaul - see the readme in the tarball for details - fixing as few
  little bugs and giving the widget a QA overhaul. Hopefully someone
  will find this useful.

  Download <http://prdownloads.sourceforge.net/tkgames/tkgames-
  tkmidity-0.9.tgz?download>

  3.  Card Games


  ``TkTp''

  3.1.  TkHearts

  Mike Griffiths <http://www.talvo.com/> coded this great Hearts clone.
  My latest version is 0.90
  <http://prdownloads.sourceforge.net/tkgames/tkhearts-0.90.gz?download>
  which includes a few changes.

  I had a look at resizing this game, but doing so breaks up the nice
  clean look of the face-up cards in the player's hand... Instead i have
  added an auto-raise feature. It helps a little, and looks cool too.

  3.2.  TkSpider

  This thoughtful game of solitaire is played with the equivalent of two
  packs of cards. I recently removed the poor quality sound support till
  Snack <http://www.speech.kth.se/snack/download.html> is working
  better. On the plus side , at  <http://www.fotosearch.com> i found
  some great art work and made a few nice card-backs. (One of which is
  also in TkTk and Hearts).

  3.3.  TkTk

  Tk Time Killer is a great little solitaire written by Greg Bacon.
  Unfortunately, I really hate Perl. And while Greg's version
  <http://home.hiwaay.net/~gbacon/perl/tktk.html> used Tk, it espoused
  Tcl for Larry Wall's bride-of-frankenstein creation.

  Anyway, it wasn't much effort to re-use plenty of TkSpider and code
  this game. Features include full undo, configurable decorations, a
  modest tally box and a few fancy mouse bindings.

  More thanks to Greg for letting me borrow the name TkTk.

  Download
  <http://prdownloads.sourceforge.net/tkgames/tktk-0.96.gz?download>

  3.4.  TkTp

  Tk TriPeaks is an easier variation of ``TkTk''.

  Download
  <http://prdownloads.sourceforge.net/tkgames/tktp-0.81.gz?download>

  3.5.  TkSol

  Bao Trinh <http://www.cs.umd.edu/users/bao/tksol.html> originally
  coded tksol for FreeBSD, and it hadn't been updated in 8 or 9 years.
  Over several point releases I've fixed quite a few bugs, added some
  features and really got my hands dirty learning Tcl.  Recently some
  new artwork has been contributed, and the game is looking nice.
  Download
  <http://prdownloads.sourceforge.net/tkgames/tksol-1.9.1.tgz?download>

  4.  Other Games

  4.1.  TkYahtzee

  This is another program I found at tcl.tk <http://www.tcl.tk> which
  was mostly complete but had playability issues. I've made a few
  changes, including the addition of high-score and help widgets, and
  redesigning the buttons and menus. Thanks to the original author,
  Kevin Kenny <http://wiki.tcl.tk/934>.
  Download
  <http://prdownloads.sourceforge.net/tkgames/tkyahtzee-1.2.4.gz?download>.


  4.2.  TkHangman

  My first Tcl/Tk program - A half-working and abandoned hangman program
  I adopted from Ibiblio.org <http://ibiblio.org/pub/linux>, and
  eventually rewrote. Download
  <http://sourceforge.net/project/showfiles.php?group_id=143086&package_id=157165>.

  5.  Utilities

  5.1.  Tkvol and Tkgamma

  Minimalist volume and screen brightness widgets.  Tkvol requires the
  aumix program, and Tkgamma uses Xorg's xgamma command.


  Download Tkvol
  <http://prdownloads.sourceforge.net/tkgames/tkvol?download>
  Download Tkgamma
  <http://prdownloads.sourceforge.net/tkgames/tkgamma?download>

  5.2.  Alert


  # Steven.a's first tk script
  # Modeled on beos' Alert
  # No , I don't really know what I'm doing  ;->
  # 13/5/02 : patched up a bit.....


  A dialog widget modeled on the "alert" command from BeOS.

  [I started using linux around 1999, with slackware 3.4, and from the
  comments it looks like I started learning Tcl in 2001.]

  Usage: alert [-g] message response(s)..


  Download <http://prdownloads.sourceforge.net/tkgames/alert?download>

  5.3.  Tkexe

  Small Tcl/Tk command launcher.


  Download <http://prdownloads.sourceforge.net/tkgames/tkexe?download>

  6.  Links

  6.1.  Utilities

  6.1.1.  TkDiff

  TkDiff -- A graphical front-end to diff for Unix and Windows by
  AccuRev Inc. and John M. Klassa.  I love it.

  TkDiff Home Page <http://tkdiff.sourceforge.net>

  6.1.2.  TkCVS

  Dorothy is a computing professional who shares with me a fondness of
  Macs, Fvwm, Tk and music :->. She is also the maintainer of TkCVS
  <http://www.twobarleycorns.net/tkcvs.html>, a front-end for the
  revision-control software, CVS.

  6.1.3.  TkInfo

  Yes, the GNU "info" files suck big-time. This front-end makes the pain
  more bearable.

  TkInfo Home Page <http://www-math.uni-paderborn.de/%7Eaxel/tkinfo/>


  6.2.  Games


  o  Asteroids is a very slick clone of the arcade game, which will have
     you wondering "Is that Tcl!".

     It is available at the author's home page
     <http://www.jeffgodfrey.com/development.shtml> as a windows
     executable, as a basic version <http://wiki.tcl.tk/13601> without
     sound, and in full as part of the tclapp
     <http://cvs.sourceforge.net/viewcvs.py/tcllib/tclapps/> package.
     Sound support is provided by the snack <http://???> sound library.
     Note - unfortunately snack doesn't work too well anymore. With OSS
     it is poor, and even worse with ALSA. It really needs someone to
     give this worthwhile project an update.

  o  Awele is an interesting game from Africa. This version
     <http://prdownloads.sourceforge.net/tkgames/awele-
     sa-1.0.tgz?download> is written in Tcl/Tk and C and is an
     attractive though challenging game.  While it is redistributable,
     it is not GPL-ed, so it requires a clumsy installation... See the
     download for details.


     Stphane Arnold brought this game to my attention, and has his own
     version at his webpage
     <http://sarnold.free.fr/wordpress/?page_id=64>.

  o  The colourful and fun Bubbles <http://wiki.tcl.tk/734>.

  o  TcLines <http://tclines.sourceforge.net>.

  o  Konnekt4 <http://www.freshmeat.net/projects/konnekt4>.

  o  TkAtaxx <http://wiki.tcl.tk/7666>.

  o  Overlord <http://wiki.tcl.tk/4354>.

  o  A cool game called Collapse <http://wiki.tcl.tk/10287>.

  o  A Spirograph <http://wiki.tcl.tk/4206> widget and an fairly useless
     but loveable widget named Ferris Wheel <http://wiki.tcl.tk/8763>.

  o  Tickletux Hangman <http://tickletux.sourceforge.net> works fine,
     but has been abandoned for a few years. It has some GUI and
     playability issues, but shows real class.

  o  There is also an impressive solitaire known as Patience
     <http://sourceforge.net/projects/patience> It is written in
     [incr]tcl and includes 5 or 6 different games including "Battle
     Solitaire". To get it running , after installing Itcl, I had to
     edit patience.tcl and replace


             package require Iwidgets 3.0


  with


          package require Iwidgets
          namespace import -force itcl::*


  and then type wish patience.tcl to start the game.

  6.3.  Other Links

  TkGames Project Page <http://sourceforge.net/projects/tkgames>.

  Tk Game Pack <http://wiki.tcl.tk/references/13404>

  Tk Game Wiki <http://wiki.tcl.tk/898>

  Tcl/Tk Homepage <http://www.tcl.tk>

  Active State Tcl <http://www.activestate.com/Products/ActiveTcl/>

  Aqua Tcl/Tk <http://tcltkaqua.sourceforge.net>

  7.  Author

  Stevenaaus is a uni graduate in math and computer science, who
  programs as a hobby in tcl/tk, bash and C. I live and work in rural
  australia, and enjoy beating up Lachlan at squash.

  Email <mailto:yahoo - dot - com - username - stevenaaus>


