===============================================================================
        JuggleMaster Version 1.60  Copyright (c) 1995-1996 Ken Matsuoka
===============================================================================

< Introduction >

This software is a juggling simulator for DOS. It will help you start
juggling and understand siteswap notation.

I expect you all know what juggling is, although only a few people know
about it in Japan. When I started juggling there was no Japanese juggling
software. That's why I produced this. If you have a Japanese DOS you can
use this software in Japanese.


< Menu Usage >

It's not difficult to use only the menu. Copy "PATT_E.JM" and "JM.EXE"
into the same directory, and run "JM.EXE". You will understand how to use
the menu by reading the "info" field.

Style:
Style expresses hand movements. Each siteswap pattern is related to its
own style. You can change it by [Tab] key. For example, you can juggle
5 balls in the 4-columns or Mills Mess style.

Number of balls:
This is the number of balls in the current juggling pattern, so you cannot
change it.

Height:
The maximum ball height is (Height)*(maximum siteswap number). For example,
if "Height" is 0.30 and the pattern is "744", then the maximum ball height
is 0.30*7=2.10[meters].

Dwell ratio:
Dwell time / Throw time. Dwell time is the time from when a ball is caught
until it is thrown. Throw time is the time from when a ball is thrown until
the next ball is thrown. The ratio must be from 0.1 to 0.9.

R <=> L:
Switch right and left for the dominant hand.


< Animation >

The juggling figure is adult-sized. The breadth of his/her shoulders
is 50cm. When you set the speed to 1.0, the balls move in real time.

The screen is a mirror image. So it starts with the right hand. The hand
movement is not perfect. First, the "1" height throws are too high which
causes the next dwell time to be nearly 0. Second, you will notice that
the arms cross through each other on "Mills Mess". It doesn't occur on
"No through Mills Mess", but I think the trajectories are not beautiful.

When a ball is thrown, the number in the pattern on the top line changes
purple along with the tone, which expresses throw height.

The left bottom number represents your computer's speed. If it is 0 or 1,
no frames are skipped.

While animating, [Space] key pauses the time.


< Command Line Usage >

Usage 1: On the command line. Normal style only.
  JM <pattern> [option]
    /s<f>  Speed ratio. (0.1<=f<=2, default:1)
    /b     Start in silent mode.
    /h     Do not show hands.
    /g     Do not show patterns.
    /e     Start in English.(This mode)
    /?     This help message.
 Examples:
  JM 5 /b
  JM 441 /s.3

Usage 2: Start the menu.
  JM [option]
    /f<filename[.JM]>  (default:"PATT_E.JM")
 Examples:
  JM
  JM /fp1

Usage 3: Generate juggling patterns.
  JM <nnn> </p|/y> [/m<n>]
    <nnn>  3 numbers <number of balls(0 for all)><max. number><max. length>
    /p     Normal patterns.
    /y     Synchronous patterns. (max. number and max. length are even.)
    /m<n>  Multiplex. (1<=n<=5, default:1)
 Examples:
  JM 354 /p > p1
  JM 044 /y > p2
  JM 453 /p /m2 > p3
  JM 344 /y /m2 > p4


< Pattern File Format >

You can edit a pattern file to make up your own patterns. This program doesn't
have a function to edit it. Just use your favorite text editor.

Siteswap Patterns:
If you can read English, you already have a good siteswap documentation.
Please read "Siteswap FAQ" on the JIS (Juggling Information Service).
JuggleMaster can accept multiplex and synchronous patterns, too.

Throw heights of 10 or higher are expressed by the following alphabet:
 a  b  c  d  e  f  g  h  i  j  k  l  m  n  o  p  q  r  s  t  u  v  w  x  y  z
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35

Style patterns:
In siteswap notation, the locations where balls are thrown and caught are not
defined. Style patterns describe them by means of x-y coordinates (x:horizontal
y:vertical).

Each style pattern line has 4 values.
 { x1, y1 }{ x2, y2 }
   { x1, y1 } catch position
   { x2, y2 } throw position

 +-+-----+-----------------+----------+--------+
 | |value|   position      |   unit   | range  |
 +-+-----+-----------------+----------+--------+
 |x|  10 | throw-hand side |          | x>=-30 |
 | |   0 | middle          |  2.5cm   | x<= 30 |
 | | -10 | opposite side   |          |        |
 +-+-----+-----------------+----------+--------+
 |y|  10 | face            |  5cm     | y>=-10 |
 | |   0 | navel           |          | y<= 20 |
 +-+-----+-----------------+----------+--------+

A style pattern consists of one or more lines.
The first line of the style pattern is line 0, and next line 1,
line 2, line 3... The line 0 corresponds to the throw in time 0.
The line n to throw in time n. After the last line, the pattern returns
to line 0, and repeats. In synchronous patterns line 2n and 2n+1
are the same time.

The even-numbered lines correspond to throws from the right hand, the
odd-numbered lines to throws from the left. X-axis changes the
direction according to the right or left hand.

Hand movements don't vary in siteswaps without 0 or 2. In 0 or 2
throws, the hands doesn't move if the catch points are the same, or the
catch point and throw point are the same.

Parameters:
You can set default parameters in the lines with "#??=". Gravity and
Background color cannot be changed in the menu screen. You can set
"Height(#HR=)" and "Dwell ratio (#DR=)" anywhere, but the others just once.

Pattern file form:
All style patterns have their own name. You can call the registered styles
by "%<Style name>". A pattern file is loaded line by line, so you must
call them after they are registered. Pattern names must not be redundant.

You should not insert unnecessary lines while registering styles.

Siteswaps between styles belong to a section. In a section all siteswaps
are in the same style. The style is not changed in the section defined
by "%" line without the name.

For examples, see the "PATT_E.JM" file.


< System Requirements >

IBM PC compatible computer running MS-DOS with a VGA display adapter.
NEC PC-9801 compatible computer running MS-DOS.

Don't run this program on Windows.


< Copyright and Distribution >

JuggleMaster is copyrighted by Ken Matsuoka. You can use it free in a
non-commercial setting. You can distribute it, as long as all files are
included and unmodified.

This software is free software. But it's very sad for performers
that spectators go away without a word. If you like this software,
please E-mail me. About juggling in your country, your unique patterns,
suggestions, comments, etc.


< Bibliography >

"Kagaku Asahi" May,1994 "Peter Frankl no subete"
"EASY JUGGLE Version 2.3" (c)1994 Beyond Solutions
"JugglePro Version S3.6" (c)1993 Ed Carstens
"The Physics of Juggling" by Bengt Magnusson and Bruce Tiemann
"JuggleKrazy 1.0, Shareware version." Copyright (C) 1995, Solipsys Ltd.
"Siteswap FAQ version 2.0" November 10,1993 by Allen Knutson
"The Science of Juggling" Scientific American Nov 1995
"Beyond the Cascade" George Gillson ,The Ugly Juggling Company
"Charlie Dancey's ENCYCLOPAEDIA of Ball Juggling" ,Butterfingers


< Thank You >

In "Variety Art No Sekai" FMAGIC NIFTY-Serve, Chansuke-san, Mta-san and
many members have provided some useful informations and comments.

Nathan Hoover helped me to translate Japanese into English.

Paul Halter corrected mistakes in pattern file, and send me new patterns.

------------------------------------------------------------------------------
                      Ken Matsuoka ( E-mail: GBA03100@niftyserve.or.jp )
------------------------------------------------------------------------------
