SCRNSAV2 A Screen Saver Program for PS/2 Alan Ballard August 28, 1988 Notice: Scrnsav2 is (c) copyright 1988 Alan Ballard. It may be used without charge and may be freely distributed as long as it is not modified in any way. It may not be sold, traded, or otherwise disposed of for profit without permission from the author. Disclaimer: This program is offered on an "as-is" basis __________ A A __________ A A without any guarantee as to correct functioning or fitness for any specific purpose. The author believes this program to work as described, but you use the program entirely at your own risk. The author will not be responsible for any hardware or software damage, loss of data, or incidental or consequential damage that may result from its use, whether or not such use is in accordance with the instructions. Purpose: A screen saver is a program which blanks the screen after a specified period of inactivity, in order to prevent patterns from being "burned-in" to the screen. Hardware and software required: SCRNSAV2 is specifically designed for IBM PS/2 computers, models 50 and above; that is, those IBM PS/2's equipped with VGA graphics. It may work with some other machines using VGA display boards, but only if they also have a BIOS that is compatible with the PS/2 extended BIOS. MS-DOS release 3.1 or higher is also required. Usage: SCRNSAV2 is an MS-DOS TSR ("terminate and stay resident" utility. It is normally invoked at startup time from an AUTOEXEC.BAT file. It may also be used as an MS-DOS command to disable the screen blanking or to change the inactivity period at which it takes effect. The first time it is run it will remain resident. Any subsequent use will communicate with the resident copy. Installing SCRNSAV2 will decrease available RAM by about 550 bytes. Once SCRNSAV2 has been activated, it will monitor keyboard and mouse activity. If the specified period elapses, without either being used, the screen will be blanked. The screen can be reactivated by touching any key or moving the mouse. SCRNSAV2 will be effective regardless of the graphics mode in use at the time; the screen will be correctly restored when reactivated. Warnings: (1) Some programs fail to pass keyboard events through to SCRNSAV2. Hence it will be unaware of keyboard activity and may blank the screen at the wrong time. In such a situation, you may or may not be able to reactivate it by using the mouse, or there may be no way to reactivate it except to terminate the program or reboot. If you have such a program, you must deactivate SCRNSAV2 ____ (see options, below) before using the program. A notable example is Microsoft Excel; in this case the mouse and caps lock/num lock keys are passed through correctly, but other keys are not. Hence, if SCRNSAV2 is enabled when you invoke Excel, the screen will blank if you don't use the mouse or caps lock or num lock keys for the specified period. If it does blank, you can reactivate it by touching the mouse or one of these keys. It is likely other applications using Microsoft Windows Runtime will exhibit the same problem. Warnings: (2) SCRNSAV2 uses the MS-DOS "multiplex interrupt" (int 2fh) to determine whether it has already become resident and to communicate with the resident copy. However, MS-DOS provides no method to reliably assign a "multiplex number" that is guaranteed not to conflict with other TSR's. By default SCRNSAV2 uses number 150. It does attempt to verify that no previously loaded TSR is using the same number. If SCRNSAV2 appears to interfere with other TSR's, or if it emits a message suggesting use of another number, you should use the /m option (see below) to select a different number. Options: The following options may be specified on the SCRNSAV2 command: integer A simple integer constant (between _______ 1 and 30) specifies the number of minutes of inactivity at which the screen should be blanked. The default is 5. /d disables screen blanking. /e enables screen blanking. This is assumed unless /d has been specified. /m integer An integer following /m specifies _______ a multiplex number to be used for communicating with the TSR, as discussed in Warning (2) above. The default is 150. Examples: Scrnsav2 10 Enables screen saver with a 10 minute time interval. If the program isn't already loaded, it will be loaded. If it was previously loaded, the interval will be changed. Scrnsav2 /d Disables screen blanking, leaving it loaded. Author: Alan Ballard, 3452 West 11th Avenue, Vancouver, Canada, V6R 2J9 Compuserve: 70446,44