Please take the time to read the License, Warranty and Registration
information. If you have received this file without printed documentation,
this information is contained in the file named LICENSE.DOC.
The information contained in this file/pamphlet outlines copyright
information, licensing agreement, warranty, technical support policies and
additional information about registering your software. It also includes
descriptions of other programs by Transversal Design in which you might be
interested. Please take the time to read this information to be sure you
understand your rights and the expectations/guidelines of Transversal Design.
Introduction:
Welcome to 2nd Shift! The fact that you have bought or downloaded this
program indicates that you have come to the same conclusion that we at
Transversal Design did: why can't the computer do some things without having
someone sitting at the keyboard? Many parts of any job are simply running the
computer at specific times and doing the same steps.
The computer can be a very powerful tool. Unfortunately, many software
companies assume that someone will be sitting at the computer telling the
proggram which step to take next. Some have macro abilities but still need
someone to start the program and macro. Many have the ability to be run in a
batch file with automatic spreadsheets and macros to be run, but still need
someone to start the batch file.
Enter 2nd Shift. With 2nd Shift, you can automate practically any program,
regardless of its initial design. The concept is simple. You set up a batch
file to wait until a certain time and/or date, then execute the desired
program with pre-recorded keystrokes to pass to the program. You run the
batch file, then walk away. It is exactly the same as if you gave the
computer a list of things to do at specific times. 2nd Shift "fakes" the
computer into thinking someone is sitting there typing.
We chose to call the program 2nd Shift because we believe it will be used to
execute instructions during non-business hours. Rather than pay an employee
to come in and babysit the computer, make the computer your second shift
employee! This would allow you to use your employee in a more creative,
satisfying and productive fashion than just babysitting a computer. It could
also be used to perform tasks during a given week while an employee is on
vacation, or used to perform tasks when an employee calls in sick.
2nd Shift does have limitations. One known incompatibility is that Sidekick
cannot be loaded into the computer while 2nd Shift executes (either in record
or playback mode). This is due to the fact that Sidekick is notorious for
"re-stealing" some of the interrupts that 2nd Shift uses. Later versions of
2nd Shift may be compatible with Sidekick.
Another limitation is that the playback program requires approximately 50k and
the record program requires approximately 70k to run. This includes a 32k
buffer for keystrokes. Some programs may not have enough memory to execute
with 2nd Shift loaded. For instance, if you are using a spreadsheet program
printing very largge worksheets, you may not have enough memory to load 2nd
Shift, the keystrokes, the spreadsheet program and the worksheet.
Experimentation will tell you if you are running into a memory problem.
The real number of keystrokes which are recorded is approximately half of the
32k buffer. This is because every time a key is typed on an IBM or
compatible, two pieces of information are returned. Some programs use one
piece, others use the second and some use both.
Some programs "flush" the keyboard before any keystrokes are accepted. Thes
programs will not work with 2nd Shift. The way to tell is to run the desired
application and type keystrokes before the computer is ready for them. If the
typed keys are lost, the playback will not be able to "type" them either.The final limitation is that the application cannot require human interaction.
For instance, you can't use 2nd Shift to format 50 disks because someone needs
to put the disks in the drive (sorry, we haven't figured out a software
solution for this... yet). You coudl use it to format a 40 meg tape in your
backup unit and backup the drive after the formatting of the tape is done.
To get the most out of 2nd Shift, you should have a fair knowledge of DOS and
how to execute programs. We wwill cover batch files and basic setup of the
same.
Conventions Used:
One of the main problems of all software documentation is how to differentiate
between what to type and other information. We will use UPPERCASE letters to
signify what to type. Any information enclosed within less-than ( < ) and
greater-than ( > ) signs means to locate and press the key within the signs,
not the letters themselves. For instance, <Enter> means to press the key
labelled "Enter" (note: on some computers, this may be labelled as "Return").
<F1> would mean to press the <F1> key, not to type the letter F followed by
the number 1. <Shft-F1> means to hold the shift key down and press F1, <Ctrl-
F1> means to hold the Ctrl (or control) key down and press F1, and <Alt-F1>
means to hold the Alt key down and press F1. When uppercase is used, it
always referes to a program name or a directory name.
The Programs:
2nd Shift comprises of six programs and two batch files to cover all levels
and desires of users. They are:
Timer.EXE Makes the computer wait until a specific time and/or date.
2ndShift.EXE The playback program.
2ndWatch.EXE The recording program.
2ndConv.EXE Converts a text file into a 2nd Shift keystroke file. This
program is only included with registration of the software.
KeyConv.EXE Converts a 2nd Shift keyfile into a text file. This program
is only included with registration of the software.
2ndTest.EXE Simple example file.
PlayBack.Bat Example batch file.
Record.Bat Example batch file.
General Information:
Computers are dumb. They must be told what to do at every step. When they
don't have an instruction, they typically just sit there and wait (kind-of
like a number of employees you may have encountered).
Programs, in a broad sense, are a collection of instructions for the computer.
Generally, this collection of instructions will carry out the desired steps
within the context of the program. A user must instruct the program what to
do next whenever it is finished with a sequence of instructions.
When you first turn on the computer, DOS takes over and waits for you to give
it a command at the DOS prompt. When you type in a program name, you are
telling DOS that you want to run that program. DOS can only execute three
types of "programs": 1) .EXE files, 2) .COM files and 3) .BAT files. DOS has
a limit of eight characters for the file name, along with three characters for
an extension. The .EXE, .COM and .BAT are extensions. EXE and COM files are
executed immediately, whereas BAT files are a collection of steps to be done
in a specific order. These are called batch files. All software
documentation, at a minimum, tells you the eight characters (program name/
command) to start their program. DOS executes all programs from a) internal
commands first (such as DIR or COPY), b) the current directory next, then, c)
if not found in the current directory, in the path specified by your
AUTOEXEC.BAT file, in the order the directories are specified. If DUMMY.COM,
DUMMY.EXE and DUMMY.BAT all exist in the same directory(ies), DUMMY.COM is the
program which will be executed. If DUMMY.EXE and DUMMY.BAT will never be
executed, even if you type the extension. COM files are always executed
first; EXE files are executed next if a COM file is not found, and finally,
BAT files are executed if an EXE file is not found. If a BAT file is not
found, DOS gives the message of "Bad command or file name".
Most programs require more information from the user to carry out their tasks.
This is done in two ways: 1) by asking the user for the additional
information and/or 2) by command-line parameters. For example, the program
for formatting diskettes requires that you specify the drive in which you will
be formatting the diskettes as a command-line parameter. If you don't specify
the drive, format gives you a warning that you will be formatting your hard
drive. Once you have entered the correct command line, format prompts you for
the disk and waits until you press enter. It then formats the disk and asks
you if you want to format another. Format uses both command-line parameters
and prompts for additional information (OK to proceed, disk in drive). The
program doesn't quit until you tell it your are done.
Since 2nd Shift is intended to execute without anyone sitting at the computer,
all information required is entered using the command-line method.
Batch Files:
As stated earlier, batch files are a special kind of file telling DOS to
execute a series of commands. Each line is executed one at a time. The next
line is not executed until the current line is done; this is signified by the
program on the line quitting.
Batch files can be used to automate a sequence of steps. Once a program in
the batch file is run, it keeps control of the computer until the current
program (instruction) is completed. The program itself generally requires
that someone type the keys to tell the program that they are finished. 2nd
Shift provides a way to pass keystrokes to the program, telling it what to do
and when to quit. This collection of keystrokes to play back to the program
is called a keyfile.
It is important that you understand how batch files execute. This batch file
is your "to do" list for the computer. TIMER is used to "pause" the computer
until the time/date desired, then the next instruction is executed. 2nd Shift
will usually be called next to execute a particular program. 2nd Shift will
run the program specified, "typing" the keys needed for the program to execute
properly.
Installation:
2nd Shift is one of several utilities available from Transversal Design. Most
users, after they have had their systems for a while, will have collected a
hodge-podge of utilities and really don't know where to store them.
The simple solution is to make a directory called \UTILITY and put all these
program files there. If you have not already made such a directory, type the
following:
MD \UTILITY <Enter>
Change to the directory with:
CD \UTILITY <Enter>
If you purchased 2NDSHIFT via shareware, the fact that you are reading this
document indicates that you have already unzipped the file. Copy the 2ndShift
program files to the \UTILITY directory.
If you purchased 2NDSHIFT directly from Transversal Design, insert the 2nd
Shift diskette in drive A and copy the files:
COPY A:*.* <Enter>
DOS always looks for files in the current directory first and in its startup
path second, as mentioned earlier. You should make sure that the UTILITY
directory is a part of this path. Enter the following:
TYPE \AUTOEXEC.BAT <Enter>
If you do not see a line that starts with the word PATH, you should edit your
AUTOEXEC.BAT file to have at least the following: PATH \UTILITY. If you do
see the word PATH, you should edit the line so that it includes the path
\UTILITY. Remember, each directory must be separated by a semicolon. Below
is a typical path.
PATH C:\;C:\DOS;C:\WP;C:\UTILITY
Note that the last directory does not have a semicolon after it. This example
path tells DOS, when trying to find a command to execute, to look in its
internal commands first (such as DIR or COPY), then the current directory,
then the root dirctory (C:\), then the DOS directory (C:\DOS) then the WP
directory (C:\WP) and finally in the UTILITY directory (C:\UTILITY) before
giving up and saying "Bad command or file name".
Getting Started:
Perhaps the easiest way to see how to use 2nd Shift is to run the example
files. Included with 2nd Shift is a simple little program called 2NDTEST.
This program asks for you first name, your last name, and a password (similar
to the logon procedures for a lot of bulletin boards or electronic mail
services). After you type in the information, the program writes the
information you typed to the screen. Run the program now, by typing:
2NDTEST <Enter>
Answer the questions as they are presented to you. Although this example is
not very sophisticated, it does illustrate our point: why can't the computer
do this typing for you?
The answer is that it can, but the keystrokes must first be recorded. Rather
than telling how right now, run the batch file called RECORD by typing:
RECORD <Enter>
RECORD tells 2NDWATCH to record the keystrokes recorded while running 2NDTEST.
These keys are stored in a file called 2NDTEST.KEY. Now, to see what 2nd
Shift can do for you, run the batch file called PLAYBACK by typing:
PLAYBACK <Enter>
PLAYBACK calls 2NDSHIFT, telling it to run 2NDTEST using the keys in
2NDTEST.KEY.
Congratulations! You just ran 2nd Shift from start to finish. The steps are
always:
1) Create the key file for a program (usually by recording your
keystrokes).
2) Play back the keyfile as needed.
2NDWATCH is used to watch the keyboard and record keystrokes, and 2NDSHIFT is
used to play back those keystrokes.
Now, let's create a "real world" example. Type:
TIME <Enter><Enter>
This will display the time which the computer thinks it is. Add 10 minutes to
the time. For the purpose of this example, we will assume that the computer
reported that the time is now 1:00 p.m. Enter the following, substituting
your time where 1:10p is at:
COPY CON:PLAY2.BAT <Enter>
TIMER 1:10p <Enter>
2NDSHIFT 2NDTEST.KEY <Enter>
<F6> <Enter>
Now, type:
PLAY2 <Enter>
The computer will wait until 1:10 p.m., then execute 2NDTEST using the keys in
2NDTEST.KEY. It's as if you were there typing it.
Take a moment to think about this. You just performed some work on your
computer without having to type the information required by the program. You
just automated the task without having to retype your name and password, and
told the computer to perform the task at a specific time. Even though this is
a trivial example, you could have told the computer to wait until 8:00 p.m.
(2nd Shift) and perform the task.
Now, for a not-so-trivial example. Assume you have a tape backup on your
computer and you always perform a full backup at the end of the day. This
usually takes an hour and you have to sit there and wait while the computer
does it. Fine; you could start the process and just go home, but you also
print a list of all files after the backup. Let's say you also load your
spreadsheet program and print the current sales figures for the day. Every
day at 3:30, you type the following (NOTE: this is an example; do NOT type the
instructions):
CD \TAPE <Enter>
TAPE <Enter> (type keystrokes to do backup and quit)
COPY TAPE.LOG PRN <Enter> (print files backed up)
CD \SPREAD <Enter>
SPREAD <Enter> (type keystrokes to load sales figures and
print)
In essence, that hour and a half is wasted because you are sitting there
waiting on the computer. Granted, you are probably doing other things like
catching up on the incoming mail, but you have to interrupt yourself when the
next step is required.
To automate this whole procedure, we must first record the keystrokes for the
TAPE and SPREAD programs. So, at 3:30, you would type the following (again,
this is an example, do not type these commands):
CD \TAPE <Enter>
2NDWATCH TAPE.KEY TAPE.EXE <Enter>
(type the keystrokes to do a full tape backup and quit the program)
COPY TAPE.LOG PRN <Enter>
(batch file line, no need to record)
CD \SPREAD <Enter>
2NDWATCH SPREAD.KEY SPREAD.EXE <Enter>
(type the keys to load the sales figures, print, then quit)
Now, we've recorded the keys. There was very little additional work on your
part, just telling 2NDWATCH to record your keystrokes. Let's create the batch
file to automate all of this. We're going to call it ENDDAY.BAT and put it in
the \UTILITY subdirectory. You would type the following:
CD \UTILITY <Enter>
COPY CON:ENDDAY.BAT <Enter>
CD \TAPE <Enter>
2NDSHIFT TAPE.KEY <Enter>
COPY TAPE.LOG PRN <Enter>
CD \SPREAD <Enter>
2NDSHIFT SPREAD.KEY <Enter>
<F6> <Enter>
Now, at the end of the day, you would just type ENDDAY and the rest would be
done for you. Note that you didn't have to specify the program name. It is
stored in the keystroke file(s).
To further expand this example, let's say you have an employee come in at 8:00
p.m. to do these steps. For the sake of argument, assume that all of the
sales figures are not in the computer until 8:00 p.m. Instead of having the
employee do these steps, you would enter the following batch file:
CD \UTILITY <Enter>
COPY CON:ENDDAY.BAT <Enter>
TIMER 8p <Enter>
CD \TAPE <Enter>
2NDSHIFT TAPE.KEY <Enter>
COPY TAPE.LOG PRN <Enter>
CD \SPREAD <Enter>
2NDSHIFT SPREAD.KEY <Enter>
<F6> <Enter>
Now, this employee can be freed from this task. You could move the employee
to another area or train him/her in tasks which better use his/her time.
Please note that we do not advocate replacing employees with computers via 2nd
Shift. We do advocate automating tasks using the computer, freeing employees
and management to do more important and creative word. At the end of your
day, you would type ENDDAY and the rest would be done at 8:00 p.m.
The preceding examples should be enough to get you started. Remember, the
steps are always:
1) Record your keystrokes
2) Play them back from a batch file using TIMER to set the time for
playback.
Experiment with your frequently-used applications. Learn to think of ways in
which the computer can be made to act as an employee with TO-DO lists.
Other Uses:
o Record keystrokes and create batch files to do tasks while you
are on vacation.
o Automate daily routines so that, if you should ever be sick, you
can make a quick call and say "Run TODAY" rather than go through
every step.
o Use for tech support to analyze what problems a user may be
having by seeing exactly what they typed during a given session.
This applies to any department or company providing tech support
for either its users or employees.
o Automate log-on sequences for bulletin boards.
o Automate calling a bulletin board and logging on during cheaper
billing hours, downloading specific programs or information, then
logging off.
Use your imagination. Our examples have only shown TIMER waiting until a
specific time. TIMER will also allow specifying a particular date before it
passes control to the next line in a batch file.
Miscellaneous:
A reference section follows giving in-depth information on each of the
programs and its command-line parameters. We have not covered 2NDCONV or
KEYCONV in the main documentation. The reasons for this are 1) they are not
included in the un-registered shareware version and 2) both 2NDCONV and
KEYCONV are not for the novice computer user. 2NDCONV and KEYCONV convert the
binary keystrokes into human-readable form and back again. They are intended
a) to allow someone providing tech support to read the keystrokes entered and
perhaps determine problems that a particular user may be having, b) to provide
human-readable keystrokes for computer use/user information for a particular
session, and c) to allow editing of a keyfile (record the keystrokes, convert
to human-readable format, make any needed modifications, and re-convert to the
keyfile format). The format of a keyfile is covered in Appendix A and the
format for a text file of keystrokes is covered in Appendix B.
There is only one potential problem in the use of 2nd Shift, and it has to do
with a DOS limitation, not any program flaw with 2nd Shift. This is that a
batch file cannot directly call another batch file and still come back to the
original batch file. For instance, say you had a batch file called SALES.BAT.
SALES holds the following:
CD \SPREAD <Enter>
2NDSHIFT SPREAD.KEY <Enter>
At any time, you can execute the SALES batch file to pass the keys held in
SPREAD.KEY to your spreadsheet program. Typing SALES (using our previous
example) will print your sales reports.
You have another batch file called DOBACK.BAT which holds:
CD \TAPE <Enter>
2NDSHIFT TAPE.KEY <Enter>
Again, from our previous examples, typing DOBACK will do a complete backup of
your drive.
You would think that you could just combine them into a third batch file,
holding:
TIMER 8p <Enter>
DOBACK <Enter>
SALES <Enter>
What will actually happen is that, since DOS can only manage one batch file at
a time, DOBACK would be executed at 8 p.m., but SALES will never execute
because the original batch file being executed was "clobbered" in memory by
DOBACK.
The way around this while still keeping the ability to run DOBACK or SALES
individually would be to load a secondary command processor. Without getting
into the technical details, this simply means that you preface each batch file
(except the last) with the program COMMAND.COM (the secondary command
processor). Since it loads into a different memory area than the original
command processor, the secondary command processor is the one keeping track of
the embedded batch file. When it finishes, the place in the original batch
file is still known by the original command processor. Your third batch file
is now:
TIMER 8p <Enter>
\COMMAND.COM /C DOBACK <Enter>
SALES <Enter>
The \COMMAND.COM /C loads the second command processor for DOBACK and removes
it when DOBACK is done. This would need done for all but the last batch file
called by the controlling batch file:
TIMER 8p <Enter>
\COMMAND.COM /C DOBACK <Enter>
TIMER 11p <Enter>
\COMMAND.COM /C SALES <Enter>
TIMER 1a <Enter>
\COMMAND.COM /C ZONE2 <Enter>
ZONE3 <Enter>
In the above example, SALES prints the sales figures for Zone 1, ZONE2 prints
the sales figures for Zone 2 and ZONE3 prints the sales figures for Zone 3.
Reference:
The following reference section contains detailed information about the
execution of each of the 2nd Shift programs. It follows the same format
notation as the DOS manual, which is:
o You must enter any words shown in capital lettters. These words
are known as the keywords and must be entered exactly as shown.
You can, however, enter the keywords in any combination of
uppercase/ lowercase. DOS will automatically convert keywords to
uppercase.
o You must supply any items shown in lowercase letters. For
example, you should enter the name of your file when filename is
shown in the format.
o Items in square brackets ( [ ] ) are optional. If you want to
include optional information, you do not need to type and should
not type the brackets, only the information within the brackets.
o You must include all punctuation (except the square brackets
mentioned above) such as commas, equal signs, question marks,
slashes ( / ) or backslashes ( \ ) where shown.
o A solid vertical bar ( | ) indicates a choice between two or more
entries. At leastt one of the entries must be chosen unless the
entries are optional (if they are optional, they will be enclosed
within square brackets). For example: ON|OFF means that you
should type either ON or OFF, without the vertical bar.
Error codes returned are standard DOS ERRORLEVEL codes and may be tested from
within a batch file using IF ERRORLEVEL=xx GOTO EXITxx; for example, IF
ERRORLEVEL=1 GOTO EXIT1.
With all programs, entering /h or /? on the command-line (parms) signifies to
the program that you want to see the help screen without executing the
program.
Generally, all options may be entered in either uppercase or lowercase and in
any order. Any exceptions will be specifically noted.Reference: 2NDCONV.EXE
PURPOSE: Converts a key text file into a binary keyfile.