Category : A Collection of Games for DOS and Windows
Archive   : MJVGA31.ZIP
Filename : MJVGA31.DOC

 
Output of file : MJVGA31.DOC contained in archive : MJVGA31.ZIP

















Mah Jongg
-V-G-A-
Version 3.1
November, 1991


Program and Documentation
Copyright 1988 - 1991 Ron Balewski




Mah Jongg -V-G-A- is a User-Supported (Shareware) prooduct. It is
freely available through User's Groups, Bulletin Boards, etc. You have
the opportunity to try the game and see if it suits your needs. If you
find that you enjoy and use this game, please send the requested
contribution of $15.00 to:

Ron Balewski
412 E. Ridge St.
Nanticoke, PA 18634-2915


User-supported shareware can exist only as long as you, the users, will
support it!




TABLE OF CONTENTS:
-------------------

FORWARD: A Message to current users .... 4
WHAT IS MAH JONG -V-G-A- ............... 5
HARDWARE REQUIREMENTS .................. 4

THE GAME OF MAH JONGG .................. 6
The Tiles ......................... 6
The Suits ......................... 6
The Game Board .................... 6
Playing Mah Jongg ................. 7
Strategy .......................... 7

PLAYING MAH JONGG -V-G-A- .............. 8
The Basics ........................ 8
The Added Features ................ 9
Special ...................... 9
K submenu .................... 9
Messages ..................... 9
Restore ...................... 9
Quit ........................ 10
New Game .................... 10
Save ........................ 10
What's Left ................. 10
Back-up ..................... 11
Help ........................ 11
Done ........................ 13
Turning Off the Menu ........ 13

The Special Sub-Menu ............. 14
Background .................. 14
Info... ..................... 14
DOS Shell ................... 14
Sound ....................... 15
Timer ....................... 15

Keyboard Commands ................ 16
Load Tile Set ............... 16
Box Cursor Toggle ........... 16
Hall of Fame ................ 17
Book-Marks .................. 17
DOS Shell ................... 17

Stack Control Menu ............... 18
Peek ........................ 18
Rotate ...................... 18
Remove ...................... 18








- Page 2 -


Command Line Options ............. 19
B ........................... 19
D ........................... 19
F ........................... 19
L ........................... 19
M ........................... 19
R ........................... 19
S ........................... 19
T ........................... 19

IN CASE OF DIFFICULTY ................. 20
TECHNICAL SUPPORT ..................... 20
BULLETIN BOARD ........................ 21
WHAT'S NEXT ........................... 21
SHARWEWARE ............................ 22
DISCLAIMER ............................ 22
PERMISSION TO COPY .................... 23

Appendix A: The Files ................ 24

Appendix B: The MIDI Sound Files ..... 25

Appendix B: THe ADLIB.CFG Adlib file . 28

Special thanks to Warren Storosko for his valuable assistance with
this project. Many of Mah Jongg -V-G-A-'s special features are a
direct result of his helpful suggestions.































- Page 3 -





FORWARD

A message to current users


As usual, there's a WHATSNEW.V31 text file listing all changes made
to MJVGA since the last release. Not too many this time, though!

I'd once again like to thank those who have registered the various
versions of MJVGA (this is the sixth release already!). Your constant
support and encouragement is what keeps me working on MJVGA.

The bound manual that I mentioned in the last release still isn't
ready -- and probably won't be unless a LOT more of you want it. To
date, I've had at most four people express interest in it. It
definitely wouldn't be worth my time for so few people -- I'd much
rather spend the time programming!

That MJ8514 version of Mah Jongg is almost ready. In fact, it's
been in "public beta test" for several months now. All I have to do
is get around to doing the documentation!

The registration fee will be $25. Yes, I know that's a bit more
than MJVGA costs. Part of the reason is that it'll be distributed on
at least one high-density disk and maybe two. The rest is because,
frankly, I think it's worth it!

Registered MJVGA users can order a test copy of MJ8514 for my
usual $3 handling fee. Others are on their own to find it!

























- Page 4 -





WHAT IS MAH JONG -V-G-A-?

Mah Jongg -V-G-A- is a high-tech simulation of the ancient Chinese
game of Mah Jongg. Some historians date Mah Jongg back to the time of
Confucius -- over 25 centuries ago!

It's believed that sailors and fishermen played Mah Jongg as a
diversion from the monotony of their long voyages. The game was
originally played with cards, but eventually bone and bamboo tiles were
substituted since these were less likely to be blown off the deck.

Mah Jongg -V-G-A- recreates the beauty and addictive pleasure of
Mah Jongg, but uses modern data processing techniques and
high-resolution graphics instead of bamboo tiles.

In an attempt to make this game as elegant and as enjoyable as
possible, the author has used some of the most advanced features of
today's state-of-the-art MS-DOS computers. Not all PC computers are
able to run Mah Jongg -V-G-A-. But if yours can, prepare yourself for
the meeting of the past and future!!!


WHAT DO I NEED?

