[comp.sys.ibm.pc] Three questions

frisk@rhi.hi.is (Fridrik Skulason) (01/25/89)

   1) Is it possible for a TSR program to allocate a portion of
      extended/expanded memory to itself ?

      The reason I'm asking is that I have written a TSR program,
      that consists of ~100K data, but only ~30K code. I would like
      to keep most of the data in extended/expanded memory, but the
      problem is that the program must work with other programs that
      make use of this memory.

   2) Is there any utility floating around for increasing the size of
      the keyboard buffer ?

      I could easily write one myself, but since having only a 16 character
      is very irritating, somebody must have done it already....

   3) Are there any known/documented differences between the BIOS on the

             a)  PS/2 models 50Z and 70 
     and
             b)  the other PS/2 machines

     The reason is that one of my programs (a TSR program that takes
     over INT 9,16,21,28) does not work at all on the 50Z and 70, and
     I have been unable to find out why. It seems to have something to
     do with the BIOS.
-- 
         Fridrik Skulason          University of Iceland
         UUCP  frisk@rhi.uucp      BIX  frisk

     This line intentionally left blank ...................

ccwf@tybalt.caltech.edu (Charles C. Fu) (01/29/89)

Please forgive me if I make any errors since this is my first posting.
Over the past several weeks, articles have been posted asking questions
about changing the size of the keyboard buffer, writing self-erasing
batch files, changing between 25 and 43 line modes, doing screen dumps
from within batch files, setting an environment variable to the current
directory from within a batch file, etc....

A wonderful little ( <1K ) TSR program/utility has been written by one
of the professors at Caltech which will do all of the above and more.
Unfortunately, it is not public domain, but the cost is reasonable.

The program is called STACKEY.  Its primary function is to insert
characters into the keyboard buffer.  Thus, a batch file can contain a
STACKEY command to add "del SAMPLE.BAT <CR>" to the buffer, and this
string will be executed by DOS as soon as the batch file terminates.
(The string is ECHOed to the screen, but you could include escape
characters to make the string invisible.)  Many metastrings are also
available (like the current path and the date) so that these can be
incorporated into strings to be put in the buffer.  Finally, there is
a large list of "special commands" which are executed immediately
such as screen dump to printer or a file, turn cursor on/off, switch
between 25 and 43 line mode (EGA only), switch monitors, switch
LPT1/LPT2 or COMM1/COMM2, turn on/off Num lock/Caps lock/Scroll lock/
Ins, or even do a warm/cold reboot.  Also, the keyboard buffer can be
set to any length up to 64K or disabled entirely. (But wait, there's
more!  :-)

Anyways, even if you don't look into the product (or write your own,
after all STACKEY does all this and more with <1K of code), keep in
mind the usefulness of the keyboard buffer.  Stuffing strings into the
buffer to be executed as soon as control returns to DOS may not be an
optimal solution to your problems, but it is a straightforward easy-to-
understand-and-debug method with many applications.

                                                   -CCWF

P.S. STACKEY can also do some cute things like stick a DEL character
(displayed as a right-pointing arrow) in the prompt.