Category : Communication (modem) tools and utilities
Archive   : TSET721.ZIP
Filename : TIMSET72.DOC

Output of file : TIMSET72.DOC contained in archive : TSET721.ZIP

Version 7.20

A program to set computers to the world's most accurate clocks

Copyright 1987-1993, Life Sciences Software
8925 271st N.W., Suite 112
Box 1560
Stanwood, Washington 98292


"TIMESET" is a trademark of Life Sciences Software (TM)


TimeSet has been evolving steadily ever since the first version was released
in the summer of 1987. That version and several subsequent ones could only
set a computer's clock from the U.S. Naval Observatory (USNO) in Washington,
D.C. Version 6.00, released in 1990, added ability to use telephone time
signals from the National Institute of Standards and Technology (NIST) in
Boulder, Colorado, making it the first program of its kind able to address
more than one atomic time service. This made it possible for computer users
in the eastern and western United States to keep down long distance bills by
choosing the time service closest to them.

Version 7.20 continues that evolution with a number of new features and
supporting utilities:

o TimeSet can now access five atomic clock-based telephone time
services on two continents: the USNO and the NIST in the United
States, as before, and atomic time services in Sweden (Swedish
National Time Service), Austria (Technical University of Graz), and
Italy (National Electrotechnical Institute). People in European
countries who want to set their computers to an atomic clock no
longer need to make a trans-Atlantic phone call. In addition, to
these formal services, TimeSet 7.20 can access any number of services
that use TimeGen, a companion program in this package that generates
time data strings in Naval Observatory format.

o TimeSet 7.20 is designed to interact closely with versions 2.53 and
2.54 (or later) of RighTime (tm), the excellent memory-resident
regulator for computer clocks developed by Tom Becker of Air
System Technologies, Inc., Dallas. RighTime learns the drift rate in
the computer's clock and continuously applies a correction to
compensate for it, and it refines the correction each time the
computer clock is set. A computer with RighTime installed and
trained can maintain system clock accuracy within a second or even a
fraction of a second for at least a week. Furthermore, versions of
RighTime later than 2.53 provide true 0.01-sec resolution in the DOS
clock, in contrast to the normal 0.055-sec resolution. This allows
greater accuracy in PC clocksetting than ever before, indeed the
maximum accuracy that can be obtained with a computer clock. Life
Sciences Software and Air System Technologies cooperated closely
during the development of TimeSet 7.20 and RighTime 2.5+, with
the result that TimeSet can access several RighTime functions

o In addition to the ability to address five official atomic clock time
sources on two continents, users of TimeSet 7.20 can get time from
Life Science Software's program TimeGen (tm) version 3.1. TimeGen,
part of the TimeSet 7.20 distribution package, is a program that
generates time data strings for Universal Time using the Naval
Observatory's format. Its purpose is to allow one computer in a
local system to get accurate time from an official service, then share
it by telephone with many other computers in the local system, in
effect making the TimeGen-equipped computer a "substation" of an
official atomic time service.

o TimeSet 7.20 is accompanied by a utility called AutoDial, which can be
installed memory resident to trigger TimeSet to call a specified time
service at a particular time every day. Also included in the TimeSet
7.20 package is the IF2DAY.COM utility by Gary Miller, which can be
used to initiate a call by TimeSet during system bootup on a specific
day of the week or month.

o Another new feature in TimeSet 7.20 is optional automatic
reconfiguration when the time season changes between daylight savings
time and standard time, plus ability to calculate the dates when those
season changes will occur during the current year. Unlike Version
7.10, which offered automatic season reconfiguration only for users
in North America, TimeSet 7.20 also offers this feature for users
following the time season rules of Europe and the British Isles.

o TimeSet 7.20 allows custom serial port configuration, making it usable
with serial ports up to COM8 and nonstandard IRQs and port addresses.

o Also in response to many requests, TimeSet is now able to save data
on your computer clock to a disk file each time you call a time
service, allowing clock drift in the computer to be analyzed. It also
produces error level codes for use by the DOS ErrorLevel command in
batch files.


TimeSet is a copyrighted commercial program. It is not free nor is it in
the public domain. It is a shareware program, which means you may obtain it
from a computer bulletin board or other source and try it out before paying
for it. You are expected to pay for the program and become a registered
user if you continue using it after a trial period of two weeks. Life
Sciences Software retains all rights to TimeSet, its associated programs,
and their names, which are trademarked. Sale of these programs by others is
prohibited. However, firms that specialize in the distribution of shareware
programs and charge only for that service are permitted to include the
TimeSet package in their libraries, provided they notify customers that it is
shareware and that they are expected to register shareware programs and
send payment to the authors of those programs if they continue to use them.

If you register and pay for TimeSet you get the following benefits: (1)
technical support; (2) a printed and bound illustrated manual; (3) an
evaluation copy of Air System Technologies' RighTime program; (4) a discount
on the next version of TimeSet when it becomes available.