Mah Jongg -V-G-A- will run on properly-equipped PC's and
compatibles with 640k of memory. It should run with less, but I don't
know the exact lower limit.

A VGA graphics card and a Logitech-compatible mouse are also
required. Certain convenience features require a three-button mouse.
However, the game can be played with a Microsoft-compatible two-button
mouse.

I also recommend a secondary monochrome monitor. Mah Jongg -V-G-A-
will use both the VGA and the monochrome monitors simultaneously to
display the game board and statistics. While you don't NEED the
monochrome display, I find it to be a useful part of the game.

A fast processor isn't really necessary. While a fast machine and
a fast graphics card will speed up tile removal somewhat, the game plays
just fine on a standard turbo XT.













- Page 5 -





THE GAME OF MAH JONGG
---------------------

THE TILES

There are 42 different tiles used in Mah Jongg as follows: 27 Suit
tiles (nine tiles in each of three suits), 3 Dragons, 4 Winds, 4
Seasons, and 4 Flowers.


THE SUITS

The Suit Of Dots - This suit goes back to the original sailor's
version of Mah Jongg. The dots probably represent money.

The Suit Of Bam - Bam stands for Bamboo. Because bamboo was used
to make deadly spears, this suit is thought to represent power or
victory.

The Suit Of Crak - These are also called Characters or Actors.
Crak may represent actual people or may simply be characters from the
Chinese alphabet.

The Dragons - In the Ancient Mah Jongg, each suit was associated
with a Dragon as follows:

White dragons - Suit Of Dots
Red Dragons - Suit Of Bam
Green Dragons - Suit Of Crak

This association has no direct bearing on the current play of the game.

The Winds - These tiles simply represent the four directions of the
winds -- North, South, East, and West.

The Flowers - The four flowers - Orchid, Plum, Mum, and Bamboo -
were introduced by a medieval princess to add beauty and romance to the
game.

The Seasons - This is another direct representation -- this time of
the seasons - Spring, Summer, Autumn, and Winter. It is thought that
the seasons were added to Mah Jongg by river gamblers.


THE GAME BOARD

Each game board consists of 144 tiles made up of four of each type
of tile EXCEPT for the Seasons and Flowers of which there is one each.
The tiles are laid out in a formation called a Dragon. The position of
each tile in the dragon is completely random, making each dragon unique.
Some are more formidable than others. Some are actually impossible to
defeat. But all are challenging and exciting.


- Page 6 -





The tiles are placed in stacks ranging in height from one tile at
the edge to five tiles at the center. The easiest way to understand the
dragon is to see one. Run Mah Jongg -V-G-A-. The dragon you'll see
will be a far better explanation than I can give.


PLAYING MAH JONGG

The object of Mah Jongg is simple -- remove all of the tiles by
matching pairs. But there IS a catch. Only tiles which are "free" can
be removed.

A tile is considered "free" if there's nothing on top of it and if
it can slide out to the left OR right. If tiles on both sides are
stacked to the same height the tile is not "free" to be removed.

Two tiles MUST be free and MUST be an exact match (exceptions
later) before they can be removed from the dragon. Removal of
mismatched tiles and removal of un-free tiles is not allowed.

The exception: Since there is one each of the Seasons and the
Flowers, these tiles cannot be matched identically. So any flower can
match with any other flower. Likewise, any season can match with any
other season.


STRATEGY:

During my countless hours of testing Mah Jongg -V-G-A-, I've found
a few pieces of strategy that seem to help:

--> Concentrate on removing the four tiles which are blocking the most
moves - the top tile, the single tile on the left, and the two tiles on
the right.

--> Look for quadruples. If all four of a given tile are free, remove
them all immediately. This will get them out of the way and won't cause
problems later.

--> Keep an eye out for doubles (two tiles free) of tiles with only two
left (the monochrome screen helps here). These should also be removed
immediately.

--> Before removing two tiles of four remaining, be sure that no OBVIOUS
harm (trapped tiles) will occur.

--> Always check for triples. If you've found a pair with four
remaining, see if any more are free. Then, take the two which will free
up the most tiles.





- Page 7 -





PLAYING MAH JONGG -V-G-A- 3.1
-----------------------------

THE BASICS

To start Mah Jongg -V-G-A-, just place the game disk into a drive,
log onto that drive, and type MJVGA31 at the DOS prompt. After some
disk activity, the opening screen will come up. A short time later, the
title screen will fade and the dragon will be drawn.

If you have a monochrome monitor connected to your computer, you
should be sure that it's turned on. From here on, I'll assume that
you're looking at both monitors. If you only have a VGA monitor, just
ignore all references to the Monochrome.

Tiles are removed by first selecting one, then selecting its mate.
To select a tile, just point to it with the mouse and press the left
mouse button. The tile will change color (and its listing on the
monochrome will be highlighted) to show that it has been selected. You
don't have to double-click to remove the tiles. When two tiles have
been selected, they will (after validation) be removed.

