Dec 132017
 
A TSR to automatically start a program at a specified time. Assumes that no other program is running at execution time. Includes ASM source.
File WHEN31.ZIP from The Programmer’s Corner in
Category Utilities for DOS and Windows Machines
A TSR to automatically start a program at a specified time. Assumes that no other program is running at execution time. Includes ASM source.
File Name File Size Zip Size Zip Type
WHEN.ASM 33407 8165 deflated
WHEN.COM 1778 1249 deflated
WHEN.DOC 6060 2565 deflated

Download File WHEN31.ZIP Here

Contents of the WHEN.DOC file


WHEN - A Terminate & Stay Resident delayed activation utility
*****************************************************************
L E G A L B I T S

WHEN, and all the ancillary programs in this package are my own work,
and are copyright by that fact. I hereby place that set in the public
domain. I place NO restriction of any kind on their use, adaptation,
resale, possession or transfer.

If you have a copy of this material, you have it with my blessings and
good wishes. May it do well by you.

I accept NO contingent responsibility of any kind for the use or any
consequence of use of this software. If you use it, it is presumed that you
know why and how to use it, and that you are in full control of all
consequences of that use.

David Hatch M.A.C.S.

Due to ethics violations that could be levied against the modifier of
this program, THE UNKNOWN HACKER can not take any credit for bringing this
program to full functionality by making it a re-usable TSR. David Hatch's
PUBLIC DOMAIN stipulation remains in full effect. Thanks.
*****************************************************************

WHEN.COM serves as a delayed wakeup utility, which does not fully
monopolize your computer while it is waiting. It is a Terminate and Stay
Resident, which monitors the time. When a requested time has arrived, a
requested command is stuffed into the keyboard buffer, and run.

This implies that the computer will be known to be idle at the time of
activation, sitting at the DOS prompt, or else running some application
which expects the delayed command. If you have a slow computer such as a
4.77MHZ XT or XT CLONE then your day will not increment at a midnight
crossing. The date remains the same but time marches on.

*****************************************************************
IT WILL POTENTIALLY CAUSE ** DISASTER ** IF SOME APPLICATION WHICH DOES NOT
EXPECT THE DELAYED COMMAND IS RUNNING AT THE SPECIFIED TIME. WHEN.COM HAS
NO WAY OF CHECKING FOR SENSIBLE USE OF THE DATA IT WAS GIVEN, BUT WILL
BLINDLY PUT IT INTO THE KEYBOARD BUFFER AT THE SPECIFIED TIME. IF YOUR
COMMAND IS INTELLIGIBLE IN SOME WAY TO THE UNEXPECTED APPLICATION, **
ANYTHING ** COULD HAPPEN. PREVENTION OF THIS SITUATION IS YOUR
RESPONSIBILITY, WHEN.COM CANNOT, AND WILL NOT, HELP YOU TO AVOID IT.

YOUR ACCEPTANCE OF THIS PROGRAM DIRECTLY INCLUDES ACCEPTANCE OF
RESPONSIBILITY FOR CONTROLLING WHAT IT WILL DO. TAKE CARE.
*****************************************************************

There may be conflict with other TSR utilities, if interrupt vector
08H (timer tick) is taken away from WHEN, and not restored. No other
incompatibilities will commonly exist.

Some rare programs do not use ROM BIOS keyboard input. Those will not
see input from WHEN, and it may or may not appear later, depending on
whether the offending program clears the keyboard buffer on exit.)

Command syntax is: WHEN HH[:MM[:SS]] command [command tail]

This means that at least hours must be entered. If only hours are
entered, the time will be accepted as seconds 00 of minute 00 of the
specified hour. Leading zeros must be entered if needed. This is only true
for the first execution of WHEN. After that the minutes and seconds will
remain at the previous values.

Minutes may be entered, separated from hours by a colon. If hours:
minutes are entered, seconds will be accepted as 00. This is only true for
the first execution of WHEN. After that the seconds will remain at the
previous value.

Hours, minutes, seconds may be entered, separated by colons. Format
is: HH:MM:SS. All digits must be entered, including leading zeros.

When a colon is entered, the following digit pair is required.

The time specification must be followed by one or more spaces, as a
command separator, which must be followed by an executable command.

The executable command may be followed by another separator, and any
desired parameters for the executable command as a command tail. All
characters from the beginning of the executable command to the end of the
command tail will be placed in the keyboard buffer, with a trailing
key, at the specified time.

The follow table shows what characters are to be enter on the
executable command to simulate the FUNCTION keys.

FOR : F1 F2 F3 F4 F5 F6 F7 F8 F9 F10
USE : # $ % & ' ( ) * + ,

This is tailored to the requirements of DOS at the command prompt, but
could well be used as a delayed command to some application.

Beware of the possibility of intermingled operator input with your
delayed command. (Someone working late/early?? Take care.)

*****************************************************************
Interactive operation / Batch file operation with status return
*****************************************************************
If the time and command are entered manually, WHEN will give a prompt
advising its interpretation of your command.

If an obvious error occurs, the command will not be accepted, and an
error message will appear.

If an error occurs, a descriptive error level will be returned to DOS.
(Error level == 0 if no error.)

To make batch file operation easier, the prompts may be suppressed. To
do this, insert a '/' character before the time value. This suppresses both
the startup message, and any error messages. (If an error occurs, the error
level will be returned to DOS.)

SAMPLE COMMAND STRINGS -

WHEN / 19:55:00 MAIL ;Run mail utility at 19:55 each night.
;No prompt messages, return error levels.

when 00:10:00 fboot ;Reboot the computer at 10 mins past
;midnight. Prompt operator, prompt & return errors.

WHEN ;Returns the current setting for the program


 December 13, 2017  Add comments

Leave a Reply