FabSoft, Inc.
http://www.fabsoft.com

ShortCut for DOS Ver. 2.0
=========================   

ShortCut is written for all DOS based programs.  ShortCut is a 
TSR program that allows you to prepare keystrokes for a lengthy task. 
By pressing a hot key combination, you will be able to send those keystrokes 
of your choice to your applications quickly and accurately.  ShortCut 
is a TSR (Terminate Stay Resident) program that requires very small amount 
of memory (about 11.5K). It can be loaded high by using your memory manager, 
such as EMM386.EXE. There is no limit in number of keystrokes. In addition, 
you can benefit from ShortCut script commands to maximize your productivity.

NOTE: ShortCut for DOS is Freeware, FabSoft is under no obligation to
supply technical support. FabSoft may respond to e-mails, add information to help file or add solution to the next upgrade.

------------------------
SYSTEM REQUIREMENTS:
------------------------
-8086 processor or above.
-MS-DOS operating system version 3.3 or later
-Hard disk.

--------------------------
DISCLAIMER OF WARRANTY:
--------------------------
Although this software and documentation have been thoroughly tested and 
reviewed, both are provided solely "as is" and without warranty of any kind.
FAB Soft, Inc. specifically disclaims all warranties, expressed or implied, 
including, but not limited to, implied warranties of merchantability and 
fitness for a particular purpose with respect to defects in the diskette(s),
documentation and software.


----------------------
LOADING ShortCut:
----------------------
At your Installed drive, change directory to \ShortCut then 
type: ShortCut -<path to script files>. 
For example, if your Shortcut Scripts locate in your C:\ShortCut directory, 
you will type ShortCut -C:\shortcut\ to load.

NOTE: In some instances, activating ShortCut from within MS-DOS EDITOR may 
cause the system to hang.

-----------------------
REMOVING ShortCut:
-----------------------
Change directory to \ShortCut then type ShortCut /U to unload ShortCut 
from memory.

-----------------------
ACTIVATING ShortCut:
-----------------------
To activate ShortCut, press LeftCTRL-F9. A window will appear prompting you to 
type in a keystroke-file name(will discus in more detail later). Type 
in a keystroke-file name you would like to execute. If the file is not 
found in \ShortCut directory, the program will prompt an error, and resume 
the operation of your foreground application. Anytime during keystroke 
execution, you can hit LeftCTRL-F9 to cancel. 

-----------------------
ABOUT KEYSTROKE FILE:
-----------------------
Keystroke-file can contain any keystrokes and useful script commands. 
The file can be created or edited by using a text editor (If you own 
DOS 5.0 and above, you can use EDIT <Filename>).   Each line of text must 
end with ; which represents <ENTER> key.  Any text that comes before ; 
will be dumped directly to your foreground application (the application 
that you are running ).  Anything following ; are ignored, therefore, 
it is a good place to add any comments for your reference. The listing 
shown below is an example file that will help you understand the concept:


	This is the first line;     Comments can go here
	This is another line;     Comments can go here
	
The above example will results in two lines of text being typed into 
your foreground application.

-------------------------
ABOUT SCRIPT COMMANDS:
-------------------------
The followings are the script commands that you can use within the 
script file:

~BOM 
	Insert beginning date of current month in the form of  mm/dd/yy

~EOM 
	Insert ending date of current month in the form of mm/dd/yy

~QST(<Question Number>,<Prompt Text>,<Length of Answer>) 
	Ask Question & store the answer for later use.  Question number must be 
	unique and the first question should start the question number with 1.  
	Maximum number of questions is 10.  

~ANS(<Question Number>) 
	Insert stored answer from question previously asked.  

~PAU(<Number of Seconds>) 
	Pause for number of seconds

~WAI(<row>,<col>,<text to look for>);
	Suspend the execution until a text (sent to by your foreground application)
	appears on screen at the specified row (from 1 to 25) and 
	column (from 1 to 80).