To de-select a tile, just click on it again. The tile and its
listing will return to normal.

If you click on a tile which is not free, a 'Tile Not Free"
meessage will appear on the left side of the screen after which the
offending tile will automatically be de-selected. Likewise, if you
select two tiles wcich don't match, you'll see a "Tiles don't match"
message after which both tiles will be de-selected These messages will
remain on-screen for a set period of time. However, you can cancel
them early by clicking the left mouse button.

The counter at the top-left of the VGA screen (and on the right
side of the monochrome screen) will show how many tiles remain in the
dragon.

This is all you really need to know to play the game. But, there
are some other features which make the play a lot more enjoyable. The
menu of features can be found in the upper right section of the VGA
display. I'll explain each of these features individually in a moment.
But, to activate any one of them, just point to the desired feature with
the mouse and click the left button.











- Page 8 -





THE ADDED FEATURES

For convenience, I'll describe the features as they appear in the
menu from top to bottom, starting with Special.



SPECIAL
=======
Selecting SPECIAL will open up a smaller sub-menu on the left
side of the VGA screen. You shouldn't need these features too
often, but they're nice to have just in case. I'll describe
each of these special features in detail later on.


K
=
Selecting the smaller K button on the right side of the SPECIAL
button will open another pop-up menu. This menu contains a list
of seldom-used features which, in past versions, were only
accessable via the keyboard. You can now select them with this
menu by left-presssing on K, dragging the mouse down until the
option you want is hilighted, then releasing the left button.
To close the menu without making a selection, just move the
mouse cursor off of the menu without releasing the button. The
menu will go away and you can then release the button without
selecting anything. For a complete description of these
features see the section on keyboard input later in this manual


MESSAGES ARE ON / OFF
=====================
This option controls whether or not the "Tile not free" and
Tiles do not match" messages are printed. The messages are
initially on. They can be toggled on / off by clicking on the
box. When the messages are turned off, un-free tile selections
are ignored and mis-matched selections are simply reset.
Experienced players may prefer to turn off the messages to keep
mis-clicks from slowing up the game with messages.


RESTORE
=======
Restore will load a game previously saved to disk. A window
will open and you'll be asked to select a file name. If you hit
this button accidentally, just cancel the restore by pressing
clicking on ESC.







- Page 9 -





QUIT
====
Selecting Quit will clear both monitors and return you to the
DOS prompt.


NEW GAME
========
Clicking on New Game will start a new game of Mah Jongg. The
VGA screen will clear and the computer will shuffle the tiles.
Then a new dragon will be drawn.

The New Game option can also be used to start the current game
from the very beginning without having to use the BACK-UP
command repeatedly. To re-start the current game, just hold
down the right mouse button while clicking on the New Game
button with the left.


SAVE
====
The Save command is Restore's partner. You can save a current
game to disk for later completion by clicking here. You'll be
asked for a file name for the game. If you decide not to save
the game, just press Return without typing anything. Either
way, you'll be returned to the current game.


WHAT'S LEFT
===========
To see exactly what tiles are left in the dragon, just click
here! The dragon will be replaced by a graphic depiction of
exactly how many of which tiles are left. Very useful for
determining tricky moves! To return to the game board, just
click the RIGHT mouse button.

To quickly find out how many of one type of tile are left, just
high-light the desied tile before selecting What's Left. A
message will appear on the left side of the screen telling
exactly how many of the selected tile are left. Note that if

you select a Season or Flower, the total number of Seasons /
Flowers will be shown.

Of course, monochrome users will seldom have to use this
feature. All of this information (and much more) is constantly
displayed on the monochrome monitor.








- Page 10 -





BACK-UP
=======
Each time you click on Back-up, your last move will be taken
back. Note that the tile(s) which are being returned to the
board will be momentarily highlighted on the monochrome screen.
This feature helps you to quickly return to "wherever I removed
those such-and-such tiles." You can back-up all the way to the
beginning of the game, if you like.


HELP
====
Help is really it's own little sub-function. When you click on
help, the machine will pause for a moment (it's looking for
moves) and will then do one of two things. If no moves are
left, you'll see a "No moves left" message on the left side of
the screen. You're now free to start a new game, enter the game
into the Hall of Fame (via the Done key), or back-up to try to
get farther in this game (I often do this).

If one or more moves is left, the message will tell you how
many. The tiles for the first move will be highlighted on both
monitors. Then, a small control panel with five buttons will
appear on the left section of the VGA screen. To leave Help,
click on Exit. To see the next move, just click on "Next".
Click on "Previous" to display the previous move. When you've
decided which move you'd like to take, you can execute it by
first stepping to it with the Next / Previous buttons and then
clicking on "Do It!" The help menu will disappear and your
selected move will be executed.

You can also "X-ray" the board to find which stacks a given type
of tile is in regardless of whether or not it's buried. To
start an X-ray, click on "X-ray" in the help menu. A tile will
be shown in the upper left section of the screen. Use the
previous / next buttons to step to the tile that you want to
find. Then, click on SHOOT to turn on the X-ray machine.

