Dec 052017
Over 50 puzzles - Requires S-VGA graphics. Variety of math and word puzzles.
File !!PUZZLE.ZIP from The Programmer’s Corner in
Category Games and Entertainment
Over 50 puzzles – Requires S-VGA graphics. Variety of math and word puzzles.
File Name File Size Zip Size Zip Type
CPU.EXE 173042 78003 deflated
SOLVE-A.EXE 257346 107724 deflated
SOLVE-B.EXE 263170 108658 deflated
SOLVE-C.EXE 283426 113886 deflated
SOLVE-D.EXE 249858 104693 deflated
SOLVE-E.EXE 284322 114044 deflated
SOLVE-F.EXE 223730 95983 deflated
01400001.PUZ 10752 6396 deflated
01800001.PUZ 10752 8848 deflated
02400002.PUZ 11072 6943 deflated
03600001.PUZ 500 500 stored
04600001.PUZ 11072 7988 deflated
05600001.PUZ 674 674 stored
06600001.PUZ 2328 2328 stored
07600001.PUZ 266 266 stored
08600001.PUZ 6240 5361 deflated
08600002.PUZ 6240 4983 deflated
09800001.PUZ 1344 1344 stored
10600001.PUZ 500 500 stored
11600001.PUZ 152 152 stored
12600001.PUZ 460 460 stored
12800001.PUZ 460 460 stored
13600001.PUZ 162 162 stored
14600002.PUZ 4980 4265 deflated
16600001.PUZ 1360 1360 stored
17800001.PUZ 96 96 stored
19600001.PUZ 2200 2200 stored
20400001.PUZ 1240 1240 stored
21400001.PUZ 1240 1240 stored
22600001.PUZ 1500 1500 stored
23400001.PUZ 460 460 stored
24600001.PUZ 674 674 stored
24800001.PUZ 674 674 stored
25600001.PUZ 4980 4187 deflated
26600001.PUZ 4980 4177 deflated
27600001.PUZ 6210 5020 deflated
28600001.PUZ 4980 4225 deflated
29400001.PUZ 152 152 stored
30400001.PUZ 152 152 stored
31400002.PUZ 152 152 stored
CPU-INFO 10032 3130 deflated
CPU-FORM 7638 1932 deflated
02400001.PUZ 11072 5747 deflated
03400001.PUZ 500 500 stored
04400001.PUZ 11072 6845 deflated
05400001.PUZ 674 674 stored
06400001.PUZ 2328 2328 stored
07400001.PUZ 266 266 stored
08400001.PUZ 6240 5191 deflated
09400001.PUZ 1344 1344 stored
10400001.PUZ 500 500 stored
11400001.PUZ 152 152 stored
12400001.PUZ 460 460 stored
13400001.PUZ 162 162 stored
14400001.PUZ 4980 3978 deflated
16400001.PUZ 1360 1360 stored
17400001.PUZ 96 96 stored
18400001.PUZ 1307 1307 stored
19400001.PUZ 2200 2200 stored
22400001.PUZ 1500 1500 stored
24400001.PUZ 674 674 stored
25400001.PUZ 4980 4010 deflated
26400001.PUZ 4980 4041 deflated
27400001.PUZ 6210 4589 deflated
28400001.PUZ 4980 3917 deflated
31400001.PUZ 152 152 stored

Download File !!PUZZLE.ZIP Here

Contents of the PUZZLE.DOC file


The PUZZLE program is an interactive jigsaw puzzle using the
computer to create the initial pictures. The program provides
two different ways of playing jigsaw type puzzles. These puzzle
varieties coupled with a user setable difficulty level and number
of puzzle pieces make the PUZZLE program suitable for both small
children and adults. (My two children, ages 3 and 5 are able to
play PUZZLE unattended. At PUZZLE's most difficult level, adults
have found it difficult to complete.) You may freely copy,
modify and distribute this program to friends and store on
bulletin boards as long as it is not for profit.


o IBM PC, IBM AT with either the CGA or EGA graphics board.
o Alternately the program does run under simulation on a
Hercules graphics board with a program such as SIMCGA.
o The program has not been tested on an IBM-PC jr. However,
there is no reason to believe the program will not run on an
IBM-PC jr.


The PUZZLE disk contains three files, this document file
(PUZZLE.DOC), the executable image (PUZZLE.EXE) and the source
for the PUZZLE program (PUZZLE.BAS).


The object of the game is to assemble a jigsaw puzzle in the
large checker board on the right from the pieces provide by the
computer. The computer will provide a single piece in the lower
left corner of the screen and a small picture of the puzzle as a
sample of the finished puzzle in the upper left hand corner. To
select the location to move the puzzle piece, move the cursor (a
blinking ball) to the desired location and press enter. If the
location is correct, the puzzle piece will be transferred to the
puzzle board. If the location was not correct, a new puzzle
piece will be drawn at random until all pieces have been success-
fully placed. (For the Classical puzzle, three guesses are
allowed before the puzzle piece is changed).

For the modern puzzle, a score will be kept. Fifty points will
be awarded for each correct piece placement, ten points will be
subtracted for each wrong guess, as well as one point subtracted
for each second of indecision.


The following keyboard keys are used:

