2001/10/02
CHAPTER 7 IBM PROPRINTER - 6
3.
EMULATION DETAILS
The following points should be borne in mind when running the HL Series printers in IBM Proprinter XL
mode.
3.1.
Ignored Commands
A few IBM Proprinter XL commands have reduced effect, or no effect at all. In some cases this is due to
the physical nature of an HL Series printer. These commands are as follows. The
BEL
control code
(ASCII 7) which is used to sound the Proprinter’s bell, is ignored. The
DC3
control code (ASCII 23), used
to disable the Proprinter, is also ignored. The
Esc Y
escape sequence, which enables double -speed,
double-density graphics mode has no effect on the printing speed, as HL Series printers always operate as
fast as they can. Hence the
Esc Y
has the same effect as the
Esc L
(enable double-density graphics mode)
sequence.
3.2.
Resolution
The resolution of the HL Series printers is 600 dots per inch. Some IBM Proprinter commands use
fractions of an inch that not exactly divisible by 600, for example
Esc 0
sets line spacing to 1/8" of an inch.
Similarly, the Proprinter graphics commands specify resolutions of 72, 120 and 240 dots per inch. When a
graphic cannot be represented exactly at 600 dots per inch the printer prints the closest possible
approximation to the specified image using 600 dots per inch.
3.3.
Character Set selection
Using software commands you can select IBM character set I, IBM character set II or the IBM All
Character Code table. Using the printer control panel you can select a number of other character sets
depending on the printer model, consult the User's Guide to see if this emulation is supported and for a
description of how to do this. All available character sets are shown in the IBM Proprinter XL mode
section of the appendix at the end of this manual.
3.4.
Controlling the Printer
Commands are invoked using either control codes or escape sequences. You can send them to the printer
as part of a program, using the same command that you would use to print a text string on the printer. For
example, in BASIC you would use the LPRINT command.
3.5.
Control Codes
Control codes are ASCII codes that tell the printer to perform a particular function such as a line feed.
Send a control code to the printer by sending the same type of instruction you would use to print a
character using its ASCII code number. For example, the ASCII code for a form feed is 12, so to get the
printer to perform a form feed use the following BASIC statement:
LPRINT CHR$(12);
The CHR$ operator is normally used to convert an ASCII code into its corresponding character.
3.6.
Escape sequences
Escape sequences tell the printer which Proprinter function to perform. An escape sequence consists of
the ESC character followed by one or more characters which define the operation to be performed. Send
an escape sequence to the printer by sending the same type of instruction you would use to print
characters using t heir ASCII codes. Some escape sequences require parameter values or data following
them, for example, commands which turn a particular feature on and off and commands for downloading
character descriptions to the printer or for printing graphic images. Numerical parameter data, too, is sent
to the printer as if it were a character code to be printed. For example, to set the left and right margin
settings to be at 10 and 70 columns across the page the required escape sequence is
Esc X 10 70
. In
BASIC this would be:
LPRINT CHR$(27); CHR$(88); CHR$(10); CHR$(70);