All stacks will grow dark and begin to flicker except for the
stacks containing the chosen tile. They will be highlighted.
You'll also notice an irritating high-pitched sound coming from
the PC's built-in X-ray machine. It's sometimes difficult to
interpret this X-ray, depending on the tile set.
Heavily-painted tiles are impervious to X-rays and can give
false readings. But, the readings are usually quite helpful.
And with practice, you'll get better at reading the X-ray.
After all, your family physician went to school for countless
years to learn to read them! One last thing -- the X-ray will
tell you which stack a tile is in, but NOT how deeply it;s
buried! If it's on top, you'll see it. But if it's buried,
you'll just have to dig or use Peek!



- Page 11 -





To turn off the X-ray machine, just click any mouse button. You
can then select another tile with the previous / next buttons or
return the game by clicking on Exit.

If you high-light a tile before clicking on Help, you'll be
shown only moves which use the selected tile value. For
example: If you select the One of Dots and then click on Help,
all One of Dots moves will be shown. If no moves are possible
using the selected tile, you will be so informed.

The help system is automatically exited when you select Do It!
to keep you from playing the entire game from within the Help
menu. After all, we've got to give the Dragon a fighting
chance!!

Some people have told me that they like to play MJVGA on their
own without help, but would like a quick way to find out if
there are any moves left. You can do precisely that by holding
down the right mouse button while you click on help. All you'll
see is a message on the left side of the screen which tells you
how many moves (if any) are left. The message will disappear
after three seconds, or you can cancel it by clicking the LEFT
mouse button. You'll be on your own to find the moves!


ATTENTION THREE-BUTTON MOUSE USERS:
This feature is for you! When you're in the HELP sub-function,
you can step through the moves by using the center and right
mouse buttons. Pressing the center button is just like clicking
on PREVIOUS. The right button is a short-cut for clicking on
NEXT. You can select EXIT by pressing the center & right
buttons at the same time. (These Previous / Next / Exit mouse
button shortcuts will also work from within the X-ray menu.)
There is no short-cut for Do It or Shoot! That'd make the HELP
function too convenient!

There is also a short-cut to entering the Help menu available to
you. Just click the center button! If you click the center
button while holding down the right, you'll be put into the
abbreviated help mode described above.

This short-cut can also be turned off in case you find yourself
accidentally hitting the center button & entering Help when you
don't want to. The C key or (or choosing 'Center Button' from
the 'K' menu) will toggle the short-cut on & off. A 'C' on the
command line will start the game with the short-cut turned off.








- Page 12 -





DONE
====
Done is a combination of Quit and New Game, but has some added
features as well. When you select DONE, your score for the game
will be calculated and, if you've made the Hall of Fame, you'll
be asked to enter your name. Either way, your score & the Hall
of Fame will be displayed. You'll then be given the option of
quitting or starting a new game.

Note that QUIT and NEW GAME don't evaluate the game for
inclusion in the Hall of Fame. You could use these if you're
not interested in the Hall of Fame or if the game has gone so
badly that you don't want the embarrassment of being told that
your score was thousands of points higher than what's needed for
HOF entry.


TURNING OFF THE MENU
====================
The entire features menu can be removed from the gameboard by
clicking on the upper "MAH JONGG -V-G-A-" title. When the menu
is removed, all menu operations are disabled except for "HELP",
which can still be accessed via the center mouse button. To
return the menu and restore its operations, just click in the
title area again.

What's the reason for this feature? None, except for aesthetics.
Someone suggested that the board might look nicer if the menu
could be removed. I tried it and found out that he was right.
The board looks MUCH nicer when you don't have to stare at that
ugly menu!























- Page 13 -





THE SPECIAL SUB-MENU

I'll now describe the functions available in the SPECIAL sub-menu
in the order of their appearance:


BACKGND
=======
This feature will let you TEMPORARILY change the background
color of the board. When you select BACKGrouND, another small
window will open. You'll see three bar-graphs labeled Red,
Blue, and Green. You can raise or lower the content of any
color by clicking on its UP or DOWN button. The color will
increase or derease one "notch" for each click. Holding down
the center button while clicking will increase or decrease the
color value by 10 "notches" with each click. When you've got
the color set to what you want, just click the right mouse
button to return to the game.


Note that this color change is temporary. When you quit the
game, the color will be lost. The next time you run MJVGA, the
default color will be used. If you wish to change the
background color permanently, you must use The Draftsman.


INFO...
=======
Selecting INFO... simply displays the game title, a copyright
notice, a shareware notice, and the author's name & address.
This isn't necessary, but it's nice to have just in case the
program gets separated from its .DOC file. To return to the
game, click the RIGHT mouse button.


DOS SHELL
=========
This feature will let you drop to DOS without losing your
current game (and without having to save it). I added this
feature because I always seem to get important business phone
calls requiring access to a file on my PC during a game of Mah
Jongg!

