PragmAda Software Engineering

Mine Detector

The primary home for Mine Detector is now on Github (Gnoga version).

The GtkAda version of Mine Detector is now maintained by Pascal Malaise at https://github.com/malaise/ada/tree/master/cots/mine.

PragmAda Software Engineering is proud to provide Mine Detector, an intellectually challenging game. Unlike other mine-finding games, Mine Detector 4.4 never requires guessing.

Mine Detector is distributed free of charge, and is free software distributed under the GNU Public License. See the file license.txt in the source distribution. The current binary version is 4.4 for Windows, and 4.3 for Linux.

Mine Detector V4.4 is available as aWin32 executable (tested on Win98 and WinXP), V4.3 as a Linux/x86 executable, and as source. This Win32 version requires GtkAda 1.3.12.

Mine Detector V5.0 is available as source only. This version was written for GtkAda 2.2; it has been built successfully with GtkAda 2.4. There are reports of incompatibilities with later versions of GtkAda. This version allows user-selectable levels. At the higher levels, guessing may sometimes be the only way to win.

Mine Detector V6.0 is available as source only. Thanks to Pascal Malaise and Björn Persson for this version. V6.0 is functionally identical to V5.0. However, it builds with GtkAda 2.24 (on Linux). V6.0 will not build with some earlier versions of GtkAda.

A version of Mine Detector that works with GtkAda 3 is also available as source only. Thanks to Pascal Malaise for this version. According to him, "It has been tested on Ubuntu 15.10 64 bits, Gtk+ 3.16.7, GtkAda 3.8.3, Gnat GPL 2015."

A version of Mine Detector that works with Gnoga is also available as source only. Follow the instructions for building a Gnoga application.

Installation Instructions

Win32 binary

Unzip mine_detector_4.4.zip into a directory of your choice
Run mine_detector.exe from this directory
Version 4.4 appears to correct problems reported on Win2000 and WinXP
(This executable was built with GtkAda 1.3.12. If you have another version of GtkAda installed on your system, you must ensure that this executable uses the DLLs that come with it.)

Linux/x86 binary (Thanks to Doug Rogers for this version and instructions)

Gtk+ must be installed (most Linux distributions include Gtk+)

mine_detector-4.3-linux-bin.tar.gz should be untarred as root in the root directory:

  $ su
  # cd /
  # tar xzvf /tmp/mine_detector-4.3-linux-bin.tar.gz
  # ldconfig
  # exit
  $ mine_detector

Building From Source

Unzip the source archive (mine_detector_4.4_src.zip, mine_detector_5.0_src.zip, or mine_detector_6.0_src.zip) into a directory of your choice
Mine Detector is written entirely in Ada. You must have an Ada compiler to build it.
Early versions of Mine Detector require the PragmAda Reusable Components. Version 4.4 requires GtkAda 1.3.12; Version 5.0 requires GtkAda version 2.2; later versions may not work. Version 6.0 requires 2.8 or later. Currently GtkAda requires the GNAT Ada compiler.
The main procedure is Mine_Detector in file mine_detector.adb
With Version 5.0, Linux users may need to increase the value of Button_Size, in User_IF.First_Game (file user_if.adb)

Using GNAT, build with the command

gnatmake -O2 -gnato mine_detector

Some indication is needed to tell the compiler where to find the GTKAda files

Under Windows, the "-mwindows" linker argument may be added to eliminate the DOS box:

gnatmake -O2 -gnato mine_detector -largs -mwindows

To build the Gnoga version, follow the instructions for building Gnoga applications from the Gnoga web site.

Error reports, comments, and suggestions are welcome from all users.

Click here for information about the PragmAda Reusable Components.
 

Ada, the Language for a Complex World

Ada King, Countess Lovelace

PragmAda, PragmARC, and the PragmAda logo are trademarks of PragmAda Software Engineering
Jeffrey R. Carter, DBA PragmAda Software Engineering, Mesa, AZ, USA
2016 Feb 15