Two procedures are available for registration:

1. You can fill out the registration form at the end of this document
and mail it to us with a check or money order. The cost is $40.00
U.S. if you are not now a registered user of a previous version of

If you are already a registered user, the following price schedule
applies for each copy of TimeSet 7.20:

o TimeSet version 6.00A ordered between November 1,
1992 and February 15, 1993, but not yet shipped --
$35.00 (the same price as the version you expected to

o Registered, paid for, and received a previous version
between January 1, 1992 and October 30, 1992 -- $20.00

o Registered, paid for, and received a previous version
before January 1, 1992 -- $25.00 (37.5% off).

2. Alternatively, you can use the accompanying program TsReg72.EXE
to upload your name, address, and other information to our toll-free
electronic mailbox (an 800 number). We will then send you an
invoice, and on receipt of your payment (according to the above
schedule) send you a fresh copy of TimeSet 7 with the latest
revisions, if any, plus a printed manual. This is a convenience for
people who, like many of us, intend to register shareware but forget
to do it. It is also useful to businesses that require invoicing.
Running TsReg72.EXE is very simple, involving no more than
answering a few prompts about your system and your modem and
typing in the information we need to send you an invoice.

(NOTE: Since Version 7.20 corrects some minor defects that became apparent
in Version 7.10 after it was released, people who have already registered for
TimeSet 7.10 need not register this new version.)


TimeSet is designed for very easy configuration. If the copy you have has
never been run before, it will automatically present a screen showing a
default configuration (Figure 1). If you press F10 while this screen is
displayed, that data will be saved to TimeSet's own file, and TimeSet will
subsequently bypass configuration and use the saved data each time you run it.

It is likely, however, that you'll need to make some changes in the default
setup before pressing F10. For example, you may need to configure the
program for your own time zone, the season of the year (daylight or standard
time), your serial port, etc., or you may need to insert some prefixes in the
telephone numbers that are displayed for the various time services. Such
changes are simple to make. All you need to do is press the up or down
arrow key to highlight the configuration item you wish to change. Then,
depending on the particular configuration item, you can do it either by
toggling a new option with the right or left arrow key or by editing what is
displayed on your screen. TimeSet will tell you which method to use, toggling
or editing, to make your change.

The configuration process, then, involves examining the existing setup,
scrolling to the lines that need change, making the necessary changes, then
saving the configuration by pressing F10. Each configuration item has its
own help screen. If a configuration line is highlighted, all you need to do
to get help for that line is press F1 (aim carefully; if you press the nearby
ESC key, you'll be out of the program and back in DOS).

We strongly urge that, before making any changes, you review all the help
screens by pressing F1 as you highlight each configuration item on the list.
The help screens comprise an on-line tutorial, and not all the items are
discussed in detail in this manual. In fact, it would be a good idea to load
TimeSet right now and have the configuration screen in front of you as you
read this section. If TimeSet has already been configured, you can force it
to load in configuration mode by using /C on the DOS command line


The first five lines on the configuration screen deal with phone numbers for
time services. The first line, labled "Outside phone," is not likely to be
needed by most users, who can leave it at the default "NULL." It is intended
for those who need to dial a special phone number before they can dial a
regular long distance number. Often the special number will be that of a
long distance carrier that is not accessible by the standard 1 prefix that
brings your assigned carrier when you make a long distance call. To put in
such a number, press Enter to get in editing mode, delete NULL, type in the
phone number, then press Enter again to get out of editing mode.

The second line is the long distance number for the U.S. Naval Observatory.
It is preceded by a 1, based on the assumption that you have an assigned long
distance carrier. If you do not, or if you wish to use a carrier that has not
been assigned to you, get into editing mode and insert, in front of everything
else, the numbers that get you a particular long distance company. To get
AT&T, for example, you would insert 10288 ahead of what is already there.
The same considerations apply to the third line, for calling the National
Institute of Standards and Technology.

The fourth line, titled "European service," has NULL as the default. If
you live in North America, you'll probably want to leave it that way since
time is available at far less expense by calling the USNO or NIST. European
users can get phone numbers for time services in Sweden, Austria, and Italy
simply by toggling with the right or left arrow key. Note that the European
phone numbers are preceded by a plus sign (+). You will need to get into
editing mode to replace the plus sign with the international calling code
used in your own country (in the U.S., the number is usually 011).

IMPORTANT NOTE: There is no assurance that any of the European time
services will remain available to callers who do not live in the host country.
When when TimeSet 7.20 was released, some European services were planning to
make calls chargeable to the caller's phone bill (equivalent to a 900 number
in the United States), which would make the service unavailable to callers
using the telephone system of another country. It is possible, however, that
other European countries will begin providing telephone time services, using
the same data format Sweden, Austria, and Italy have adopted. Should that
occur, it will then be possible to replace existing European phone numbers in
TimeSet by editing, so new services in other countries can be called.

The fifth line, labeled "TimeGen service," is for users who wish to call a
time service based on the program TimeGen, which is part of the TimeSet
7.20 package. TimeGen generates time data strings in U.S. Naval Observatory
format, allowing a computer that is synchronized with an official atomic time
service and stabilized by RighTime to transmit the time via modem to other
computers equipped with TimeSet 7.20. The default for line 5 is NULL, but if
you wish to call a TimeGen service (which we hope will proliferate), get into
editing mode and replace NULL with the appropriate phone number. TimeGen is
described in detail in a separate section.


Line 6 is the line for selecting your time zone, and the default is (North
American) EASTERN time. If you live in, say, Miami, you don't need to do
anything with that line. If you live in Denver, however, you are in the
Mountain time zone, and you'll need to scroll to line 6 using the up or down
arrow key, then press the right or left arrow key until the word "MOUNTAIN"
appears. All the major named North American time zones are built into
TimeSet and are available by toggling. If you don't live in North America,
just go to line 6 and keep pressing the right or left arrow key until TimeSet
tells you that you can enter editing mode. Then press Enter to get in editing
mode, and type in the number of hours your time zone is offset from universal
time (the time at the zero meridian, sometimes called Greenwich time, or
"Zulu" time). If you live in Sweden, for example, your time zone is 2 hours
later than universal time so you would need to type in a 2. The convention
that must be followed here is to make the number positive if you are east of
Greenwich, England and west of the International Date Line, and negative if
you are west of Greenwich and east of the International Date Line.

Configuration for daylight saving time or standard time (or Summer Time
and Winter Time, as they are called in Europe) is available on line 7. Simply
scroll to that line and toggle DAYLIGHT or STANDARD with the right or
left arrow key.

Some people need to have their computers set to universal time (in aviation
and astronomy, for example). That option is also available by toggling at
line 6. Notice that when the word UNIVERSAL appears on line 6, the word
NULL automatically appears on line 7, the time season line. This is because
universal time has no seasons; it is always standard time. (If you live in
the United Kingdom and want your computer to be on local civil time, you
should not select UNIVERSAL. The reason is that civil time in Britain has
seasons and you will need to make a season selection on line 7. Instead
enter 0 as your offset from Greenwich on line 6 so you can toggle the
appropriate time season on line 7. If you wanted U.K. civil time and
selected UNIVERSAL on line 6, the NULL on line 7 would cause your clock to
remain on standard time, i.e., winter time, all year long, and thus an hour
slow for the duration of summer time.)


Lines 8-12 are for configuring TimeSet to work with your modem. With
line 8 highlighted you can select the appropriate serial port (COM1-COM4)
by toggling with the right or left arrow key. As you toggle through the
options, you will see the default port address and IRQ number for each port,
for both standard computers and PS/2 computers. COM1 and COM2 use the
same addresses and IRQs in standard and PS/2 machines, but PS/2 computers
use different addresses and IRQs for COM3 and COM4. If you have a PS/2
and want to use COM3 or COM4, just keep toggling until you see the correct
port configuration for a PS/2 computer (configurations unique to PS/2s are
identified as they come into view).

In addition to the standard port configurations available by toggling at
line 8, TimeSet 7.20 allows configuration for nonstandard serial port
addresses and IRQs. Just keep toggling until the editing flag is shown,
then edit the template string that appears, replacing the n's with actual
numbers. It is very important to press F1 so you can read the help screen
for this item. Note also that the port address you type in must be in
hexadecimal notation. This feature in TimeSet 7.20 should allow the program
to be used with any serial port using any port address and any IRQ line.
Caution is needed, however. If you selected an IRQ that is being used by a
disk drive, for example, you could cause some serious problems. Know what
you are doing; check to see what IRQs are available for your COM port before

Line 9 allows you to toggle your dialing method. For most people, it will
be either TONE or PULSE. A third option, AUTO, will be of no use to
most users.

Lines 10, 11, and 12 need to be considered together. Line 10 allows you to
select a dial-up speed for your modem. There is really no need for it to be
anything greater than 1200 bps, since that is the speed all the standard
telephone time services use. Local speeds up to 153000 bps can be toggled
with the right or left arrow key, although few modems go that high.

High-Speed Modems

If you have one of the newer modems that allow you to maintain a high
speed locally, i.e., between your serial port and your modem, while allowing
the modem to drop the line speed to match the remote modem, you can use
that kind of action with TimeSet 7.20, but you'll need to make correct choices
on lines 10, 11, and 12. First, you will need to toggle line 10 to some high
speed, such as 38400. Second, you will need to toggle line 11 (labeled "Lock
modem speed") to YES. This will tell TimeSet not to adjust the speed
setting at the serial port after connection is made but to leave it at the
high speed at which it was opened. Third, on line 12 (labeled "User's
commands") you will need to insert an appropriate command to tell your modem
to maintain the local speed high while allowing the line speed to drop to
match that of the remote modem. For many of the newer high-speed modems,
that command is &B1.

Thus, if you wanted to dial at 38400 bps and maintain that same speed
locally after connection while allowing the modem's line speed to match the
1200 bps time service modem, lines 10, 11, and 12 would have to show the

Line 10 (Dialing baud rate): 38400 (could be as low as 1200)
Line 11 (Lock modem speed): YES
Line 12 (User's commands): ...&B1... (&B1 inserted in an existing string)

The command your own modem uses for keeping the local speed locked high
may be something other than &B1. Please check your modem manual to find
out the correct command.

Toggling on the user's command string line produces three different modem
initialization strings. The first one, &C1&D2X4, which is the default, is for
initializing older modems that do not feature error checking and data
compression -- for example, a 2400 baud Hayes Smartmodem. The second,
which reads &F&B1&C1&D2X4S37=5, should work with most of the newer
high speed modems that use data compression and error checking protocols.
It is essential that all such protocols be disabled and that the modem be set
instead for basic asynchronous mode. In several of the newer modems this is
accomplished by a single command, &F, which brings in factory defaults for
that mode. If your modem uses some other command to be put into basic
asynchronous mode, use the editing function and replace &F in this string
with the appropriate command for your modem. It may also be necessary to
use a separate command to turn off all flow control in newer modems that
use hardware flow control (RTS/CTS) as a default, if that command is not
part of the defaults for basic asynchronous mode. In many newer modems
the command for turning off all flow control is &K0.

Turning off flow control is essential to avoid a situation where TimeSet
waits endlessly for a Request to Send that is not produced by any of the time
service modems. As noted earlier, &B1 in this string tells the modem to hold
the local (port to modem) speed constant while allowing the line speed to
match that of the remote modem. If your modem uses some other command
for this, using the editing function to replace &B1.

One more toggle brings up the string %C0&Q6N0\G0&C1&D2X4S37=5, which is
specifically for use with Zoom 14.4 Fax and similar modems. This option is
provided because the Zoom, while it is a very popular low-cost brand, has
generated more configuration problems for TimeSet users than any other brand.

Finally, if none of the hard-coded initialization strings works with your
high-speed modem, here is another string you can try, using the editing
function on the User's command line: &C1&D2X4N0B1S37=5&Q0. This has been
reported to work with the Boca and several other brands.

Conventional Modems

The default user's initialization string in line 12 (User's commands) is
&C1&D2X4. This is the string to use with conventional modems, with speeds
no higher than 2400 bps and with no error checking or data compression
protocols. These are what today might be considered "old-fashioned" modems,
capable of only basic asynchronous communication. The commands &C1 and &D2
in the string are discussed in the next section, but notice that they are
needed for the newer modems as well. X4 in this string tells the modem to
use a result code set that includes the words CONNECT, NO CARRIER, NO

Some very early modems lack a result set that includes BUSY. If yours is
of that vintage you probably can use an Xn value no higher than X2 or X3.
In that case you will have to edit to change X4 to the highest Xn value your
modem can use. Since the modem will not be able to detect and report a
busy signal, you will need to rely instead on the timing-out of register S7 to
cause the words NO CARRIER to be sent to TimeSet by the modem if connection
is not made in a reasonable time. TimeSet will then assume that the line is
busy (though it may not actually be) and take the same actions it would if an
actual BUSY report had been received. The timing of S7 is hard-coded at 45
seconds in TimeSet (S7=45), but you can adjust it upward or downward simply
by adding an S7=nn command to the user's initialization string using TimeSet's
editing functions.

Carrier Detection and Hanging Up

Please note that for practically all newer modems, whether conventional or
high speed, &C1 and &D2 in the default initialization strings must always be
left in place. &C1 tells such modems to wait for a carrier, not to assume one
is always present. &D2 tells such modems to hang up when the DTR is dropped.
If these functions are not present, TimeSet will not work properly. The only
users who should remove those commands are those using older modems that
cannot be configured by software commands and must rely instead on dip switch
settings to accomplish the functions of &C1 and &D2. If you have that type
of modem, use the editing functions to remove those commands from the
initialization string. Then, before running TimeSet, adjust dip switches on
your modem as specified by your modem's manual to make it always wait for a
carrier and to hang up when the DTR is dropped.

Carriage Returns in Modem Initialization Strings

Although most people will never need to insert a carriage return in the
modem initialization string, the capability is provided for special situations.
The effect of the carriage return is to terminate a preceding configuration
string so a second one can be sent. Thus a carriage return can be used to
create two user initialization strings on the modem initialization line. The
character to use if you want a carriage return is the colon (:). This was
chosen instead of the more common ^M symbol because it takes one less
character. Remember that if you use the colon, the string that comes after it
should start with AT, but also remember that the string that starts after a
colon is the only place where AT is allowed, since TimeSet itself supplies
that command elsewhere. In other words, no string that's sent to the modem
by TimeSet should have the letters AT at the far left. By the way, the colon
also causes a carriage return to be sent to the modem if it's inserted in a
phone number string, which may be useful in some complex dialing situations.


Line 13, another toggle line (labeled "Computer clock"), allows you to
specify the manner in which TimeSet will set the time in your computer. The
default setting is to have TimeSet set the DOS clock/calendar only. This is
the setting to use if either of the following conditions is true: (1) your
computer has only a DOS clock/calendar or (2) your computer has both a
DOS clock/calendar and a battery powered real-time clock, and furthermore
has resident software to instantly pass new time and date settings from DOS
to the battery powered clock. If your battery-powered clock is a CMOS
clock, the only resident software you need for this is DOS itself, provided
it's version 3.3 or later. If your computer does not have a CMOS clock and
instead uses the XT-style real-time clock that plugs into a card slot in the
computer, the resident software you'll need to install is Tom Strickland's
ClockDrv.SYS (install it in your CONFIG.SYS file), which is included in the
TimeSet package. With either kind of battery powered clock, any setting
TimeSet makes in the DOS clock/calendar will instantly be passed on to the
battery clock, provided the appropriate memory-resident software for that
clock is installed (DOS 3.3 or later for the CMOS clock, ClockDrv.Sys for
XT-style battery powered clocks).

Pressing the right or left arrow key while line 13 is highlighted displays
one more clocksetting option, which reads "CMOS, DOS ver. < 3.3." This
setting is for users who have a computer with a CMOS clock but are using a
version of DOS earlier than version 3.3. Those older versions of DOS do not
automatically pass changes in the DOS clock/calendar to the CMOS clock and
instead require use of the SETUP utility. Toggling this configuration option
allows TimeSet to set both the DOS clock and the CMOS clock directly and
at practically the same instant, thus eliminating the need to run SETUP. Do
NOT select this option if your DOS version is 3.3 or later.


TimeSet 7.20 makes automatic reconfiguration for time season changes
available to all users, whether they follow the North American system (where
daylight time starts on the first Sunday in April and standard time starts on
the last Sunday in October), the continental European system (where Summer
Time starts on the last Sunday in March and Winter Time starts on the last
Sunday in September), or the British system (where Summer Time starts on
the last Sunday in March and Winter Time, or GMT, starts on the day after
the fourth Saturday in October). This is in contrast to Version 7.10, which
offered automatic season changes only to those using the North American

Toggling at Line 14, labeled "Auto time season," presents four options:
SEASONS BRITAIN, and MANUAL SEASONS. The first three configure TimeSet to
follow the desired season rules automatically, as described in the preceding
paragraph. The fourth option, MANUAL SEASONS, requires you to keep track of
time season changes and to reconfigure the program for a new season by pressing
F7 before the next call to a time service. It is included mostly for the
benefit of people who live in countries that do not use either the North
American, European, or British conventions for time season changes.

If any automatic season change mode is selected, TimeSet will automatically
reconfigure for a new time season the first time it is used after a season
change has occurred. The adjustment, which occurs immediately after the
time is obtained from a service, reconfigures TimeSet for the appropriate time
season and simultaneously advances the clock one hour (daylight time) or sets
it back one hour (standard time). There is one exception to this, however: If
TimeSet 7.20 detects the presence of RighTime 2.53 (or a later version) and
also detects that RighTime has been loaded with the /A switch, which provides
automatic system clock adjustment when seasons change, it will make no time
adjustment and instead will only reconfigure for the appropriate season in
order to have the correct offset from UTC for calculating local time.
Detecting RighTime's /A switch is essential since the result otherwise would
be a two-hour change in the system clock -- one from RighTime and another
from TimeSet.

In TimeSet 7.20 the dates for automatic time season changes are calculated
by an algorithm that is good indefinitely or until conventions regulating the
dates these changes occur are changed by a government. If the conventions
for time season changes are altered in your country, the automatic season
reconfiguration will no longer work properly and you will have to revert to
manual season reconfiguration until a new version of TimeSet becomes
available to deal with the new rules. Although NIST and the Swedish and
Austrian time services all provide dates for the next season change in their
data strings, TimeSet does not use them and instead calculates the dates
itself. The reason is that the U.S. Naval Observatory and the Italian
service do not provide such information in their data strings. Since a way
had to be provided for TimeSet to calculate change dates for those services,
it made sense to reduce program code by calculating them for all the services.
A further important advantage in this approach is that it allows a user to
get automatic season adjustment according to rules of his own country even
when getting time from another country that follows a different convention
for season change dates.


Line 15 (labeled "Manual/Auto dial") provides a choice of operating TimeSet
manually, that is, initiating a call to one of the time services by pressing
appropriate keys at the main menu, or configuring it to dial one of the time
services automatically as soon as the program is loaded. Automatic operation
is included specifically for those who want to run TimeSet out of a batch
file as part of the bootup procedure. In automatic mode, the program runs,
gets the time from the preselected service, sets the clock, and immediately
exits to DOS.

There are several options for automatic operation, depending on the service
you plan to call, namely USNO, NIST, a European service (the specific service
determined by the phone number you used in line 4), and a TimeGen service
(determined by the phone number you entered on line 5). For all but the
Italian service, there is an option to make a call with or without line delay
measurement (the Italian service does not offer line delay measurement). Line
delay measurement is indicated by /LAG following the name of a particular
service toggled into view with the right or left arrow key.

If TimeSet is configured for automatic operation and dialing is interrupted
by pressing the backspace key, the program will jump to the main menu and
revert to manual operation for the remainder of that session. The next time
it is loaded it will again be in automatic mode. If you want to switch from
an automatic mode to manual mode semi-permanently, you will have to
reconfigure the program and select MANUAL at line 15.


If you have a color monitor, toggle COLOR on line 15 (labeled "Video
type"). Toggle MONOCHROME if you have a monochrome monitor. Selecting
monochrome display is also useful on laptop computers that may not show
sufficient contrast between certain colors in TimeSet. Toggling between
color and monochrome display is also available at the TimeSet main menu by
pressing F8, and is also obtainable by using /m on the command line.


Again, before even starting to make any configuration changes, you are urged
to scroll to each configuration line and press F1 to read the help screen
associated with that line.

When all configuration changes are made, they must be saved to TimeSet's
own disk file by pressing F10 at the configuration screen. Please note that
even though a fresh copy of TimeSet shows a full set of configuration data on
the configuration screen, the data is only a starting point for any changes
you might need to make and is not yet in a form that's functionally accessible
to the program. Thus, even if the defaults are acceptable and you make no
changes, you will still have to press F10, otherwise you will find yourself
at the configuration screen the next time you run the program.


After TimeSet has been configured, you can get the configuration screen
again in two ways: (1) press F2 at TimeSet's main menu, or (2) load TimeSet
with /C on the command line. You can then make any changes you want, but
be sure to press F10 if you want to save them. If you only want to inspect
the settings, you can get to the main menu by pressing F2.


If TimeSet has been configured to run in one of the automatic modes, it
will immediately begin dialing the time service you selected for automatic
calling during configuration.


If you configured for manual operation, or if you interrupt automatic
dialing by pressing the backspace key, the program jumps to the main menu
screen (Figure 2), one of whose main features is a large digital time display,
and waits for you to enter commands at the keyboard. The command options at
the main menu are in two categories: dialing commands and what might be called
housekeeping commands.

Dialing Commands

Dialing commands for calling specific time services include W for the Naval
Observatory in Washington; B for the National Institute of Standards and
Technology in Boulder, Colorado; E for the European time service you selected
during configuration (by putting in its phone number); and T for the TimeGen
service you selected during configuration (again by putting in its phone
number). There are two options for each of these letters -- the letter alone,
which initiates a call the specific time service without a request for line
delay measurement, and the letter combined with the Alt key (Alt-W, Alt-B,
etc.), which initiates a call to the specific time service with a request for line
delay measurement. (If the phone numbers for a European time service and a
TimeGen time service were left as "NULL" during configuration, the keys for
calling those services at the main menu will be nonfunctional.)

Housekeeping Commands

Nearly all commands at the main menu that are in the category of
"housekeeping" involve use of function keys. The relevant function keys are
F1, F2, F7, F8, and F9.

F1 brings a help screen that explains the other function keys as well as
other commands at the main menu.

F2 allows access to the configuration screen for checking or making changes.

F7 toggles daylight or standard time. That is, if TimeSet is configured for
standard time, pressing F7 will reconfigure it for daylight saving time and
simultaneously advance the system clock one hour. If TimeSet is configured
for daylight saving time, pressing F7 will reconfigure for standard time and
set the clock back one hour. (This function is not needed if you have
configured TimeSet for automatic time season adjustment, unless your country
changes its rules concerning the dates when those changes occur.)

F8 toggles monochrome or color display. This function will probably be most
useful when running TimeSet on certain laptop computers that do not produce
gray equivalents of certain colors with sufficient contrast.

F9 allows a pulse to be generated at the parallel port at the instant the
clock is set by a call to one of the time services. If this feature is
activated, the pulse, with a duration of approximately 55 ms, will occur at
pin 1 of the parallel port. It is a negative-going pulse in which the voltage
at pin 1 drops from +5 volts to 0 volts with respect to pin 25 (ground).
However, it can be inverted and otherwise shaped to drive an external
electronic device of the user's own design. (A printer should not be attached
to the parallel port if this feature is used.) If the /LPTn command is not
used on TimeSet's command line to designate the printer port to be pulsed,
TimeSet will use LPT1 as the default.

F5 Access to RighTime

Another function key, F5, is active only if TimeSet 7.20 has detected the
presence of RighTime ver. 2.53 or later. Pressing F5 in that case produces
information about RighTime's current status and also allows some of RighTime's
functions to be controlled (Figure 3). Status information includes the time
in days and hours since the computer clock was last set, RighTime's current
warm and cool corrections, whether RighTime's learning function is turned on
or off, whether the next time and date setting will be ignored, whether
RighTime's maintenance of the DOS clock is turned on or off, whether 0.01
sec resolution in the DOS clock is enabled or disabled, and whether automatic
season adjustment in the CMOS clock is enabled or disabled by RighTime.

Control functions for RighTime accessible with TimeSet 7.20 include
disabling of RighTime learning for the next call to a time service, ignoring
the next time and date set, disabling or reenabling DOS clock maintenance,
and disabling or reenabling 0.01 sec resolution in the DOS clock.

For further information about these and other RighTime functions, please
consult the RighTime manual. Note that while Life Sciences Software has
permission to distribute evaluation copies of RighTime to registered users of
TimeSet, RighTime is a shareware program owned by Tom Becker of Air System
Technologies, Inc. of Dallas. Registration of RighTime and technical
questions about it should be directed to Air System Technologies, not to us.


Several command line switches are available for TimeSet, and most of them
can be reviewed by typing "timeset ?" at the DOS prompt. For reference, here
is a complete list of what is available. Note that all such commands are
preceded by a forward slash (/) and that more than one can be used on the
command line (with no need to be separated by a space):

/ab, /aw, /ae, /at -- These commands, all of which are preceded by "/a",
allow TimeSet to be run in automatic mode even if it has been configured for
manual operation. Recall that automatic operation means dialing a specific
time service, getting the time, and immediately exiting to DOS. The second
letter in each command designates the time service to be called automatically;
"b" stands for Boulder (NIST); "w" stands for Washington (USNO); "e" stands
for a European time service (provided a number for one was selected during
configuration); and "t" stands for a TimeGen time service (provided a phone
number for one was entered during configuration).

/fs -- This command eliminates the "parting curtains" special effect used
by TimeSet when one screen replaces another, causing screen changes to occur
almost instantly.

/s -- This command causes TimeSet to skip the logo screen (the starry sky)
when loaded and instead go directly to the main menu.

/lag -- This command specifies line delay measurement for the time service
selected for automatic operation with a "/a" command (see above). Thus if
you wanted to call NIST with line delay measurement, the command line would
be "timeset /ab/lag."

/m -- Loads TimeSet with forced monochrome display, whether in manual or
automatic dialing mode.

/p, /0p -- The /p command tells TimeSet to generate a pulse at pin 1 of the
parallel port at the instant the clock is set, just as would occur if F9 were
pressed at the main menu before placing a call. The function needs to be
available as an optional command line switch when TimeSet is run in any
automatic mode. The /0p is alternative command for pulse generation.
Unlike /p, which causes a pulse to be generated at the instant of time
setting, /0p delays pulse generation until seconds in the newly set time are
equal to zero, that is, until the minute changes. This can be useful in
situations where an external device needs to be started on the minute.
(See /lptn command, below.)

/0c -- The /0c command is similar to the /0p command in that it causes a
countdown to zero seconds after the new time is obtained. It differs from
/0p, however, in that a pulse is not generated at the parallel port when the
next minute arrives. It simply provides a countdown for the convenience of
those who want to synchronize a watch or a clock manually.

/lptn -- This command specifies the parallel port to be used for generating a
pulse at the instant of clock setting (lpt1, lpt2, etc.). The default is
lpt1, so the command is not necessary if that is the port you want to use or
if it is the only parallel port you have.

/lf -- This command tells TimeSet to append timesetting data to a log file.
The log file, named TimeSet.Log, is maintained on TimeSet's home directory
and includes the date of a call, the service called, the computer time before
and after the call, and the error (i.e., the difference between the time
before and after the call).

/wb, /ww, /we, /wt -- These commands tell TimeSet to wait at the opening
menu until a specified time, then call a time service (b, w, e, and t specify the
time service to be called. The command must be followed by the time you
want the call to be made, in hours, minutes, and seconds using the standard
DOS time format (midnight = 00:00:00, 1 pm = 13:00:00, etc.). Thus if you
wanted TimeSet to wait until 5:00 a.m. and call the USNO, the command would
be /ww05:00:00. Note that there should be no space between the command and
the time. (NOTE: A far better method than a /w command for timing a call is
to load the companion program AutoDial, which is part of the TimeSet 7.20
package. This is a memory-resident program that detects the presence of
TimeSet 7.20 and initiates a call to a given time service at a particular
time, both of which are specified when AutoDial is loaded. AutoDial is
discussed in detail in a separate section below.)


As soon as dialing is initiated, a new screen appears (Figure 4) displaying
modem intitialization commands and the phone number as they are being fed to
the modem. The service being called is also displayed.

When connection is made, a new screen appears that includes a window for
displaying incoming data strings (Figure 5). The strings begin to appear in
just a few seconds. Eight or nine such strings are displayed before the final
one is captured for parsing and use in setting the clock. The purpose is to
allow time for modem "jitter" to abate.


The summary screen (Figure 6) is the last screen that appears during a
TimeSet run. This screen displays information on the results of the call,
including UTC data, the delay correction used, and the local time and date
before and after. If TimeSet 7.20 was loaded with the /lf command line
switch, the local time data will be appended to the file TimeSet.Log, which
will be in TimeSet's home directory.


Whenever TimeSet 7.20 finishes its work and exits to DOS it supplies DOS
with a code that indicates what condition caused the program to end. This
code can be read with DOS's ErrorLevel command in a batch file. Error level
codes supplied by TimeSet are most useful when the program is configured for
automatic operation and run from a batch file -- on bootup, for example. They
allow a user to design the .BAT file so it can read the code using the
ErrorLevel command and take some desired action depending on what the error
level is. Your DOS manual explains how to use the ErrorLevel command. If you
wish to design such a batch file, here are TimeSet's error level codes and
their meaning. Keep in mind that the full set is possible only if TimeSet is
configured for automatic operation:

0 -- Call was completed normally, time and date set
1 -- Carrier was lost while call in progress
2 -- Line was busy (10 automatic dial attempts)
3 -- No dial tone was detected
4 -- Line was too noisy (15 garbled strings in a row)
5 -- Program was terminated by user

There is no point in trying to use error levels if TimeSet is configured for
manual operation (since the program in manual mode is always terminated by the
user, the code returned to DOS will always be 5).


Line delay is the time it takes for a time mark sent by a telephone time
service to reach your computer. It consists of two major components, the
actual time it takes the character to travel through the telephone system and
delays introduced by modems and your own computer. For land line
communication less than a few thousand miles, modem delay is a far larger
contributor than phone system delay. Phone system delay is typically around
7 ms in calls to a U.S. time service from any point in the country over land
lines, whereas modem delay can be 40 or 50 ms or greater.

Except for the Italian service, line delay measurement is available for all
time services addressable by TimeSet. At this time it appears that there are
no plans to add line delay measurement capability to the Italian service.
Accordingly, if you have configured for the Italian service and press Alt-E,
TimeSet will not initiate the call and will instead display a message reminding
you of the unavailability of line delay measurement with that service; only the
E command alone will work with the Italian service.

Line delay measurement makes the most sense when one or more of the
following conditions exist: (1) you need the most accurate time setting
possible for some special purpose; (2) your connection to the time service is
by satellite (which can cause up to a quarter-second delay); and (3) you have
Becker's RighTime installed to maintain that high accuracy in your clock for
a reasonable length of time. Without RighTime installed, a computer clock
can drift up to 15 or more seconds a day; if you can tolerate a significant
daily drift you obviously don't need to worry about a fraction of a second of
time setting delay.

If none of these conditions exists, a call without line delay measurement is
probably accurate enough and usually takes a lot less time. Furthermore,
nearly all the time services routinely advance the departure of their time mark
by a fixed amount to give an approximate precompensation for land line and
modem delays when actual measurement is not requested. Usually, that fixed
amount of advance is very close, within a few hundredths of a second, to the
line delay that could actually be measured on a land-line call within the same
country. The one exception is the USNO, and TimeSet takes care of that by
adding .05 seconds for delay to the set time when delay is not actually
measured with the USNO.

The various atomic time services use different methods for delay
measurement. The NIST measures delay for you, then advances its time mark to
compensate for it so the mark arrives on time. The USNO lets the caller
measure the delay by means of a remote digital loopback (RDL) test then add
the measured delay to the new time before setting the clock (to make the
delay measurement you must have a modem that accepts the &T6 and &T0 commands
for RDL). The Swedish and Austrian services also let the caller measure the
delay, but by a method that does not require RDL. As noted, the Italian
service does not offer delay measurement.

Delay measurements done by TimeSet 7.20 are far more accurate than in any
previous version, with resolution to .0001 second (the measured value is
rounded to the nearest .01 second before use, however, since that is the
smallest unit of time the DOS clock will accept).


AutoDial, a memory-resident program for controlling TimeSet 7.20, is a new
program that is part of the TimeSet 7.20 package. The program occupies about
10k of memory and can be loaded in high memory with a memory manager. Its
purpose is to trigger a call to a specified time service at a preselected
time. TimeSet must be configured for manual operation if you want to use

AutoDial to control its operation. Both the service to be called and the
time to call it are specified on the command line when AutoDial is loaded.

The syntax for loading AutoDial is:


  3 Responses to “Category : Communication (modem) tools and utilities
Archive   : TSET721.ZIP
Filename : TIMSET72.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: