Dec 282017
Extended print screen utility.
File XPS12.ZIP from The Programmer’s Corner in
Category Printer Utilities
Extended print screen utility.
File Name File Size Zip Size Zip Type
MAILWARE.FRM 651 312 deflated
XPS.COM 4584 2766 deflated
XPS.DOC 10122 3701 deflated

Download File XPS12.ZIP Here

Contents of the XPS.DOC file

eXtended PrintScreen

Version 1.2

Copyright 1988
Kenneth D. Whitney
All Rights Reserved


eXtended PrintScreen makes the PrintScreen function more

*** Intelligent. XPS formats text into pages.

*** Efficient. XPS prints screen images in compressed mode at 75
lines per page.

*** Flexible. XPS allows portions of display text to be printed.
You select the PrintScreen window.


System Requirements:

-- IBM PC,XT,AT, or close compatible.
-- A dot-matrix printer attached to LPT1:.

Starting XPS:

XPS is a memory-resident (TSR) program. Simply type


at the DOS prompt.

To run XPS's installation program, type

XPS -i


Controlling XPS:

After XPS is loaded, the following key combinations are used to
activate XPS's features.


Do full-display printscreen. This feature is closest to a "stock"
PrintScreen. The entire display is copied, line by line, to the
printer. With XPS, however, the text is sent to the printer in
compressed mode at 75 lines/page. After printing 75 lines, XPS will
send a form feed to the printer. XPS keeps a running total of lines
sent to the printer, so each time you activate XPS it "remembers" how
many lines have been printed. If you wish to clear XPS's line
counter, use the reset feature described below.


Selected area printscreen. Allows any area of the display to be
printed. The print window is indicated by a > and < arrow. All text
under and between the arrows will be printed. Thus the line

The quick brown fox jumped over the lazy dog

would all be printed if the arrows were positioned as follows:

>he quick brown fox jumped over the lazy do<

The XPS window can be adjusted by using the numeric keypad.

Up Arrow - Decrease rows
Down Arrow - Increase rows
Left Arrow - Decrease columns
Right Arrow - Increase columns
PgUp - Move window up
PgDn - Move window down
Home - Move window left
End - Move window right
Enter - Print window
Esc - Exit XPS


Reset XPS. This key combination resets XPS's line counter and beeps
the speaker.

INSTALLATION (or, Everything You Never Wanted To Know About Printers)

Computers send bytes to printers. Printers print bytes. So far, so
good. Unfortunately, different bytes mean different things to different
printers. When XPS sends control codes to your printer, your printer
better understand XPS, or printed garbage will result.

Fortunately for those who don't have my kind of printer (IBM Graphics),
XPS now offers a flexible installation for just about any printer.
With installation, you to determine the control codes that XPS sends to
your printer, and, to some extent, when these codes are sent.
Unfortunately, determining which codes to use is not always obvious.
Take a few moments and study your printer's manual, then plunge on in.

XPS uses three different control strings:

1) An initialization string,
2) A line-control string, and
3) A reset string.

These strings are all optional, but obviously in order for XPS to do
anything useful it must use one or more control strings.

XPS installation is simple. Just type

XPS -i

at the DOS prompt. The installation menu will appear, and you will be
prompted for each control string. Type in each control string using the
following format:


where n = a decimal control code with values ranging from 1 to 255.

Each control character is preceded by a '\', and

-- this is important--


XPS does no error-checking on the data entered, so it is up to you to
ensure that your codes are correctly entered in the proper format.

The best way to illustrate installation is to use an example from my IBM
Graphics printer.

My Initialization string looks like this (in XPS's format):


This string sets the printer to condensed mode and changes the linefeed
to 30/216th of an inch (roughly 75 lines/page).

My Line Control string looks like this:


Why a carriage return (013) and linefeed (010) for the line control
string? Because XPS DOES NOT explicitly send these codes for a new
line. If you need them, you must install them.

My reset string looks like this:


This cancels compressed mode and restores default line spacing.

(By the way, the three-digit format is not necessary. Thus, \15 and \015
are equivalent).

When are these strings sent to the printer?

Initialization -- Just before XPS begins printing text.
Line Control -- After each line is sent to the printer.
Reset -- When XPS is finished printing a screen or window.

These three printer control strings permit the same task to be
accomplished in several ways. On my printer, for example, the
following control strings do the same job as the ones listed above.

Initialization: \015 (compressed)
Line Control : \27\74\30 (one-time 30/216th linefeed)
Reset : \018 (cancel compressed)

Note that this line control string does not properly handle IBM line
drawing characters. Why? I don't know.

All of this fussing with control codes is a pain. What is obviously
needed is a industry-standard set of codes that ALL printers respond
to. Unfortunately, EPSON, the quasi-official standard has not stuck to
the straight an narrow and keeps changing their codes. For example, on
my IBM Graphics priner (read EPSON MX-80), the codes for a one-time
line feed of 30/216ths of an inch are


Use the above code on an LQ-series printer and you get a 30/180th of an
inch one-time line feed. And so it goes with other printer
manufacturers as well. If you don't like having to mess with printer
drivers and installation, write your printer's manufacturer a letter of

You are also prompted for your printer's name which will be displayed
when XPS is loaded into memory, but the printer name serves no
additional function. Type in your name if you prefer.

XPS installation modifies the copy of XPS.COM in the default directory.
Therefore, always run installation on a backup copy of XPS.COM!


XPS will not operate in graphics modes. Pressing any Shift-PrintScreen
combination will cause the normal PrintScreen to be invoked. Invoking
PrintScreen in graphics modes also resets XPS's line counter.

XPS will recognize 40-column text modes (does anyone still use these?)
and set its defaults accordingly.

XPS currently does not recognize or adjust for >25 row displays.


eXtended PrintScreen is provided as is WITH NO WARRANTIES OF ANY KIND.

eXtended PrintScreen is

Copyright 1988 Kenneth D. Whitney
All Rights Reserved


eXtended PrintScreen may be freely copied, placed on public and private
bulletin boards, and shared. IT MAY NOT BE SOLD. eXtended PrintScreen may
only be distributed as a package which includes the following three files:


XPS must not be distributed as separate files or in modified form.

If you find that

eXtended PrintScreen

is a useful program
your contribution of


will be appreciated.

Please take a minute to fill out and mail the questionnaire included in
MAILWARE.FRM, whether or not you decide to support XPS with a contribution.
By registering your copy of XPS in this fashion, you will be providing
important feedback to the author (me). In return for your time and stamp, you
will, from time to time if you so indicate on the form, receive announcements
of new software, updates, and special offers.

Use the MAILWARE.FRM for suggestions to improve the program, to report bugs,
to suggest new programs, etc. I will make every effort to make improvements
and fix bugs, so by all means, let me hear from you.

(XPS's installation program was written in response to MAILWARE suggestions.
My thanks to all who offered their input.)

Kenneth D. Whitney
303 Welch Avenue #311
Ames, Iowa 50010

XPS was assembled with Eric Isaacson's A86 Assembler.

 December 28, 2017  Add comments

Leave a Reply