o Arrow keys are used to move the cursor around the puzzle,
o Enter Key is used select the current position,
o R or r key are used to rotate the current puzzle piece to
gain a better view of the piece. (The puzzle piece does not
need to be rotated correctly to be placed correctly.)
o Escape key will allow the user to end the game or start a
new game.


There are four run time options that provide different levels of
difficulty. These options are:

o Classical versus Modern Puzzle image,
o Picture difficulty or Picture Granularity,
o Puzzle Piece Size, and
o Puzzle Piece Rotation.

(These options will be available at run time unless they are
preselected in lines 55-70.)

The Classical versus Modern puzzle image option allows the user
to assemble one of two types of pictures. One picture which uses
recognizable objects like bicycles and balloons, and another
which uses rectangles, circles and dots to form a pattern.

The picture difficulty option (used in the Modern puzzle) refers
to the granularity and type of objects within the puzzle picture.
For a difficulty of 1 the rectangles are relatively large and few
and there are large circles to assist in understanding where even
a rotated piece should go. (At difficulty 1, a checker board
will overlay the sample puzzle image. Difficulty 2 is the same
as difficulty 1 but without the checker board overlay.) For a
difficulty of 7, the size of the rectangles decreases while the
number increases. Coupled with a loss of the circles as
references, the puzzle image will contain a finer structure. At
level 9 and 10, the puzzle will have an even finer structure but
will no longer have recognizable border pieces.

The picture granularity option (used in the Classical puzzle) is
used in conjunction with the puzzle piece size to select a
difficulty level. Picture granularity (1 to 6) refers to whether
the puzzle picture is to be a 1 x 1, 2 x 2, ... 6 x 6 puzzle
image with one image in each position. (A 6 x 6 puzzle will have
36 small pictures on the puzzle while a 1 x 1 will have 1 large

The picture size option for the Classical and Modern puzzles
refer to the size of the checker board cut-out and its puzzle
pieces. A size of 3 will overlay a 3 x 3 checker board over the
puzzle image and create nine puzzle pieces. A size of 8 will
create a puzzle with an 8 x 8 checker board and 64 pieces.

For the Classical puzzle option try the following combinations of
puzzle size and picture granularity:

o puzzle size identical with picture granularity
o puzzle size twice that of picture granularity
o picture granularity twice that of puzzle size
o picture granularity of one and a puzzle size of three

The piece rotation option is available to both the Classical and
the Modern puzzle users. (It is not recommended for small
children. They become frustrated and may quit forever.) With
this option selected, the puzzle piece is rotated randomly before
being displayed. The piece may be rotated to get a better view
by entering either an upper case or lower case "R". In either
case the puzzle piece need not be rotated to its correct
alignment to be placed correctly.


In order to allow small children to run the game without much
supervision, the game difficulty, puzzle size, rotation and
Classical puzzle image options may be preselected. The
preselected values should be included on lines 70 to 85.


The PUZZLE program has been written to allow additional puzzle
elements to be added to the classical puzzle. To add a new
picture create a self contained drawing subroutine near the end
of the program (starting at lines 1175, 1185, 1200, 1215, 1230,
1245, 1260 and 1275).

Each drawing subroutine must draw an image given the center of a
box (M,N) to contain the image and the width of the box (Q).
(The small puzzle picture is 96 x 96 pixels and the large picture
is 192 x 192. Warning. Small features will not show up.) Three
color indices (C1, C2 and C3) which will be incremented to allow
three differently colored pictures to be produced using the
subroutine are also available. In addition, two random numbers
are available (ZR1 and ZR2) that are in the range of 0 to 1.0,
along with nine constants that represent 5%, 10%, 15%, 20%, 25%,
30%, 35%, 40% and 45% of the width (and height of the drawing
box. These constants are Q05, Q1, Q15, Q2, Q25, Q3, Q35, Q4 and
Q45 respectively.

Each picture type (or drawing subroutine) will be defined
uniquely by a GOSUB and by a counter (CI) of the number of times
a picture has been drawn. To signal the code that a new
subroutine is available increment the variable NC (number of
classical elements) in line 50 by one for each new picture
element subroutine that you supply. Once the subroutine has
been written, the routine may be tested by changing the value of
the variable, PTEST, in line 75 to the picture number for your
subroutine and running the PUZZLE program. (The next available
picture element is 18 out of 25 possible drawing routines.)

For example, classical picture element number 2 is a square and
is defined by the code included in line 880. This code is
described below:

LINE(M-Q35,N-Q35) - Draw a filled box that starts
(M+Q35,N+Q35),C1,BF above and to the left of the
center of the drawing box to a
point that is below and to the
right of the center. The dis-
tance above, below, to the
left and to the right is given
by the variable Q35 (70% of
width of box). Use the
current random color (C1).

RETURN Return to calling routine.


There have been at least three people who have helped to make
this game what it is today that I wish to thank. Two children,
James and Darcy, for whom this game was designed and customized
to entertain. Without their encouragement and desire to play
each version of the game during their evenings, the game would
not look as it does today. Also to some anonymous programmer who
created the first Jigsaw puzzle shell (similar to the modern
puzzle option) I give thanks.

 December 5, 2017  Add comments

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>