ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ VSAVE ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ Resident Screenblanker Version 4.0 February 26, 1995 Copyright (c) 1995 Rene' Scholz. All rights reserved. OVERVIEW OF FEATURES: Vsave ... o Is a resident screenblanker for MSDOS o Uses VERY less memory: 288 bytes ! (who can beat this ? ;=) o Works with every standard-VGA o Works both in text or graphics mode o Supports a hotkey for instant blanking of the screen (Alt+leftShift) o You can change or disable this hotkey if you like o Swallows the key that enlights the screen o Supports the mouse o Supports active/passive switching via commandline o Don't need to be set passive if you start Windows (in most cases) o Configurable blanking-time (1..9 minutes) o Can show its state (time,hotkey,active/passive) o Can be removed from memory o Removes itself on the second call o Returns (different) DOS-Errorlevels if an error occours o You can use different options at once o Supports German and English o The source code is included, because Vsave is a GPL'ed program ( See the Gnu Public License ( the file "COPYING") for details ) COMMANDLINE PARAMETERS: Syntax: Vsave ? h ÄÄÄÄ Help [lh] Vsave a ÄÄÄÄ Set Vsave active [lh] Vsave p ÄÄÄÄ Set Vsave passive [lh] Vsave s ÄÄÄÄ Show state of Vsave [lh] Vsave u ÄÄÄÄ Uninstall Vsave [lh] Vsave K=[ACLR0] ÄÄÄÄ Change Hotkey [0=off] [lh] Vsave Tx ÄÄÄÄ Set counter to x minutes [default=2] ( x = 1..9 ) Note: You can use more than one option on the commandline: Vsave p T4 sets Vsave passive and the counter to 4 minutes Vsave sK=Ac t8 sets counter to 8 minutes, hotkey=Alt+Control and then show this state The options are being executed in the following order: 1. ?, H ( and don't execute any other option! ) 2. K= 3. Tx 4. A 5. P 6. S ( so you can show the state yet set ) 7. U INTRODUCTION: Please rename either "vsave_en.exe" or "vsave_de.exe" to "vsave.exe". These are the same programs but one talks English and the other one German. Guess what ;=) Vsave is a resident screenblanker. Yes, where are sooo many of them, but Vsave has some features, you will like: ¯ it uses only 288 Bytes of memory. I get this by using the PSP at offset 3Ch for the resident part. (the PSP is a 255 Bytes area before a loaded DOS-Program.) If you find, that 3Ch is to "hot", then you can change the value in the source to 40h or even 6Ch. I got no problems using the PSP at 3Ch, even with Windows. (But what I really want to know is: how can one write a TSR, which doesn't need this PSP at all ?) ¯ it works with every standard VGA Vsave works fine with every normal VGA, because it doesn't uses "features" to blank the screen. The screen is blanked by writing the value 0 to port 3C0h, the atribute controller. This should work on _every_ VGA-card. But in some VESA-modes (on my ATI) nothing happens :( . I dont know why, so please don't ask me. There is no difference if the VGA is in textmode or graphics mode. Or super-vga-modes of course ;=) And the best: Vsave doesn't touch the video-memory. That means, you will not see a lot of colored lines or some flying toasters. And why is this so good ? Well, imagine you compute a big fractal with Fractint or so, and one of those toaster-blankers gets alive. The result is, that your fractal is demaged and 2 hours are lost. That will not occour with Vsave, if Vsave gets active, the picture will still be computed and written into the video memory. And if you hit a key now, you will see the finished picture ! Note: If a program sets the "border color" to non-black, then the screen will get this color if Vsave blanks the screen. Not my fault :( ¯ a hotkey is used to darken the screen instantly This is a feature I really like. Just hit and the screen is dark. This hotkey can be changed at runtime, but only combinations of Alt, Control, LeftShift and RightShift are possible (for now). ¯ You can change this hotkey if you like You can change the default hotkey to any combination of: (Alt,Control,LeftShift,RightShift) = (ACLR). The syntax for that is: Vsave K=[ACLR0] like: Vsave K=AL <- this is the default or: Vsave K=CL <- Control + LeftShift or: Vsave k=lrA <- LeftShift + RightShift + Alt You can also disable the hotkey with "Vsave K=0", that is you can't blank the screen with the keyboard anymore, but the saver itself works of course and after the counter is 0, the screen is blanked. You can simply turn on the hotkey with "Vsave K=AL", or your personal one. Note: There is no difference between left- or right Control/Alt !! ¯ Swallows the key that enlights the screen I think you know that: You where away for 1 hour or so and then you came back to your computer, the screen is dark and you hit the ESC-key, and then you see that the current program doesn't like that :=( Well, Vsave just swallows every key you press to enligth the screen. And, you can enligth the screen also by pressing a shift key or Alt (or Control or Caps Lock ... ;=) (or moving the mouse or pressing a mouse button, too) ¯ Supports the mouse There are programs, where you only use the mouse and not the keyboard. It's very irritating to hit a key every two minutes to enligth the screen, isn't it ? Not so with Vsave. It looks also if you have moved the mouse or pressed one of it's buttons. That has the same effect as pressing a normal key. ( and I think that's why Vsave don't conflict with Windows [very] ) ¯ Supports active/passive switching via commandline If you want to deactivate Vsave, you can do it by: "Vsave p" This can be usefull if you start windows and have some problems with Vsave or you wanted to uninstall Vsave, but other TSR's are already loaded, which also use the interrupts 1Ch or 9h. If you run a program which takes control over the interrupt 9h (like many games), then you _must_ set Vsave passive! (execpt it's a game that uses the mouse, of course) You can later switch on Vsave by: "Vsave a" If you have to do this regulary, than run the program and Vsave in a DOS batch file like: @vsave p >nul program @vsave a >nul Note: If you start Windows, you don't need to set Vsave passive. ( I think this comes from the mouse-code in the TSR ). Even if you open a DOS-window (full), Vsave works. But there can be problems with zoomed DOS-Boxes. I also heard of problems with After Duck. ¯ Configurable blanking-time (1..9 minutes) Vsave blanks the screen after 2 minutes. This value can be canged by: "Vsave Tx" , where x is the number of minutes. Be sure that x is between 1 and 9 ! ¯ Can show it's state You can easily show the current settings of the TSR in memory with "Vsave s". The output looks like that: ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ C:\> Vsave s K=ca T5 ³ ³ ³ ³ Vsave 4.0 (C) 1995 Ren‚ Scholz ³ ³ ³ ³ The hotkey was changed ! ³ ³ The counter of Vsave was changed ! ³ ³ State of Vsave: ³ ³ C:\> _ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ¯ Can be removed from memory If you call Vsave for the second time, it will detect itself in memory and uninstall itself. The U option does the same thing. Only difference: "Vsave U" will not install Vsave if it is not already installed. Note: If any other program has changed one of the interrupts 1Ch or 9h, then Vsave will detect this and give You an error message. You must first uninstall such programs before try to uninstall Vsave! ¯ returns different DOS errorlevels Here is a listing of the errorlevels and their reasons: ERRORLEVEL 1 ÄÄ> Can not uninstall: int 1Ch or 9h already used ERRORLEVEL 2 ÄÄ> Memory was not released at deinstallation ERRORLEVEL 3 ÄÄ> Can not uninstall Vsave: was not installed ERRORLEVEL 5 ÄÄ> No VGA-card installed ERRORLEVEL 6 ÄÄ> The time after T was not correct ('1'..'9') ERRORLEVEL 7 ÄÄ> Help interrupt (66h) is already used ERRORLEVEL 255 ÄÄ> There was a syntax error CONTACTING THE AUTHOR: Please send bug reports, comments, spelling errors and suggestions to one of the following addresses: .... IRC: Voland main channel: #mjh OBTAINING FUTURE VERSIONS: Vsave will be periodically updated, but since this is FREE software, the updates may be sporadic or non-existent. The author does not intend to spend a great deal of time updating/maintaining Vsave. The current version of Vsave will be available on the newsgroup "de.alt.binaries.msdos" and on (German?) ftp-servers. At last I have a little request. Although this is a GPL-program, I would love to get a nice postcard from YOU ! With a nice stamp, of course ;=] Hope you find this 'little' program useful, and That's all, folks !