To return to the game, just type EXIT at the DOS prompt.

NOTE: As with any shell-to-DOS, you MUST NOT run any TSR-type
programs from within this shell! Doing so could crash the
system!! If you choose to run a TSR from here, don't say I
didn't warn you!!!





- Page 14 -





SOUND
=====
This button simply toggles the sound on and off. With the sound
turned off, you won't hear all the various beeps, clicks,
buzzes, and bloops.

TIMER
=====
The Timer button toggles the timer display off and on. The
timer will continue to keep time, even if the display is turned
off.


Selecting any item on the Special sub-menu will automatically close
the sub-menu. If you'd like to exit the sub-menu without making a
selection, just press the right mouse button.






































- Page 15 -





KEYBOARD COMMANDS

There are several features which are accessable by either pressing
a key on the keyboard or using the eyboard drop-down menu as
described above. The on-screen menus were getting just too darn
crowded, so the new features seem to be "overflowing" onto the keyboard
and it's (new) associated drop-down menu.


LOAD TILE SET
=============
You can load in an alternate tile set at any time by tapping the
"L" key. A list of available tile sets will be shown, along
with a scroll bar if you have enough sets. To choose a tile
set, just scroll thru the list with the scroll bar (you DO know
how to use a scroll bar, don't you??) and click on the desired
tile set. The four small buttons on the bottom are for special
"actions" as follows:
Enter - Selects the highlighted tile if you made a selection
via the keyboard (arrow keys will move a hilite bar up or
down, while page-up / page-down will move the scroll bar).
ESC - Exits the tile selector without choosing another tile
set.
Move - Allows you to move the tile selection window (although
I can't see why you'd want to!!)
Opt - Allows you to change either the sort (alphabetic or
date) or the drive / directory. For example, to load
tiles from the A drive, you'd select Opt, then select PATH
from the pop-up menu (you can move this little thing, too,
by clicking on the top title bar), then typing A:\ at the
"new path" prompt. You MUST end all entered paths with a
backslash!!! If you don't, you'll get an error message!!!


CURSOR BOX TOGGLE
=================
MJVGA supports an alternate "box" cursor in addition to the
standard mouse pointer. When the box cursor is turned on, a
thin box will be drawn around a tile when it's being "pointed
to" by the mouse cursor. Some people seem to like this feature,
while others don't. It does make tile selection a bit more
accurate, but can be quite distracting. If you like the box,
use it -- if not, don't. It can be turned on & off by tapping
the "B" key. Note that when the box cursor is active, the mouse
arrow will NOT disappear -- they'll both be visible.









- Page 16 -



HALL OF FAME
============
MJVGA maintains a "Hall of Fame" for high scorers. Whenever you
win a game or choose "Done" and if your score is one of the
top ten, you'll be asked to enter your name into the hall of
fame. The hall of fame honor roll can be called up at any time
by pressing the "H" key. Click any mouse button to return to
the game.

The "Hall of Fame" file can also be edited with the included
editing utility. For details, please see the utilities manual.


BOOK-MARKS
==========
MJVGA will store up to five "book-marks" which will allow you to
easily back up to a given point in the game. To save a position
in one of the book-marks, just type thru for
book-marks 1 thru 5. To back up to a bookmark, just type it''s
number. MJVGA will then back up move-by-move (just as if you
repeatedly clicked on back-up) until it gets to the marked spot.
Please note that these book-marks are NOT currently saved with
the game when you select SAVE GAME.


DOS SHELL
=========
You can now easily get to the DOS shell by hitting - D at
any time. Someone suggested adding a "boss key" feature, and I
decided that getting you to an innocent-looking DOS prompt
quickly would probably be enough to save your job. So, here it
is! As with the menu-selected DOS shell, you just type EXIT to
return to the game.


Center Mouse Button Switch
==========================
MJVGA31 now includes a "mouse klutz" option which will turn off
the center-button 'help' short-cut for those who tend to
accidentally hit this button. The 'C' key (or its
corresponding entry in the 'K' submenu) will toggle the
center-button 'Help' short-cut on & off.


Automatic "No Moves Left" Sensing
=================================
MJVGA will, by default, pop up a "No moves left" messge whenever
you make the last available moe. This automatic warning can be
toggled on & off with the 'I' key.

Pause
=====
When Pause is selected, MJVGA will clear the screen, display a
little graphics gizmo, and pause the timer. This is perfect for
when the phone rings at the most inopportune time!

- Page 17 -






STACK CONTROL MENU

To get the stack control menu, just point to a tile stack and press
the RIGHT mouse button. Then, drag until your desired operation (all
are explained below) is highlighted & release the button. To close the
menu without making a selection, simply drag the mouse pointer off of
the menu, which will then vanish.

The stack control menu features three choices, as follows:

PEEK
====
PEEK will allow you to see all the tiles in a stack, and what order
they're in. Because this only helps you plan your strategy, but
doesn't give away any moves, there are no Hall of Fame penalty
points added to your score for accessing PEEK. The HOF will,
however, keep track of how many times you used this feature.


ROTATE
======
This command will "rotate" the stack - ie, all tiles will move up
one position, except for the top tile which will move to the
bottom. This is very much a desperation "cheat" maneuver and
should be used sparingly. In fact, if you use this or the next
REMOVE feature, your game will no longer be eligible for the Hall
of Fame. You'll be so warned the first time you attempt either of
these cheats within a game.

One important problem with Rotate is that it can cause the Back-up
feature to behave strangely. Back-up builds up one tile on the
affected piles without checking them for validity, so if you
back-up a rotated pile, you may get un-matched pairs coming back.
I have no intention of fixing this problem, so don't even ask. If
you're resorting to this to try to win, you don't deserve to back
up!


REMOVE
======
This feature is even more of a cheat than Rotate. You can remove
ANY top tile, without regard for matching or being free. As I said
above, using this feature will keep your game out of the Hall of
Fame -- so use it only as a last resort!!










- Page 18 -





COMMAND LINE OPTIONS

Mah Jongg -V-G-A- v3.1 will accept several different command line
parameters as follows:

A - Use an Adlib sound card for sound effects.

B - Begin the game with the "box cursor" turned on

C - Begin the game with the center mouse button 'Help' short-cut
turned off.

D - Enables the dual-monitor feature. MJVGA30 will NOT use a
secondary monochrome monitor unless ordered to via the D
parameter. Earlier releases used a second monitor by default.
However, that caused compatibility problems on some systems
without monochrome cards.

F - Read PAL.CFG and all .TIL files from another disk or
subdirectory. Some examples:

f=a: <== This reads all files from drive A:
f=E:\MJVGA\TILES2\ <== Reads tiles from E:\mjvga\tiles2

Note that all subdirectory references MUST be terminated with a
backslash (as above).

I'm not really sure how well this feature works with .TIS files.
I added it back in version 2.0, when all tiles were in individual
files, and haven't really used it much. So, be VERY careful when
using this feature!!

I - Start the game with teh No Moves Left auto-sense turned off

L - Loads a particular tile set. For example, L10 would start the
game with tile set V10.TIS.

M - Begin the game with messages off

R - Use a Roland MT-32 (or other MIDI sound module) to produce game
sounds. See the appendix on customizing the midi sound file for
your particular synth.

S - Begin the game with sound off

T - Begin the game with the timer display off

Some of these options can be changed once the game is started.
The command line settings simply control the position of these switches
when the game starts. They let you set up the game to your liking
without having to click on buttons once the game starts.

The parameters must be single letters (except for the F parameter)
separated by a space. They can be entered in any order.
- Page 19 -





IN CASE OF DIFFICULTY

So far, I've come across only two problem that you may encounter.
The main symptom of the first is the lack of a mouse pointer, although
you will be able to highlight tiles with the left button.

The problem is caused by an out-of-date mouse driver. MJVGA uses
the 640x480 VGA graphics mode, and mouse drivers which were written
before VGA became a standard simply don't know how to deal with the
high-resolution graphics screen.

I've heard about this problem with the Kraft Micro-Mouse, the Mouse
Systems mouse, and the Logitech mouse.

The solution is to simply get a newer mouse driver from the
manufacturer of your mouse. I know for a fact that Logitech (which is
what I use) and Mouse Systems have updated drivers available which will
correct this problem.

The second is characterized by garbage being drawn on the screen
whenever a window closes. This is new starting with version 3.0. It's
caused by MJVGA not having enough memory to store the underlying screen
image. A single VGA screen image can require up to 150k to store.
MJVGA will use either conventional memory or EMS 4.0 expanded memory,
whichever is available. If you should run into this problem, you may
be able to correct it by either freeing up some conventional memory or
by making EMS memory available.



TECHNICAL SUPPORT

If you have any problem with MJVGA, please let me know. I'll be
glad to do what I can to help you get it running. Of course, I can't
guarantee that MJVGA will run on all systems! No software company can
do that! But so far, I haven't heard of any major compatibility
problems (except for the out-of-date mouse driver problem addressed
above). So, chances are it'll run OK on your PC.

My only request is that you enclose a SASE if you would like a
reply. My policy has been (and always will be) that I will NOT reply
to letters from non-registered users unless they include a SASE. I
really don't think it's fair to expect registered users to (literally)
pay the expenses of technical support for non-registered users.
However, I will definitely reply as long as you cover the costs by
sending a SASE.

I can now be reached on BIX, if you'd rather send E-Mail. My
username is "rbalewski". I'm usually on a couple times a week, so you
should get a prompt reply.




- Page 20 -





BULLETIN BOARD

The Party Line is still in Texas, so there's still no MJVGA tech
support BBS. I've been planning to put up my own board, but I don't
know when that'll happen.




WHAT'S NEXT

I'm still looking for more tile sets. I'm now offering TWO (oh,
boy!) tile set disks to anyone who contributes a tile set to the
collection. So far, I have at least five disks worth. Thank you to all
who contributed!

I really don't know what new features (if any) will be added to
MJVGA from here. It does just about everything I can think of. If you
have any suggestions, send them in -- I need them!



































- Page 21 -





SHAREWARE

Please remember that this game is NOT public domain. It is
shareware! If you play and enjoy this game regularly, you are urged to
send the registration fee of $15.00 (or any amount that you see fit).
Remember, shareware will only be around as long as YOU support the
concept!

When registering, please include the version and serial number from
the copy of MJVGA that you have. All registered users will receive the
next update free-of-charge. However, if I don't know what you've got, I
may send you a duplicate copy!

If you'd prefer to register with a simple fill-in-the-blanks form,
you can print a registration / order form by pressing CTRL R while
running Mah Jongg -V-G-A-. The form will print to printer port LPT1, so
be sure the printer is turned on and selected.

The order form also includes check-boxes to order various tile set
library and Mah Jongg -V-G-A- utility disks (all public domain) for $3
per disk. Please note that I will send these disks ONLY to registered
MJVGA users. If you wish to order any of them but are not a registered
user, you MUST include the $15 registration fee with your order. All
extra disk orders from unregistered users WILL BE DISCARDED!!!!

Whether or not you choose to register, I'd like to hear your
comments and suggestions on Mah Jongg -V-G-A-. If you'd like a reply,
please include a stamped, self-addressed envelope.

All comments and contributions can be sent to:

Ron Balewski
412 E. Ridge St.
Nanticoke, PA 18634-2915

DISCLAIMER

In no event shall the Author be liable to you for any damages,
including any lost profits, lost savings, or other incidental or
consequential damages arising out of the use of or inability to use this
program, even if the Author has been advised of the possibility of such
damages, or for any claim by any other party.












- Page 22 -





PERMISSION TO COPY

Individuals, clubs, and other organizations are granted permission
by the author to freely copy and distribute this program and
documentation as long as:

1. There is no charge for the software or documentation. However, you
may charge a service fee for disk duplication and distribution, as
long as such fee is not more than $5.00.
2. Club members are informed of the user-supported (shareware) concept
and are encouraged to support it with their donations.
3. The program or its documentation are not modified in any way.
4. All files are distributed together on the same diskette (if
possible). No file may be deleted.



ATTENTION SHAREWARE VENDORS:
============================
You have my permission to distribute this copy of MJVGA as long as
you don't charge more than $5 for the disk. However, please don't ask
me to send you an updated copy at my expense, because I won't! After
all, you're the guy making money on MJVGA (probably more than I am) by
selling copies. The least you can do is cover my expense of sending you
a copy. Unless your request is accompanied by a stamped, self-addressed
return mailer & a blank formatted disk (or a $3 check), your request for
a freebie WILL GO DIRECTLY INTO THE CIRCULAR FILE!!! THERE WILL BE NO
EXCEPTIONS!!! If you are considerate enough to cover my costs, though,
I will definitely send you a fresh, new copy of MJVGA. Be sure to send
your request on your company letterhead, since I WILL NOT send copies
to the general public! Only registered users & shareware
distributors will qualify to get disks directly from me. Again, NO
EXCEPTIONS!!!





















- Page 23 -






Appendix A

The .TIL and .TIS files


If you'd like to give some newly-created tile to a friend, you've got
to know which file to give him! That's the purpose of this Appendix!
The .TIL files are related to the images as follows:

V00.TIL == Bamboo 1
thru thru
V08.TIL == Bamboo 9
V09.TIL == Dots 1
thru thru
V17.TIL == Dots 9
V18.TIL == Crak 1
thru thru
V26.TIL == Crak 9
V27.TIL == North
V28.TIL == East
V29.TIL == South
V30.TIL == West
V31.TIL == Dragon C
V32.TIL == Dragon P
V33.TIL == Dragon F
V34.TIL == Spring
V35.TIL == Summer
V36.TIL == Autumn
V37.TIL == Winter
V38.TIL == Orchid
V39.TIL == Plum
V40.TIL == Mum
V41.TIL == Bamboo
V42.TIL == Reserved -- Internal use
V43.TIL == Reserved -- Internal use

PAL.CFG == Color configuration file (changeable with The Paint
Shop section of The Draftsman)

If you customize a complete set of tiles and save them to a separate
diskette, BE SURE to include an EXACT COPY of V42.TIL and V43.TIL.
Without these files on the same disk & subdirectory as PAL.CFG and the
other .TIL files, MJVGA will refuse to load!!! Also note that these
files are not (at present) user-changeable!!!

The .TIS (tileset) file is new to MJVGA21 and later. It consists of all
the above tiles saved as one large file. A collection of .TIL files can
be assembled into one .TIS file with the PAKTIL utility. The UPPAKTIL
utility will do the opposite -- break a .TIS file apart into 44 .TIL
files and one PAL.CFG file.

Note that The Draftsman REQUIRES .TIL and PAL.CFG files to operate. It
WILL NOT work on a .TIS file. Before using The Draftsman, you MUST use
UNPAKTIL to disassemble the thile set that you want to change.
- Page 24 -





Appendix B

MIDI, MJVGA30, and the MJMIDI.SND file


MJVGA31 comes pre-configured to use the Roland MT-32 sound module
along with a MIDI interface card (the all-in-one Roland board should
work, too). All you have to do is add an R to the command line to tell
MJVGA that the MIDI hardware is there & you want it used.

If you have another synth/sound module, you may have to do some
work to be able to use it.

MJVGA gets its sound program from a file named MJMIDI.SND, which
is really a collection of small, sequential programs which MJVGA will
execute whenever some sound is called for. There are also other .SND
files on the disk, such as MT32.SND. Generally, the file name will give
you a clue as to which synth the file's for.. ie, MT32.SND is for the
Roland MT-32, D110.SND is for the Roland D-110, etc. Initially,
MJMIDI.SND and MT32.SND are identical -- meaning MJVGA30 is configured
for the MT-32. To configure it for another available syth, just type:

COPY MJMIDI.SND

For example, to set MJVGA30 to use the Kawai MS710, you would enter:

COPY MS710.SND MJMIDI.SND


If your synth isn't one of the few that I've pre-configured, you'll
have to write your own configuration file. It's not as hard as you
might think, though. The fact that you're experienced enough to have a
MIDI PC means you should have no trouble at all.

First, print out a copy of MT32.SND or MJMIDI.SND. I'll refer to
this listing as I describe the details of the .SND file. It's a
standard text file, so any printer will work.

There are currently 9 sound routines. Each sound routine is
preceeded by a *n line, where n is the number of the routine. The
text following the *n is a comment and will be ignored. In the MT32
listing, it will tell you when each sound is called and what instrument
I'm using. For example, sound routine *1 produces the "tick" sound
that's heard every time a tile is selected or de-selected. The other
sound routines are similarly named.

The lines between *n lines make up the actual MIDI program. The
left-most digit is an op-code (I'll give you a complete list shortly).
The remaining numbers are parameters such as delay times, MIDI channels,
MIDI patches, or whatever a particular code needs to do it's thing.




- Page 25 -





The complete language syntax is as follows:

1 p1 p2
Send patch change command
p1 = MIDI channel
p2 = patch number

2 p1 p2 p3
Send note-on command
p1 = MIDI channel
p2 = note
p3 = velocity (0 - 127)

3 p1 p2
Send note off command (Actually a note-on with velocity of 0)
p1 = MIDI channel
p2 = note

4 p1
Delay p1 milliseconds
p1 = # of milliseconds to delay

5 p1
Turn all notes off by sending all notes a note-on with 0 velocity
p1 = MIDI channel

6 p1
Turn on a random note at a velocity of 127
p1 = MIDI channel


There you have it -- the complete configuration language. You can
probably figure out the rest from here, but I'll analyze a couple lines
of code for you just to be sure.

The first line of code under section *1 reads:
1 2 120
This means transmit a patch change message on MIDI channel 2 to change
to patch #120.

The second line of *1 reads:
2 2 60 127
This means send Note-on command on MIDI channel 2 for note 60 with a key
velocity of 127.

As I said earlier, the comments by each *n program section will
tell you what each section is used for and what sound I'm currently
using for that effect. The simplest way for you to customize this file
is to just change the patch commands to point to something on your synth
that's similar to what I'm using, then change the MIDI channels, if
necessary, to some that your synth can use. You can get really
creative, though. For example, you might want a brass fanfare every
time you match two tiles.

- Page 26 -





There are only two things to watch for. First, a given sound
routine can have no more than 50 steps. Second, and more important, is
the fact that these sounds are NOT background sounds. When the sound is
being generated, that's all the PC can do. You don't go on with the
game until the sound's over. So, if you program a 10-minute fanfare
whenever you match tiles, you'll have to wait ten minutes before you can
continue playing. So be careful!!!















































- Page 27 -





The ADLIB.CFG file


The sound configurations for the Adlib card are stored in this
file. Each sound (there are 5 different ones) has a list of 28 numbers
in the ADLIB.CFG file. The starting number of each sound is commented
as to which sound it is. The numbers are in sequential order as they'd
appear in the standard Adlib header. I won't go into details of how to
program the Adlib synthesizer -- this isn't the place for such a
discussion. But once you learn what the parameters do, you'll be able
to customize MJVGA30's sounds.

Following the five sound parameter groups are several note
indicators. This number controls the pitch of the sound. For example,
to make the tile select tick higher, you'd increase the value of the
number labeled "tile select note." Again, I won't go into details about
Adlib programming.





































- Page 28 -


  3 Responses to “Category : A Collection of Games for DOS and Windows
Archive   : MJVGA31.ZIP
Filename : MJVGA31.DOC

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/