home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 8 / CDASC08.ISO / VRAC / RITM258A.ZIP / RIGHTIME.TXT < prev    next >
Text File  |  1993-08-26  |  75KB  |  1,455 lines

  1. RighTime v2.58a                                 Copyright 1991-93, GTBecker
  2. Released August 26, 1993                                All Rights Reserved
  3.  
  4.                              Shareware Notice
  5.  
  6.      The following files are contained in the evaluation distribution file:
  7.  
  8.           RIGHTIME.COM                  TESTINCR.COM
  9.           RIGHTIME.TXT (this file)      TESTTIME.COM
  10.           RIGHTLOG.COM                  VIEWCMOS.COM
  11.           SETUPRT2.COM                  WHATSNEW.TXT
  12.  
  13.      If any of these files are missing, you do not have a complete evaluation
  14. package.  A fresh distribution file of the latest version of RighTime and its
  15. associated programs and documentation is always available on the Air System
  16. Technologies BBS, 214/869-2780 (1200-14400 N81).
  17.  
  18.      These commercial program and other files are the copyrighted property of
  19. G.T. Becker and Air System Technologies, Inc., of Dallas, Texas, USA.
  20.  
  21.      You may use these evaluation programs for up to one month, and you may -
  22. and are encouraged to - pass the unmodified evaluation distribution file along
  23. to others, but no one may modify, rename or sell the programs or files to
  24. anyone under any circumstances (except shareware distributors, who may charge
  25. a reasonable distribution fee).  Although they will continue to function, the
  26. programs will notify you when the evaluation period has elapsed.
  27.  
  28.      If you choose to continue to use RighTime you must register your use. 
  29. Registered RighTime users receive a diskette containing the current version of
  30. the registered programs and additional utilities, a printed user manual and
  31. license agreement, automatic notification of new releases, and enthusiastic
  32. support from the author whenever needed.  The registered version of RighTime
  33. is functionally identical to the shareware distributed evaluation version,
  34. except that it lacks registration reminders, it is smaller in size, it can
  35. operate in a non-verbose and silent mode, and it is serial-numbered to the
  36. individual or business registrant.
  37.  
  38.      To register, fill in the form at the end of this document and send it
  39. with US $40 for each machine that is to run RighTime to Air System
  40. Technologies, Inc., 14232 Marsh Lane, Suite 339, Dallas, Texas 75234-3899,
  41. USA.
  42.  
  43.  
  44.  
  45.                        What is RighTime Version 2.5?
  46.  
  47.      RighTime is a resident real time clock correcting program for MS-DOS,
  48. PC-DOS and DRDOS running on PC/AT-class machines.  It corrects both DOS and
  49. CMOS Real Time Clock (RTC) clock rate error as large as 5.5 minutes per day,
  50. and it increases the DOS clock resolution from about 0.055 second to 0.01
  51. second.  It occupies only about 7K of system RAM and can normally be loaded
  52. high.  If RighTime is installed as suggested, the system clock will behave as
  53. properly and accurately as the system clock of a computer should.
  54.  
  55.      RighTime brings exceptional system time-of-day clock performance to the
  56. machine with no additional hardware.  With RighTime installed, the standard
  57. real time clock system becomes an Adaptive Mathematically Compensated Crystal-
  58. controlled Oscillator based clock.  Under stable conditions, RighTime can
  59. produce a system clock that keeps time within 0.5 second per week or better
  60. (some users have reported consistent rate accuracy of 0.07 second per week). 
  61. An error rate of 0.5 second per week is about 0.8 part per million, or more
  62. than 100 times better than an unconditioned crystal time base alone, or about
  63. 30 times better than a moderately conditioned one like a modern watch of
  64. quality.  A technical paper about CMOS RTC and DOS clock problems and
  65. RighTime's approach to solving them can be found on the BBS (RT2@PTTI.ZIP).
  66.  
  67.      RighTime Version 2.5 exhibits many new features, but retains version 1.1
  68. compatibility (except /H).  In addition to numerous invisible internal
  69. improvements, RighTime Version 2.5 sports the following changes:
  70.  
  71.      *    True 0.01 second DOS clock resolution: the 55-millisecond barrier
  72.           is broken!  The DOS clock increments in 0.01 second steps while
  73.           maintaining the standard "tick" rate.  [See /TH below.]
  74.  
  75.      *    File mode correction storage can be directed to either
  76.           RighTime.COM or to a separate data file (RighTime.COR), which will
  77.           prevent anti-virus watchdog utilities from flagging RighTime. 
  78.           [/FR, /FM]
  79.  
  80.      *    Correction storage can be directed to any valid CMOS RAM address
  81.           that is available in the machine, including extended RTC CMOS and
  82.           MCA-type (PS/2 and -SL) CMOS RAM.  [/R, /RM]
  83.  
  84.      *    Four levels of function disabling.  [/TH, /TD, /TA, /K]
  85.  
  86. ***  *    New serial port monitoring techniques eliminate problems with data
  87.           communications.  [/M, /MI]
  88.  
  89. ***  *    Automatic disabling of 0.01 second DOS clock mode while Microsoft
  90.           Windows in 386 Enhanced mode is resident.
  91.  
  92.      *    Disabled cool correction and improved warm correction application. 
  93.           [/D, /U, /X]
  94.  
  95. ***  *    Options are provided that allow learning disabling and ignoring
  96.           time and date sets.  [/L, /I]
  97.  
  98. ***  *    Learning is now disabled by default for time sets from within
  99.           Microsoft Windows in 386 Enhanced mode and the time set that
  100.           follows any time set from within Windows in 386 Enhanced mode. 
  101.           [/LW]
  102.  
  103. ***  *    Simple but effective security makes unauthorized time sets
  104.           virtually impossible.  [/#]
  105.  
  106.      *    Automatic Daylight/Standard time change in the USA.  [/A]
  107.  
  108.      *    Fixed offset values may now range from -90.00 to +90.00 seconds. 
  109.           [/O]
  110.  
  111.      *    Logging of all time-related activity.  [/G]
  112.  
  113.      *    Highlighting of significant data and ANSI color screens.  [/Y]
  114.  
  115.      *    On screen memory-jogging help.  [/?]
  116.  
  117.      *    Silent and defeatable self test.  [/Q]
  118.  
  119.      *    Non-verbose mode (registered version only).  [/V]
  120.  
  121.      *    /W, /C and /O values may be expressed as either integers
  122.           (hundredthseconds) or as fractional seconds (i.e. /W-1234 =
  123.           /W-12.34), consistent with a new displayed data format.
  124.  
  125.      *    RighTime's status report includes duration since last time set,
  126.           duration since last applied DOS correction, duration since last
  127.           applied CMOS adjustment and percentage of warm system operation
  128.           (any /F and extended CMOS /R only).
  129.  
  130.      *    Intelligent application of warm and cool corrections, weighted
  131.           observed error and distributed modification of correction values
  132.           (both warm and cool corrections will be modified based on observed
  133.           error at time set and percentage of warm system operation) (any /F
  134.           and extended CMOS /R only).  Although the practice remains the
  135.           ideal, it is no longer necessary to set the clock immediately
  136.           after booting and just prior to shutting the system down to learn
  137.           the cool and warm corrections; you may set the time at any time,
  138.           and RighTime will do its best to adjust the corrections
  139.           appropriately.
  140.  
  141.      *    Tools are provided to visualize and verify RighTime's actions. 
  142.           [TestTime, TestIncr, RighTLog, ViewCMOS]
  143.  
  144. ***       +    An improved TestTime is able to resolve clock error to four
  145.                decimal places (to tenths of milliseconds), reports the DOS-
  146.                CMOS offset immediately, and displays the DOS time to
  147.                hundredths.
  148.  
  149. ***       +    TestIncr measures and displays the DOS clock resolution and
  150.                counts time-related system interrupts over a prescribed test
  151.                period.
  152.  
  153.           +    RighTLog displays the record of all time-related activity on
  154.                the system.  It identifies the source of each time set and
  155.                dateset by program name, making hidden time set
  156.                troubleshooting easy.
  157.  
  158.           +    ViewCMOS can now display the first 128 bytes of MCA-type
  159.                CMOS on those machines equipped with it.
  160.  
  161.      *    SETUPRT2, a full-screen install program, eases first-time
  162.           installation and startup as well as reinstallation when changing
  163.           options.
  164.  
  165.      *    Professional TimeSet v7.1 or later (on August 8, 1993 the current
  166.           version was 7.21) by Pete Petrakis (Life Sciences Software,
  167.           Stanwood, Washington USA) can directly control several RighTime
  168.           functions and provides a RighTime status screen.  These two
  169.           programs were developed in concert and work exceptionally well
  170.           together.  TimeSet uses a modem to call any of five atomic clock
  171.           time standards (in the USA, Austria, Italy and Sweden) or a
  172.           secondary local time source (TimeGen) to set the system clock to
  173.           millisecond accuracy.  It is highly recommended.  Its shareware
  174.           evaluation file is available on the Air System Technologies BBS
  175.           and on BBSs worldwide.
  176.  
  177.  
  178.  
  179.                           What Does RighTime Do?
  180.  
  181.      First, here is what RighTime cannot do:
  182.  
  183.      -    RighTime cannot correct clock boards or computer motherboard
  184.           clocks that do not emulate the PC/AT CMOS RTC hardware clock and
  185.           its BIOS support precisely.  The large majority of current 80286-,
  186.           80386- and 80486-based machines (termed PC/AT-class) are
  187.           compatible.
  188.  
  189.      -    RighTime cannot properly correct an unstable clock; most clocks
  190.           are slow or fast and they are essentially unvarying.  If your
  191.           clock wanders aimlessly or has suddenly changed behavior, your
  192.           hardware might need repair (perhaps simple battery or CMOS RTC
  193.           module replacement).
  194.  
  195. ***  -    RighTime will not run under OS/2.  An OS/2 version is in
  196.           development.  Check the BBS for information.
  197.  
  198.  
  199.      RighTime exploits the better qualities of each of the two clocks in the
  200.      system and improves upon them by doing four fundamental things:
  201.  
  202.      1)   RighTime slaves the DOS system clock (which has higher resolution)
  203.           to the CMOS RTC (which has higher stability).
  204.  
  205.      2)   RighTime augments the DOS clock driver routines with its own
  206.           routines, which provide resolution in excess of 0.01 second.
  207.  
  208.      3)   RighTime monitors time set commands (and the equivalent system
  209.           calls from any program) to learn the CMOS RTC clock error rate.
  210.  
  211.      4)   RighTime improves and maintains accuracy by regularly calculating
  212.           and applying corrections or adjustments to each clock.  The DOS
  213.           clock is normally corrected every four seconds.  The CMOS RTC is
  214.           adjusted as required.
  215.  
  216.  
  217.      RighTime intrinsically sets the CMOS RTC and solves the midnight
  218.      rollover date error that exists in most DOS/BIOS combinations,
  219.      eliminating the need for other utility programs or drivers that perform
  220.      these functions.  Unlike DOS alone, the CMOS RTC seconds transition will
  221.      be properly set by RighTime and the time will be set to 0.01 second
  222.      resolution, and these qualities will survive through rebooting.  If the
  223.      machine is powered off, the clocks will be appropriately adjusted for
  224.      the off period at the next boot, and a separate correction is learned
  225.      and maintained for that cool period.
  226.  
  227.      Each time you set the time, RighTime will improve the accuracy of the
  228.      corrections, which will subsequently improve the accuracy of the clocks. 
  229.      It should be easy to achieve a worst-case error of less than 0.5 second
  230.      per day (usually quickly improving to less than 0.5 second per week). 
  231.      Numerous options are provided that allow fine tuning the correction
  232.      process to your system and application.
  233.  
  234.      An option is provided which assists in automatic time setting by
  235.      directing RighTime to notify a batch file when a specified number of
  236.      days has elapsed since the last time set or if the program's correction
  237.      capabilities have been exceeded.  This feature is available both at boot
  238.      and when RighTime is resident.
  239.  
  240.      Large time changes will not affect the corrections.  This permits
  241.      seasonal time changes; these bi-annual changes can also be automated in
  242.      the USA.
  243.  
  244.      RighTime usually runs fine with Microsoft Windows (although Windows in
  245.      386 Enhanced mode lags DOS by a second or two, so the system time should
  246.      normally not be set from within Windows) and with most task switchers
  247.      and DOS-based LANs.
  248.  
  249.  
  250.  
  251.                  Knowledge Saves Time - Contraindications
  252.  
  253.      Just as with medicine that cures ills, RighTime needs to involve itself
  254. in several areas of the operating system to do its work, and there can be
  255. side-effects.  Side-effects of RighTime are usually minor and easily
  256. correctable.  While the following list might appear daunting, it is the
  257. compilation of all reported problems that users have encountered with
  258. RighTime.  In all probability none of these items will apply to you, but be
  259. aware of the following so you'll know what you can do if you need to.
  260.  
  261.  
  262.      *    If your system issues messages that you've never seen before
  263.           installing RighTime, or mysteriously locks up or outright crashes,
  264.           you should either increase the STACKS parameters in your
  265.           CONFIG.SYS file or replace them with STACKS=0,0.  There are no
  266.           steadfast rules, but if you currently have no STACKS statement or
  267.           if you use STACKS=9,128, first try STACKS=0,0 (unless other
  268.           software on your system requires an explicit STACK statement; in
  269.           that case, try STACKS=16,256).  Sophisticated installations might
  270.           need even larger values.
  271.  
  272.      *    If Microsoft Windows fails to properly load or issues surprising
  273.           messages while loading, you might need to increase the FILES
  274.           specification in your CONFIG.SYS file.  If you have no FILES
  275.           statement, add FILES=15 to it.  Even if you have plenty of FILES
  276.           in UMBs, Windows needs a minimum number in conventional RAM. 
  277.           After you make any changes to CONFIG.SYS, reboot the machine. 
  278.  
  279.      *    Some programs (usually games) reprogram the 8254 timer-counter to
  280.           improve the video screen update rate or to produce sounds.  Since
  281.           the 8254 is part of the DOS clock mechanism, RighTime will
  282.           normally immediately sense and correct the mode change - and slow
  283.           the game or sound.  This protection can be relaxed without
  284.           compromising the clock by selectively disabling RighTime [usually
  285.           /TD, sometimes /TA] for the duration of the affected program and
  286.           reenabling it afterward.
  287.  
  288.      *    Programs that bypass the operating system and control the hardware
  289.           directly can cause odd symptoms.  Tape backup utilities seem to be
  290.           the most common offenders, potentially causing DMA errors with
  291.           RighTime's /F options.  Most of these programs offer an option
  292.           that uses the DOS and BIOS function calls instead; use it, or
  293.           disable RighTime [/TA] for the duration of the backup if
  294.           necessary.
  295.  
  296. ***  *    Communication sessions can sometimes be disturbed by RighTime. 
  297.           Two options [/M, /MI] yield automatic disabling during
  298.           communication activity on selected ports.  The methods used in
  299.           this version are new and appear to be very effective.
  300.  
  301. ***  *    Disk defragmenters (DEFRAG, PCCOMPRESS, SPEEDDISK, DOG, etc.) can
  302.           produce cross-linked files resulting in loss of data if RighTime
  303.           is active (with any /F option).  DOS is not aware that these
  304.           utilities are moving files around, so RighTime isn't either. 
  305.           USUALLY, RIGHTIME (WITH ANY /F OPTION) MUST NOT BE RUNNING [/K]
  306.           WHEN DEFRAGMENTING THE DISK DRIVE ON WHICH IT RESIDES.  Late
  307.           versions of SPEEDDISK will sense that RighTime's files are in use
  308.           and will not attempt to move them, allowing RighTime to safely
  309.           continue functioning during the defragmentation.
  310.  
  311. ***  *    Some screen savers and program schedulers misfire prematurely and
  312.           some on-screen clocks run fast due to RighTime's high resolution
  313.           DOS clock mode.  Screen savers can also issue unexpected time sets
  314.           that will disturb RighTime's learning unless ignored [/I-1]. 
  315.           Disabling the 0.01 second DOS clock mode [/TH] usually allows
  316.           these programs to coexist with RighTime.
  317.  
  318. ***  *    Berkeley Systems' popular screen saver, After Dark for Windows,
  319.           usually also installs a DOS screen blanker which loads in
  320.           AUTOEXEC.BAT.  Some users have found that this module, AD-DOS.EXE,
  321.           locks the system at the moment of a time set when RighTime is
  322.           running.  We suggest that you remove AD-DOS.EXE from the
  323.           AUTOEXEC.BAT file.
  324.  
  325. ***  *    RighTime can be run in high memory.  Be aware that the program
  326.           uses several anti-virus and anti-hacking techniques to protect
  327.           itself.  This requires a large (about 80K), but brief, use of
  328.           memory, so load RighTime early when there is sufficient space; all
  329.           but the resident portion will be released for subsequent modules. 
  330.           
  331. ***  *    PC Tools' RAMBoost has been reported to cause a RighTime selftest
  332.           failure, as has SofNet's FaxWorks scheduler if loaded before
  333.           RighTime.  Defeat the selftest [/Q] in these instances.
  334.  
  335.      In most cases, a program conflict can be resolved by temporarily
  336.      disabling RighTime.  This can be accomplished manually at the DOS
  337.      prompt, with a batch file, or via a multiple-command alias in 4DOS or
  338.      NDOS.  RighTime functions can be easily reenabled afterward.
  339.  
  340.      
  341.  
  342.                            Standard Installation
  343.  
  344. ***  RighTime is now provided with a simple installation process that will
  345. assure successful startup.  We strongly suggest that you follow this
  346. procedure.  After you have some experience with the program you can manipulate
  347. options at the command line level if you wish, but even for these changes the
  348. supplied installer program, SETUPRT2, is recommended.  4DOS users: SETUPRT2
  349. sometimes fails under 4DOS, yielding an erroneous "Out Of Memory" message. 
  350. For the installation, change your COMSPEC to a copy of COMMAND.COM, then
  351. resume using 4DOS once RighTime is installed.
  352.  
  353.      1)   If you are currently running RighTime, kill it (RighTime /K).
  354.  
  355.      2)   Make a work directory and get in it, for example:
  356.                MD \TEMP
  357.                CD \TEMP
  358.  
  359.      3)   Copy the shareware distribution file into the new directory and
  360.           unzip it.  Verify that all of the files listed above are present.
  361.  
  362.      4)   Run from a pure DOS prompt (not a shell or DOS session):
  363.                SETUPRT2
  364.  
  365.      5)   SETUPRT2 will allow you to select many options, but you can 
  366.           initially accept the defaults by simply selecting "Install"; you
  367.           can change them anytime later.
  368.  
  369.      6)   When asked to do so, set the time accurately (preferably with
  370.           TimeSet), and THEN TYPE EXIT to continue the installation process. 
  371.           Your AUTOEXEC.BAT and, if required, CONFIG.SYS files will then be
  372.           modified, having a line or two added to them.  The existing files
  373.           will be renamed with an .RT2 extension.
  374.  
  375.      7)   You will normally be directed to reboot by pressing Ctrl-Alt-Del.
  376.  
  377.      8)   You may delete the contents of the work directory.
  378.  
  379.      8)   Set the time accurately for a few days, ideally immediately before
  380.           you shutdown your system for the night and immediately after
  381.           booting in the morning.  If you never shutdown your system, set
  382.           the time accurately a few times each day, well spaced.
  383.  
  384.      You should find that your system clocks rapidly become more accurate. 
  385. If they do not, check RighTLog for invisible, unexpected time sets (which will
  386. confuse RighTime's learning).  The name of the program that set the time is
  387. identified in the log.  You might be surprised to find that some programs -
  388. that have no apparent business doing so - set the clock, usually incorrectly
  389. and always disturbing RighTime.  You will need to consider an option [/I] that
  390. can deal with these rogue programs; read on.
  391.  
  392.  
  393.      You will normally not need to proceed beyond this point, but if you have
  394. trouble with the standard installation, the following sections discuss
  395. RighTime in greater detail.
  396.  
  397.  
  398.  
  399.                              Starting RighTime
  400.  
  401.      Part of the RighTime process requires storage of some correction data. 
  402. The amount of data is small and it must be stored in a place that will survive
  403. rebooting and power failures.  To use RighTime, first decide where to store
  404. the corrections.  There are two options: disk file and unused CMOS RAM.  In
  405. general, try the disk file option first if you can.  If you have a hard disk,
  406. you can use the disk file or possibly the CMOS RAM option.  If you have only
  407. floppies the disk file option is impractical, so consider the CMOS RAM option. 
  408. A diskless machine cannot use the disk option, unless it is equipped with a
  409. non-volatile RAM disk which appears to the system as any other disk would.
  410.  
  411.      The CMOS RAM option will involve some initial bravado: although only the
  412. first 52 bytes of a 64-byte CMOS RAM are defined by the original IBM PC
  413. standard (presumably leaving the last 12 bytes available), most modern BIOSs
  414. use these 12 bytes for other functions.  If you have adopted a user-specified
  415. hard disk format, for example, your specification might be stored there. 
  416. Sometimes the area is used for the power-on password in machines so equipped. 
  417. Many modern machines contain 128-byte CMOS RAM areas, and others (some PS/2
  418. models and SL-based machines) contain 256 bytes of CMOS RAM.  SETUPRT2 will
  419. only allow selection of CMOS RAM addresses that allow for the proper storage
  420. of RighTime's correction data, but there is no guarantee that the address you
  421. select is unused in your machine configuration.  You can run ViewCMOS to look
  422. at the CMOS RAM contents, but again, there is no guarantee that even a large
  423. block of zeros is free and safe to use.  Before attempting to use the CMOS RAM
  424. option, be forewarned that CMOS RAM contains system setup data that RighTime
  425. might inadvertently disturb; be prepared to reset the setup data if the CMOS
  426. RAM option is unsuccessful on your system.  If this dissuades you or if you
  427. are otherwise reluctant, use the disk file option if you can.
  428.  
  429.      If you choose the disk file option, RighTime will attempt to write to a
  430. disk file (its own program file or a separate data file) from time to time, so
  431. write access must be allowed.  If the "disk" is actually a non-volatile RAM
  432. disk card, the card must remain in the machine if this option is to work
  433. properly.  If you use the disk file option on a battery powered hard disk
  434. laptop, you might want to decrease the update frequency to allow your hard
  435. disk to spin down after periods of inactivity to increase the battery life
  436. (see the /U option, Command Line Syntax, below).  The disk file option causes
  437. RighTime to maintain an open handle to a file which will present a problem
  438. when running a file-defragmenting utility on the same disk drive that RighTime
  439. is updating, but RighTime can be killed during defragmentation and restarted
  440. afterwards (see the /K option, Killing, Disabling and Reenabling Resident
  441. RighTime, below).
  442.  
  443.      RighTime can also be configured with no correction storage, with
  444. consequential loss of some of its utility (see No Correction Storage Option,
  445. below).
  446.  
  447.      If you know how fast or slow your clock appears to run per day, you can
  448. optionally speed the learning process of RighTime by suggesting a correction
  449. to the program as a signed number in hundredths of seconds - positive for a
  450. slow clock, negative for a fast clock.  For example, if your clock runs about
  451. two minutes fast per day, the suggested correction should be -120.00 (120
  452. seconds).  There are actually two corrections that RighTime normally applies,
  453. one while the system is running and warm, and another when the system is
  454. turned off and cool.  If you know the cool correction, you can suggest it
  455. also.  If you don't know one or either correction, RighTime will determine
  456. them anyway; it'll just take a little longer for the corrections to mature to
  457. good accuracy.
  458.  
  459.      If you need to restart RighTime and it is currently resident and
  460. running, you must first kill the resident program (see Disabling and
  461. Reenabling Resident RighTime, below).  If appropriate, the corrections that
  462. RighTime has already learned can be suggested to the new program copy. 
  463.  
  464.      If you have been using another resident driver or TSR to correct the
  465. weaknesses of your clock, remove all references to it from your CONFIG.SYS and
  466. AUTOEXEC.BAT files and, once you are confident that RighTime is all it
  467. purports to be, remove the other driver or TSR from your system.
  468.  
  469.  
  470.  
  471.                              Setting the Time
  472.  
  473.      If you have access to a time standard, use it.  For best accuracy, use a
  474. telephone service time-setting program such as TimeSet.  Alternatively, you
  475. can listen to WWV, CHU or another shortwave time signal, or a radio network
  476. news broadcast, and be prepared to set your clock when you hear the beep on
  477. the minute or hour.  Don't use a radio station that is airing a call-in talk
  478. show; the audio is usually delayed six to ten seconds on such programs to
  479. allow for profanity dumping, and so the beep will be equally late.  An all-
  480. news format station is probably not delayed.  To be certain, call the radio
  481. station and ask for engineering; they will know.  Local telephone time
  482. services are usually poor; don't trust that they are correct.  What is
  483. important is accuracy.
  484.  
  485.      RighTime will monitor each time set occurrence, learning from your
  486. adjustments.  Whenever you notice or suspect that the indicated DOS system
  487. time is insufficiently correct to satisfy you, reset it accurately.  You will
  488. find that the clocks will become more and more accurate and the need for
  489. adjustment will decrease, becoming infrequent; however, you must set the time
  490. accurately at least once per month (an option is provided to assist in
  491. automating this [/S] (see Errorlevels, below).
  492.  
  493.      Allow sufficient time to elapse between time sets so that enough error
  494. exists for RighTime to use in its correction calculations; the more time that
  495. you allow, the better the correction factors that are determined.  Careless
  496. time sets will result in poor correction or even wild clock behavior; remember
  497. that you are "training" the program, so do it well.  If you are eager, four
  498. hours will probably be an adequate initial wait; of course, you can use your
  499. system as you normally would during this time.  Each time the time is set,
  500. RighTime will make appropriate adjustments to the cool and warm correction
  501. values.
  502.  
  503.  
  504.  
  505.                                 The Results
  506.  
  507.      After a few days of your diligent time setting, the corrections should
  508. settle to fairly constant numbers which will be true indications of the
  509. uncorrected performance of your CMOS RTC.  Once RighTime is installed, you can
  510. display the current corrections by simply running RighTime again at a DOS
  511. prompt (no parameters are required).  The correction values and other current
  512. status will be displayed and a functional self test will normally be
  513. performed, verifying that RighTime is currently running properly on your
  514. system.
  515.  
  516.      When running RighTime, whether at installation or when resident, the
  517. program will normally be silent.  If RighTime beeps, pay close attention to
  518. its report; it is reminding or warning you of an unusual mode, condition or
  519. failure.  If ANSI.SYS is present and data highlighting is not disabled [/Y0],
  520. the warning lines will be highlighted.
  521.  
  522.      As long as RighTime is in use and you've been diligent in your
  523. adjustments, and the corrections have matured, the CMOS RTC error will not be
  524. more than 0.5 second, and the DOS clock will be much more accurate than that.
  525.  
  526.      RighTime has limits of one week of inactivity, and one month between
  527. time sets, that can be corrected to a maximum of 5 minutes, 27.67 seconds per
  528. occasion; beyond that, all bets are off.  In that case, unpredictable, and
  529. probably incorrect, clock changes can occur, but RighTime will advise you of
  530. its difficulty if it can.  For example, if your clock runs two minutes slow
  531. per day and you don't use the system for three full days, when you boot up you
  532. will receive a message warning that the clock needs to be adjusted manually
  533. (or automatically; see Errorlevels, below).  The subsequent adjustment will
  534. not affect the corrections.
  535.  
  536.  
  537.  
  538.                        No Correction Storage Option
  539.  
  540.      If you have difficulty with both the CMOS RAM and disk file options or
  541. you need or wish to use neither option, RighTime can still correct the clocks
  542. for as long as the system runs continuously.  What RighTime has learned will
  543. be lost when you reboot or power down, and there can be no cool correction. 
  544. Otherwise, all of the comments above apply.  If you suggest a good warm
  545. correction and you set the clock after you boot, RighTime will serve well.
  546.  
  547.  
  548.  
  549.             Killing, Disabling and Reenabling Resident RighTime
  550.  
  551.      There will normally be few, if any, occasions that will require you to
  552. disable RighTime, but some instances exist that can only be resolved by
  553. temporarily removing RighTime from contention.  There are four levels of
  554. disabling; each level is more restrictive in what RighTime is permitted to do. 
  555. From least restriction to most, the disabling options are /TH, /TD, /TA, and
  556. /K.
  557.  
  558.      Once RighTime is resident, it can be disabled by running at a DOS
  559.      prompt:
  560.  
  561.           drv:\path\RighTime /TH   [disables 0.01 second DOS clock]
  562.                or
  563.           drv:\path\RighTime /TD   [disables DOS clock maintenance]
  564.                or
  565.           drv:\path\RighTime /TA   [disables all functions (including
  566.                                    logging)]
  567.  
  568.      Resident RighTime can then be reenabled by running:
  569.  
  570.           drv:\path\RighTime /E    [enables all functions]
  571.  
  572.      Programs that defragment or reorganize the hard disk must always be run
  573.      with no open files.  When using RighTime's disk file option [any /F], an
  574.      open handle is maintained to a file, so BEFORE RUNNING A DISK
  575.      REORGANIZING UTILITY, RighTime MUST BE KILLED (except with late
  576.      SPEEDDISK versions).  After the utility completes, RighTime can be
  577.      restarted with the same command line used in the AUTOEXEC.BAT file. 
  578.      However, most defragmenting utilities suggest rebooting afterward; in
  579.      that case, AUTOEXEC.BAT will restart RighTime.  This precaution is not
  580.      required when using the CMOS RAM option.
  581.  
  582.      RighTime can be irreversibly disabled (or "killed") by running:
  583.  
  584.           drv:\path\RighTime /K    [entire resident program terminated]
  585.  
  586.      The /K switch will cause the function of RighTime to terminate, but the
  587.      memory that was allocated to RighTime will remain allocated and
  588.      unavailable.  If you wish, another copy of RighTime can be started with
  589.      different options; in that case, a memory map will indicate multiple
  590.      RighTime allocations, but only one will be active.
  591.  
  592.      If it is your intent to permanently remove RighTime from your system,
  593.      you can do so by killing the resident program and removing or REMing the
  594.      RighTime invocation in your AUTOEXEC.BAT.  Rebooting is not immediately
  595.      necessary.
  596.  
  597. ***  RighTime provides other methods to temporarily disable its function in
  598.      instances where the program interferes with serial communication.  An
  599.      option will continually test for the presence of Data Carrier Detect
  600.      (DCD) from each specified serial port, or communication activity can be
  601.      sensed by counting IRQ interrupts.
  602.  
  603.           Option /Mport looks for DCD.  When DCD is active, RighTime will be
  604.           disabled similar to /TA.  Normal function will resume when DCD
  605.           becomes inactive.  Multiple ports can be specified; if any of the
  606.           specified ports indicates DCD active, RighTime will be disabled. 
  607.           This option will work with Microsoft Windows, but 386-Enhanced
  608.           mode users will need to prevent a false contention report by
  609.           clicking on Control Panel, 386-Enhanced, then select Never Warn
  610.           for each affected port, then OK.
  611.  
  612.                To activate DCD monitoring, use the /M switch as follows:
  613.  
  614.                     drv:\path\RighTime /M1   [for COM1]
  615.                          or
  616.                     drv:\path\RighTime /M2   [for COM2]
  617.                          or
  618.                     drv:\path\RighTime /M3   [for COM3]
  619.                          or
  620.                     drv:\path\RighTime /M4   [for COM4]
  621.  
  622.                Several ports can be simultaneously monitored, for example:
  623.  
  624.                     drv:\path\RighTime /M1 /M2
  625.  
  626.                DCD monitoring can be disabled with
  627.  
  628.                     drv:\path\RighTime /M0
  629.  
  630.                For DCD monitoring to function properly, the active modem
  631.                control string must contain &C1 for Hayes-compatible modems. 
  632.                This will cause DCD to properly reflect the presence of
  633.                carrier.  If DCD is stuck on and a /M switch specifies that
  634.                port, RighTime will never be permitted to function.  If you
  635.                run RighTime to display a status report, the current DCD
  636.                state will be reported.  It should normally report "... DCD
  637.                monitoring is enabled", not "... DCD active; RighTime
  638.                function disabled".
  639.  
  640.  
  641. ***       Option /MIport determines serial port activity by counting IRQ3
  642.           and/or IRQ4 interrupts over a short period of time (approximately
  643.           0.5 second), regardless of the DCD state.  If activity is
  644.           indicated, RighTime will be disabled until activity ceases.  This
  645.           method will not work with Microsoft Windows in 386 Enhanced mode. 
  646.  
  647.                To activate IRQ monitoring, use the /MI switch as follows:
  648.  
  649.                     drv:\path\RighTime /MI1  [for COM1/IRQ4]
  650.                          or
  651.                     drv:\path\RighTime /MI2  [for COM2/IRQ3]
  652.                          or
  653.                     drv:\path\RighTime /MI3  [for COM3/IRQ4]
  654.                          or
  655.                     drv:\path\RighTime /MI4  [for COM4/IRQ3]
  656.  
  657.                Several ports can be simultaneously monitored, for example:
  658.  
  659.                     drv:\path\RighTime /MI1 /MI2
  660.  
  661.                IRQ monitoring can be disabled with
  662.  
  663.                     drv:\path\RighTime /M0
  664.  
  665.                The COM port, IRQ and I/O address assignments are standard:
  666.  
  667.                     Port IRQ  Address
  668.  
  669.                     COM1 IRQ4   3F8
  670.                     COM2 IRQ3   2F8
  671.                     COM3 IRQ4   3E8
  672.                     COM4 IRQ3   2E8
  673.  
  674.                Specify the port number, not the IRQ.  For example, IRQ3
  675.                will be monitored if either /MI2 or /MI4 is specified.
  676.  
  677.                Nonstandard IRQs can be accommodated by the /Pn option.
  678.  
  679.           Option /M and /MI should not be mixed.  If they are, the IRQ
  680.           method will be applied to all of the specified ports.  For
  681.           example, /M1/MI2 is equivalent to /MI1/MI2.
  682.  
  683.      Normally, RighTime learns from each time set.  Some programs invisibly
  684.      set the clock - in most cases for no apparently good reason - which
  685.      disturbs RighTime's learning.  If RighTime is run with logging enabled
  686.      [/G], all time and date sets will be logged, and each log entry,
  687.      displayed by running RighTLog, identifies the program name of the source
  688.      of the time or date set.  Once the sources of the offending time or date
  689.      sets are identified, RighTime can be selectively controlled to ignore
  690.      those errant sets.  There are four approaches that work equally well,
  691.      although the last of the four might be the easiest.
  692.  
  693.           1)   As when temporarily disabling RighTime in the examples
  694.                above, the offending program can be preceded by a RighTime
  695.                command which will cause the time sets to be ignored as if
  696.                the program never issued them.  If the program always issues
  697.                a pair of sets, one for the date and one for the time,
  698.                RighTime can be directed to ignore the following two sets
  699.                with
  700.  
  701.                     drv:\path\RighTime /I2   [ignore next two sets]
  702.                     OffendingProgramHere
  703.  
  704.                If the program issues only a time set, it can be ignored
  705.                with
  706.  
  707.                     drv:\path\RighTime /I1   [ignore following set]
  708.                     OffendingProgramHere
  709.  
  710.                In each case, once the specified number of sets to be
  711.                ignored has been issued by the offending program, RighTime
  712.                will resume normal function, accepting and processing time
  713.                and date sets.  If there are several offending programs,
  714.                each will need to be treated similarly.
  715.  
  716.           2)   Another method, useful if the offending program issues a
  717.                variable number of sets, is to precede the program with a
  718.                RighTime command which causes all time and date sets to be
  719.                ignored until further notice.  The program can then be
  720.                followed by a Rightime command which discontinues ignoring
  721.                time and date sets.  A small batch file might look like
  722.  
  723.                     drv:\path\RighTime /I-1  [ignore all sets]
  724.                     OffendingProgramHere
  725.                     drv:\path\RighTime /I0   [resume allowing sets]
  726.  
  727.           3)   A logical extension of that method is to issue the /I-1 in
  728.                the AUTOEXEC.BAT invocation of RighTime.  This method (and
  729.                the next one) will deal with time sets that are produced by
  730.                a resident module like a screen saver.  Including /I-1 in
  731.                the AUTOEXEC.BAT invocation of RighTime will cause all time
  732.                and date sets to be ignored, regardless of the source - even
  733.                the DOS prompt TIME and DATE commands - until otherwise
  734.                directed.  Legitimate time sets - like from TimeSet - can be
  735.                permitted by surrounding the TimeSet invocation with the
  736.                inverse of the commands above, i.e.
  737.  
  738.                     drv:\path\RighTime /I0   [allow sets]
  739.                     TimeSet
  740.                     drv:\path\RighTime /I-1  [resume ignoring all sets]
  741.  
  742.                TimeSet v7.10 or later, however, provides for this ability
  743.                through its RighTime Control Panel.  No additional RighTime
  744.                commands are required, but you need to remember to use the
  745.                RighTime Control Panel each time you use TimeSet to set the
  746.                time.
  747.  
  748. ***       4)   If you will normally be using only one program to set the
  749.                time and date, a special form of the /I switch will cause
  750.                all time and date sets except those from the specified
  751.                program to be ignored; time or date sets from the specified
  752.                program will be allowed.  For example, if you use TimeSet
  753.                and issue a /I"TimeSet" in the AUTOEXEC.BAT invocation of
  754.                RighTime, only TimeSet will be allowed to set the time or
  755.                date; all other sets will be ignored as if /I-1 had been
  756.                issued.  If you want to allow the DOS prompt TIME and DATE
  757.                commands, you must specify /I"COMMAND" since COMMAND.COM is
  758.                the setting program (if you use 4DOS, use /I"4DOS").  If a
  759.                network workstation is to be set to a server's time, the
  760.                connection processor should be named (under LANtastic, NET
  761.                CLOCK \\SERVERNAME will set the date and time to those of
  762.                SERVER; if RighTime /I"NET" is invoked, no other time sets
  763.                will be allowed).
  764.  
  765. ***       When combined with the /# switch, these ignore options cannot be
  766.           changed by subsequent RighTime executions.  This makes it possible
  767.           to prevent unauthorized time or date changes.  If, for example,
  768.           AUTOEXEC.BAT invokes RighTime .../I"NET"/#, logs in and sets the
  769.           time to a server, the workstation user will be unable to change
  770.           the date and time - unless he uses extraordinary means like
  771.           renaming a copy of COMMAND.COM to NET.COM to use its TIME or DATE
  772.           command.  If absolute security is required, a second RighTime
  773.           line, RighTime /I-1/#, should be issued after the time and date is
  774.           set in AUTOEXEC.BAT; in this case, the first RighTime invocation
  775.           must not express /#, since that would disallow the second RighTime
  776.           command line.
  777.  
  778.      Learning can also be disabled.  This allows for time sets that will not
  779.      affect the current corrections.  The corrections are essentially fixed
  780.      while learning is disabled.  Learning can be disabled in the
  781.      AUTOEXEC.BAT RighTime invocation and it can be temporarily controlled by
  782.      TimeSet v7.10 or later.  It cannot be disabled at any other time.  To
  783.      disable learning, add the /L0 switch to the AUTOEXEC.BAT RighTime
  784.      invocation.
  785.  
  786.      In the registered version only, an additional option is allowed:
  787.  
  788.           drv:\path\RighTime /V0   [non-verbose mode produces no screen
  789.                                    output (including errors), is completely
  790.                                    silent, and disables self-testing]
  791.  
  792.  
  793.  
  794.                                  TestTime
  795.  
  796.      Included with RighTime is a program tool that can provide some
  797. interesting insight into the relationship of the clocks in your system and the
  798. function of RighTime.  TestTime takes no command line parameters.  It will
  799. determine and express whether or not RighTime is running in the system, tests
  800. and reports on some critical modes, and it provides a continuous single line
  801. display of the clock system status.
  802.  
  803.      The status line is straightforward:
  804.  
  805.           CMOS=date:hh:mm:ss DOS=date:hh:mm:ss.hh !Appl=+0.00 Meas=+00.0000
  806.  
  807.      where:
  808.  
  809. ***  CMOS is the CMOS RTC clock data.  An indicator following the CMOS
  810.      seconds data will flash each second if the CMOS RTC interrupts are
  811.      normal.
  812.  
  813.      DOS is the DOS system clock data, including hundredths.  The hundredths
  814.      digit might appear to be less than a blur due to your video vertical
  815.      scan rate.  It should be possible to see the difference between 0.01
  816.      second DOS clock mode and the standard 0.055 second mode [/TH].
  817.  
  818.      Appl is the current correction being applied to the DOS clock in
  819.      hundredths, if RighTime is resident.  The exclamation mark (!) before it
  820.      indicates the moment that the DOS clock is corrected.  This normally
  821.      occurs every four seconds, but can be skipped occasionally if internal
  822.      resources don't allow it.
  823.  
  824.      Meas is the signed time difference between the CMOS RTC and DOS clock in
  825.      seconds, resolved to four decimal places (tenths of milliseconds).  A
  826.      positive difference indicates that the DOS clock leads the CMOS RTC (it
  827.      displays a higher, later, advanced time).  Under normal conditions, this
  828.      value should be well within a few milliseconds of the "Appl" value; how
  829.      close it will be will depend upon the machine architecture and - to a
  830.      lesser extent - on machine speed.  It is usually possible to directly
  831.      view the clock drift at this resolution; the difference might increase
  832.      for awhile, then suddenly revert back to a value close to the "Appl"
  833.      value each time the DOS clock is corrected.
  834.  
  835.      You can use TestTime to learn much about the behavior of the two clocks
  836. in your system.  Try running it without RighTime installed and notice that the
  837. DOS clock is never the same as the CMOS RTC.  Set the time and run TestTime
  838. again.  If your DOS sets the CMOS RTC, check to see if the seconds are
  839. synchronized, which is indicated by a Meas value of essentially zero.  They
  840. probably are not.  Run TestTime some time later and see if the relationship
  841. between the clocks has changed; there's a good chance that it will have. 
  842. Which, if either, is correct?  Notice also that the Meas value flops around
  843. several hundredths of a second; this is due to the 0.055 second standard DOS
  844. clock resolution.  Try these things with RighTime installed and see the
  845. difference for yourself.  If RighTime is doing its job, you should see that
  846. Appl and Meas are essentially the same value - the former is the cause, and
  847. the latter is the effect.
  848.  
  849.  
  850.  
  851.                                  TestIncr
  852.  
  853. ***  TestIncr measures and displays the difference between one unique DOS
  854. clock time and the next.  With RighTime running normally, this value should
  855. always be 0.01 second.  Without Rightime running or when the 0.01 DOS clock
  856. mode is disabled [/TD or /TH], the value will average about 0.0549 second. 
  857. TestIncr also counts interrupts 8, 1Ch, 4Ah and 70h, and it displays the
  858. difference in the DOS clock tick count after the test period.
  859.  
  860.      The test will normally run for five seconds, but this can be changed
  861.      with a command-line parameter; the display can also be blanked to help
  862.      avoid false results on slower machines.
  863.  
  864.      For example,
  865.  
  866.           TestIncr 15 Blanked
  867.  
  868.      will run the test for 15 seconds without a real time display.
  869.  
  870.  
  871.  
  872.                                  ViewCMOS
  873.  
  874.      ViewCMOS displays the content of the CMOS RAM.  It can be useful to the
  875. adventurous RighTime user who is searching for an available area in which to
  876. store the corrections.  Be warned once again, though, that it is not easy to
  877. identify such a space.  Even if many zeros appear to suggest that an area is
  878. unused, remember that zero is a perfectly valid number that might be
  879. significant to the BIOS, and that, even if some space is available, the entire
  880. CMOS RAM might be checksummed.  A bad checksum will result from any changes
  881. that are not brought about by the BIOS itself, so the next boot might fail,
  882. forcing you into Setup.
  883.  
  884.      On systems that contain additional CMOS RAM that is addressed like PS/2
  885. MCA CMOS (the 386SL, for example), its presence is indicated.  The full-screen
  886. display can be switched from conventional CMOS RAM to the MCA-type CMOS RAM
  887. contents.  A message will announce that there is no MCA CMOS available if that
  888. is the case; this is not normally an error message but if you expect that your
  889. machine should have MCA-type CMOS RAM available this message could indicate a
  890. problem with your machine or its setup. 
  891.  
  892.  
  893.  
  894.                                  RighTLog
  895.  
  896.      If RighTime is run with logging enabled [/G], file RighTime.Log will be
  897. present in the directory from which RighTime is run.  RighTLog will display
  898. this binary file.  Each time-related activity will be logged.
  899.  
  900.      The most important of the log's indications is the source of each time
  901. and date set.  If a time or date set is present whose source you do not
  902. recognize, it is likely that the time is being set by a program that has no
  903. business doing so.  Some program names might contain non-displayable
  904. characters which RighTLog replaces with an underscore; these programs are more
  905. difficult to identify, but are often resident modules like screen savers. 
  906. These time and date sets will disturb RighTime's learning and can compromise
  907. the accuracy of the system clocks.  As discussed above, these errant time and
  908. date sets must be ignored with RighTime's /I switch.
  909.  
  910.      Each time set log entry also notes the percentage of time since the last
  911. time set that the system was warm.  If this value is much smaller than you
  912. think it should be, RighTime might not have been active when you thought it
  913. should have been.  The most common cause of this is using a /M switch that
  914. monitors a communication port whose DCD is stuck active.  You might need to
  915. make &C1 a default for your Hayes-compatible modem by doing the following:
  916.  
  917.      from within a communications program (ProComm, Telix, etc.),
  918.  
  919.           Type ATZ and press Enter [you should get an OK]
  920.           Type AT&C1&W and press Enter  [you should get an OK]
  921.  
  922.      This will initialize your modem to the required DCD mode at power up
  923.      and, unless changed, each time ATZ is sent to the modem.  Communication
  924.      programs can change it, though; if you continue to have this problem,
  925.      you'll need to do some more study.
  926.  
  927.      /GA will also log each CMOS RTC adjustment.  These entries can become
  928. annoyingly numerous if the warm correction value is large.  /GA is not
  929. normally required.
  930.  
  931.      RighTLog is intended to produce a screen display.  If you try to
  932. redirect the output to a printer, you will get unexpected results.  RighTLog
  933. writes to the screen in either bottom-to-top or top-to-bottom order, so the
  934. printout could be backwards.
  935.  
  936.  
  937.  
  938.                              Microsoft Windows
  939.  
  940. ***  Microsoft Windows opens a number of files when it loads.  If the FILES
  941. specification is CONFIG.SYS is too small, Windows will issue a misleading
  942. error message like "Incorrect DOS version" or something similar.  Since
  943. RighTime also opens files and might keep some open continuously, the FILES
  944. specification that has always worked for you might no longer.  Increasing the
  945. FILES parameter (in CONFIG.SYS) by five and rebooting will cure this problem.
  946.  
  947.      When Windows runs in 386 Enhanced mode, Microsoft acknowledges that its
  948. clock is usually a second or two behind the DOS clock.  This is due to the
  949. multitasking mechanism that Windows uses and is unavoidable.  Attempts to
  950. accurately set the system clock from within Windows in 386 Enhanced mode will
  951. also prove frustrating.  This is true even when running a program like
  952. TimeSet, either full screen or in a DOS window.  For the same reason,
  953. RighTime's 0.01 DOS clock mode will produce odd results when a program asks
  954. for the time from within Windows.  RighTime now automatically senses the
  955. presence of Windows in 386 Enhanced mode and disables 0.01 DOS clock mode
  956. while this is true.
  957.  
  958.      RighTime also normally will not learn from time sets that are issued
  959. while in Windows 386 Enhanced mode, nor from the first time set after any time
  960. set that is issued from within Windows in 386 Enhanced mode.  This prevents
  961. erroneous correction values from resulting from the false error that Windows
  962. produces.  If you wish, you can defeat this protection with a switch (/LW) in
  963. the AUTOEXEC.BAT RighTime invocation; if this switch is used, all time sets -
  964. in Windows or not - will be eligible for learning, but the learned correction
  965. values and the resulting clock correction will likely be poor.
  966.  
  967.      RighTime's /MIport switch will not work with Windows in 386 Enhanced
  968. mode.  The /Mport method works fine, but Windows might erroneously report that
  969. a communications port is in contention when a /Mport switch is used; this can
  970. be avoided by clicking on Control Panel, then 386-Enhanced, selecting the
  971. Never Warn button for each affected port, then OK.
  972.  
  973.  
  974.  
  975.                             Command Line Syntax
  976.  
  977.      RighTime must be executed in the AUTOEXEC.BAT (or a batch file called by
  978. it) so that it becomes a resident extension of DOS.  Most of the 29 options
  979. available can be expressed at this initial resident invocation.  RighTime can
  980. also be run as a transient program at the DOS prompt to change modes or to
  981. report on its current status.  A smaller number of options are effective in
  982. the transient execution.  Each option listed below indicates when - resident
  983. or transient or both - it can be used.  The options are not case sensitive
  984. (either /f or /F will work) and space between options is not required.  There
  985. must be no space between an option switch and its associated parameter.
  986.  
  987. ***  RighTime  [/F[M|R]|/R[[M]n]|/N] [/Un] [/W[n]] [/C[n]] [/Dn] [/L[0|W]]
  988.                [/In] [/G[A]] [/K|/T[H|D|A]|/E] [/M[I]n] [/A] [/Sn] [/Yn]
  989.                [/On] [/Xn] [/Hn] [/Pn] [/Q] [/V0]
  990.  
  991.      Storage:  /F=File[coM|coR] /R=cmosRam[[Mca]addr] /N=None /Umin=Update
  992.      Correction:    /W[Warm] /C[Cool] /Dmin=warmupDelay /L[0|Win]=Learn
  993.      State:    /Inum|"name"=Ignore /K=Kill /T=Tempdisable[Hund|Dos|All]
  994.                /E=Enable
  995.      Other:    /M[I]port=coMport /A=autoseAsonchange /Sdays=autotimeSet
  996.                /G=log[All] /Ohunds=Offset /Xhours=eXtrapweight
  997.                /V0=notVerbose /Ycolor=forceansi.Sys /Hbytes=stacklengtH
  998.                /Pint=interruPt /Q=Quiet,noselftest 
  999.  
  1000. where:
  1001.  
  1002.      /A   Automatic Daylight/Standard time change.  Implements the American
  1003.           standard biannual one hour adjustments at 0200 local time on the
  1004.           first April and the last October Sundays whether the machine is
  1005.           running or not.  If RighTime is running, there will be no
  1006.           detrimental effects caused by the time change.  If the machine is
  1007.           not running, the time change will shift the time-since-last-time-
  1008.           set by one hour which will, in turn, have an effect upon the next
  1009.           time set's learning.  The error will normally be small and will
  1010.           diminish with subsequent time sets.  The Dallas Semiconductor
  1011.           DS1287 and DS12887 and Motorola's MCCS146818B1M properly implement
  1012.           the time change rule as do most modern brand name chipset-based
  1013.           machines, but many machines are supplied with the Motorola
  1014.           MC146818P or its equivalent even today.  Although they might have
  1015.           been manufactured as late as mid-1991, these parts will misbehave
  1016.           in April, advancing the clock on the last Sunday (which was the
  1017.           convention prior to 1986).  Some modern chipset-based machines
  1018.           will not change at all.
  1019.           [Applicable at resident invocation only.]
  1020.  
  1021.      /Cn  Sets the initial cool correction rate in seconds per day  
  1022.           (default 0, maximum +327.67 or -327.68).
  1023.           [Resident only]
  1024.  
  1025.      /Dn  Changes the cool adjust period allowance (after boot) from the 30
  1026.           minute default.  The valid range is 0 to 60.  Consider this option
  1027.           if your system exhibits a large difference in warm and cool
  1028.           corrections and cabinet temperature is suspect, or if you need to
  1029.           disable cool correction.
  1030.  
  1031.           /D0  Disabled cool correction.  Applies the warm correction value
  1032.                at all times and learns only a warm correction value from
  1033.                observed error.  This is useful to users who never shut down
  1034.                their systems or who switch to and from other operating
  1035.                systems that cannot run RighTime.
  1036.  
  1037.           [Resident only]
  1038.  
  1039.      /E   Reenables all temporarily disabled RighTime functions.  If /TA has
  1040.           been in effect for less than the maximum period allowed (this
  1041.           duration depends on the warm correction value and is displayed
  1042.           when /TA is invoked) the clocks will be properly adjusted to
  1043.           correct for the disabled period.
  1044.           [Transient only]
  1045.  
  1046.      /F (or /FM)    Directs RighTime to store corrections in and retrieve 
  1047.                     corrections from its own program file.
  1048.  
  1049.           /FR  Directs RighTime to store correction factors in
  1050.                RIGHTIME.COR, a data file that will be created in RighTime's
  1051.                directory.
  1052.  
  1053.           [Resident only]
  1054.  
  1055.      /G   Activity logging.  Creates and maintains a comprehensive file of
  1056.           all user and program time-related activities.  It produces a
  1057.           binary file, RighTime.Log, which is displayable with program
  1058.           RighTLog.  This is an informative and valuable diagnostic tool.
  1059.  
  1060.            /GA Includes routine one-second CMOS clock adjustments.  On a
  1061.                machine whose warm correction is large, these will be
  1062.                frequent and will clutter the log.
  1063.  
  1064.           [Resident only]
  1065.  
  1066.      /Hn  Internal stack length.  The default is 160 bytes; valid range is
  1067.           64 to 1024 bytes.  Since RighTime is an operating system
  1068.           extension, its stacks might be used by other programs for brief
  1069.           periods.  RighTime reports on current internal stack usage. 
  1070.           Following a system crash, when RighTime is restarted it will
  1071.           report on the stack usage prior to the crash (/F and extended CMOS
  1072.           /R, only).  If the crash was due to insufficient stack space, this
  1073.           parameter value must be increased.  There is no relationship
  1074.           between this option and the STACKS command in Config.Sys.  [The /H
  1075.           switch of RighTime version 1.1 (for DR DOS 5.0) is no longer
  1076.           available, but a similar effect can be achieved by using /O-3.]
  1077.           [Resident only]
  1078.  
  1079. ***  /In  Ignore time and date sets, semi-permanently (/I-1, restored via
  1080.           /I0), for a specific count (e.g. /I2), or from all but a single
  1081.           specified program (e.g. /I"TimeSet") to prevent the spurious time
  1082.           and date sets of several utilities, screen savers, games and other
  1083.           facilities from confusing RighTime's learning and to allow time
  1084.           comparison without setting.
  1085.  
  1086.           When used with /#, system time sets can be altogether disallowed
  1087.           or restricted to a specific source.  /#/I"NET", for example, would
  1088.           assure that the time cannot be set from any source other than NET. 
  1089.           The workstation system time could be set no other way, assuring
  1090.           that the time could be not falsely set.  See /#.
  1091.           [Resident or transient]
  1092.  
  1093.      /K   Terminates (kills) RighTime function.  The memory that is occupied
  1094.           by RighTime remains allocated and unavailable.
  1095.           [Transient only]
  1096.  
  1097. ***  /Ln  Controls learning.
  1098.  
  1099.           /L0  RighTime ignores errors at any time set and applies fixed
  1100.                corrections at all times.
  1101.  
  1102.           /LW  All time sets will be eligible for learning whether issued
  1103.                from within Microsoft Windows or not.
  1104.  
  1105.           [Resident only]
  1106.  
  1107. ***  /Mn  Directs RighTime to suspend all functions (except time and date
  1108.           set and read processes) while the specified communications port
  1109.           indicates that DCD (Carrier Detect) is active.  n may be any of 1
  1110.           through 4, corresponding to COM1 through COM4.  This option
  1111.           prevents RighTime from potentially interfering with communications
  1112.           functions.  Normal function will resume when communications
  1113.           activity ceases.  Several /M switches may be specified; for
  1114.           example, a system with both COM1 and COM2 serial ports monitored
  1115.           would have /M1 /M2 specified in RighTime's invocation.  /M0
  1116.           disables DCD monitoring until the next /M invocation.
  1117.  
  1118.           PROPER DCD CONTROL REQUIRES THAT &C1 BE PART OF THE ACTIVE HAYES-
  1119.           COMPATIBLE MODEM CONTROL STRING.  
  1120.  
  1121.           Microsoft Windows might erroneously report that a communications
  1122.           port is in contention when a /M switch is used; this can be
  1123.           avoided by clicking on Control Panel, then 386-Enhanced, selecting
  1124.           the Never Warn button for each affected port, then OK.  DTR (Data
  1125.           Terminal Ready) might contain glitches under Windows in 386
  1126.           Enhanced mode; add S25=100 to the active modem control string to
  1127.           decrease the modem's DTR sensitivity if required.
  1128.  
  1129. ***       /MIn will count IRQ activity rather than watch DCD level.  If the
  1130.                IRQ that corresponds to the specified COM port is active
  1131.                (determined by a non-zero count over a 0.5 second period),
  1132.                RighTime functions will be suspended as above.  Normal
  1133.                function will resume after a similar period of no IRQ
  1134.                activity.  The /MI method will not work when communicating
  1135.                from within Microsoft Windows.  See also /Pn, below, for
  1136.                nonstandard IRQs.
  1137.  
  1138.           [Resident or transient]
  1139.  
  1140.      /N   Disables correction storage.  Learned corrections will be lost at
  1141.           shutdown and there will be no cool correction possible.
  1142.           [Resident only]
  1143.  
  1144.      /On  Offset allows DOS clock trim in seconds.  Default is 0; the
  1145.           valid range is -90.00 to +90.00.  This can be used to anticipate
  1146.           relay and contactor actuation delays and motor start times in
  1147.           process control system applications;
  1148.           [Resident only]
  1149.  
  1150. ***  /Pn  Interrupt monitoring for use in special applications.  If the
  1151.           specified interrupt (expressed in decimal) is active (as in /MIn,
  1152.           above), RighTime functions will be disabled until interrupt
  1153.           activity ceases.  /P0 disables interrupt monitoring until the next
  1154.           /P invocation.
  1155.  
  1156.                Nonstandard serial port IRQ activity can be monitored by
  1157.                translating the IRQ to its corresponding interrupt:
  1158.  
  1159.                     IRQ  Interrupt
  1160.                      2        10
  1161.                      5        13
  1162.                      7        15
  1163.                      9        113
  1164.                     10        114
  1165.                     11        115
  1166.                     12        116
  1167.                     15        119
  1168.  
  1169.                     To monitor IRQ5, for example, use /P13.
  1170.  
  1171.                     As with /MIn, this method of IRQ monitoring will not
  1172.                     work when communicating from within Windows.
  1173.  
  1174.           [Resident or transient]
  1175.  
  1176.      /Q   Defeats self testing and quiets minor status messages.
  1177.           [Resident or transient]
  1178.  
  1179.      /Rn  Directs RighTime to store corrections in CMOS RAM.
  1180.  
  1181.           /Raddr directs RighTime to store corrections in CMOS RAM.  The
  1182.           default address is 63, but it is increasingly unlikely that this
  1183.           will be a usable address; the address can range to 127.  The
  1184.           specified location is that of the last of 12 bytes for the default
  1185.           address, or the last of 22 bytes for any other location.  Using
  1186.           the default will not provide full features and is maintained for
  1187.           compatibility with earlier RighTime versions.  This option is
  1188.           potentially harmful, since a careless value might allow RighTime
  1189.           to overwrite setup data.  Inadvertently changing a hard disk type,
  1190.           for example, can lead to sadness.  Be careful.
  1191.  
  1192.           /RMaddr will place the corrections in MCA-type CMOS RAM.  There is
  1193.           no default: an address must be specified.  The specified location
  1194.           is that of the last of 22 bytes.  The valid address range is 22 to
  1195.           127 for 82360SL-type CMOS RAM and 274 to 2047 for PS/2 MCA-type
  1196.           CMOS RAM.
  1197.  
  1198.           [Resident only]
  1199.  
  1200.      /Sn  Changes the period that must elapse since the last time set before
  1201.           RighTime will set the corresponding program termination code.  The
  1202.           termination code can be tested with the IF ERRORLEVEL command in a
  1203.           batch file.  If this switch is not expressed, the default period
  1204.           is 28 days.  If more than the specified period has elapsed since
  1205.           the last time set, RighTime will terminate with an ERRORLEVEL of
  1206.           1.
  1207.           [Resident or transient]
  1208.  
  1209.      /T   Temporarily disables RighTime functions.
  1210.  
  1211.           /TH       disables 0.01 second DOS clock maintenance.
  1212.           /TD or /T disables DOS clock maintenance.  CMOS clock
  1213.                     maintenance continues.  This mode can persist
  1214.                     indefinitely.
  1215.           /TA       disables all RighTime functions (including logging)
  1216.                     and reports the maximum allowable disabled duration. 
  1217.                     If the disabled period is expected to exceed this
  1218.                     duration, use /K instead, then restart RighTime as in
  1219.                     the AUTOEXEC.BAT invocation with /D0 to force warm
  1220.                     correction.
  1221.  
  1222.           These disabled modes can be reenabled with /E.
  1223.  
  1224.           [Resident or transient]
  1225.  
  1226.      /Un  Changes the CMOS RAM or disk file update period from the two
  1227.           minute default.  The valid range is 2 to 60, and the value must be
  1228.           even.  If you think the default is unnecessarily frequent, you can
  1229.           decrease it by increasing this value.  Remember that this is part
  1230.           of the cool correction process, and less frequency might affect
  1231.           correction accuracy in severe situations.
  1232.           [Resident only]
  1233.  
  1234.      /V0  Non-verbose.  No screen output will be generated (including error
  1235.           messages).  This option is available to registered users only.
  1236.           [Resident or transient]
  1237.  
  1238.      /Wn  Sets the initial warm correction rate in seconds per day  
  1239.           (default 0, maximum +327.67 or -327.68)
  1240.           [Resident only]
  1241.  
  1242.      /Xn  Sets the error extrapolation weighting threshold.  This can
  1243.           desensitize RighTime's learning by decreasing the significance of
  1244.           the observed error from any time set whose previous time set was
  1245.           less than n hours ago by a linear factor (e.g. for the 4-hour
  1246.           default, the observed error from the second of two time sets that
  1247.           are one hour apart is considered only 0.25 significant), range 1
  1248.           to 72 hours.
  1249.           [Resident only]
  1250.  
  1251.      /Yn  Forces data highlighting if a non-standard ANSI.SYS is
  1252.           undetectable or if colors other than the white-on-black default
  1253.           are desired.  n is normally a two-digit value whose first digit
  1254.           represents the background color, while the second digit determines
  1255.           the foreground color.  Standard ANSI color numbers are expected:
  1256.  
  1257.                0=Black   4=Blue
  1258.                1=Red     5=Magenta
  1259.                2=Green   6=Cyan
  1260.                3=Yellow  7=White
  1261.  
  1262.           White-on-red, for example, results from /Y17.  To force the
  1263.           default on a non-standard ANSI driver, use /Y07 or simply /Y7. 
  1264.  
  1265.           /Y0  Automatic significant data highlighting (if ANSI.SYS is
  1266.                present) is defeated with /Y0.  To produce a text file of
  1267.                RighTime's report without ANSI sequences, use /Y0,
  1268.                redirected to disk.
  1269.  
  1270.           [Resident or transient]
  1271.  
  1272. ***  /#   Lock RighTime command line interface.  Placed on the AUTOEXEC.BAT
  1273.           invocation, this switch will prevent any transient RighTime
  1274.           execution from having effect.  Although RighTime command lines
  1275.           will continue to be checked for validity, no action will be taken
  1276.           on any command, making it impossible to change RighTime's mode.  
  1277.  
  1278.           If /I-1 is also used in the AUTOEXEC.BAT, it will normally not be
  1279.           possible for the system time or date to be changed except via the
  1280.           system BIOS setup screen.  See /I.
  1281.           [Resident or transient]  
  1282.  
  1283.      /?   On screen help memory jogger.  This is automatically produced if
  1284.           the command line contains a syntax error.
  1285.           [Transient only]
  1286.  
  1287.  
  1288.  
  1289.      A sophisticated AUTOEXEC.BAT invocation of RighTime might be:
  1290.  
  1291.      C:\RT2\RighTime /G /FR /D0 /U20 /S7 /A /I"TimeSet" > C:\RT2\RIGHTIME.RPT
  1292.      IF ERRORLEVEL 255 ECHO "** Trouble with RighTime load **"
  1293.      IF ERRORLEVEL 1 TIMESET [in automatic configuration]
  1294.      .
  1295.      .
  1296.      .
  1297.      TYPE C:\RT2\RIGHTIME.RPT
  1298.  
  1299. ***       IF you have SHARE loaded, this TYPE statement might yield an
  1300.           "Access denied" error.  This message results from a COMMAND.COM
  1301.           bug which leaves RIGHTIME.RPT open after RighTime's startup.  If
  1302.           you experience this, do not redirect the first invocation to a
  1303.           file (you may redirect to NUL); instead, a second RighTime
  1304.           invocation with no switches (except perhaps /Y), placed after the
  1305.           IF ERRORLEVEL commands, can be redirected to a file.
  1306.  
  1307.  
  1308.  
  1309.                                 Errorlevels
  1310.  
  1311.      RighTime provides four unique termination ERRORLEVELs.  The ERRORLEVEL
  1312. value can be tested in a batch file to guide subsequent operations.
  1313.  
  1314.      Code value     Indication
  1315.  
  1316.           0    Installed normally, cool correction within range, last time
  1317.                set within specified elapsed period.
  1318.  
  1319.           1    Installed, cool correction within range, but more than the
  1320.                specified period has elapsed since a time set.
  1321.  
  1322.           2    Installed, but cool correction was out of range (the system
  1323.                has been inactive too long), so a time set is externally
  1324.                required.
  1325.  
  1326.          255   Not installed due to syntax error, insufficient memory,
  1327.                incompatible hardware, etc.
  1328.  
  1329.      These codes can be tested in a batch file with the IF ERRORLEVEL
  1330. command.  For example, if the ERRORLEVEL value code is 1, then more than 28
  1331. days have elapsed since the last time set (this duration can be changed with
  1332. the /S option).  It would be wise to have a NIST telephone service time
  1333. setting program such as TimeSet automatically set the time in this situation
  1334. to prevent RighTime from exceeding its one month limit, or you could cause
  1335. execution of the system DATE and TIME commands to urge the user to set them
  1336. manually.  
  1337.  
  1338.  
  1339.  
  1340.                             If You Have Trouble
  1341.  
  1342.      Please note the symptoms and circumstances as thoroughly as is
  1343. reasonably possible and contact
  1344.  
  1345.      Tom Becker
  1346.      Air System Technologies, Inc.
  1347.      14232 Marsh Lane, Suite 339
  1348.      Dallas, Texas  75234-3899  USA
  1349.  
  1350.      BBS:      214/869-2780
  1351.      Fax:      214/869-1166
  1352.      CompuServe:   76436,3210
  1353.      Telephone:  214/402-9660
  1354.  
  1355.  
  1356.  
  1357.  
  1358.                     RighTime Software License Agreement
  1359.  
  1360. When you register, this will be the agreement between you (the user) and Air
  1361. System Technologies to which both parties are bound upon the payment and
  1362. acceptance of the license fee, which is part of the registration fee for
  1363. RighTime and its associated programs.
  1364.  
  1365. Grant of License
  1366. In consideration of the payment of each license fee by the user to Air System
  1367. Technologies, Air System Technologies will license to the user a nonexclusive
  1368. right to use one copy of each of the software programs in the RighTime package
  1369. on one computer at a time.  The license is expressly for program use only, per
  1370. the terms of the license.  No other rights are implied.
  1371.  
  1372. Ownership of Software
  1373. Air System Technologies is the owner of the software programs and holds full
  1374. title to them.  The user may own the physical media on which the software
  1375. programs are recorded, including the original disk which is provided by Air
  1376. System Technologies to the user, but the user does not own the software
  1377. programs nor any copy of the software programs.
  1378.  
  1379. Copies
  1380. The software programs and the documentation are copyrighted and therefore may
  1381. not be copied without permission.  Permission is granted to the licensed user
  1382. to make copies of the software programs and the documentation as required in
  1383. the conventional course of computer system data backup.  Permission is granted
  1384. to copy the shareware distribution file in its complete, unmodified form.  No
  1385. other permission to copy is granted.
  1386.  
  1387. Use and Transfer
  1388. The Grant of License applies only to one copy of each of the software
  1389. programs.  Simultaneously functional resident copies of the software programs
  1390. each require licensing.  You may not transfer any copy (except the shareware
  1391. evaluation distribution file) of the software programs to a computer which is
  1392. not under your control, nor may you rent, lease, sell or otherwise assign
  1393. control of the software programs to anyone without the consent of Air System
  1394. Technologies.
  1395.  
  1396. Termination
  1397. The license is in effect until it is terminated.  When the license is
  1398. terminated, the user's rights that are granted by the license are revoked. 
  1399. The license is automatically terminated without notice upon violation of any
  1400. of its terms.
  1401.  
  1402. Disclaimer of Warranty
  1403. No warranty of performance or suitability is expressed or implied.  Every
  1404. effort has been made to make the software programs deliver as the
  1405. documentation describes, but the correctness for your application or
  1406. environment cannot be assured.  Air System Technologies cannot assume
  1407. responsibility for the failure of the software programs, nor for any
  1408. consequence of their use.
  1409.  
  1410.  
  1411.  
  1412. RighTime Use Registration Form            RighTime Evaluation Version 2.58a
  1413.  
  1414. Fill out this form, enclose the required funds and mail to:
  1415.  
  1416.      Air System Technologies, Inc.
  1417.      14232 Marsh Lane, Suite 339
  1418.      Dallas, Texas  75234-3899  USA
  1419.  
  1420.      I would like to register the use of RighTime v2.58a.
  1421.  
  1422.  
  1423.      Name: ________________________________________________________________
  1424.  
  1425.      Business name: _______________________________________________________
  1426.  
  1427.      Address: _____________________________________________________________
  1428.  
  1429.               _____________________________________________________________
  1430.  
  1431.      City:______________________________ State:_________ Zip: _____________
  1432.  
  1433.      Telephone:_________________________
  1434.  
  1435.  
  1436.      Where did you get RighTime? __________________________________________
  1437.  
  1438.      Registration is required for each copy of RighTime that is
  1439.      simultaneously machine resident.
  1440.  
  1441.      The registration fee is US$ 40.00 each up to 10 copies.  Call for larger
  1442.      quantity pricing.
  1443.  
  1444. How many copies of the RighTime package do you want?_______________________
  1445.  
  1446. On what media?  5.25"/1.2MB______  3.5"/1.44MB______
  1447.  
  1448.  
  1449. Total enclosed:  US$____________
  1450.  
  1451. Make your check or money order payable to Air System Technologies.
  1452.  
  1453.  
  1454. Thank You!
  1455.