[comp.binaries.ibm.pc.d] How to restore the original screen after a problem program

ts@uwasa.fi (Timo Salmi) (01/08/91)

Tue 8-Jan-91: Have you ever been bothered by programs that change
the mode, and/or impose a message on the screen upon exiting, or
leave an empty screen.  If so, here is a handy (MsDos 3.3) skeleton
batch that restores the original screen.  I shall use Michael
Mefford's otherwise excellent dirmat20.com (/pc/pd2/dirmat20.zip)
from the PC Magazine to illustrate.  If you call dirmat20.com, then
when you leave, you are left with the entire dirmat20.com screen,
not the original screen, which you started with. 
   You'll need pushscr.exe and popscr.exe from /pc/ts/tsutld18.arc. 
They respectively store and restore the current screen.  Also
reset.exe from /pc/ts/tsutil30.arc may come in handy.  (The latter
is not really necessary in the case of dirmat20.com.  Reset.exe
could also be replaced by the mode command, since what reset.exe
does is to restore the 25*80 textmode and colors.)
     @echo off
     pushscr f:\tmpscr.$$$ /o
     dirmat20 %1 %2 %3 %4 %5 %6 %7 %8 %9
     reset
     popscr f:\tmpscr.$$$
     del f:\tmpscr.$$$ > nul
     echo on
   Note, this is a just skeleton batch demonstrating the idea.  It
does not check whether the relevant files are available at path, and
so on (for such tricks see /pc/ts/tsbat23.arc).  On my system f: is
the ramdisk. 
   Naturally, you can easily tailor this batch for any program that
causes problems with the screen outlook upon exiting.

...................................................................
Prof. Timo Salmi        (Moderating at anon. ftp site 128.214.12.3)
School of Business Studies, University of Vaasa, SF-65101, Finland
Internet: ts@chyde.uwasa.fi Funet: gado::salmi Bitnet: salmi@finfun