~IFS(<row>,<col>,<text to look for>);
	This command will look for a text (sent to by your foreground application) 
	on screen at the specified row & col.  If the text is found the script
	within ~IFS() & ~ENF will be executed.  Otherwise, the script command
	within ~IFS() & ~ENF will be ignored.

~IFA(<Question Number>,<text to compare>);
	This command will compare stored answer from question previously asked with
	the text you specify.  If the match is found then the script within 
	~IFA() & ~ENF will be executed.  Otherwise, the script command within
	~IFA() & ~ENF will be ignored.

~ENF
	Signifies the end of if block.  Notice the following examples:
		
	Example 1:
	==========
		~IFS(1,1,Ready);     Check for text on screen
		.....
		script goes here....
		.....
		~ENF;

	Example 2:
	==========
		~IFA(1,Yes);         Compare answer from question 1.
		.....
		scripts go here....
		.....
		~ENF

*NOTE*: Any text within a script command is taken literally; therefore, 
		  spaces before or after the text will be included as a part of your 
		  text. 


--------------------------------------
SAMPLE USAGE OF THE SCRIPT COMMANDS:
--------------------------------------
Please observe the following example of script file:

1)      ~QST(1,Enter Customer name:, 10);
2)      Beginning of the month is ~BOM;
3)      End of the month is ~EOM;
4)      ~PAU(5);
5)      ~WAI(22,1,Ready);
6)      ~IFS(22,1,Ready);
7)      The system is ready;
8)      ~ENF;
9)      ~IFA(1,John);
10)     Found Customer Name;
11)     ~ENF;
12)     Customer name you entered is ~ANS(1);

-----------------------------------
EXPLAINATION OF EACH SCRIPT LINE:
-----------------------------------
1)  When this script is activated, you will be asked to enter customer number:
    Actual output: +----------------------+
		   | Enter Customer name: |
		   | __________           |
		   +----------------------+

2)  The whole text will be typed out and ~BOM will be replaced by beginning 
	 of current month:
	 Actual output: Beginning of the month is 05/01/94

3)  The whole text will be typed out and ~EOM will be replaced by end of 
	 current month:
	 Actual output: End of the month is 05/31/94

4)  ShortCut will pause for 5 seconds before continuing to type out the rest 
	 of text.  This is useful when you want to wait until certain critical 
	 operation (such as printing) of your foreground program is done before 
	 the next keystrokes continue.

5)  This command instructs ShortCut to halt the execution until a text "Ready"
	 appears at row 22 and column 1.  This wait command is used when you do not
	 know the specific length of time to wait until certain operation is 
	 completed.  But, you know what prompt and where it will be displayed on 
	 screen when the operation of your foreground application is done.

6)  Check & see if "Ready" is at row 22 and col 1.

7)  If "Ready" is found at the location, execute the script within 
	 ~IFS() & ~ENF
	 Actual output: The system is ready

8)  End of if block

9)  Check & see if answer from question #1 match "John"

10) If the name matches then execute the script within ~IFA() & ~ENF
	 Actual output: Found customer name

11) End of if block

12) The whole text will be typed out and ~ANS(1) will be replaced by 
	 the answer entered on question 1:
	 Actual output: Customer name you entered is John.

-------------------------------------------
** IMPORTANT NOTES ON ADVANTAGE VERSION: **
-------------------------------------------
In between screen changes, you must include these 2 following commands:

   ~PAU(3);
   ~WAI(23,2,F1=Help);

Example and description:
========================

      Script                               Description
      ------                               -----------

   CD\ADVANT\;           Change directory to Advant directory
   ADV;                       Execute Adv
   user;                      Type in user Name
   password;                  Type in password
   ~PAU(3);                   ** Screen changes occurs (to Main Menu screen).
   ~WAI(23,2,F1=Help);        
   g;                         Type goto command
   ar01;                      goto AR01 module
   ~PAU(3);                   ** Screen changes occurs (to AR01 screen).
   ~WAI(23,2,F1=Help);        



	**************************************************************
	      For more information, please go to our web site at:
			       http://www.fabsoft.com
	**************************************************************
