home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The World of Computer Software
/
World_Of_Computer_Software-02-385-Vol-1of3.iso
/
s
/
scrlit15.zip
/
SCROLLIT.DOC
< prev
next >
Wrap
Text File
|
1993-01-23
|
29KB
|
777 lines
SCROLLit
Advanced ScrollBack Buffer
Version 1.5
Copyright 1992-93
All Rights Reserved
By
Bromfield Software Products
797 Somerset Street West
Post Office Box 57044
Ottawa, Ontario
K1R 1A1
Compuserve 71054,3051
License
SCROLLit is NOT free software, but is being distributed as
"shareware".
Non-registered users of this software are granted a limited
license to use this program for a trial period of thirty days for
the purpose of determining if SCROLLit is suitable for their
needs. At the end of this trial period, you should either
register your copy or discontinue using SCROLLit.
Please feel free to distribute your unregistered copy of SCROLLit
to your friends and local BBSes as long as all of the files in
this archive are included and unmodified.
Introduction - What is SCROLLit?
SCROLLit is a memory resident (TSR) program that captures, in
full color, the lines of text that scroll off the top of the
video screen and stores them in an XMS, EMS or conventional
memory 'scrollback' buffer of a size specified by the user. A
fast compression technique is used to store more than twice the
number of lines in the available buffer space.
SCROLLit can then be activated or 'popped up' over any non-
graphical program by pressing the scroll lock key. Once
activated, SCROLLit will let you scroll back through this saved
information, line by line or page by page. SCROLLit has a fast
search capability as well as a block-write feature that allows
you to mark a block of lines for writing to a disk file or
sending to your printer.
1
Capturing Lines
Once resident, SCROLLit monitors video activity to capture text
lines that are scrolled off the top of the screen. You may wish
to look back through the output of the DIR command in DOS, or
review the progress of a Bulletin Board (BBS) session while using
your communications software, for example.
A program can scroll the screen in three ways: DOS (interrupt
21h) function calls, BIOS (interrupt 10h) function calls, and
direct writing to video memory. SCROLLit is able to capture both
DOS and BIOS scrolling, but not the scrolling performed by direct
screen writing. Fortunately, many programs that use direct screen
writing can be configured to use BIOS function calls. Appendix 1
describes how to reconfigure three popular communications
programs (Qmodem, Telix and Procomm) to use BIOS scrolling,
rather than direct screen writing.
Some programs clear the screen rather than scrolling old output
off the top of the screen. Monitoring DOS and BIOS scrolling
would not capture this output because no scrolling is involved.
To get around this problem, SCROLLit monitors BIOS 'clear-screen'
requests. When a clear-screen request has been made, SCROLLit
copies the entire screen to the scrollback buffer before the BIOS
clears the screen. As a result, you will find that SCROLLit
captures more output than most other scrollback buffer utilities.
Disable Screen Capture Temporarily
SCROLLit's capturing of screen scrolling and clear-screens can be
temporarily disabled by typing:
SCROLLit /-
Screen capturing can later be re-enabled with the /+ command line
switch. It may be useful to disable screen capturing before
executing a program that generates a lot of scrolling or clear-
screens, but that you do not wish captured in your scrollback
buffer. WordPerfect is a good example of this. In WordPerfect, as
you page through your document, SCROLLit would normally capture
each page into the scrollback buffer, potentially taking up a lot
of buffer space. You may find it convenient to execute
WordPerfect using a simple batch file as follows:
CD\WP51
CLS
SCROLLIT /-
WP51
SCROLLIT /+
SCROLLit can still be popped up when capturing is disabled, so
that you can still scroll back through lines that were captured
before screen capture was disabled.
2
Compressing the scrollback buffer
Each line that SCROLLit saves contains 80 characters and 80 color
attributes, requiring a total of 160 bytes storage. A full 25
line screen requires 4000 bytes of storage space. There is
usually a lot of blank space on a screen, however, and the color
codes are often unchanged for an entire line of text and
sometimes the whole screen. SCROLLit uses a very fast run-length-
encoded compression algorithm to shrink the amount of space
required to save a line of text and is typically able to compress
the scrollback buffer by 60 to 70%, meaning that more than twice
the number of lines of can be saved in the available buffer
space.
The extent to which SCROLLit has been able to compress the
scrollback buffer is displayed when the help key (F1) is pressed.
╒═════════════════════════════════╕
For example: │ Number of lines saved: 2046 │
│ Average bytes per line: 43 │
│ Percent compression: 73% │
╘═════════════════════════════════╛
There is some overhead in setting up the buffer, which means that
SCROLLit will obtain better compression with a larger buffer
size.
Installing and Unloading SCROLLit
SCROLLit is a memory resident (TSR) program that is installed in
memory by typing SCROLLit followed by the desired scrollback
buffer size in kilobytes. The buffer size must be at least 20k
and no more than 5000k (5 megabytes!). For example, to install
SCROLLit with a 100k scrollback buffer, type:
SCROLLit 100
You may wish to store this command in your autoexec.bat file to
ensure that SCROLLit is loaded whenever you turn on your
computer. You will need to prefix the command with the name of
the directory where SCROLLit is stored, or store SCROLLit in a
directory that you have set in your path command.
SCROLLit can be unloaded from memory with the /U command line
option, provided that other TSR's have not been loaded after it:
SCROLLit /U
Installing and unloading of SCROLLit is this simple. There are
other command line options that will be discussed throughout this
document. A complete list of command line options is provided in
Appendix 3, and can be displayed by typing:
SCROLLit /?
3
Memory Usage
The SCROLLit program itself takes up about 9k of conventional
memory, while the scrollback buffer may be stored in XMS, EMS or
conventional memory. SCROLLit will store the scrollback buffer in
XMS memory if there is enough XMS memory available to store a
buffer of the size you request. If adequate XMS memory is not
available, SCROLLit will store the buffer in EMS memory. If
adequate EMS memory is not available, then conventional memory
will be used.
If there is not enough memory of any type available, SCROLLit
will produce a summary of the available memory on your computer,
so that you can determine what size of buffer will fit. The
amount of available memory refers to the memory available for use
by SCROLLit and is typically less than the total memory in your
computer because other programs may already have reserved some of
this memory for their own use.
SCROLLit will automatically store the scrollback buffer in XMS
memory if enough is available. Under some circumstances, you may
wish to keep this XMS memory available for another application.
The /E command line option tells SCROLLit to store the buffer in
EMS memory, even if enough XMS memory is available. Similarly,
the /C command line option tells SCROLLit to store the buffer in
conventional memory even if adequate XMS or EMS memory exists.
For example, to install SCROLLit with a 160k buffer in EMS
memory, type:
SCROLLit 160 /E
In addition to XMS, EMS and conventional memory, there are two
other types of memory that may be available on your computer:
upper memory and raw extended memory.
Upper memory refers to the memory between the top of conventional
memory (the first 640k) and 1024k. The SCROLLit program (and
buffer) can be stored in this type of memory rather than in
conventional memory by using the 'loadhigh' capability of your
memory manager, for example the LOADHIGH command in DOS Version 5
or the LOADHI program in Quarterdeck's QEMM. Storing your TSR
programs in upper memory leaves more of your valuable
conventional memory available for your other programs. Refer to
your DOS 5 or memory manager documentation for instructions on
how to load TSR's into upper memory.
Raw extended memory refers to memory above the 1024k limit on
your computer that has not yet been converted into usable XMS or
EMS memory by your memory manager. If SCROLLit detects that you
don't have XMS or EMS installed, but you do have raw extended
memory available, the program will advise you to install the
necessary software drivers to convert this memory into a more
usable form. For example, this memory can be converted into XMS
memory by adding DEVICE=HIMEM.SYS to your config.sys file.
4
Activating SCROLLit
SCROLLit can be activated ('popped up') over any text-based (i.e.
non graphical) application by pressing the Scroll Lock key (the
SCROLLit 'hotkey'). If you press the Scroll Lock key while in
graphics mode, SCROLLit will beep your speaker to remind you that
it cannot be activated while you are in graphics mode.
There are some circumstances where SCROLLit will decide that it
is not appropriate to popup over a text-based application and
will beep instead. (Technically, SCROLLit will not interrupt a
DOS function call, and will wait a second or so for DOS to become
available. Other TSR's are not necessarily so careful, and may
interrupt DOS. SCROLLit will therefore not popup if this type of
TSR has already interrupted DOS or if the foreground program
keeps DOS busy for an extended period of time.)
Once SCROLLit is installed, use the key combination Alt-Scroll
Lock (press the Alt key and the Scroll Lock key at the same time)
in order to turn your Scroll Lock light on and off.
If you are using an unregistered copy of SCROLLit, a shareware
screen may appear when you press the hotkey to remind you to
please register your copy of SCROLLit. This screen does not
appear on registered copies of the program. Please refer to the
section 'How to Register SCROLLit' for more details on how to
remove this shareware screen.
╒══════════════════════ SCROLLit Version 1.5 ═══════════════════════╕
│ │
│ SCROLLit is Shareware. Please try it for 30 days to determine │
│ if it meets your needs. If you continue to use the program │
│ beyond the trial period, you are required to pay the registration │
│ fee. This message is removed from registered copies of SCROLLit. │
│ │
│ The registration fee is $20 CDN for Canadian residents, or │
│ $17 US for U.S. and overseas addresses. │
│ │
│ Send to: Bromfield Software Products │
│ 797 Somerset Street West │
│ Post Office Box 57044 │
│ Ottawa, Ontario │
│ K1R 1A1 │
│ │
│ Press F5 or wait 30 seconds. │
│ │
╘═════════ Copyright 1992-93 Bromfield Software Products ═══════════╛
Once you have activated SCROLLit, you can exit by pressing the
escape (Esc) key or pressing the Scroll Lock key a second time.
5
Using SCROLLit - Scrolling the scrollback buffer
Once you have activated SCROLLit, you can scroll back through the
buffer using the standard screen scrolling commands: and to
scroll line by line, Page Up and Page Down to scroll page by
page, and the Home and End keys to go to the beginning or end of
the scrollback buffer. The bottom line on your screen, the status
line, will indicate your current position within the buffer.
'Line 48 of 2106' means that the top line on the screen is the
48th line in a buffer holding a total of 2106 lines of text.
The Ctrl-Home key combination can be pressed to return to the
same position in the scrollback buffer you were in when you last
exited SCROLLit. It is possible that this line has since scrolled
off the top of the buffer, in which case, SCROLLit will beep and
place you at the top (Line 1) of the buffer.
Using SCROLLit - Searching the scrollback buffer
There are three commands for searching through the scrollback
buffer for a target string. Press the letter B to search Backward
through the buffer from your current location. Press the letter F
for a Forward search from your current location. Press the letter
A to search Again for the next occurrence of the same target
string.
SCROLLit performs a fast, case-insensitive search for the target
string that you provide. When SCROLLit finds an occurrence of the
target, the screen will be repositioned to that location in the
scrollback buffer and the target string will be highlighted by
reverse video to show you where it was found. If the target is
not found, SCROLLit will beep the speaker and give you a warning
message on the status line.
6
Using SCROLLit - Block-writing to file or printer
Block-writing refers to the ability to mark a block of lines in
the buffer and then write this block to a specified disk file or
to your printer. Press the letter W to invoke block-Writing.
There are three steps to writing a block of lines: mark the
beginning of the block, mark the end of the block, and then
specify the disk filename or printer for output. If you are part
way through these steps, you can back up by pressing the escape
(Esc) key.
Use the cursor keys to move to the location of the first line in
the block that you wish to mark. The row is highlighted by
reverse video and is marked as the beginning of your block by
pressing the enter key. Then the cursor keys are again used, this
time to chose the end of the block, again marked by pressing the
enter key. Once you have pressed the enter key a second time, the
block of lines will be marked and highlighted in reverse video.
After marking the block of lines, SCROLLit will prompt you for
the disk filename where these lines should be saved. The default
filename is SCROLL.IT in the current directory, but can easily be
changed. If a file with that name already exists, SCROLLit will
ask you if you wish to overwrite this file or append this block
of lines to the end of the file.
To send the block of lines to your printer type PRN rather than a
filename. (Type LPT2 to send to LPT2.)
7
Using SCROLLit - the Help screen
The help screen, brought up by pressing the F1 key, summarizes
the commands discussed in the last two pages. In addition to the
command summary reproduced below, the Help screen includes a
summary of the size of the buffer and the degree of compression
as discussed in the section 'Compressing the scrollback buffer'.
╒═══════════════════════════════════════════╕
│ Scroll up/down 1 line │
│ PgUp PgDn Scroll up/down 1 page │
│ Home End Go to beginning/end of buffer │
│ F Search forward for text │
│ B Search backward for text │
│ A Search again, same text │
│ W Write block of text │
│ to file or printer │
│ Ctrl-Home Return to last position │
│ Esc Exit SCROLLit │
╘═══════════════════════════════════════════╛
╒═════════════════════════════════╕
│ Number of lines saved: 2046 │
│ Average bytes per line: 43 │
│ Percent compression: 73% │
╘═════════════════════════════════╛
How to register SCROLLit
The registration fee for SCROLLit is $17 U.S. or $20 CDN for
Canadian residents. The ORDERFRM.DOC file can be printed on your
printer as a convenient form to use for registration.
When you register SCROLLit, you will be mailed a registration key
that is derived from the spelling of your name. Your name is
specified with the /N command line option and the eight character
registration key is specified with the /K command line option.
Installing SCROLLit with a 100k scrollback buffer would look
like:
SCROLLit 100 /N=John_P._Doe /K=12345abc
Note that underscores are used instead of spaces when specifying
your name and that both the name and the key can be specified in
either upper or lower case. SCROLLit will check to see if the
registration key is valid and correctly matches the specified
name. If specified correctly, SCROLLit will no longer bring up
the shareware screen when activated.
Typically, you will be installing SCROLLit in your autoexec.bat
file, which should be edited to include the /N and /K command
line options as illustrated above. This registration key is for
your personal use only. Please do not reveal it to others.
8
Appendix 1 - SCROLLit and Communications Software
SCROLLit can be used to scrollback through your communications
session provided you configure your communications software to
use BIOS screen scrolling rather than direct screen writing.
Qmodem scrolls the screen using direct screen writing by default,
but allows BIOS scrolling by setting the 'Jump scroll' option.
Press Alt-N / Video / Toggles / Jump scroll.
Telix also scrolls the screen uses direct screen writing by
default, but will use the BIOS for all video activity (both
scrolling and writing characters to the screen) when the BIOS
option is set. Press Alt-O / Screen / ScreenWrite / Bios. The
Status line should not be configured for the top of the screen.
It can be set to the bottom of the screen or disabled by pressing
Alt-O / Terminal / D / N or B.
Procomm Plus uses BIOS scrolling with no option for direct screen
writing. No reconfiguring is required. The shareware Procomm
Version 2.4.3 also uses BIOS scrolling. There is an option for
direct screen writing, but it does not effect scrolling (only
writing characters to the screen). No reconfiguring is required
for SCROLLit to capture scrolled output from either Procomm or
Procomm Plus.
SCROLLit has a wider range of features than the scrollback
buffers built into these communications packages (i.e. full
color, string search, block-writing, compression). Furthermore,
when you use SCROLLit, your entire session is saved until it
scrolls off the top of the buffer, while the lines stored in
built-in scrollback buffers are lost when you exit the program.
You can use an external scrollback program such as SCROLLit just
as you can use external protocol drivers to augment the
capabilities of your communications software.
Special Note for Compuserve Users
Compuserve sessions can be set for line-oriented mode, where old
output scrolls off the top of the screen, or for page-oriented
mode, where Compuserve sends a page of information, and after
your response, clears the page before transmitting the next page.
In page-oriented mode, the screen is never scrolled, so SCROLLit
intercepts the 'clear-screen' requests in order to capture your
past output.
SCROLLit will capture your Compuserve session whether you have
set a line-oriented or a page-oriented terminal type. You can
change from one mode to another by typing SET TERMINAL.
9
Appendix 2 - Using SCROLLit with Desqview
SCROLLit is Desqview aware and can be successfully loaded within
a Desqview window. SCROLLit will detect that it is operating in a
Desqview window and will capture scrolled lines from the Desqview
video buffer rather than the hardware video buffer. SCROLLit will
also give up it's Desqview time slice during idle periods, in
order to optimize the performance of your other Desqview windows.
If you load SCROLLit before executing Desqview, SCROLLit will not
be able to capture any scrolling done within Desqview. You will
however, be able to scroll back through the buffer as it existed
prior to executing Desqview.
SCROLLit must be installed within a Desqview window in order to
capture scrolling within Desqview. You may want to install
SCROLLit and the DVANSI driver in your DOS window, for example.
The easiest way to do this is by setting up a small batch file
with the following two lines:
DVANSI
SCROLLit 100
If you called this file, say, mydos.bat, then you would specify
mydos in the program field in CP (Change a Program). Then
whenever you opened this particular window, Desqview would
execute this batch file, loading both your ansi driver and
SCROLLit.
Normally, SCROLLit would only allow one copy of itself in memory
at one time (attempting to load a second copy yields an 'Already
installed' message). The one exception to this rule is Desqview,
where it is possible to have one copy of SCROLLit in each
Desqview window. (Trying to load two copies in one window will,
of course, produce the 'Already installed' message.)
10
Appendix 3 - SCROLLit Command Line Options
nnn Scrollback buffer size in kilobytes. Must be at least
20k, but no more than 5000k (5 megabytes!).
/E Use EMS memory for scrollback buffer storage, even if
XMS is available.
/C Use conventional memory for scrollback buffer storage,
even if XMS or EMS is available.
/K= Specify the eight character registration key that is
sent upon registration. Case insensitive.
/N= Specify your name as given for registration. Use
underscores instead of spaces as in John_P._Doe. Case
insensitive.
/- Temporarily disable screen capture.
/+ Re-enable screen capture.
/R Information on how to register.
/? Display command line summary.
/U Attempt to unload SCROLLit from memory. Will not unload
if other TSR's were loaded after SCROLLit.
11
Technical Support
If you have questions, problems, or ideas for new features,
please contact the author by mail or via Compuserve (71054,3051).
Using Compuserve, private mail can be sent using Compuserve Mail
('GO MAIL'), and public messages can be left in section 3
('General Utilities'), of the IBM System/Utilities forum ('GO
IBMSYS'). The latest version of SCROLLit is always available in
library 3 of this forum.
Disclaimer
Use of this program acknowledges this disclaimer of warranty:
"This program is supplied as is. Bromfield Software Products
disclaims all warranties, express or implied, including, without
limitation, the warranties of merchantability and of fitness of
this program for any purpose. Bromfield Software Products assumes
no liability for damages direct or consequential, which may
result from the use of this program."
Trademarks
All trademarks and copyrights belong to their respective holders.
12