You are on page 1of 382

IGP/PGL Emulation for T5000 e series Printers

Printronix Graphics Language


Programmer’s Reference Manual
IGP/PGL Emulation for T5000 e series Printers
Printronix Graphics Language
Programmer’s Reference Manual

750929-001E
Printronix, Inc. makes no representations or warranties of any kind regarding
this material, including, but not limited to, implied warranties of
merchantability and fitness for a particular purpose. Printronix, Inc. shall not
be held responsible for errors contained herein or any omissions from this
material or for any damages, whether direct, indirect, incidental or
consequential, in connection with the furnishing, distribution, performance or
use of this material. The information in this manual is subject to change
without notice.
This document contains proprietary information protected by copyright. No
part of this document may be reproduced, copied, translated or incorporated
in any other material in any form or by any means, whether manual, graphic,
electronic, mechanical or otherwise, without the prior written consent of
Printronix, Inc.
COPYRIGHT 2002, PRINTRONIX, INC.

All rights reserved.


Trademark Acknowledgements
IBM and IBM PC are registered trademarks of International Business
Machines Corp.
IGP, LinePrinter Plus, LaserLine, PGL, ThermaLine and Printronix are
registered trademarks of Printronix, Inc.
This product uses Intellifont Scalable typefaces and Intellifont technology.
Intellifont is a registered trademark of Agfa Division, Miles Incorporated
(Agfa).
CG, Garth Graphic, Intellifont, and Type Director are registered trademarks,
and Shannon and CG Triumvirate are trademarks of Agfa Division, Miles
Incorporated (Agfa). CG Bodoni, CG Century Schoolbook, CG Goudy Old
Style, CG Melliza, Microstyle, CG Omega, and CG Palacio are products of
Agfa Corporation. CG Times, based on Times New Roman under license
from The Monotype Corporation Plc is a product of Agfa.
Univers is a registered trademark of Linotype AG and/or its subsidiaries.
Letraset is a registered trademark, and Aachen, Revue and University Roman
are trademarks of Esselte Pendaflex Corporation.
Futura is a registered trademark of Fundición Tipográfica Neufville, S.A.
ITC Avant Garde Gothic, ITC Benguiat, ITC Bookman, ITC Century, ITC
Cheltenham, ITC Clearface, ITC Galliard, ITC Korinna, ITC Lubalin Graph,
ITC Souvenir, ITC Tiepolo, ITC Zapf Chancery, and ITC Zapf Dingbats are
registered trademarks of International Typeface Corporation.
Albertus, Gill Sans, and Times New Roman are registered trademarks, and
Monotype Baskerville is a trademark of The Monotype Corporation Plc,
registered in the U.S. Pat. and TM office and elsewhere.
Hiroshige and Marigold are trademarks of AlphaOmega Typography, Inc.
Table of Contents

1 Introduction........................................................... 13
About This Manual..................................................................................13
Warnings And Special Information ...................................................13
The IGP/PGL Emulation .........................................................................13
Features ...........................................................................................13
How The IGP/PGL Operates............................................................15
Modes Of Operation .........................................................................16
Alphanumeric Data...........................................................................22
Incremental Data ..............................................................................22
Configuring The IGP/PGL With The Control Panel ..........................22

2 Commands ........................................................... 23
IGP/PGL Command Standards ..............................................................23
Special Function Control Code (SFCC) ...........................................23
Semicolon (;) ....................................................................................23
Uppercase ........................................................................................23
Inline Commands .............................................................................24
Line Terminator ................................................................................24
Printable Character ..........................................................................24
Spaces .............................................................................................24
Command Parameters .....................................................................25
Form Name ......................................................................................25
Prompt..............................................................................................25
Numeric Values ................................................................................25
Comments In Command Lines.........................................................26
Storing Data .....................................................................................26
Uncompressed And Packed Bits Compression................................26
Character Position.Dot Position (CP.DP) Format.............................26
Command Codes....................................................................................28
Data Fields For Alphanumeric And Incremental Data ......................28
Dark Printing ....................................................................................29
Alphanumerics .................................................................................29
Alphanumerics, Incremental Fields ..................................................34
Alphanumerics, Incremental: Fixed Data Fields...............................37
Alphanumerics, Incremental: Dynamic Data Fields..........................39
Boxes ...............................................................................................42
Table of Contents

Compressed Print (Density) ............................................................. 44


Configuration.................................................................................... 45
Corners ............................................................................................ 47
Create .............................................................................................. 49
Delete Form ..................................................................................... 51
Delete Logo...................................................................................... 51
Directory ........................................................................................... 52
Duplication, Horizontal .....................................................................52
Duplication, Vertical ......................................................................... 54
Emulation Switching ......................................................................... 55
End................................................................................................... 55
Execute Form Mode ......................................................................... 56
Execute Form: General Format........................................................57
Execute Form: Electronic Vertical Format Unit ................................ 59
Execute Form: Dynamic Alphanumeric Data ................................... 60
Execute Form: Dynamic Bar Code Data .......................................... 61
Execute Form: Dynamic Logo.......................................................... 62
Execute Form: Incremental Dynamic Data ...................................... 63
Execute Form: Overlay Data ............................................................ 65
Expanded Print................................................................................. 66
Font .................................................................................................. 66
Font Load .........................................................................................69
Form Length..................................................................................... 70
Hex Character Encoding .................................................................. 71
Ignore Sequence.............................................................................. 71
Line Spacing .................................................................................... 71
Lines, Horizontal .............................................................................. 72
Lines, Vertical................................................................................... 73
Listen................................................................................................ 74
Logo Call .......................................................................................... 75
Logo Mode, Create .......................................................................... 77
Normal Mode.................................................................................... 80
Page Number ................................................................................... 80
Paper................................................................................................ 81
Paper Instruction - Data Bit 8 ........................................................... 83
Paper Instruction (PI) Enable/Disable .............................................. 83
PCX Logo .........................................................................................84
Print File ........................................................................................... 86
Quiet................................................................................................. 86
Recall ...............................................................................................87
Repeat.............................................................................................. 87
Reset................................................................................................ 87
Table of Contents

Reverse Print ...................................................................................88


Scale ................................................................................................89
Select Format ...................................................................................90
Setup ................................................................................................91
Special Function Control Code Change ...........................................91
TIFF Logo.........................................................................................92

3 Bar Codes............................................................. 95
Overview.................................................................................................95
User-Defined Variable Bar Code Ratios...........................................97
PDF Character Sizes [PDF [;LOC] [;FONT]] ....................................98
Magnification Specifications .............................................................98
Bar Codes.............................................................................................104
Australian 4-State...........................................................................104
BC412 BARCODE .........................................................................110
Codabar .........................................................................................114
Code 39..........................................................................................119
Code 93..........................................................................................126
Code 128A, 128B and 128C .........................................................132
Data Matrix .....................................................................................142
EAN 8 .............................................................................................152
EAN 13 ...........................................................................................157
FIM .................................................................................................164
Interleaved 2/5 (I-2/5), German I-2/5, and ITF-14 ..........................170
Matrix .............................................................................................176
Maxicode ........................................................................................181
MSI .................................................................................................187
PDF417 ..........................................................................................192
Planet .............................................................................................197
Plessey...........................................................................................203
POSTNET ......................................................................................208
PostBar and Royal Mail (KIX).........................................................214
Telepen ..........................................................................................218
UCC/EAN-128 ................................................................................224
UPC-A ............................................................................................236
UPC-E and UPC-E0 .......................................................................242
UPCSHIP .......................................................................................250
UPS 11 ...........................................................................................255
Table of Contents

Incremental Bar Code Fields ................................................................ 259


Incrementing Bar Code Data.......................................................... 259
Incremental Bar Code Fixed Data Fields ....................................... 262
Incremental Bar Code Dynamic Data Fields .................................. 264
Duplicating Incremental Bar Code Fields ....................................... 265

4 Form Examples And Exercises........................... 267


Form Examples.................................................................................... 267
Example: Create Commands ......................................................... 268
Example: Using The Setup Command ........................................... 270
Example: Dynamic Data................................................................. 270
Example: Auto Increment Fields .................................................... 277
Form Exercise.......................................................................................280
Creating A Box And Corners .......................................................... 281
Adding Horizontal And Vertical Lines ............................................. 283
Adding Fixed Alphanumeric Text ................................................... 284
Adding A Bar Code ........................................................................ 286
Logo Exercise .......................................................................................288
Creating A Logo ............................................................................. 290
Form Design ......................................................................................... 292
Page Layout Considerations .......................................................... 292
Planning The Form Layout .............................................................292
Creating A Form And Adding Form Components .......................... 296
Directory Command.............................................................................. 300
Example ......................................................................................... 300
Delete Command.................................................................................. 301
Example ......................................................................................... 301
Solving Program Errors ........................................................................ 302
Example ......................................................................................... 302

5 Multinational And International Character Sets .. 305


Multinational Character Sets................................................................. 305
Character Addresses ..................................................................... 306
Making Character Substitutions ..................................................... 306
OCR Character Sets ...................................................................... 307
Accessing Characters and Character Sets .................................... 307
User-Defined Set Command (USET) ............................................. 308
Character Set Selection Command (ISET) .................................... 310
Multinational Character Set Charts ................................................311
International Character Sets .......................................................... 315
Table of Contents

6 Error Codes ........................................................ 317


IGP/PGL Emulation Error Codes ..........................................................317
Horizontal Line Errors.....................................................................318
Vertical Line Errors.........................................................................319
Box Errors ......................................................................................320
Corner Errors .................................................................................321
Alpha Errors ...................................................................................322
Logo Errors ....................................................................................323
Create Errors..................................................................................324
Execute Errors ...............................................................................325
Miscellaneous Errors......................................................................327
Bar Code Errors .............................................................................328
Reverse Print Errors.......................................................................330
Miscellaneous Errors......................................................................330
Incremental Fields Errors ...............................................................331
Miscellaneous Errors......................................................................331
Multinational Character Set Errors .................................................332
Miscellaneous Errors......................................................................332
Font Errors .....................................................................................333
Bar Code Errors .............................................................................334

A Standard ASCII Character Set ........................... 335

B Grid Programs And Samples ............................. 337

C Page Boundaries ............................................... 341


Paper Selection And Maximum Values ................................................341
Create Form Mode .........................................................................341
Execute Form Mode .......................................................................341
Setting Top/Bottom Margins...........................................................342
Setting Left Margins .......................................................................343

D Vertical Paper Motion......................................... 347


Introduction ...........................................................................................347
Paper Motion Using Line Feeds And Form Feeds................................347
Paper Motion Using The PI Line (Relative Line Slewing) .....................348
Paper Motion Using The EVFU ............................................................350
General EVFU Programming .........................................................350
EVFU Programming Sequence ......................................................350
Using The EVFU ............................................................................352
Clearing The EVFU Memory ..........................................................354
EVFU Example...............................................................................355
Table of Contents

E PTX_SETUP Option ........................................... 359


Overview............................................................................................... 359
The PTX_SETUP Commands .............................................................. 359
Commands (Non-Platform Specific)............................................... 360
Line Matrix Commands .................................................................. 364
Thermal Commands....................................................................... 365
Laser Commands ........................................................................... 367
1 Introduction

About This Manual


This manual explains how to use the IGP®/PGL® (Intelligent Graphics
Printing/Printronix Graphics Language). Use this manual in conjunction with
your printer's User's Manual for complete printer-IGP/PGL compatibility.

Warnings And Special Information


Information requiring special attention is highlighted under special headings.
Always read and comply with this information. The heading reveals the nature
of the information:

WARNING WARNING tells you of conditions that could cause you physical harm.

CAUTION CAUTION tells you of conditions that could damage the printer or
related equipment.

IMPORTANT IMPORTANT gives you information vital to proper IGP/PGL operation.


NOTE: Provides information affecting IGP/PGL operation considered
important enough to emphasize.

The IGP/PGL Emulation


IGP/PGL is the Intelligent Graphics Printing software for the Printronix
Graphics Language, which is designed for Printronix printers. The IGP/PGL
provides on-line forms, bar codes, and many alphanumeric text-generation
capabilities and is compatible with earlier versions of Printronix IGP protocol
and programming. IGP/PGL graphics processing features are detailed below.

Features
On-Line Form and Label Generation makes it easy to create forms or labels
with a “preprinted” look for each application. IGP/PGL programs control all
graphic functions, dramatically reducing host computer programming and
processing time.
Graphic capabilities include boxes, vertical and horizontal lines with user-
selectable thickness, logos, and special alphanumeric print features. Forms
and graphic designs can be duplicated horizontally and vertically.

13
Chapter 1 The IGP/PGL Emulation

Alphanumeric data can appear as prepositioned “fixed” information (entered


when the form is created), can be overlayed onto the form (positioned in a
specific location after the form is created), or may be dynamically merged with
the form.
Selectable Bar Codes provide you with the appropriate bar code for your
application using standard wide-to-narrow ratios. A wide selection of bar
codes are available: Australian 4-State, Codabar, Code 39, Code 93, Code
128 Subset A, B and C, Data Matrix, EAN 8, EAN 13, FIM, Interleaved 2 of 5,
German I-2/5, ITF 14, Matrix, Maxicode, MSI A through D, PDF-417, Planet,
Plessey, POSTNET, PostBar, Royal Mail, UCC/EAN-128, UPC-A, UPC-E,
UPCSHIP, and UPS 11. UPC and EAN bar codes can also specify add-on
data.
Expanded and Compressed Character Print attract attention where
needed. Alphanumeric height and width are controlled independently for a
wide range of character sizes up to 139 times the standard character size (up
to 13.9 inches wide and tall). Compressed print sizes of 10 to 30 characters
per inch (cpi) are available.
Rotated Alphanumerics permit new concepts in form design. Normal,
expanded, and compressed character strings can be rotated 90 degrees
clockwise or counterclockwise, or they can be printed upside down.
Logos are easily created using alphanumeric commands and add a variety of
print and shading features for a “customized” appearance to forms, reports,
and labels. You can define the format of the logo using TIFF files and PCX
raster data as well as the standard IGP/PGL dots. Logos can also be
dynamically merged with the form.
Reversed Print permits highlighting and contrasting by printing white
characters on a dark background.
Automatic Increment/Decrement Capability allows batch form processing.
You can identify individual numeric and bar code data fields, which includes
automatic increment or decrement functions.
The following list summarizes the new features included in the current
release:
• PGL Normal Control allows the user to select whether text printed in
IGP/PGL Normal Mode uses attributes defined under the IGP/PGL Mode
menu or the line matrix printer LinePrinter Plus® Mode menu.
• IGP-100 Compatible allows the user to force the output to correspond
with IGP-100 printer output in cases where there may be differences.
• International Symbol Set Mapping allows the user to select a symbol
set mapping from pre-defined sets from a host command or front panel
selections.
• Plessey Bar Code uses the same bar/space ratio and magnification as
the MSI barcode.

14
How The IGP/PGL Operates

How The IGP/PGL Operates


IGP/PGL is an emulation that allows you to print sophisticated graphics and
bar codes.
The printer is always in a particular mode, which is transparent to the user.
When the printer is receiving text or printing text, it is in Normal mode. Any
time the printer is on and is not processing IGP/PGL commands, it is in
Normal mode.
When a Create Form command is issued, the printer moves from the Normal
mode to the Create Form mode. During this phase, the user sends text,
images, and bar code data to the IGP/PGL. All of this data is stored in
memory. An END statement terminates the IGP/PGL data string. The printer
returns to Normal mode.
You can create as many forms as you wish and store them on your host. You
can also save forms in the printer's flash memory.
All forms have filenames. You may want to print the form, label it, and store it
for future reference. Or, you can devise another method for easy retrieval.
These forms can then be downloaded from your host to the printer.
When you Execute a form, you can print it as many times as you wish. This
saves you time from downloading the form each time you want to print it.

Printer Operating Mode What It Means

Normal Mode Printer receives data


and prints text/graphics.

Create Form Mode You send IGP commands


to the printer.

Execute Form Mode Printer prints the form designed in


Create Form mode.

Normal Mode Printer returns to Normal mode.

Figure 1. IGP/PGL Modes

15
Chapter 1 The IGP/PGL Emulation

Modes Of Operation
The IGP/PGL has six modes of operation that use specific command
sequences to control the IGP/PGL.
• In Quiet mode all IGP/PGL commands (except LISTEN) are ignored.
• In the Normal mode, the printer waits for an SFCC in order to perform
IGP/PGL functions.
• In the Create Logo and Create Form modes, the printer produces
graphics such as forms, logos, bar codes, and alphanumeric data.
• The Configuration mode allows you to select specific IGP/PGL operations
for running IGP/PGL files on your printer.
• The Execute mode is the IGP/PGL printing mode, which controls when
the actual printing of the bar codes and graphics occurs.

Quiet Mode
In this mode, the host passes all data to the LinePrinter+ emulation without
any IGP/PGL interpretation. The IGP/PGL is disabled and all IGP/PGL
commands are ignored. The IGP/PGL looks only for the LISTEN command.

Normal Mode
Normal mode commands print data in a line printer format until a Special
Function Control Code (SFCC) is detected.
Commands accessible in the Normal mode are summarized in Table 1 and
fully described on the referenced pages. Some Normal mode commands can
also be used in other modes: Compressed Print, Expand, Ignore, Select
Format, and Vertical Line Spacing, which are Normal mode commands, can
also be used in the Execute Form mode; the Multinational Character Set
command can be used in the Normal or Create modes. Carriage Return,
Form Feed, Line Feed, and Paper Slew commands also operate in the
Normal mode.
NOTE: All IGP/PGL commands must be entered in UPPERCASE, and each
command line must be followed immediately by a line feed (or
carriage return with line feed terminator), a paper motion command,
or an inline command.

16
Modes Of Operation

Table 1. Normal Mode Commands

Command Mnemonic Description Page #

Change SFCC SFCC Changes the Special Function Control Code character. 91

Compressed Print DENSITY Defines the horizontal print density in characters per inch 44
(cpi).

Configuration CONFIG Reconfigures IGP/PGL parameters. 45

Create CREATE Places the IGP/PGL in the Create Form mode where all the 49
Create Form mode commands are available to design form
elements.

Create Logo LOGO Places the IGP/PGL in the Create Logo mode, where logos 77
can be defined using the appropriate dot placements.

Delete Form DELETE Deletes a selected form name from the directory and 51
FORM IGP/PGL memory.

Delete Logo DELETE Deletes a selected logo name from the directory and 51
LOGO IGP/PGL memory.

Directory DIRECTORY Provides a list of all defined forms and logos, logo 52
assignments to forms, and memory usage and availability.

Emulation Switch EMULATION Switch emulation from IGP/PGL to IGP/VGL (if VGL is 55
present).

Execute EXECUTE Executes a previously created form. 56

Expanded Print EXPAND Expands fonts vertically and horizontally. 66

Font FONT Selects a specific typeface, bold, slant (italic) factor, and 66
symbol set.

Font Load FONTLOAD Load binary TrueType Font or Intellifont into RAM or Flash 69
memory.

Hex Sequence HEXON Enables the IGP to interpret all data as hex characters 0-9, 71
On/Off HEXOFF A-F. Any data not sent as hex digits is ignored until the
HEXOFF command is sent.

Ignore Sequence IGON Enables the IGP/PGL to ignore all characters after the 71
On/Off IGOFF Ignore Sequence On command is sent until the Ignore
Sequence Off command is sent. See Note on page 20.

Line Spacing, LPI Defines the lines per inch (lpi) printing format. 71
Vertical

Listen LISTEN Removes IGP/PGL from the Quiet state and enables 74
IGP/PGL operation.

Multinational USET Use a multinational character set or create a custom user- Chap. 5
Character Set ISET defined character set.

Normal Mode NORMAL Places the IGP/PGL in the Normal mode, where it does not 80
change the data stream but awaits the SFCC followed by
an IGP/PGL command.

17
Chapter 1 The IGP/PGL Emulation

Table 1. Normal Mode Commands (continued)

Command Mnemonic Description Page #

Paper PAPER Controls printer paper options, such as page orientation, 81


intensity and ribbon use.

Paper Instruction EN-PI Enables or disables use of the PI line with a parallel 83
Enable/Disable DIS-PI interface.

Paper Instruction PION Enables or disables Data Bit 8 as the paper instruction 83
On/Off for Data Bit 8 PIOFF signal in a serial interface.

Print File PRINT Prints a file from the flash memory. 86

Quiet QUIET IGP/PGL operation is disabled until a Listen command is 86


received. Any data sent to the LinePrinter Plus Emulation is
unaffected by IGP/PGL commands.

Recall RECALL Recalls forms or logos from memory. 87

Reset RESET Deletes all forms and logos from the IGP/PGL memory or 87
the printer flash memory.

Select Format SFON Ignores all host-generated paper movement commands. 90


On/Off SFOFF See Note on page 20.

Set Up SETUP Automatically executes and loads the IGP/PGL commands 91


into the printer at power-up or after a RESET command is
sent.

Create Form Mode


Create Form mode commands design forms, all form components, and bar
codes. The forms are not printed in the Create Form mode; forms are printed
in the Execute Form mode after all form design is completed. To begin form
design, access the Create Form mode using the Create command. The
Create command is always used to enter the Create Form mode to begin form
design. Remember that the CREATE command must be entered in
UPPERCASE.
Each element has its own specific set of commands and parameters that
determine size, location, and content. Listed in alphabetical order, Create
Form mode commands are summarized in Table 2 and fully described on the
referenced pages.
The following commands are included for compatibility, and are not
recommended for use: CUT, ENQUIRY, SMODE, and XON.

Print Boundaries
Print area boundaries exist for the paper size selected. All Create Form mode
commands require you to identify the location for the components in your
form. Boundary checking for form elements is performed only when the form
length is specified. This ensures that forms can be created regardless of the
type of paper you have loaded or margins you have set. The IGP/PGL checks
the boundaries before the form is executed to assure that it fits on the loaded
paper size. If the debug option is used in the create statement, the boundaries

18
Modes Of Operation

are checked against the current paper size. Refer to Appendix C for more
information regarding page boundary guidelines.

Table 2. Create Form Mode Commands

Command Mnemonic Description Page #

Alphanumerics ALPHA Defines size, location, and content of alphanumeric 29


characters and dynamic alphanumeric data fields.

Alpha, ALPHA Defines starting data and increment amount for fixed auto- 34
Incremental increment fields.

Bar Codes BARCODE Each bar code type has its own command to define size, Chap. 3
location, orientation, and data as described in the “Bar
Codes” chapter.

Boxes BOX Defines size, location, and thickness of boxes. 42

Corners CORNER Defines vertical and horizontal length, location, and 49


thickness of a set of four corners.

Duplication, HDUP Defines the number of horizontal duplications of an element 52


Horizontal and the spacing between duplications.

Duplication, VDUP Defines the number of vertical duplications of an element 54


Vertical and the spacing between duplications.

End END Terminates the Create Form mode. 55

Font FONT Selects a specific typeface, bold, slant (italic) factor, and 66
symbol set.

Form Length LFORM Specifies form length by total number of lines at 6 or 8 lpi. 70

Ignore Sequence IGON Enables the IGP/PGL to ignore all characters after the 71
On/Off IGOFF Ignore Sequence On command is sent until the Ignore
Sequence Off command is sent. See Note on page 20.

Lines, Horizontal HORZ Defines the location, size, and thickness of horizontal lines. 72

Lines, Vertical VERT Defines the location, size, and thickness of vertical lines. 73

Logo Call LOGO Specifies the location of a previously defined logo. 75

Logo Mode, Create LOGODEF Defines vertical and horizontal length and dot placement for 77
logos.

Multinational ISET Use a multinational character set or create a custom user- Chap. 5
Character Set defined character set.

Page Number PAGE Defines the location for automatically incremented page 80
numbers.

Reset RESET Deletes all forms and logos from the IGP/PGL memory or 87
the printer flash memory.

19
Chapter 1 The IGP/PGL Emulation

Table 2. Create Form Mode Commands (continued)

Command Mnemonic Description Page #

Reverse Print REVERSE Defines the location for white-on-black printing and selects 88
the background shade.

Scale SCALE Defines the vertical spacing and horizontal pitch for data 89
positioning in character or dot columns and rows.

Select Format SFON Ignores all host-generated paper movement commands. 90


On/Off SFOFF See Note on page 20.

Create Logo Mode


The Create Logo mode is used in the Create Form mode. The Create Logo
mode creates a logo design; this predefined logo is then “called” into a form in
the Create Form mode. (The logo must be defined before it is “called.”)

Execute Form Mode


The Execute Form mode prints forms created in the Create Form mode.
Execute Form mode commands are summarized in Table 3 and fully
described on the referenced pages. Carriage Return, Form Feed, and Line
Feed commands also operate in the Execute Form mode. Remember that the
EXECUTE Form command must be entered in UPPERCASE, and that a
single line spacing (or a line containing overlay data) must separate an
EXECUTE command from a NORMAL command.
NOTE: Some systems pad the data stream with characters and spaces. If the
IGP/PGL file on your system contains padded characters or spaces
before the SFCC, this data must be ignored before the IGP/PGL can
operate. The Ignore Sequence (IGON/IGOFF) command, discussed
on page 71, is provided for this purpose.

Similarly, at times you may also need the IGP/PGL to ignore host-
originated paper movement commands (carriage return, line feed,
form feed, etc.) in lengthy data streams. Select Format (SFON/
SFOFF), discussed on page 90, is provided for this purpose. In
addition, the Quiet command, (page 86), can be used to pass data
unchanged to the printer.

20
Modes Of Operation

Table 3. Execute Form Commands

Command Mnemonic Description Page #

Compressed Print DENSITY Defines the horizontal print density in characters per inch 44
(cpi).

Dynamic AFn Executes the dynamic alphanumeric data provided after 60


Alphanumeric Data the (cc) EXECUTE command.

Dynamic Bar Code BFn Executes the dynamic bar code data provided after the 61
Data (cc)EXECUTE command.

Dynamic Logo GFn Executes the dynamic logo data provided after the 62
(cc)EXECUTE command.

Expanded Print EXPAND Expands fonts vertically and horizontally. 66

Font FONT Selects a specific typeface, bold, slant (italic) factor, and 66
symbol set.

Hex Sequence HEXON Enables the IGP to interpret all data as hex characters 0-9, 71
On/Off HEXOFF A-F. Any data not sent as hex digits is ignored until the
HEXOFF command is sent.

Ignore Sequence IGON Enables the IGP/PGL to ignore all characters after the 71
On/Off IGOFF Ignore Sequence On command is sent until the Ignore
Sequence Off command is sent. See Note on page 20.

Incremental IAFn Executes the incremental dynamic alphanumeric data 63


Alphanumeric provided after the (cc) EXECUTE command.
Dynamic Data

Incremental Bar IBFn Executes the incremental dynamic bar code data provided 63
Code Dynamic Data after the (cc)EXECUTE command.

Line Spacing, LPI Defines the lines per inch (lpi) printing format. 71
Vertical

Multinational ISET Selects one of the multinational character sets. Chap. 5


Character Set

Normal Mode NORMAL Places the IGP/PGL in the Normal mode, where it does not 80
change the data stream but awaits the SFCC followed by
an IGP/PGL command.

Paper PAPER Controls printer paper options, such as page orientation, 81


intensity and ribbon use.

Reset RESET Deletes all forms and logos from the IGP/PGL memory or 87
the printer flash memory.

Select Format SFON Ignores all host-generated paper movement commands. 90


On/Off SFOFF See Note on page 20.

21
Chapter 1 The IGP/PGL Emulation

Alphanumeric Data
Based on the requirements of a specific application, you can use one of three
methods to print alphanumeric data on a form: Fixed data, Overlay data, and
Dynamic data. These methods are described in more detail in the
“Commands” chapter.
• Fixed data prints on each form in the same “prepositioned” location,
unless the location changes in the form definition. Company name,
address, logo, and phone number are typical examples of alphanumeric
data that can be “fixed” onto the form.
• Overlay data is variable alphanumeric data positioned on the page with
line feeds and spaces to fit into exact locations. For example, specific
data can be “overlayed” onto a blank form as if you were typing data into
the appropriate blanks on a preprinted form. Customer names,
addresses, and order numbers are examples of data overlayed onto a
form.
• Dynamic data is variable data entered into specific locations on each
form. Each time the form prints, a command enters new data in those
locations. Customer names, addresses, or any type of variable
alphanumeric or bar code data can be provided dynamically.

Incremental Data
The incremental data feature allows you to update alphanumeric and bar
code data fields in an alphabetical or numeric manner automatically with just
one set of data sent from the host computer.
Alphanumeric and bar code incremental fields can be used with fixed (static)
data input as part of the Create Form mode or with dynamic data supplied in
the Execute Form mode.
The incremental fields can be increased or decreased, repeated at specified
intervals before updating, and reset to the starting value after a specified
number of increments.

Configuring The IGP/PGL With The Control Panel


Matching certain printer operational settings to those of the host computer is
known as printer configuration. The settings, or configuration parameters,
such as selecting the host interface, active emulation, and printer control
options, are adjusted according to the printer function switch descriptions in
your printer's User's Manual. Configure the IGP/PGL in the same way you
would configure the printer for other features.
You can select IGP/PGL default parameters directly from the control panel as
explained in your User's Manual, or by control codes as explained in the
“Commands” chapter. Your User's Manual also contains detailed
configuration menus and diagrams, as well as descriptions of each
configuration parameter available with your printer.

22
2 Commands

IGP/PGL Command Standards


IGP/PGL commands have many options and a specific format that you must
follow to obtain the desired results. Certain elements are standard for all
IGP/PGL commands. These command standards are described in the
following sections. Familiarize yourself with the meaning and use of these
standards before operating the IGP/PGL.

Special Function Control Code (SFCC)


The SFCC identifies a command directed to the IGP/PGL to enable a specific
IGP/PGL function. Based on the host computer interface requirements,
various characters can be selected as the SFCC, such as the caret (^) or a
tilde (~). The SFCC must be placed before a command or data is entered.
The examples in this manual use the tilde as the SFCC; always substitute the
actual SFCC required by your system wherever the tilde is shown. In the
general command formats, the SFCC is represented by (cc).
You can select the SFCC using the CONFIG command (page 45), the Special
Function Control Code Change command (page 91) or the control panel (see
the User's Manual).

Semicolon (;)
Each parameter (alpha data, options, etc.) on the command line is separated
by a semicolon. Blank spaces between the semicolon and the next parameter
are not allowed. A missing or misplaced semicolon causes an error message.

Uppercase
The IGP/PGL is “case sensitive.” ALL commands must be entered in
uppercase.

23
Chapter 2 IGP/PGL Command Standards

Inline Commands
The SFCC, usually a “~”, was required to be the first character on a new line.
It may now appear anywhere on the command line. There is a configuration
option that determines whether any data preceding a command is printed or
ignored.
All IGP/PGL commands begin with the Special Function Control Code
(SFCC). When the command is not followed by a valid line terminator, it must
also end with the SFCC. Any illegal command or non-terminated command
will print as text.
These features, when used in combination with the new dynamic data rule,
are useful for those whose systems count the number of lines printed and
automatically issue a form feed. Now, the line count can be maintained by
combining overlay data and commands in a single print line. For example:
Normal text ~FONT;BOLD ON~Bold text~FONT;BOLD OFF;SLANT
1~Slanted text~EXPAND;2:2~~FONT;SLANT 0~ Enlarged upright text
would yield:
Normal text Bold Text Slanted Text Enlarged Upright Text
Line Terminator
Each command line must be terminated by a line feed (or a carriage return
with a line feed), or a paper motion command. When an inline command is not
followed by a valid line terminator, it must also end with the SFCC. The
command line will not be accepted if not properly terminated. Refer to your
system User's Manual for your system keyboard and your printer
configuration codes to determine which key(s) (such as ENTER, LINE FEED,
RETURN, etc.) perform a line feed, carriage return with line feed, or form feed
function.

Printable Character
To print, alphanumeric and bar code data must be enclosed by a printable
character (a delimiter). This delimiter is represented by (D) in the command
format. In this manual, an asterisk (*) is used in most examples as the
printable character. (The parentheses are not entered.) Any printable
character can be used as this delimiter except a slash (/) or the SFCC. The
same printable character must be used at both the beginning and end of the
text to be printed and cannot be used within the text.

Spaces
Spaces are used in the general command formats to visually separate
individual command parameters. Supply the appropriate information for the
command parameter, but do not enter the spaces in the command sequence;
they are shown simply as a visual aid to illustrate where one command
parameter ends and another begins.

24
Command Parameters

Command Parameters
Most commands include a number of parameters. Some are optional, and
some are required. Each parameter must be separated by a semicolon (;)
unless noted otherwise. Throughout this manual, actual commands required
for input are shown exactly as they must be entered and all parameters
associated with that command are shown in italics. Optional parameters are
enclosed in brackets [ ], but do not enter the brackets.
Parentheses indicate variable data. You have a choice of what to enter, but
you must enter something. Do not enter the parentheses themselves.

Form Name
You must use alphanumeric characters to identify the document (form or logo)
you are creating (a maximum of 15 alphanumeric characters). The Form
Name is also used to identify the form during the Execute Form mode. The
valid Form Name characters are listed below and also apply to Logo Name.
The SFCC can also be used in the Form Name. No spaces are allowed
between any of the Form Name characters.

Table 4. Valid Form Name Characters

A through Z (upper and lowercase) Left and right parentheses ( )

0 through 9 Tilde ~

Dollar sign $ Single quotes ‘ ’

Percent sign % Exclamation Point !

Dash - Pound sign #

At sign @ Ampersand &

Left and right braces { }

Prompt
The prompt is the symbol (e.g., a dollar sign, period or greater than symbol)
used to indicate that the host computer is ready for data input. In this manual,
the prompt is shown as a period (.).

Numeric Values
In this manual, a lowercase n in the command represents a numeric value. If
a command parameter includes a lowercase n, it must be substituted with an
appropriate numeric value. If the lowercase n is part of an optional parameter
and the option is not selected, a value for n is not required.

25
Chapter 2 IGP/PGL Command Standards

Comments In Command Lines


To aid in preparation or maintenance of a form or logo, comments can be
added to many command lines. Comments must be preceded by a slash (/).
However, do not use the /comment feature on lines containing an SFCC (i.e.,
CREATE, NORMAL, EXECUTE, etc.). Throughout this manual, comments
are provided in parenthesis beside most command lines for better
understanding of IGP/PGL operation but should not be included in your
IGP/PGL files.

Storing Data
To send data to the IGP/PGL, use a system command, such as PRINT.
(Entering data through the keyboard does not store data in nonvolatile
IGP/PGL memory.) Once stored in memory, the data remains until deleted,
the IGP/PGL is reset with the RESET command, or until the printer is turned
off.
IGP/PGL files can be permanently stored to, deleted from, and retrieved from
the printer’s flash memory by ending CREATE, CREATE LOGO, DELETE
FORM, DELETE LOGO, EXECUTE, and DIRECTORY commands with
;DISK.
For example, the following command creates a form named ORDER and
stores it in the printer’s flash memory:
(cc)CREATE;ORDER;DISK
Executing a form or calling a logo will access the flash memory automatically
if the object is not found in RAM.
NOTE: While the printer does not contain a floppy disk drive, the ;DISK
command has been retained to provide backward compatibility with
earlier printer models and command syntax.

Uncompressed And Packed Bits Compression


PGL logos support uncompressed and packed bits compression methods.
CCITT and LZR (used for color) compression methods are not supported.
Refer to your application's documentation about TIFF files.

Character Position.Dot Position (CP.DP) Format


The CP.DP format is a special parameter available with the IGP/PGL
commands. CP.DP format allows two elements plotted at nearly the same
character location to be offset to eliminate overlapping. Specifying starting
and ending rows and columns is its most frequent use.
Each character location is a cell. Each cell is a grid 12 dot rows high by 6 dot
columns wide (printing at 6 lpi and 10 cpi). The CP.DP format allows a
character cell position (CP) and a specific dot position (DP) within the cell to
be identified as shown in Figure 2. The DP portion of the CP.DP format
specifies a location down (in reference to rows) and to the right (in reference
to columns) within the character cell position.

26
Character Position.Dot Position (CP.DP) Format

For example, refer to Figure 2. Suppose a line runs along character position
column 13 (CP = 13). At the same time, an alphanumeric string must begin in
column 13. With CP.DP format, the alphanumeric string can be offset 2 dot
positions (DP = 2) in column 13 to avoid overlap. Specify 13.2 (CP = 13,
DP = .2) for the starting column of the alphanumeric string. Similarly, to place
a horizontal line 8 dot rows beneath another horizontal line in character row
position 11, specify row 11 for one line and row 11.8 for the other line.

12.5 13.1 13.3 13.5 14.1


11.0 12.0 13.0 14.0 15.0 12.4 13.0 13.2 13.4 14.0
10.9

10.0 10.10
10.11
11.0
11.1
11.0 11.2
11.3
11.4
12.0 11.5
11.6
11.7
11.8
13.0
11.9
11.10
11.11
12.0

Figure 2. CP.DP Format Example

27
Chapter 2 Command Codes

Command Codes
Data Fields For Alphanumeric And Incremental Data
Based upon the requirements of a specific application, three methods are
used to print alphanumeric data on the form: fixed (or prepositioned) data,
overlay data, and dynamic data.

Fixed Data
Fixed data is entered during the Create Form mode as part of the form
definition. It appears as prepositioned information similar to other form
elements. The fixed data is printed on each form in the same location and can
only be changed by changing the form definition. Your company's name,
address, logo, or phone number are typical examples of alphanumeric data
that can be fixed onto the form.

Overlay Data
Overlay data is variable alphanumeric data entered during the Execute Form
mode by positioning the information with line feeds and spaces into an exact
location. In general, a page of data is overlaid onto a form similar to typing
data in the appropriate blanks of a preprinted form. Each page of overlay data
is separated by form feeds to correspond to each form printed. Customer
names, addresses, and order numbers are examples of variable data that can
be overlaid onto the form.

Dynamic Data
Dynamic data is variable data entered by command during the Execute Form
mode. The dynamic data is entered into a location previously defined in the
Create Form mode. Any number of locations can be identified during the
Create Form mode as part of the form definition. A command during the
Execute Form mode enters new data in the identified location(s) each time
the form prints. Dynamic data is the most efficient method of supplying
variable data to the form. Again, customer names, addresses, or any type of
logo, variable alphanumeric, or bar code data can be provided dynamically.

Incremental Data Fields


The incremental data fields feature allows alphanumeric (and bar code) data
fields to automatically update numerically or alphabetically with just one set of
data sent from the host computer. A maximum of 65,535 fields can print with
incremental fields automatically updated. Alphanumeric incremental fields can
be used with fixed (static) data input as part of the Create Form mode or with
dynamic data supplied in the Execute Form mode. Incremental data fields
cannot be used with Overlay data.

28
Dark Printing

Dark Printing
A DARK parameter, available in the Alpha, Reverse, and Bar Code
commands, is like the double-strike feature in impact printers which produces
bolder, darker text, denser black backgrounds for reverse print, and extra-
dark, more readable bar codes.
Reverse and Bar Code commands automatically print in the DARK mode in
laser and thermal printers; therefore, a DARK parameter in the command line
is ignored. However, a DARK parameter used with alphanumeric text in the
ALPHA command will print using a bold font. In any event, print speed is not
reduced when using the DARK parameter with laser or thermal printers.

Alphanumerics
Purpose Defines and positions alphanumeric data on a “preprinted” static
data field or as a dynamic data field.
Mode CREATE
Format ALPHA
[R;] [E;] [Cn;] [AFn;L;] [T;] [DIR;] [UC;] [DARK;] [POINT;]
[HSn; or HSDn;] SR; SC; VE; HE; (D)text(D)
STOP
ALPHA The Alphanumeric command; enter ALPHA.
R The optional reverse printing (white on black)
parameter. Enter R to specify a black background.
NOTE: The D parameter, used in earlier IGP/PGL versions, is ignored in
IGP/PGL. In addition, the L parameter, also used in earlier IGP/PGL
versions to specify a long reverse field for descending characters in
dynamic alphanumeric data, is now provided automatically in
IGP/PGL. The IGP/PGL ignores these parameters if found in a
command line.
E The optional elongated character parameter. Enter
E to specify elongated character printing.
Elongated characters are double height and single
width. If used, the VE and HE parameters must be
set to 0, or an error message will result. Elongated
character printing is also available with rotated
alphanumerics.
Cn The optional horizontal compression parameter.
Enter C. n = any number between 10 and 30,
specifying the number of horizontal characters per
inch (cpi). 10 cpi is the default value. 10A = 10 cpi
OCR-A. 10B = 10 cpi OCR-B. If used, the VE and
HE parameters must be set to 0, or an error
message will result.

29
Chapter 2 Command Codes

AFn;L The optional dynamic data field parameters for


identifying the alphanumeric string location on a
form and for designating the length of the
alphanumeric string. If these parameters are used,
the actual text cannot be entered during the Create
Form mode; it must be entered dynamically during
the Execute Form mode. Dynamically entering data
during the Execute Form mode permits changes to
the alphanumeric text without redefining or re-
creating the form. To use this field, perform the
following steps:
a. Enter AF.
b. Replace n with a number ranging from 0
through 512 to identify the alphanumeric
string location on the form. The SR and SC
parameters are used to specify the exact
location of the alphanumeric field identified by
n.
c. Replace L with a number equal to the number
of characters in the dynamic alphanumeric
string ranging from 0 through 512.
d. Dynamically enter the alphanumeric string
itself in the Execute Form mode. The length of
the alphanumeric string must be equal to or
less than the value assigned to the length (L)
parameter. Refer to “Execute Form: Dynamic
Alphanumeric Data” on page 60.
e. If the dynamic data field is used, do not enter
the text parameter.
T Optional parameter which truncates the dynamic
data field when it exceeds the maximum length
defined by the L parameter. When T is not used, a
data length error is printed instead.
DIR Optional parameter for rotating a character string.
Use the following codes to indicate the direction of
character rotation and to specify an uppercase-only
character string:
a. Enter CW for 90 degree clockwise rotation.
b. Enter CCW for 90 degree counterclockwise
rotation.
c. Enter INV for inverted characters (180 degree
rotation).
The default orientation prints character strings in
the standard horizontal format.
NOTE: Alpha rotation parameters (CW, CCW, INV) require more memory to
implement than the default orientation. Thus, characters selected for
rotation may appear in the default orientation. Selecting a smaller font
will correct the problem.

30
Alphanumerics

UC Enter UC to specify uppercase-only characters.


When uppercase-only is specified, all lowercase
alpha character codes are converted automatically
to uppercase. Consequently, do not specify
uppercase-only characters if lowercase characters
are required.
DARK Optional parameter to produce bolder text. Enter
DARK or D. (D is also allowed in the ALPHA
command only.) More information about dark
printing is provided on page 29.
POINT Optional parameter that changes the units for the
vertical and horizontal expansion values. Enter
POINT. When the POINT parameter is present the
VE value defines the font height in 1/72 of an inch
(i.e. points). If the HE value is non-zero, it defines
the character width in 1/72 of an inch, otherwise the
character width is the standard width for the chosen
height. Cannot be used with elongated (E) and
compressed (Cn) parameters.
HSn or HSDn Horizontal Spacing. The value n indicates the
number of extra dots to add between each
character.
HS = the value is in 60 DPI dots
HSD = the value is in printer dots.
This parameter is used only for proportional fonts.
SR Defines the starting row of the alphanumeric data.
Enter a value ranging from row 1 through one less
than the length of the form. Character row or dot
row is specified based on the Scale command
(page 89), or use the CP.DP format (page 26).
SC Defines the starting column of the alphanumeric
data. Enter a value ranging from column 1 through
one less than the width of the form. Character
column or dot column is specified based on the
Scale command (page 89), or use the CP.DP
format (page 26).
VE Defines the vertical expansion factor to enlarge
characters vertically. Enter a value from 0 through
139. Zero specifies the standard font (no
expansion). A VE value must be entered.
Elongated (E) and compressed (Cn) characters
cannot be used with a vertical expansion other than
zero.
HE Defines the horizontal expansion factor to enlarge
characters horizontally. Enter a value from 0
through 139. Zero specifies the standard font (no
expansion). An HE value must be entered.
Elongated (E) and compressed (Cn) characters
cannot be used with a horizontal expansion other
than zero.

31
Chapter 2 Command Codes

(D) The printable character identifying the start and


finish of the alphanumeric string. Enter any
printable character other than a slash (/), the
SFCC, or a character used within the alphanumeric
string itself. You must use the same character at
both ends of the alphanumeric string, but it will not
print with the data.
text The group of ASCII characters (the alphanumeric
string) to print. Enter any of the standard ASCII
printable characters (except the character used to
delimit the string in the (D) parameter). The data
appears as “prepositioned” information on the form
beginning at the location specified by SR and SC.
This is the “fixed” or static alphanumeric data; once
defined on the form, it is changed only by redefining
the form using the Alphanumerics command.
STOP Stop indicates the end of the Alphanumeric
command; enter STOP, and the IGP/PGL will wait
for a new command. If not entered, the IGP/PGL
will wait for another set of Alphanumeric command
parameters.
Comments
As dynamic data, the location of the alphanumeric field is
established in the Create Form mode and the actual
alphanumeric data is continuously redefined before placement on
the form in the Execute Form mode. You can also rotate and
reverse print the alphanumeric string using this command.
Example The following program and example in Figure 3 illustrates the
Alphanumeric command capabilities. To illustrate positioning,
starting row and column are indicated on the example but do not
necessarily reflect actual location on the page. Notice the same
starting row is used for all “EXAMPLE” characters, and they are
all aligned on the same baseline (or bottom), regardless of
expanded or compressed parameters. The string rotates around
the point of intersection of the starting row and columns shown by
the “pinwheel” E. A rotated 10 cpi character establishes the
baseline for all character sizes.

32
Alphanumerics

ALPHA
36;37;4;4;*E*
36;41;2;3;*X*
36;44;2;2;*A*
36;46;1;1;*M* (Single-size character, expanded font)
C13;36;47;0;0;*P*
C15;36;48;0;0;*L*
C17;36;49;0;0;*E*
CW;36;60;2;2;*CLOCK*
CW;42;60;4;4;*WISE*
CCW;58;26;2;3;*COUNTER*
CCW;45.5;26;2;2;*CLOCK*
CCW;39.2;26;1;1;*WISE*
INV;54.5;58;0;0;*INVERTED*
R;INV;54.5;49;0;0;*REVERSE PRINT*
45;48;0;0;*E*
CW;UC;45;48;0;0;*e* (Lowercase converted to uppercase)
CCW;45;48;0;0;*E*
INV;45;48;0;0;*E*
STOP

ROW 36

ROW 39.2 COLUMN 37 COLUMN 49

COLUMN 48

ROW 45

COLUMN 60
ROW 54.5

ROW 58 COLUMN 58

alpha

COLUMN 26

Figure 3. Alphanumeric Example

33
Chapter 2 Command Codes

Alphanumerics, Incremental Fields


Purpose The incremental fields feature updates alphanumeric (and bar
code) data fields in a numeric or alphabetical manner
automatically using just one set of data sent from the host
computer. Incremental alphanumeric data fields can be applied to
fixed (static) data (page 37), or dynamic data (page 39).
Mode CREATE (for fixed data) or EXECUTE (for dynamic data)
NOTE: Throughout the discussion of incremental fields, the term “increment”
or “incremental” means the field is automatically updated by a
specified amount (or increment). The field can actually be
increased/decreased in specified increments/decrements within the
command.
Comments
Incremental fields can increase or decrease, repeat at specified
intervals before updating, and reset to the starting value after a
specified number of increments. A maximum of 65,535 fields can
be defined.

Using Incremental Alphanumeric Data


Incrementing is controlled with the STEPMASK and STARTDATA command
parameters as described in Table 5. The parameters are part of the
Incremental Alphanumeric Fixed Data command or part of the Execute
command when using incremental alphanumeric dynamic data.
The STEPMASK parameter performs the following three functions:
1. It defines the increment amount (step);
2. It defines the number of characters allowed in the data field
(STARTDATA); and
3. It provides a “mask” to link or unlink subfields of the data to be
incremented independently. The data provided in the STEPMASK field
combined with the data in the STARTDATA field determine the result of
these functions.
The increment amount is defined by the numeric value of the STEPMASK
data. For example, a STEPMASK value of 1 increments the STARTDATA by
1; a STEPMASK value of 2 increments the STARTDATA by 2.
The maximum number of characters allowed in the STARTDATA field is
defined by the number of characters in the STEPMASK field; the
STARTDATA field cannot contain more characters than used in the
STEPMASK field.
Linked and unlinked masking of subfields within the STARTDATA is defined
by the L value in the STEPMASK field. L indicates linked but non-incremental
data in the corresponding position of the STARTDATA field; any alpha
character other than L in the STEPMASK field indicates a non-incremental,
non-linked STARTDATA subfield.

34
Alphanumerics, Incremental Fields

Table 5. Increment Alphanumeric

STEPMASK START DATA Character Type and Function

0-9 A-Z Alpha characters incremented by


amount in STEPMASK field

0-9 0-9 Numeric characters incremented


by amount in STEPMASK field

0-9 Space Same character type as character


in the next right adjacent, linked
increment position. Character
type will be numeric if in least
significant position.
0-9 Not A - Z or 0 - 9 Error

Not 0 - 9 or L Any Non-incrementing alphanumeric


character

L Any Linked, non-incrementing


alphanumeric character

The examples on the following pages illustrate incremental alphanumeric data


fields. All cases in the examples use a repeat count parameter value of 1 and
a reset count parameter value of 0. The three vertical dots illustrate the
natural progression for each column and unit of data based on the
incremental count and its impact on linked and unlinked data fields.

Value Description

STARTDATA: ABC123 Linked subfields: ABC and 123


STEPMASK: 000001 RPT = 1
RST = 0
Printed Results: ABC123
ABC124
......
......
......
ABC999
ABD000
......
......
......
ZZZ999
AAA000

35
Chapter 2 Command Codes

Value Description

STARTDATA: 1ABC123 Two separate but linked numeric


STEPMASK: 0LLL001 subfields: 1 and 123, while fixed data
ABC is non-incrementing
Printed Results: 1ABC123 RPT = 1
1ABC124
. ... RPT = 0
. ...
. ...
1ABC999
2ABC000

Value Description

STARTDATA: ABC123 Two separate unlinked subfields:


STEPMASK: 001XX1 ABC and 3, while fixed data 1 and 2
is non-incrementing
Printed Results: ABC123 RPT = 1
ABD124
. . RPT = 0
. .
. .
ABI129
ABJ120

Value Description

STARTDATA: ___1 Single numeric field with leading


STEPMASK: 0001 spaces (_)
RPT = 1
Printed Results: ___1 RPT = 0
___2
....
....
....
__10

Value Description

STARTDATA: _AA98 Two separate but linked numeric


STEPMASK: 0LL01 subfields: AA and 98, with leading
space (_); fixed data AA is non-
Printed Results: _AA98 incrementing
. ..
. .. RPT = 1
. .. RST = 0
1AA00

36
Alphanumerics, Incremental: Fixed Data Fields

Value Description

STARTDATA: _42AR Two separate but linked alpha


STEPMASK: 0LL01 subfields: A and R, with leading
space (_); fixed data 42 is non-
Printed Results: _42AR incrementing
_42AS
. .. RPT = 1
. .. RST = 0
. ..
_42ZZ
A42AA

Value Description

STARTDATA: 9AA02 Single numeric field decremented by


STEPMASK: -XXX01 1, while fixed data 9 and AA are non-
incrementing.
Printed Results: 9AA02
9AA01
9AA00
9AA99
..
..
..
9AA03

Alphanumerics, Incremental: Fixed Data Fields


Purpose To automatically increment/decrement fixed alphanumeric data
fields.
Mode CREATE
NOTE: In the command format below, incremental alphanumeric command
parameters are shown in boldface type; standard alphanumeric
command parameters and optional non-incremental parameters are
shown in italics. Due to space constraints, the command parameters
are separated into two lines. During actual IGP/PGL input, DO NOT
separate command parameters.
Format ALPHA
[R;] [E;] [Cn;] I; [DIR;] [UC;] [DARK;] [POINT;] [HSn or HSDn;]
SR; SC; VE; HE;[idir] STEPMASK; [RPTn;] [RSTn;]
(D)STARTDATA(D)
STOP
I Identifies this alphanumeric command as an
Incremental Alphanumeric command; enter I.
idir The optional increment direction parameter to
specify an increment (add) or decrement (subtract)
to the data. Enter a plus sign (+) or leave the field
blank to increment (the default). Enter a minus sign
(-) to decrement.

37
Chapter 2 Command Codes

STEPMASK Defines the increment amount (step), the number


of character positions in the data field, and provides
a mask to control the increment function on specific
parts of the data. Enter the appropriate value. Refer
to Table 5 on page 35 for complete information on
STEPMASK parameter values.
RPTn The optional incremental repeat count parameter to
specify the number of times a particular field value
is repeated before it is incremented. A repeated
field value is useful when printing multiple
rows/columns of identical labels before increasing
to the next value.
To use the repeat count parameter, enter RPT and
replace n with a numeric value ranging from 1
through 65535 to specify the repeat count. The
default repeat count parameter is 1, which will
increment the field value each time it prints.
RSTn The optional incremental reset count parameter to
specify the number of times an incremented field is
printed (on one or more forms) before it is reset to
the starting value. A reset count is useful when
printing a hierarchy of fields where a low-level field
generates a sequence of numbers, is reset, and the
next higher field level is incremented (such as in a
unit/box/carton application). To use the reset count
parameter, enter RST and replace n with a number
ranging from 1 through 65535 to specify the reset
count. The default reset count value is 0.
STARTDATA
Defines the starting value of the incrementing field.
Enter the appropriate value. Refer to “Using
Incremental Alphanumeric Data” on page 34 for
complete information on STARTDATA and
STEPMASK parameter values.
The maximum amount of STARTDATA characters
must be equal to or less than the number of
characters in the STEPMASK field. If the number of
data characters is less than the number used in
STEPMASK, the data will print right justified with
preceding spaces. Characters allowed for
incrementing fields (STEPMASK values of 0 - 9)
are numeric 0 - 9 and alpha A - Z (uppercase only).
Any printable character is allowed in non-
incrementing fields (STEPMASK values not 0 -
9).The STARTDATA must be enclosed within
standard printable character delimiters just as a
standard alphanumeric data field is enclosed within
delimiters.

38
Alphanumerics, Incremental: Dynamic Data Fields

Comments
The Incremental Alphanumeric Fixed Data Fields command is a
revised version of the standard IGP/PGL alphanumeric
command, but it does not replace the standard alphanumeric
command.
~CREATE;TEST;288 (Enters Create Form mode)
VDUP;3;6 (Repeat alpha string)
ALPHA (Alpha command)
I;6;5;4;4;-00001;*12345*
STOP (Ends Alpha command)
VDUP;OFF
END (Terminates Create Form mode)
~EXECUTE;TEST (Prints form)

~NORMAL

Alphanumerics, Incremental: Dynamic Data Fields


Purpose Automatically increments/decrements dynamic alphanumeric
data fields. Specifies the location and size of the incremental
dynamic data field during the Create Form mode; STEPMASK
and STARTDATA parameters are supplied in the Execute
command during the Execute Form mode.
Mode CREATE
NOTE: In the command format below, incremental alphanumeric command
parameters are shown in boldface type; standard alphanumeric
command parameters and optional non-incremental parameters are
shown in italics.

39
Chapter 2 Command Codes

Format ALPHA
[R;] [E;] [Cn;] IAFn;L;[T;] [DIR;] [UC;] [DARK;] [POINT;]
[HSn or HSDn;] SR; SC; VE; HE
STOP
IAFn;L Identifies this alphanumeric command as an
Incremental Alphanumeric Dynamic Data Field
command. The command parameter string
identifies the incremental dynamic data field
location on the form and defines the length of the
alphanumeric data. If these parameters are used,
the STEPMASK and STARTDATA parameters
cannot be entered in the Create Form mode; they
are entered dynamically during the Execute Forms
mode. To use the incremental dynamic data field,
perform the following steps:
a. Enter IAF to specify an incremental
alphanumeric dynamic data field.
b. Replace n with a number ranging from 0
through 512 to identify the alphanumeric
string location on the form. The standard
alphanumeric SR and SC command
parameters specify the exact location of the
field identified by n.
c. Replace L with a number equal to the number
of characters in the dynamic alphanumeric
string (STARTDATA) ranging from 1 through
255.
d. Dynamically enter the STEPMASK and
STARTDATA parameters in the Execute Form
mode. The length of the data must be equal to
or less than the value assigned to the length
(L) parameter. Refer to “Execute Form:
Incremental Dynamic Data” on page 63 for
more information.
Comments
The Incremental Alphanumeric Dynamic Data Fields command is
a variation of the standard IGP/PGL Alphanumeric command, but
does not replace the standard alphanumeric command.
As with standard dynamic data fields, incremental dynamic data
fields allow the starting data to be changed without changing the
form definition program. Increment parameters can also change
with each new job without changing the form definition program.
Duplicating Incremental Alphanumeric Fields — Incremental
alphanumeric fixed and dynamic data fields are duplicated
horizontally using the HDUP command and vertically using the
standard VDUP command. Duplicated incremental fields
increment in left-to-right, top-to-bottom order. The following
examples illustrate the results of duplicated incremental fields.

40
Alphanumerics, Incremental: Dynamic Data Fields

Value Description
STARTDATA: 01 Single numeric field (01)
STEPMASK: 01 RPT = 1
RST = 0
HDUP = 3
Printed Results: VDUP = 2
Page #1: 01 02 03
04 05 06

Page #2: 07 08 09
10 11 12

Field A Unlinked subfields, alpha (A),


STARTDATA: A01
numeric (01)
RPT = 3
STEPMASK: X01 RST = 9
HDUP = 3
VDUP = 3
Field B
STARTDATA: B01 Unlinked subfields, alpha (B),
numeric (01)
STEPMASK: X01 RPT = 1
RST = 0
Printed Results: (No HDUP or VDUP)

Page #1: A01 A01 A01 B01


A02 A02 A02
A03 A03 A03

Page #2: A01 A01 A01 B02


A02 A02 A02
A03 A03 A03

Example The following program will produce the Incremental Alphanumeric


data example at the bottom of the previous page. The program
elements are also defined. (Refer to the command format on
page 37.)
ALPHA
I;1;1;0;0;001;RPT3;RST9;*A01*
I;3;1;0;0;001;RPT1;RST0;*B01*
STOP
where:
I;1;1;0;0;001;RPT3;RST9;*A01*
Incremental alphanumeric command;
SR of 1; SC of 1;
VE and HE are 0;
001 stepmask increments by 1;
RPT3 repeats each field value 3 times;
RST9 prints and increments each field 9 times
before resetting;

41
Chapter 2 Command Codes

* identifies the start and finish of the alphanumeric


string;
A01 is the starting value.
I;3;1;0;0;001;RPT1;RST0;*B01*
Incremental alphanumeric command;
SR of 1; SC of 1;
VE and HE are 0;
001 stepmask increments by 1;
RPT1 repeats each field value once;
RST0 prints and increments each field 0 times
before resetting;
* identifies the start and finish of the alphanumeric
string;
B01 is the starting value.
~CREATE;TEST;288 (Enters Create Form mode)
VDUP;3;6 (Repeats alpha string)
ALPHA (Alpha command)
IAF1;5;6;5;4;4
STOP (Ends Alpha command)
VDUP;OFF
END (Terminates Create Form mode)
~EXECUTE;TEST (Prints form)
~IAF1;+00002;*45678*

~NORMAL

Boxes
Purpose Produces any variety of rectangular boxes.
Mode CREATE
Format BOX
LT;SR;SC;ER;EC
STOP
BOX The Box command; enter BOX. Boxes expand
down and to the right from the given row and
column.

42
Boxes

LT Defines the line thickness, measured in dots. Line


thickness is based on dot dimensions of 1/72” both
horizontally and vertically, so that line thickness is
equal in both directions. Enter a value of 1 or
greater.
SR Defines the starting row of the box. Enter a value
ranging from row 1 through one less than the length
of the form. Character row or dot row is specified
based on the Scale command (page 89), or use the
CP.DP format (page 26).
SC Defines the starting column of the box. Enter a
value ranging from column 1 through one less than
the width of the form. Character column or dot
column is specified based on the Scale command
(page 89), or use the CP.DP format (page 26).
ER Defines the ending row of the box. Enter a value
ranging from row 2 through the last row of the form.
The ending row must be greater than the starting
row. Character row or dot row is specified based on
the Scale command (page 89), or use the CP.DP
format (page 26).
EC Defines the ending column of the box. Enter a
value ranging from column 2 through the last
column of the form. The ending column must be
greater than the starting column. Character column
or dot column is specified based on the Scale
command (page 89), or use the CP.DP format
(page 26).
STOP Stop indicates the end of the Box command; enter
STOP, and the IGP/PGL will wait for a new
command. If not entered, the IGP/PGL will wait for
another set of Box command parameters.
Example The following program and example in Figure 4 defines two
boxes. To illustrate positioning, the starting row and column are
indicated on the example but do not necessarily reflect actual
location on the page. (Note the position of the ending row and
column; line thickness is not included.)
BOX
3;24;16;51;63 (One box three dot rows thick)
2;44;48;46;58 (One box two dot rows thick)
STOP

43
Chapter 2 Command Codes

COLUMN 16

ROW 24

COLUMN 48

ROW 44
ROW 46

COLUMN 58

ROW 51
COLUMN 63 box.e

Figure 4. Box Example

Compressed Print (Density)


Purpose Defines the horizontal print density in characters per inch (cpi).
Mode NORMAL, EXECUTE
Format (cc) DENSITY;n
(cc) The Special Function Control Code.
DENSITY The Density command; enter DENSITY.

44
Configuration

n Selects the density in cpi, OCR-A, or OCR-B; enter


a value of 10, 12, 13, 15, 17 or 20 to specify the
density in characters per inch (the default is 10 cpi),
or 10A to select 10 cpi OCR-A or 10B to select 10
cpi OCR-B.
Comments
Print density formats of 10, 12, 13, 15, 17 or 20 cpi are available.
If you need to print at 30 cpi, use the Alphanumerics command
Cn parameter, as described on page 29. Standard print density is
10 cpi. After a Density command is entered, all subsequent
alphanumerics print at the specified density until another Density
command, a Normal mode command, or a Reset command is
entered. The Density command also permits the standard printer
editing function (carriage return editing). After the Density
command is entered, data in the print buffer can be edited as
described in your printer User's Manual.
Example The following command selects 15 cpi printing format until
another Density command, a Normal mode command, or a Reset
command is entered.
~DENSITY;15

Configuration
Purpose Places the IGP/PGL in the Configuration mode, where changes
to any or all of the IGP/PGL configuration parameters via
software control can be made instead of from the printer control
panel.
Mode NORMAL
NOTE: A separate line is required for the CONFIG command, the parameters
and values, and the END command.
Format (cc)CONFIG
parameter; value
END
(cc) The SFCC.
CONFIG The Configuration command; enter CONFIG.
parameter; value
The parameter for which a configuration change is
desired, and the value associated with that
parameter. The available parameters and the
values associated with these parameters are listed
in Table 6.
END Terminates the CONFIG command; enter END.
NOTE: All CONFIG parameters except RESET must be followed by a
semicolon (;). Any CONFIG parameters not entered in UPPERCASE
and exactly as listed in Table 6 will result in an Error 156. (Refer to
the “Error Codes” chapter.)

45
Chapter 2 Command Codes

Table 6. Configuration Parameters

Configuration Parameter Value


AI 00 SPACES 0 = Disabled; Non-Zero = Enabled
AUTO EJECT 0 = Disabled; Non-Zero = Enabled
AUTO WRAP 0 = Disabled; Non-Zero = Enabled
CARRIAGE RETURN DEF 0 = Disabled; Non-Zero = Enabled
CHECK DYNAMIC BCD 0 - Off; 1=On
CR EDIT 0 = Disabled; Non-Zero = Enabled
ERROR REPORT 0 = Off; 1 = On; 2 = Debug
EXT EXECUTE COPY 0 = Disabled; Non-Zero = Enabled
FF AT TOF 0 = Disabled; Non-Zero = Enabled
HOST FORM LENGTH 0 = Disabled; Non-Zero = Enabled
I-2/5 SELECTION 1 = Trailing Spaces
2 = X2DPD
3 = Modulo 7 CD
any other value = Leading Zero
IGNORE CHAR 0-255 = the selected ignore char;
any other value = ignore mode off
IGNORE TEXT 0 = Disabled; Non-Zero = Enabled
IGP100 COMPATBL 0 = Disabled; Non-Zero = Enabled
LEFT MARGIN Horz. IGP Dots (60 dpi)
LINE FEED DEF 0 = Disabled; Non-Zero = Enabled
LPI 1-1000
OPTIMIZED RATIO 0 = Disabled; Non-Zero = Enabled
PGL NORMAL 0 = Disabled; Non-Zero = Enabled
POWER ON IGP/PGL 0 = Disabled; Non-Zero = Enabled
REPEAT FORM OPT 0 = Disabled; Non-Zero = Enabled
RESET n/a
SFCC 1-255
SKIP PREFIX 0 = Disabled; Non-Zero = Enabled
SLASH ZERO 0 = Disabled; Non-Zero = Enabled
SLEW RANGE 0 = 15; Non-Zero = 16
SO CHAR 0 = Disabled; Non-Zero = Enabled
TOP/BOTTOM MARGIN Vert. IGP Dots (72 dpi)
UPC DESCENDERS 0 = Disabled; Non-Zero = Enabled
UPPERCASE 0 = Disabled; Non-Zero = Enabled
USER-DEF RATIO 0 = Disabled; Non-Zero = Enabled

46
Corners

Comments
The IGP/PGL configuration parameters available are defined in
your User's Manual.
Any or all parameters can be used within one CONFIG
command, and they can be listed in any order. List each
parameter;value on a separate line, terminating with the END
command. Default configuration values can be reset using the
CONFIG command.
Parameters not followed by a value, and parameters followed by
any non-zero value are interpreted as “true” or “enabled” values.
For carriage return and line feed definitions, a zero value does
not change the data stream. However, for non-zero values, a
carriage return character or line feed character will be interpreted
as a carriage return plus a line feed.
Parameters not listed in this command remain unchanged. If a
parameter error is detected for parameters other than 0 or 1 (i.e.,
SFCC, Top/Bottom Margin, Left Margin), the value will default to
the current configuration from flash memory.
Example 1 The following command enables IGP/PGL Auto Wrap, disables
Auto Eject, and selects 6 lpi printing.
~CONFIG
AUTO WRAP;1
AUTO EJECT;0
LPI;6
END
Example 2 The following command resets all control panel IGP/PGL
configuration parameters back to default values.
~CONFIG
RESET
END

Corners
Purpose Defines corner sets.
Mode CREATE
Format CORNER
LT;SR;SC;ER;EC;VL;HL
STOP
CORNER The Corner command; enter CORNER. Corners
expand down and to the right from the given row
and column.
LT Defines the line thickness, measured in dots. Line
thickness is based on dot dimensions of 1/72” both
horizontally and vertically, so that line thickness is
equal in both directions. Enter a value of 1 or
greater.

47
Chapter 2 Command Codes

SR Defines the starting row of the corner. Enter a value


ranging from row 1 through one less than the length
of the form. Character row or dot row is specified
based on the Scale command (page 89), or use the
CP.DP format (page 26).
SC Defines the starting column of the corner. Enter a
value ranging from column 1 through one less than
the width of the form. Character column or dot
column is specified based on the Scale command
(page 89), or use the CP.DP format (page 26).
ER Defines the ending row of the corner. Enter a value
ranging from row 2 through the last row of the form.
The ending row must be greater than the starting
row. Character row or dot row is specified based on
the Scale command (page 89), or use the CP.DP
format (page 26).
EC Defines the ending column of the corner. Enter a
value ranging from column 2 through the last
column of the form. The ending column must be
greater than the starting column. Character column
or dot column is specified based on the Scale
command (page 89), or use the CP.DP format
(page 26).
VL Defines the length of the vertical arm (including the
line thickness) of each corner in the set. Enter a
value of 1 or greater specified in character or dot
rows based on the Scale command (page 89), or
use the CP.DP format (page 26).
HL Defines the length of the horizontal arm (including
the line thickness) of each corner in the set. Enter a
value of 1 or greater specified in character or dot
columns based on the Scale command (page 89),
or use the CP.DP format (page 26).
STOP Stop indicates the end of the CORNER command;
enter STOP, and the IGP/PGL will wait for a new
command. If not entered, the IGP/PGL will wait for
another set of Corner command parameters.
Example The following program specifies a corner set as shown in Figure
5. To illustrate positioning, the starting row and column are
indicated on the example but do not necessarily reflect actual
location on the page. (Note the position of the ending row and
ending column; they do not include the line thickness.)
CORNER
5;27;27;42;55;4;6 (Each corner in the set is 5 dot rows
STOP thick, 4 character rows high, 6 character
columns wide)

48
Create

COLUMN 27 HORIZONTAL LENGTH


6 COLUMNS

ROW 27
VERTICAL
LENGTH
4 ROWS

ROW 42

COLUMN 55

Figure 5. Corner Example

Create
Purpose Places the IGP/PGL in the Create Form mode, where forms and
form elements can be defined using the appropriate commands.
Mode NORMAL
Format (cc)CREATE; [/]formname [;FL] [;DISK]
(cc) The Special Function Control Code.
CREATE The Create Form mode command; enter CREATE.
/ The optional debug character to check the program
line by line for incorrect parameters and print
boundaries using the current page size; enter the
slash symbol (/) to debug the program. No checks
are made until the completed program is sent to the
IGP/PGL for storage (when the form is executed by
printing the file with the IGP/PGL program). Then
the form name is entered into the directory, and the
program is evaluated. If errors are detected, the
program will print, line by line (including the error on
the line where the error occurs), followed by the
error-free sections of the form. Correct all errors
and delete the slash. Refer to “Solving Program
Errors” on page 302.

49
Chapter 2 Command Codes

formname Defines the form name of the form being created.


The form name should be no more than 15
characters in length. Refer to page 25 for a list of
allowable form name characters. If a form is
created with the same name as a form already
existing in memory, the newly created form will
replace the existing form. All future reference to the
form (editing, executing, or deleting the form from
the directory) must be made using the assigned
name.
FL The optional forms length parameter to specify the
maximum length of the form. (Form length cannot
exceed the physical length of the page. Refer to
Appendix C). Specify the form length in one of
three ways:
a. Enter 0 to define a form of unspecified length.
The form will end after the longest element;
that is, the form length is automatically
controlled to contain all elements without extra
length beyond the longest element. This can
be used to eliminate wasted paper after
producing short forms.
b. Enter a value for the form length ranging from
1 through 65535 to specify the forms length in
dot rows. (12 dot rows per line = 6 lpi spacing;
9 dot rows per line = 8 lpi spacing.)
NOTE: Dot row range for setting the forms length depends on the forms
length configuration. Refer to page 70 for information on how to
configure the forms length.
When the host form length configuration option is
enabled, the form length value defined in this
command sets the physical length page size.
c. To specify the default forms length of 792 dot
rows (11 inches at 6 lpi), do not enter a value
in the form length parameter.
DISK Optional parameter to store the form in the printer’s
flash memory. Enter DISK.
Example The following command creates a form named ORDER with the
default forms length:
(cc)CREATE;ORDER

50
Delete Form

Delete Form
Purpose Deletes the form identified by the form name from the directory
and the IGP/PGL memory.
Mode NORMAL
Format (cc)DELETE FORM;formname [;DISK]
(cc) The Special Function Control Code.
DELETE FORM
The Delete Form command; enter DELETE FORM.
formname Identifies the form to be deleted. Enter the name of
the form exactly as it was created. You can delete
an entire form directory by inputting *ALL as the
form name.
DISK Optional parameter to delete the form from the
printer’s flash memory where it was originally
stored. Enter DISK.
Comments
For more information, refer to the Directory Example on page 300
and the Delete Example on page 301.
Example The following command deletes the form named “PAY#” from the
directory, IGP/PGL memory, and the printer flash memory.
~DELETE FORM;PAY#;DISK

Delete Logo
Purpose Deletes the logo identified by the logo name from the directory
and the IGP/PGL memory.
Mode NORMAL
Format (cc)DELETE LOGO;logoname [;DISK]
(cc) The Special Function Control Code.
DELETE LOGO
The Delete Form command; enter DELETE LOGO.
logoname Identifies the logo to be deleted. Enter the name of
the logo exactly as it was created. You can delete
an entire logo directory by inputting *ALL as the
logo name.
DISK Optional parameter to delete the logo from the
printer’s flash memory where it was originally
stored. Enter DISK.
Comments
Printing a form that contains a deleted logo will produce an error
message. For more information, refer to the Directory Example
on page 300 and the Delete Example on page 301.

51
Chapter 2 Command Codes

Example The following command deletes the logo named “MEMO” from
the directory, IGP/PGL memory, and the printer’s flash memory.
~DELETE LOGO;MEMO;DISK

Directory
Purpose Prints the following information: (1) all defined forms and logos,
(2) logo assignment to forms, and (3) memory usage and
availability.
Mode NORMAL
Format (cc)DIRECTORY[;DISK]
(cc) The Special Function Control Code.
DIRECTORY The Directory command; enter DIRECTORY.
DISK Optional parameter to specify the forms and logos
stored in the printer’s flash memory. Enter DISK.
Comments
As many forms and logos as printer memory allows may be
stored in IGP/PGL memory. If the memory is full, the form will not
print; available space in the memory must be at least the size of
the form being executed.
For more information, refer to the Directory Example on page
300.

Duplication, Horizontal
Purpose Defines both the number of times form elements are duplicated
horizontally and the spacing between each duplication.
Mode CREATE
Format HDUP;dup#;offset#
elements to be duplicated
HDUP;OFF
HDUP The Horizontal Duplication command; enter HDUP.
dup# Specifies the duplication number, which is the
number of times the entered form element(s) will
repeat horizontally. Enter a value ranging from 1
through 255.
offset# Specifies the horizontal offset to establish the
horizontal spacing between each duplication of the
form element(s) specified in the body of the
command. Enter a value in terms of dot or
character columns based on the Scale command
(page 89), or use the CP.DP format (page 26). The
offset is from starting column to starting column.

52
Duplication, Horizontal

HDUP;OFF Terminates the Horizontal Duplication command;


enter HDUP;OFF. If not entered, the IGP/PGL
expects another form element to be defined for
duplication. A single HDUP command can define
different types of elements for duplication.
Example The following example is a horizontal duplication of a series of
vertical lines. To illustrate positioning, starting row and column
are indicated on the example but do not necessarily reflect actual
location on the page.
HDUP;14;4 (14 dupes with 4-character column spacing)
VERT (Command to duplicate horizontally)
1;10;59;59.6 (Note CP.DP format: 59.6)
1;10.3;58.9;59.9
1;11;58.6;60
1;11.3;58.3;60.3
1;12;58;60.6
1;12.3;58.3;60.3
1;13;58.6;60
1;13.3;58.9;59.9
STOP (Stops the command to duplicate element)
HDUP;OFF (Terminates the horizontal duplication)

COLUMN 10
COLUMN 11
COLUMN 12
COLUMN 13
ROW 58

DUPLICATING THE SET HORIZONTALLY 14 TIMES


ROW 60.6

COLUMN 13.3
COLUMN 12.3
COLUMN 11.3
COLUMN 10.3
hdup.ex

53
Chapter 2 Command Codes

Duplication, Vertical
Purpose Defines both the number of times elements are duplicated
vertically and the spacing between each duplication.
Mode CREATE
Format VDUP; dup#;offset#
elements to be duplicated
VDUP;OFF
VDUP The Vertical Duplication command; enter VDUP.
dup# Specifies the duplication number, which is the
number of times the entered form element(s) will
repeat vertically. Enter a value ranging from 1
through 255.
offset# Specifies the vertical offset to establish the vertical
spacing between each duplication of the form
element(s) specified in the body of the command.
Enter a value in terms of dot or character columns
based on the Scale command (page 89), or use the
CP.DP format (page 26). The offset is from starting
row to starting row.
VDUP;OFF Terminates the Vertical Duplication command;
enter VDUP;OFF. If not entered, the IGP/PGL
expects another form element to be defined for
duplication. A single VDUP command can define
different types of elements for duplication.
Example The following example is a vertical duplication of one horizontal
line. The line is duplicated three times. To illustrate positioning,
the starting row and column are indicated on the example but do
not necessarily reflect actual location on the page.
VDUP;3;2 (3 duplications with 2-char. row spacing)
HORZ (Command to duplicate vertically)
1;52;15;65
STOP (Stops the command to duplicate element)
VDUP;OFF (Terminates the vertical duplication)

COLUMN 15 COLUMN 65

ROW 52

ROW 54

ROW 56

54
Emulation Switching

Emulation Switching
Purpose To switch the active emulation from IGP/PGL to the emulation
selected.
Mode NORMAL
Format (cc)EMULATION; emulation
(cc) The Special Function Control Code.
EMULATION The Emulation Switch command.
emulation Specifies the emulation to activate. Currently, the
only selection is VGL (Code V). Enter VGL. If VGL
is not the selection, this command is then ignored.
Comments
This command is only processed when Code V is included in the
software package. If not, this command is ignored. The switching
of emulations causes IGP/PGL to perform a soft reset. Therefore,
front panel selections return to their saved state, and all forms
and logos resident in RAM memory are deleted.

End
Purpose Terminates the current mode of operation and must be used
before entering a new mode command (EXECUTE, LOGO,
NORMAL, or even CREATE).
Mode CREATE
Format END
Comments
After the End command is received, the IGP/PGL flushes
program errors, stores the error-free portions of the form program
just completed, and then returns to the Normal mode. If the
debug slash (/) is included in the Create command, the program
prints with any corresponding error messages.

55
Chapter 2 Command Codes

Execute Form Mode


How to Use the Execute Command
Forms are printed in the Execute Form mode. In addition to printing the form
in the Execute Form mode, variable data can also be entered onto the form
“dynamically” during the Execute Form mode. This dynamic data input during
the Execute Form mode includes page numbers, alphanumeric data fields,
and bar code data fields. Pagination, described on page 80, is performed in
the Execute Form mode. Dynamic alphanumeric and bar code data require
additional commands within the Execute Form mode.
The fastest method for repeated forms printing is to use the form feed
character. Rather than sending a series of Execute/Normal commands, which
slows the process by performing an open-print-close form sequence, the form
feed character instructs the IGP/PGL to start a new page with new EVFU,
dynamic and overlay data using the existing Execute commands for the form.
The EVFU Data-Dynamic Data-Overlay Data-Form Feed Character sequence
can be repeated indefinitely while maintaining the optimum print speed within
the original Execute command.
Remember, when a form count is not specified, a single line spacing (or a line
containing overlay data) must always separate an EXECUTE command from
a NORMAL command.

To Execute Forms Rapidly


In order to save reloading time, the IGP/PGL remembers the last form
executed. However, a form must be loaded if it was not the last form
executed, if it was used with a CREATE command since the last EXECUTE,
or if any logo has been created.
When the form to be executed is found in memory, it is loaded and execution
resumes; otherwise, the “FORM NOT FOUND” error is printed.

Print Formats in the Execute Form Mode


The Execute Form mode has two print formats. The standard execute
command format, shown on page 57, is used for executing non-incremental
data and incremental fixed data. An incremental Execute command format,
containing two additional parameters, is used for executing incremental
dynamic data and is discussed on page 63.
During the Execute Form mode, the IGP/PGL responds to regular print format
commands such as 8 lpi, and elongated characters. Some commands can be
used in other modes in addition to the Execute Form mode. For example,
Compressed Print, Expanded Print, Execute, Ignore, Select Format, and
Vertical Line Spacing, which are also Normal mode commands, can be used
in the Execute or Create Form modes. The IGP/PGL alternate character set
can also be used in the Execute Form mode.

56
Execute Form: General Format

Execute Form: General Format


Purpose Prints forms created in the CREATE mode.
Mode NORMAL
Format (cc)EXECUTE ;formname [;SAVEDYN] [;PAGE n] [;FC] [;ICNTn]
[;IRSTn]
[;DISK] [EVFU Data]
[(cc)AFn; (D)ASCII text(D)]
[(cc)BFn; (D)data(D)]
[(cc)GFn; (D)logoname(D)]
[(cc)IAFn; [idir] STEPMASK;[RPTn;] [RSTn;] (D)STARTDATA(D)]
[(cc)IBFn; [idir] STEPMASK;[RPTn;] [RSTn;] (D)STARTDATA(D)]
[Overlay Data]
[Form Feed character]
(cc)NORMAL
(cc) The Special Function Control Code.
EXECUTE The Execute Form command; enter EXECUTE.
formname Identifies a previously defined form by name. Enter
the form name exactly as used when created.
SAVEDYN The optional command to have dynamic fields
saved across forms that are separated with a form
feed character.
PAGE n The optional Pagination command; enter PAGE, a
space, and replace n with the decimal number of
the starting page in a sequence of multiple pages.
The number may be eight digits long and range
between 0 and 99999999. The next page after
99999999 is 0. Be sure to leave a blank space
between the PAGE command and the n value. The
page number will print on the form in the location
defined by the Page Number command in the
Create Form mode. If the location of the pagination
field was not specified in the Create Form mode,
the page field is printed in the upper left corner of
the form.
FC The optional form count parameter specifies the
number of copies of the form to print. Enter the
appropriate number. When the last page prints, the
IGP/PGL returns to the Normal mode automatically.
Do not use the form count parameter if dynamic
data (AFn and BFn parameters), incremental data
(ICNT or IRST parameters), overlay data, or EVFU
data are used in the Execute command.
ICNTn The optional incremental form count. Enter ICNT
and the Incremental value as described in the
Execute Incremental Dynamic Data command
described on page 63.

57
Chapter 2 Command Codes

IRSTn The optional incremental reset count parameter.


Enter IRST and the reset value as described in the
Execute Incremental Dynamic Data command
described on page 63.
DISK Optional parameter that specifies to recall the form
from the printer’s flash memory. Enter DISK.
EVFU Data Optional parameter to use the EVFU to overlay
data onto the form. (“EVFU Data” is not part of the
Execute command. It is shown in the command
sequence to indicate that actual EVFU data can be
entered following the Execute command.) Enter
EVFU data as described in Appendix D and on
page 59.
(cc)AFn;(D)ASCII text(D)
The Execute Dynamic Alphanumeric Data
command. Enter the dynamic alphanumeric data
during the Execute Form mode as described in
“Execute Form: Dynamic Alphanumeric Data” on
page 60.
(cc)BFn;(D)data(D)
The Execute Dynamic Bar Code Data command.
Enter the dynamic bar code data during the
Execute Form mode as described in “Execute
Form: Dynamic Bar Code Data” on page 61.
(cc)GFn;(D)logoname(D)
The Execute Dynamic Logo Command. Enter the
name of the logo during the Execute Form mode as
described in “Execute Form: Dynamic Logo” on
page 62.
(cc)IAFn; [idir] STEPMASK; [RPTn;] [RSTn;] (D)STARTDATA(D)
The Execute Incremental Dynamic Alphanumeric
Data command. Supply the data as described on
page 63.
(cc)IBFn; [idir] STEPMASK; [RPTn;] [RSTn;] (D)STARTDATA(D)
The Execute Incremental Dynamic Bar Code Data
command. Supply the data as described on page
63.
Overlay Data Overlay data can be entered during the Execute
Form mode. (The words “Overlay Data” are not part
of the Execute command. They are shown in the
command sequence to indicate that actual overlay
data can be entered following the Execute
command.) Refer to “Execute Form: Overlay Data”
on page 65.
Form Feed Character
Optional command instructing the IGP/PGL to start
a new page with new EVFU, dynamic, and overlay
data using the existing Execute commands for the
current form. This EVFU Data-Dynamic Data and

58
Execute Form: Electronic Vertical Format Unit

Overlay Data-Form Feed Character sequence can


be repeated indefinitely, while maintaining the
optimum print speed, within the original Execute
command.
(cc)NORMAL The Normal mode command. If the form count
parameter was not used in the Execute command,
enter the SFCC and NORMAL to return the
IGP/PGL to the Normal mode. The Normal mode
command is input following all other Execute
commands to enter variable data. (Refer to the
following sections.) Input a line terminator to leave
a blank line before entering the Normal command.

Execute Form: Electronic Vertical Format Unit


Purpose Provides an efficient method of automatically skipping to a
specified print line during repetitive printing tasks.
Mode EXECUTE
Format See Appendix D.
Comments
The Electronic Vertical Format Unit (EVFU) is used as overlay
data within the Execute Form mode. Detailed EVFU information
is provided in Appendix D.
The EVFU must be loaded while in the Execute Form mode and immediately
following the Execute command. After executing the form and returning to
Normal mode, the EVFU information is automatically deleted from printer
memory. To print the form again, re-send the EVFU command.
Several key points to operating the EVFU are listed below.
• Send EVFU commands immediately following the Execute command or
the format form feeds.
• The EVFU can be unloaded by issuing an END LOAD command only.
• The number of lines slewed is dictated by the current line spacing (lpi)
setting.
• In those circumstances where the EVFU is being used to control the
forms length only, the IGP/PGL forms length parameter can be used in
place of the EVFU.
• The maximum number of EVFU channels is 192.
• Changing the LPI unloads the EVFU.

59
Chapter 2 Command Codes

Execute Form: Dynamic Alphanumeric Data


Purpose Incorporates the dynamic alphanumeric data into a previously
identified location of a form.
Mode EXECUTE
Format (cc)AFn;(D)ASCII text(D)
(cc) The Special Function Control Code.
AFn Indicates a dynamic alphanumeric field (AF) and its
data (n). Enter AF and replace n with the number of
the data field corresponding to the number used to
identify the field when it was defined with the
Alphanumeric command in the Create Form mode.
(D) The printable character identifying the start and
finish of the alphanumeric data. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field but will
not be printed with the data.
ASCII text The group of ASCII characters (the alphanumeric
string) to print. Enter any of the standard ASCII
printable characters (except the character used as
delimiters described in the (D) parameter). The
data appears on the form at the location identified
by n.
NOTE: Commands can appear anywhere in the overlay text with IGP/PGL,
but it is recommended they are placed at the beginning.
Comments
The location for the Dynamic alphanumeric data must have been
previously identified using the AFn;L parameters of the
alphanumerics command in the Create Form mode. Inputting
individual commands enters the new data into the identified
location each time the form is printed.
You can repeat the (cc)AFn;(D)ASCII text(D) sequence to
complete as many data fields as you defined on the form in the
Create Form mode. You can also combine the Execute Dynamic
Bar Code Data command in the same Execute command
sequence. Each “page” of dynamic data (the dynamic fields,
data, and overlay data) for the form must be separated from the
next page of new dynamic data by a form feed.

60
Execute Form: Dynamic Bar Code Data

Execute Form: Dynamic Bar Code Data


Purpose Incorporates the dynamic bar code data into a previously
identified location of a form.
Mode EXECUTE
Format (cc)BFn;(D)data field(D)
(cc) The Special Function Control Code.
BFn Indicates a dynamic bar code field (BF) and its data
(n). Enter BF and replace n with the number of the
data field corresponding to the number used to
identify the field when it was defined with the bar
code command during the Create Form mode.
(D) The printable character (quotation marks for
example) identifying the start and finish of the bar
code data. Enter any printable character other than
a slash (/), the SFCC, or a character used within
the data. The same character must be used at both
ends of the data field but will not be printed with the
data.
data field Enter the characters for the bar code data. The
type of characters allowed in the data varies with
the type of bar code. Refer to the data field
descriptions for the selected bar code types. The
data appears on the form at the location identified
by n.
NOTE: Commands can appear anywhere in the overlay text with IGP/PGL,
but it is recommended they are placed at the beginning.
Comments
The bar code location must have been previously identified using
the BFn;L parameters of a bar code command in the Create Form
mode. Then use the appropriate bar code command to enter the
bar code data in that location. Inputting individual commands
enters new bar code data into the identified location each time
the form is printed.
You can repeat the (cc)BFn;(D)data field(D) sequence to
complete as many bar code data fields as were defined on the
form in the Create Form mode. You can also combine the
Execute Dynamic Alphanumeric Data command in the same
Execute command sequence. Each “page” of dynamic data (the
dynamic fields, data, and overlay data) for the form must be
separated from the next page of new dynamic data by a form
feed.

61
Chapter 2 Command Codes

Execute Form: Dynamic Logo


Purpose Incorporates the dynamic graphic logo into a previously identified
location of a form.
Mode EXECUTE
Format (cc)GFn;(D)logoname(D)
(cc) The Special Function Control Code.
GFn Indicates the dynamic logo field. Enter GF and
replace n with the number of the field
corresponding to when it was defined with the Logo
Call command during the CREATE form mode.
(D) The printable character identifying the start and
finish of the alphanumeric data. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field but will
not be included in the logo name.
logoname Enter the logo name. If the logo is not found in
DRAM, the flash memory is searched.
Comments
The logo location must have been previously identified using the
GFn parameters of a logo command in the Create Form mode.
Then use the appropriate logo command to enter the logo data in
that location. Inputting individual commands enters new logo data
into the identified location each time the form is printed.
You can repeat the (cc)GFn;(D)logoname(D) sequence to
complete as many logo data fields as were defined on the form in
the Create Form mode. You can also combine the Execute
Dynamic Alphanumeric Data command in the same Execute
command sequence. Each “page” of dynamic data (the dynamic
fields, data, and overlay data) for the form must be separated
from the next page of new dynamic data by a form feed.
NOTE: There are no incremental logos.

62
Execute Form: Incremental Dynamic Data

Execute Form: Incremental Dynamic Data


Purpose Incorporates incremental/decremental capability to dynamic
alphanumeric or bar code data supplied as a part of the Execute
Form mode.
Mode NORMAL
NOTE: In the command below, incremental Execute parameters are shown
in boldface type; standard Execute command parameters are shown
in italics. The general Execute format is shown on page 57.
Format (cc)EXECUTE; formname [;PAGEn] [;FC] [;ICNTn] [;IRSTn]
ICNTn Identifies the incremental form count to specify the
number of forms to generate with the incremental
fields automatically updated. Enter ICNT and
replace n with a value ranging from 1 through
65535 to specify the number of forms.
IRSTn The optional incremental reset count parameter to
specify the number of forms to generate before
resetting all incremental fields to their starting
values. The reset count parameter is useful in
dividing the total number of forms generated into
multiple groups of identical copies. To use this
parameter, enter IRST and replace n with a value
ranging from 1 through 65535 to specify the reset
count (how many forms generated before resetting
the incremental fields). If the reset count value is
equal to or greater than the incremental count
value, the reset will never occur.
Example The following forms were generated from ICNT6, IRST2. (To
duplicate incremental fields within a form, refer to page 39.)

0 3 0 3 0 3
1 4 1 4 1 4
2 5 2 5 2 5
form1 form2 form3 form4 form5 form6 = ICNT6

Supplying Dynamic Data for Incremental Fields


Incremental dynamic data fields are created in the Create Form mode using
the incremental alphanumeric or bar code commands. The incremental
dynamic data itself is supplied during the Execute Form mode at the top of the
form prior to any overlay data. The incremental dynamic data (either
alphanumeric or bar code data) can be changed with each new batch of
forms. Incremental dynamic data fields specified in the Create Form mode will
not appear on the form if corresponding incremental dynamic data is not
supplied in the Execute Form mode.

63
Chapter 2 Command Codes

Format For incremental dynamic alphanumeric data:


(cc)IAFn; [idir] STEPMASK; [RPTn;] [RSTn;] (D)STARTDATA(D)
For incremental dynamic bar code data:
(cc)IBFn; [idir] STEPMASK; [RPTn;] [RSTn;] (D)STARTDATA(D)
(cc) The Special Function Control Code.
IAF Identifies the command as an incremental
alphanumeric dynamic data; enter IAF.
IBF Identifies the command as an incremental bar code
dynamic data; enter IBF.
n Identifies the field number of the dynamic data field
as entered in the Create Form mode. Replace n
with the number used to identify the field when it
was defined.
idir The optional increment direction parameter to
specify an increase or decrease of the data. Enter a
plus sign (+) or leave the field blank to increment
(the default). Enter a minus sign (-) to decrement.
STEPMASK Defines the increment amount (step), the number
of character positions in the data field, and provides
a mask to control the increment function on specific
parts of the data. Refer to “Incremental Bar Code
Fields” on page 259 or “Alphanumerics,
Incremental Fields” on page 34 for complete
information on STEPMASK parameter values.
RPTn The optional incremental repeat count parameter to
specify the number of times a particular field value
is repeated before it is incremented. A repeated
field value is useful when printing multiple
rows/columns of identical labels before
incrementing to the next value. To use the repeat
count parameter, enter RPT and replace n with a
numeric value ranging from 1 through 65535 to
specify the repeat count. The default repeat count
parameter is 1, which will increment the field value
each time it is printed.
RSTn The optional incremental reset count parameter to
specify the number of times an incremented field is
printed (on one or more forms) before it is reset to
the starting value. A reset count is useful when
printing a hierarchy of fields where a low-level field
generates a sequence of numbers, is reset, and the
next higher field level is incremented (such as in a
unit/box/carton application). To use the reset count
parameter, enter RST and replace n with a number
ranging from 1 through 65535 to specify the reset
count. The default reset count value is 0.

64
Execute Form: Overlay Data

STARTDATA Defines the starting value of the incrementing field.


The maximum amount of STARTDATA characters
must be equal to or less than the number of
characters in the STEPMASK field. If the number of
data characters in dynamic alphanumeric data
commands only is less than the number used in
STEPMASK, the data will print right justified with
preceding spaces. (Leading spaces are not
provided for bar code data.) For dynamic bar code
data, the type of characters allowed for
incrementing fields is based on the type of bar
code. Refer to the individual bar code descriptions
in the “Bar Codes” chapter for information on valid
type and quantity of data characters. The
STARTDATA must be enclosed within standard
printable character delimiters just as a standard
data field is enclosed within delimiters.

Execute Form: Overlay Data


Overlay data is variable alphanumeric data entered onto a predefined form.
The form is completed by positioning the data in the exact location it will
appear on the form when printed. The data is placed horizontally using tabs
and spaces, and vertically using line feeds, form feeds, and the EVFU.
For example, if the serial number field on the form begins at character row 22,
and column 14, enter 22 line feeds, space over 14 columns, and input serial
number overlay data. An entire form can be completed with a page of overlay
data in this manner. Overlay data at the end of a form is printed on a new form
until all overlay data is used. Then, to advance to the next form, use a form
feed.
The IGP/PGL Electronic Vertical Format Unit can be used to control vertical
spacing of the overlay data. In place of line feed commands input individually,
the EVFU can be programmed (during the Execute Form mode) to slew the
overlay data page to the predetermined lines with a single command.
NOTE: When using the IGP/PGL, the Dynamic Data command and Overlay
IGP/PGL commands may be issued on the same line as the overlay
text to synchronize the printer with systems that count lines (e.g.,
I.B.M.). See the IGP/PGL command standard for inline command
format on page 24.

65
Chapter 2 Command Codes

Expanded Print
Purpose Selects font sizes other than the default font.
Mode NORMAL, EXECUTE
Format (cc)EXPAND;VE;HE
(cc) The Special Function Control Code.
EXPAND The Expanded Print command; enter EXPAND.
VE Specifies the vertical expansion factor; enter a
value ranging from 0 through 139.
HE Specifies the horizontal expansion factor; enter a
value ranging from 0 through 139. Both VE and HE
parameters must be zero or non-zero. One
expansion value cannot be specified as 0 if the
other is not. A VE or HE setting of 1 expands the
appropriate plane but produces single-size
characters. A VE and HE setting of 0 produces
standard-size characters.
Comments
The Expanded Print command uses the 0.10-inch, 10 cpi Gothic
typeface as the default base value from which alphanumeric
characters are expanded. (Refer to the Font command on page
66 for more information about available typefaces and styles.)
The character height can be up to a maximum of 13.9 inches,
which means if a page is 13.9 inches high, you can print a
character that fills the entire height of the page.
After an Expanded Print command is entered, all subsequent
alphanumerics print at the specified expansion until another
Expanded Print command, a Normal mode command, or a Reset
command is entered. An Expanded Print command with VE and
HE set to 0 selects standard character printing.
Example The following command results in character printing at 25 times
its vertical and 40 times its horizontal size.
~EXPAND;25;40

Font
Purpose Selects typefaces other than the default Gothic font.
Mode NORMAL, CREATE, EXECUTE
Format (cc)FONT [;FACE #] [;BOLD #] [;BLOCK #] [;SLANT #]
[;SYMSET #] [;POINT #] [;SPACE #] [;ZERO #]
NOTE: The font is activated according to the changed options upon receipt of
the font command.
(cc) The Special Function Control Code. (If you are
using the Font command in the CREATE mode, do
not enter the SFCC.)
FONT The Font command; enter FONT.

66
Font

FACE # Identifies the specific typeface. Enter FACE, a


space, and the 5 digit typeface number
representing the selected typeface.
93952 = Courier Bold
93779 = Letter Gothic Bold
Other font numbers correspond to optional
typefaces. Refer to the font instructions for typeface
numbers.
Do not use this command to select OCR-A and
OCR-B. Instead, use either the Cn parameter in the
Alphanumerics command or use the Compressed
Print Density command.
NOTE: FACE # 1, 2 and 3 are for importing HP Soft Fonts. Please contact
your distributor for further information.
NAME # Selects a font by its file name. Enter NAME, a
space, and the file name of the font, including its
extension. The maximum length of the name is 8
characters and the maximum length of the
extension is 3 characters.
For example, “93952.sf” specifies Courier Bold
(Intellifont), and “arial.ttf” would represent Arial
(TrueType).
If this parameter is used, then the FACE parameter
should not be used.
BOLD # Selects a bold attribute. Enter BOLD, a space, and
ON or 1 to turn bold on, or OFF or 0 for no bold
attribute.
BLOCK # Is used to select block fonts. A value of zero turns
the block fonts off and uses scalable fonts (the
default). A value of 1 uses the block font set, and a
value of 2 uses the first alternate block font set
SLANT # Selects a slanting factor. (Slant is similar to italic,
but also offers a backward slant.) Enter SLANT, a
space, and RIGHT or 1 for a typical italic slant,
LEFT or -1 for a backward slant, or OFF or 0 for no
slant attribute.
SYMSET # Selects a font symbol set other than the default
ASCII symbol set. Enter SYMSET, a space, and a
value representing the symbol set.
POINT # Selects the point size for the current typeface.
Enter POINT, a space, and a point size ranging
from 4 through 999. Point sizes are available in
quarter-point increments. Horizontal pitch is
automatically adjusted based on the point size
selected.
The point parameter cannot be used when in
CREATE mode. Use the point parameter of the
ALPHA command.

67
Chapter 2 Command Codes

SPACE # Selects a spacing alignment scheme, where


applicable. Enter SPACE, a space, followed by a
value 0 through 3.
NOTE: *The standard fonts available are Letter Gothic Bold (#93779),
Courier Bold (#93952), CG Triumvirate Bold Condensed (#92250),
OCR-A (#90993), and OCR-B (#91409). All other fonts are optional
and may be purchased separately. Contact your Printronix
representative for optional font packages. For information on how to
download fonts, refer to your User's Manual.
Comments
Font parameters in Normal and Execute modes do not affect the
fonts that have already been established and saved on a form.
Font commands issued in the Create mode affect only the current
form being created and not any of the fonts on other forms or for
Execute or Normal mode text.
You can use any or all Font parameters, listed in any order, in a
single Font command. (Do not list font parameters on separate
lines.) Parameters and symbol sets not specified retain the
previously selected value. Parameters incorrectly specified retain
the previously selected value.
All Font command parameters are reset to default values upon
receiving a NORMAL, RESET, CONFIG;RESET, or new
CREATE command. Multiple font commands within a single form
will save the last font command parameters specified. Symbol
sets can also be selected using the ISET or USET commands.
(Refer to the “Multinational and International Character Sets”
chapter 5.)
To change font width and height, use the Compressed Print
(Density) or Expanded Print commands described on page 44
and page 66, respectively.
Example The following command selects the Letter Gothic font (#93779)
with a right slant. This font will continue to print until another Font
command, a Normal mode command, or a Reset command is
entered.
~FONT;FACE 93779;SLANT RIGHT

68
Font Load

Font Load
Purpose Load binary TrueType Font (.ttf) or Intellifont (.sf) into RAM or
Flash memory.
Mode NORMAL
NOTE: All Font Load data except RESET must be followed by a semicolon
(;). Any Font Load data not entered in UPPERCASE and exactly as
listed in Table 6 will result in an Error 156. (Refer to the “Error Codes”
chapter.)
Format (cc)FONTLOAD; name; size [;DISK] T data
END
(cc) The Special Function Control Code.
FONTLOAD The Font Load command; enter FONTLOAD.
name Specify associated binary TrueType font or
Intellifont data by name. Enter the name of the font,
including its extension. The maximum length of the
name is 8 characters and the maximum length of
the extension is 3 characters. For example,
93952.sf specifies Courier Bold (Intellifont) and
arial.ttf would represent Arial (TrueType).
size Enter the size, in bytes, of the binary TrueType font
or Intellifont data.
DISK Optional parameter to store the binary data in flash
memory. Enter DISK. By default, the binary data is
stored in RAM when the DISK parameter is not
specified.
data The binary TrueType font or Intellifont data to be
stored in memory.
END Ends the FONTLOAD command. Enter END.
Example The following command loads the Arial TrueType font (arial.ttf)
into RAM or Flash memory with 10489 bytes of binary data.
~FONTLOAD;arial.ttf;10489
<font data=10489 bytes>END

69
Chapter 2 Command Codes

Form Length
Purpose Sets the length of the form to a specific number of lines at 6 or 8
lpi.
Mode CREATE
Format LFORM6;n or
LFORM8;n
LFORM6 The Form Length command for 6 lpi forms; enter
LFORM6.
LFORM8 The Form Length command for 8 lpi forms; enter
LFORM8.
n Specifies the forms length in total number of lines
allowed per form. The range depends on the paper
size used and the top/bottom margin setting. Table
7 shows the appropriate form lengths for the paper
size used when the top and bottom page margin
settings are zero. An error message will result if the
maximum line values are exceeded.

Table 7. Paper Sizes and Maximum Page Length

Maximum Lines Per Page


Dimensions (when top/bottom margins = 0)
Paper Size
(inches)
6 lpi 8 lpi

Letter 8.5 x 11 66 88

Legal 8.5 x 14 84 112

A4 8.268 x 11.693 70 93
B5 6.929 x 9.842 59 78

AIAG Label 4x6 36 48

AIAG Label 6x5 30 40

Odette Label 8x5 30 40

NOTE: This command affects only printed text inside of IGP/PGL forms, not
the printer lpi. The LFORM8 command considers a line as 9 dot rows;
the LFORM6 command considers a line as 12 dot rows. The 9 and 12
dot rows per line matches the dot rows of the printer in the DP mode if
set to 8 or 6 lpi, respectively.
Example The following example establishes a forms length of 8 inches (48
lines at 6 lpi):
LFORM6;48
NOTE: Additional information about page boundaries can be found in
Appendix C.

70
Hex Character Encoding

Hex Character Encoding


Purpose Enables the IGP to process the data in the hex character format,
which only accepts characters 0-9 and A-F. This format is useful
when the user needs to send down binary data in an ASCII
format and does not want control codes such as line feed or
carriage return to be part of the binary data. The command
HEXOFF will disable this feature and return the IGP to normal
data processing.
Mode NORMAL, CREATE, and EXECUTE
Format (cc)HEXON or (cc)HEXOFF
NOTE: A line terminator is not required in the Hex Character Encoding
Sequence.
(cc) The Special Function Control Code.
HEXON Hex character encoding enabled; enter HEXON.
HEXOFF Hex character encoding disabled; enter HEXOFF.
Comments HEXON and HEXOFF can be used anywhere in the data stream.

Ignore Sequence
Purpose Enables the IGP/PGL to ignore all characters after the Ignore
Sequence On (IGON) command is entered. All characters are
ignored until the Ignore Sequence Off (IGOFF) command is
entered.
Mode NORMAL, CREATE, or EXECUTE
Format (cc)IGON or (cc)IGOFF
NOTE: A line terminator is not required in the Ignore Sequence.
(cc) The Special Function Control Code.
IGON Ignore Sequence On command. Enter IGON.
IGOFF Exits Ignore Sequence. Enter IGOFF.
Comments
IGON and IGOFF can also be used anywhere in the data stream.
NOTE: Commands in PTX_SETUP are not ignored.

Line Spacing
Purpose Defines the lines per inch (lpi) printing format.
Mode NORMAL, EXECUTE
Format (cc)LPI;n
(cc) The Special Function Control Code.
LPI The Vertical Line Spacing command; enter LPI.

71
Chapter 2 Command Codes

n Selects the line spacing in lpi; enter a value from 1


through 1000. The accuracy of the line spacing is
limited to the resolution of the target printer.
Comments
Standard line spacing is 6 lpi. After a Vertical Line Spacing
command is entered, all subsequent alphanumerics print at the
specified lpi until another Vertical Line Spacing command, a
Normal mode command, or a Reset command is entered.
Example The following command selects 9 lpi printing format until another
Line Spacing command, a Normal mode command, or a Reset
command is entered.
~LPI;9

Lines, Horizontal
Purpose Defines horizontal lines.
Mode CREATE
Format HORZ
LT;R;SC;EC
STOP
HORZ The Horizontal Line command; enter HORZ.
LT Defines the line thickness, measured in 1/72-inch
dots. Enter a value of 1 or greater. Horizontal line
thickness expands downward from the given row.
R Defines the row to draw the horizontal line. Enter a
value ranging from row 1 through one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the horizontal line.
Enter a value ranging from column 1 through one
less than the width of the form. Character column
or dot column is specified based on the Scale
command (page 89), or use the CP.DP format
(page 26).
EC Defines the ending column of the horizontal line.
Enter a value ranging from column 2 through the
last column of the form. The ending column must
be greater than the starting column. Character
column or dot column is specified based on the
Scale command (page 89), or use the CP.DP
format (page 26).
STOP Stop indicates the end of the HORZ command;
enter STOP. If not entered, the IGP/PGL will expect
another set of Horizontal Line command
parameters.
Example The following example specifies 2 horizontal lines. The first line
uses the character row in the R parameter, and the second line

72
Lines, Vertical

uses CP.DP format. To illustrate positioning, the starting row and


column are indicated on the example but do not necessarily
reflect actual location on the page.
HORZ
1;60;15;65
1;60.5;15;65
STOP

COLUMN 15 COLUMN 65

ROW 60

ROW 60.5

Lines, Vertical
Purpose Defines vertical lines.
Mode CREATE
Format VERT
LT;C;SR;ER
STOP
VERT The Vertical Line command; enter VERT.
LT Defines the line thickness, measured in 1/60-inch
dots. Enter a value of 1 or greater. Vertical line
thickness expands to the right from the starting
column.
C Defines the column where the vertical line begins.
Enter a value ranging from column 1 through one
less than the width of the form. Character column
or dot column is specified based on the Scale
command (page 89), or use the CP.DP format
(page 26).
SR Defines the starting row of the vertical line. Enter a
value ranging from row 1 through one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
ER Defines the ending row of the vertical line. Enter a
value ranging from row 2 through the last column of
the form. The ending row must be greater than the
starting row. Character row or dot row is specified
based on the Scale command (page 89), or use the
CP.DP format (page 26).
STOP Stop indicates the end of the VERT command;
enter STOP. If not entered, the IGP/PGL expects
another set of Vertical Line command parameters.
Example The following program specifies 4 vertical lines. To illustrate
positioning, the starting row and column are indicated on the

73
Chapter 2 Command Codes

example but do not necessarily reflect actual location on the


page.
VERT
2;36;53;61
2;50;53;61
2;60;53;61
2;70;53;61
STOP

COLUMN 36 COLUMN 50

ROW 53

ROW 61

Listen
Purpose Disables the IGP/PGL from the “quiet” state and enables the
IGP/PGL for standard operation. (The Quiet command is
explained on page 86.)
Mode NORMAL
Format (cc)LISTEN
(cc) The Special Function Control Code.
LISTEN The Listen command; enter LISTEN.
NOTE: When the IGP/PGL is in the quiet state, the currently selected line
printer emulation commands are active. Refer to your printer's
LinePrinter Plus Emulation Programmer's Reference Manual for a
description of these commands.

74
Logo Call

Logo Call
Purpose Selects and positions previously defined logo(s). (The logo itself
is actually defined separately in the Create Logo mode.) The logo
may be defined using TIFF files, PCX raster data, or IGP/PGL
dots.
Mode CREATE
Format LOGO
[GFn;]SR;SC;logoname[;DISK]
STOP
LOGO The Logo Call command; enter LOGO.
GFn The optional dynamic field for identifying the logo
location on the form. If this parameter is used, the
actual logo name cannot be entered here; it must
be entered dynamically in Execute Form mode (see
page 62). Dynamically entering the logo name
permits changes to the graphics without redefining
the form. To use this field, perform the following
steps:
a. Enter GF.
b. Replace n with a number from 0 through 512
to identify the logo location on the form. The
SR and SC parameters are used to specify the
exact location of the logo identified by n.
SR Defines the starting row of the logo. The SR (and
SC) parameter specifies the location for the logo
based on the upper left corner of the grid in which
the logo was defined. Enter a value ranging from
row 1 through one less than the length of the form.
Character row or dot row is specified based on the
Scale command (page 89), or use the CP.DP
format (page 26).
SC Defines the starting column of the logo. The SC
(and SR) parameter specifies the location for the
logo based on the upper left corner of the grid in
which the logo was defined. Enter a value ranging
from column 1 through one less than the width of
the form. Character column or dot column is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
logoname Identifies a previously defined logo by name for use
on the form. Enter the logo name exactly as used to
define and store the logo. This logo name is not
entered when the GFn parameter is used.
DISK Optional parameter to retrieve logo from the
printer’s flash memory. Enter DISK. The DISK
parameter is not needed for dynamic logos (GFn).

75
Chapter 2 Command Codes

The flash memory is automatically searched when


the logo name is specified in Execute Form mode.
STOP Stop indicates the end of the LOGO command;
enter STOP, and the IGP/PGL will wait for a new
command. If not entered, the IGP/PGL will expect
another set of Logo Call command parameters.
Example The following sample program specifies three logo calls placing
the same logo at three different locations. (The logo was
previously defined and stored.) The starting row and column
specify the upper left corner of the grid in which the logo was
defined. To illustrate positioning, the starting row and column are
indicated on the example but do not necessarily reflect actual
location on the page.
LOGO
56;35;HAND
56;50;HAND
56;65;HAND
STOP

SR 56

SC 35 SC 50 SC 65
logocal

NOTE: When the logo to be executed is not found in memory, the “LOGO
NOT FOUND” error is printed.

76
Logo Mode, Create

Logo Mode, Create


Purpose Places the IGP/PGL in the Create Logo mode, where logos can
be defined using the appropriate dot placements. (See TIFF
Logo, page 92, and PCX Logo, page 84, commands to define
logos using TIFF or PCX data.)
Mode NORMAL, CREATE
Format (NORMAL)
(cc)LOGO; logoname; VL; HL [;DOT] [;DISK]
row#;dot;dot1-dot2;dot
END
Format (CREATE)
LOGODEF;logoname;VL;HL(T)]
row#;dot;dot1-dot2;dot
END
(cc) The Special Function Control Code.
LOGO The Logo command; enter LOGO.
LOGODEF The CREATE mode Logo command; enter
LOGODEF.
logoname Enter a maximum of 15 alphanumeric characters
for the name of the logo. (Refer to page 25 for a list
of allowable Logo Name characters.) All future
references to this logo (Delete Logo or Logo Call
commands) must use this name. If a logo is defined
with the same name as a logo already existing in
memory, the newly defined logo will replace the
existing logo.
VL Defines the vertical length of the logo grid in dot
rows; enter a value sufficient for the vertical size of
the logo, not exceeding 252. The dot rows are
vertically spaced 1/72-inch apart.
HL Defines the horizontal length of the logo grid in dot
columns; enter a value sufficient for the horizontal
size of the logo, not exceeding 240. On each row,
the dots are horizontally spaced 1/60-inch apart.
DOT Optional parameter. If used, the logo description
and dimensions VL;HL are given in printer dots,
which are based on the printer DPI. Otherwise, the
DOT default is 60x72. Also, when the DOT
parameter is used, there is no limit on the size of
the logo as there is when using IGP dots.
(T) A line terminator (i.e., LF, FF) must separate the
LOGO line from the beginning of the TIFF raster
data.
DISK In NORMAL mode use this parameter to store the
logo in the printer’s flash memory. Enter DISK. Do
not use this parameter in CREATE mode.

77
Chapter 2 Command Codes

row# Identifies the row number for each row of dots in


the logo. Enter each row number on a separate
command line. Rows are numbered sequentially
from top to bottom.
dot Identifies a single dot position in the row. Enter
each dot number used. Dots are numbered
sequentially from left to right.
dot1-dot2 Identifies a series of dot positions within the row,
including dot1 on the left end and dot2 on the right
end. Enter the series of dot rows. Series of dot rows
can be combined with single dot positions in the
same command line.
END Terminates the Create Logo mode; enter END.
STOP Ends the Create Logo command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.
Comments
The logo is defined by specifying the overall size and the rows of
data used. The actual number of logos you can create and store
depends on the memory required for each logo.
The maximum logo size allowed is 252 rows high (3.5 inches)
and 240 columns wide (4 inches). Values exceeding either of
these dimensions will produce an error. To maximize memory
space, do not define the vertical and horizontal length of the logo
grid larger than is required to capture the design.
The printer produces a grid with 72 dots per inch vertically and 60
dots per inch horizontally. Consequently, a logo must be
designed using this scale.
The Logo Call command (page 75) in the Create Form mode
brings the predefined logo into a form. The starting row and
column parameters refer to the upper left corner of the logo grid.
Once created, the logo is ready to be used in any form and will
print at the size shown.

78
Logo Mode, Create

Example The following program produced the tape holder logo.


~LOGO;TAPEHOLD;36;40
1;12-18
2;10-20
3;9-22
4;8-24
5;7-25
6;6-26
7;5-26
8;4-25
9;4-25
10;3-24
11;3-24 VL 36
12;2-23
13;2-23
14;2-14;17-23 O.EX HL 40
15;1-12;19-22;38-39
16;1-12;20-23;37-40
17;1-11;20-23;37-40
18;1-11;20-23;36-40
19;1-11;20-23;36-40
20;1-11;20-23;35-40
21;1-12;20-24;35-40
22;1-12;19-24;34-39
23;1-14;17-25;33-39
24;1-28;31-39
25;1-39
26;2-38
27;2-38
28;2-37
29;3-37
30;3-36
31;3-36
32;4-35
33;5-34
34;6-33
35;7-32
36;9-30
END

79
Chapter 2 Command Codes

Normal Mode
Purpose Places the IGP/PGL in the Normal mode of operation, where the
data stream is not changed but monitored for a Special Function
Control Code followed by an IGP/PGL command.
Mode NORMAL, EXECUTE
Format (cc)NORMAL
(cc) The Special Function Control Code.
NORMAL The Normal mode command; enter NORMAL.
Comments
Normal mode is entered automatically when the printer is
powered on with IGP/PGL. In Normal mode, the IGP/PGL uses
the default font and line spacing values, unless otherwise
configured with explicit commands.
A blank line or overlay data must always separate an EXECUTE
command from a NORMAL command, unless a form count is
given for the EXECUTE.

Page Number
Purpose Defines where a page number is placed on a form and
automatically increases the page number on each page.
Mode CREATE
Format PAGE;SR;SC
PAGE The Page Number command; enter PAGE.
SR Defines the starting row of the page number. Enter
a value ranging from row 1 through one less than
the length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the page number.
Enter a value ranging from column 1 through one
less than the width of the form. Character column
or dot column is specified based on the Scale
command (page 89), or use the CP.DP format
(page 26).
If the SR or SC extends beyond the page
boundaries, an Error 76 will occur in the Execute
Form mode, and default page number SR SC
values (row 1, column 1) are used.
Comments
To begin automatically incrementing the page numbers, the
starting page number must be specified during the Execute
command.

80
Paper

Example The following command places the page numbers at row 60


column 70 on the form.
PAGE;60;70

Paper
NOTE: The PAPER command was the CASSETTE command in previous
versions.
Purpose Controls printer paper options, such as page orientation, intensity
and ribbon use.
Mode NORMAL, EXECUTE, CREATE
NOTE: More than one option may follow the paper command.
Format (cc)PAPER[;option[ #]]
NOTE: Not all options may be available with your printer. Consult your User's
Manual to determine which options are available. If an option is not
available, the emulation will ignore the corresponding command.
(cc) The Special Function Control Code.
NOTE: SFCC should not be used in the CREATE mode.
PAPER The PAPER command; enter PAPER.
CALIBRATE Calibrates the paper, allowing the printer to detect
the notch, gap, or black stripe, depending on the
paper type being used. You should run this option
every time there is a change in paper type. Consult
your User’s Manual for more information on paper
types. Enter CALIBRATE.
CUT # Sets the printer to cut a page after a specified
number of pages. Enter CUT, a space, and a
number from 0 through 256 (0 = no cutting).
EJECT Prints all pages that are in the buffer. Enter EJECT.
FEED # Feeds the media in tenths of an inch. Enter FEED,
a space, and a number in the range of -100 through
100. A positive value will move the media forward,
a negative value will retract the media.
FEED SHIFT #
Adjusts the Tear-off position in hundredths of an
inch. Enter FEED SHIFT, a space, and a number
from -25 through 200.
INTENSITY # Specifies the darkness of the dots. Enter
INTENSITY, a space, and a number in the range of
-15 through 15. This parameter varies the amount
of energy sent to the print head. Actual darkness is
determined by a combination of print media type,
ribbon type and platen pressure.
LABELS # Specifies the label sensor. Enter LABELS, a
space, and 0 for no sensor, 1 for mark, 2 for gap,
3 for advanced gap, or 4 for advanced notch.

81
Chapter 2 Command Codes

LANDSCAPE Prints in landscape mode. Enter LANDSCAPE.


LENGTH # Specifies the length of the form in tenths of an inch.
Enter LENGTH, a space, and number from 1
through 9999.
MEDIA # Specifies the type of media handling. Enter MEDIA,
a space, and either 0 for continuous mode, 1 for
tear-off strip, 2 for tear-off mode, 3 for peel-off
mode, 4 for cut mode (paper is cut after printing
each page).
PAUSE # Sets the printer to pause (offline) after a specified
number of physical pages printed. Enter PAUSE, a
space, and a number from 0 through 9999. (0 = no
pause)
PORTRAIT Prints in portrait mode. Enter PORTRAIT.
ROTATE # Specifies the page rotation. Enter ROTATE, a
space, and either 0 (default) for portrait, 180 for
inverted portrait, 90 or 270 for landscape.
SLEW IPS # Specifies the slew speed in inches per second.
Enter SLEW IPS, a space, and number from 2
through 10.
SPEED IPS # Specifies the print speed in inches per second.
Enter SPEED IPS, a space, and a number in the
range of 2 through 10.
NOTE: The range for the SLEW IPS and SPEED IPS options depend on the
thermal printer being used. If the value specified is less than the
minimum or greater than the maximum allowed by your printer, the
command is ignored.
TEAR # Sets the printer to tear-off media handling and
forces the printer to pause after a specified number
of pages. The paper must be completely torn
before the printer can resume normal operation.
Enter TEAR, a space, and a number from 0
through 256 (0 = no tear).
TYPE # Specifies the type of paper being used. Enter
TYPE, a space, and 0 for thermal transfer paper or
1 for direct thermal paper.
WIDTH # Specifies the width of the form in tenths of an inch.
Enter WIDTH, a space, and number from 1 to 9999.
Comments
You can use any or all Paper parameters, listed in any order, in a
single Paper command. (Do not list any parameters on separate
lines.) Parameters not specified or specified incorrectly retain the
previously selected value. All Paper command parameters are
reset to default values upon receiving a RESET command.
Multiple paper commands within a single form will save the last
paper command parameters specified.

82
Paper Instruction - Data Bit 8

Changing orientation between Portrait and Landscape may


cause previously defined forms to produce boundary error
messages when the form is executed because width and height
values are switched.
Example Based on power-up printer defaults, the following command
selects the inverted portrait orientation.
~PAPER;ROTATE 180

Paper Instruction - Data Bit 8


Purpose Enables or disables data bit 8 as the paper instruction signal
when the IGP/PGL is configured for a serial interface. (This
command has no effect on a parallel interface.)
Mode NORMAL
Format (cc)PION or (cc)PIOFF
(cc) The Special Function Control Code.
PION The Data Bit 8 Paper Instruction On command;
enter PION. When this command is sent, 7 data
bits are allowed; data bit 8 is enabled as the paper
instruction.
When data bit 8 is set high, the PION command
skips to a specified print line. When data bit 8 is set
low, the PION command prints data characters.
PIOFF The Data Bit 8 Paper Instruction Off command;
enter PIOFF. When this command is sent, 8 data
bits are allowed for character data because data bit
8 is disabled as the paper instruction. Subsequent
occurrences of data bit 8 in the data stream cause
printing from the extended character set.

Paper Instruction (PI) Enable/Disable


Purpose Enables or disables use of the PI line using a parallel I/O device.
(This command does not enable/disable PI line sensing; it
enables or disables use of the “sensed” PI line.)
Mode NORMAL
Format (cc)EN-PI or (cc)DIS-PI
(cc) The Special Function Control Code.
EN-PI The Enable PI command; enter EN-PI. When this
command is enabled, the IGP/PGL senses PI line,
the 8 bits of data are interpreted as a paper
instruction command, and the PI line itself is
ignored.
DIS-PI The Disable PI command; enter DIS-PI. When the
Disable PI command is sent, the 8 bits of data are
interpreted as printable characters, and not as a
paper instruction command.

83
Chapter 2 Command Codes

PCX Logo
Purpose Places the IGP/PGL in the Create Logo mode, where logos can
be defined using the PCX file format.
Mode NORMAL, CREATE
Format (NORMAL)
(cc)LOGO;logoname;PCX[;TRIM][;ROT][;DISK]
PCX raster data (cc)RASTEREND
Format (CREATE)
LOGODEF;logoname;PCX[;TRIM][;ROT] (T)
PCX raster data (cc)RASTEREND
STOP
NOTE: The logos defined in CREATE mode are independent of the forms
being defined at the same time. The logo can be used by other forms,
and must be deleted by using the ~RESET or ~DELETE LOGO
command.
(cc) The Special Function Control Code.
LOGO The Logo command; enter LOGO.
LOGODEF The CREATE mode LOGODEF command; enter
LOGODEF.
logoname Enter a maximum of 15 alphanumeric characters
for the name of the logo. (Refer to page 25 for a list
of allowable Logo Name characters.) All future
references to this logo (Delete Logo or Logo Call
commands) must use this name. If a logo is defined
with the same name as a logo already existing in
memory, the newly defined logo will replace the
existing logo.
PCX The command denoting raster data in PCX format;
enter PCX.
TRIM Optional parameter that removes extra white space
bounding the image, which saves memory inside
the printer. Also helps position the image in an
IGP/PGL form. Enter TRIM.
ROT Optional parameter for images scanned in
orientations other than upright. Enter either CW (for
90 degrees clockwise rotation), CCW (for 90
degree counterclockwise rotation), or INV (for
inverted characters; 180 degrees rotations.) (This
parameter is not for printing rotated logos but rather
for handling scanned rotated images. Logos are
rotated automatically to match the current page
orientation when they are called from an IGP/PGL
form being executed.)
DISK Optional parameter to store the logo in the printer’s
flash memory. Enter DISK. Do not use this
parameter in CREATE mode.

84
PCX Logo

(T) A line terminator (i.e., LF, FF) must separate the


LOGO line from the beginning of the TIFF raster
data.
PCX raster data
Scanned data in PCX format; data must be black
and white. Grey scales or color PCX files are
currently not supported. Both uncompressed and
compressed formats are supported.
(cc) The Special Function Control Code.
RASTEREND Denotes the end of the PCX raster data. Enter
RASTEREND.
END Terminates the PCX logo; enter END.
STOP Ends the Create Logo command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.
Comments
The size and number of raster image logos are bounded by
printer memory. Also note that each rotation used requires a copy
of the image; therefore, the number of rotations used affects the
printer memory available.
The logo call command in the Create Form mode brings the
predefined logo into a form. The starting row and column
parameters refer to the upper left corner of the logo grid. Once
created, the logo is ready to be used in any form.
Raster images may contain data that is interpreted by your host
as control codes. This may affect the way the host sends data to
the printer. Consult your host's User's Manual for sending binary
data.
Be careful when editing PCX output files because most TEXT
editors insert carriage returns and line feeds. If a PCX file must
be edited, use a binary or hex editor.
NOTE: The LOGO line must be terminated with an LF (hex 0A) or FF (hex
0C), and then immediately followed by the PCX raster data. The
IGON and IGOFF commands can be used with the PCX raster data
to ignore extraneous control or ASCII characters.

85
Chapter 2 Command Codes

Print File
Purpose Prints files from the printer’s flash memory. Print File can be used
to show the SETUP functions that exist.
Mode NORMAL
Format (cc)PRINT;filename
(cc) The Special Function Control Code.
PRINT The Print File command; enter PRINT.
filename The filename to be printed.
Comments
Do not use wildcard characters because the Print File command
will attempt to print any file in the printer’s flash memory.
Example Example of how to print SETUP.PTR:
~PRINT;SETUP.PTR

Quiet
Purpose Places the IGP/PGL in the Quiet mode, where all data passed to
the LP+ emulation is unaffected by IGP/PGL commands except
for the LISTEN, SFON/SFOFF, IGON/IGOFF and PTX_SETUP
commands, or another QUIET command.
Mode NORMAL
Format (cc)QUIET
(cc) The Special Function Control Code.
QUIET The Quiet command; enter QUIET. The IGP/PGL
remains in the quiet state until the Listen command
is received.
Comments
In the Quiet mode IGP/PGL ignores all commands except
LISTEN, SFON/SFOFF, IGON/IGOFF, PTX_SETUP or another
QUIET command. All commands for the currently selected
protocol in the LinePrinter+ will be interpreted. See the
LinePrinter Plus Programmer's Reference Manual for details.
The IGP/PGL remains quiet until the LISTEN command (page
74) enables standard IGP/PGL operation. The Quiet command is
ignored if the IGP/PGL is in the Execute Form mode.

86
Recall

Recall
Purpose Loads the user pre-stored program setup file, SETUP.PTR, from
the printer’s flash memory into the printer. This is done without
sending a system reset.
Mode NORMAL
Format (cc)RECALL[;filename]
(cc) The Special Function Control Code.
RECALL The Recall command; enter RECALL.
filename The name of the file to recall. This parameter is
optional. If not present, the default file SETUP.PTR
is loaded.
Comments
The file SETUP.PTR is also automatically recalled into the printer
upon a RESET command.

Repeat
Purpose Used during EXECUTE mode to repeat a form a given number of
times including all the dynamic data. This command is ignored if
the Form Count or incremental parameter is used in the
EXECUTE command.
Mode EXECUTE
Syntax (cc)REPEAT;n
REPEAT The REPEAT command. Enter REPEAT.
n The number of times to repeat the form with the same dynamic
data.

Reset
Purpose Deletes all forms and logos from IGP/PGL memory. The Reset
performs the following tasks:
• Prints any objects in the current page
• Selects the portrait orientation
• Deletes all forms and logos resident in memory
• Sets the font to the default Gothic 12 point/10CPI
• Releases all user-defined character mappings
• Runs the SETUP.PTR file if present
Mode NORMAL, CREATE, or EXECUTE
Format (cc)RESET
(cc) The Special Function Control Code.
RESET The Reset command; enter RESET.

87
Chapter 2 Command Codes

Reverse Print
Purpose Defines an area of the form where form elements are reverse
printed (white on black).
Mode CREATE
Format REVERSE
[DARK;]SR;SC;ER;EC
STOP
REVERSE The Reverse Printing command; enter REVERSE.
DARK Optional parameter to select a denser black
background. Enter DARK, or D, to select the
denser background. More information about dark
printing is provided on page 29.
SR Defines the starting row of the reverse print field.
Enter a value ranging from row 1 through one less
than the length of the form. Character row or dot
row is specified based on the Scale command
(page 89), or use the CP.DP format (page 26).
SC Defines the starting column of the reverse print
field. Enter a value ranging from column 1 through
one less than the width of the form. Character
column or dot column is specified based on the
Scale command (page 89), or use the CP.DP
format (page 26).
ER Defines the ending row of the reverse print field.
Enter a value ranging from row 2 through the last
row of the form. The ending row must be greater
than the starting row. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
EC Defines the ending column of the reverse print field.
Enter a value ranging from column 2 through the
last column of the form. The ending column must
be greater than the starting column. Character
column or dot column is specified based on the
Scale command (page 89), or use the CP.DP
format (page 26).
STOP Stop indicates the end of the REVERSE command;
enter STOP, and the IGP/PGL will wait for a new
command. If not entered, the IGP/PGL will expect
another set of Reverse Print command parameters.
Comments
You can use reverse print with all form elements (alpha, lines,
boxes, etc.). The IGP/PGL can also reverse print bar codes, but
reverse printed bar codes are unreadable by bar code scanning
devices.

88
Scale

Scale
Purpose Defines the vertical line spacing and the horizontal pitch of the
form for data positioning specified by character row and column
or dot row and column.
Mode CREATE
Format SCALE;DOT[;horz;vert]
or
SCALE;CHAR[;lpi] [;cpi]
SCALE The Scale command; enter SCALE.
DOT Specifies the dot scale. Enter DOT.
horz/vert Gives resolution for the dot parameter. Default is 60
dpi (horizontal) by 72 dpi (vertical).
CHAR Specifies the character scale. Enter CHAR.
lpi The optional vertical line spacing parameter (in
lines per inch) for character scaling. Enter: any
integer value from 1 through 1000. The default is 6
lpi.
cpi The optional horizontal pitch parameter (in
characters per inch) for character scaling. Enter 10,
12, 13, 15, 17, or 20. The default is 10 cpi.
Comments
If the character scale is selected, starting row/column or ending
row/column parameters are specified by character row and
column. The lines per inch (lpi) value for a character scale form
can be set to any integer value from 1 through the target DPI.
Characters per inch (cpi) horizontally can be either 10, 12, 13, 15,
17, or 20. For example, on a printer with a maximum print width of
80 columns, an 8-1/2 x 11-inch form at the 6 lpi 10 cpi default has
66 rows and 80 columns in the character scale. (Refer to your
printer User's Manual to determine your maximum print
boundaries.)
If the dot scale is selected, the parameters are specified in dot
row and column. For example, based on a 60 dpi horizontal and
72 dpi vertical dot scale, a form of 8-1/2 x 11 inches has 792 rows
(72 dpi x 11 inches) and 510 columns (60 dpi x 8-1/2 inches), and
a form of 8 x 11 inches has 792 rows and 480 columns. Refer to
Appendix C for more information about maximum values with
other paper sizes.
The default scale factor uses character row and column (6 lpi and
10 cpi). Anytime CP.DP format (page 26) is used, the scale
assumes 6 lpi and 10 cpi and a 60 x 72 dpi format.
You can change the Scale at any time during forms creation by
using either of the Scale commands. Elements designed before
the scale change will print at the former scale, while those
elements following the scale change will print at the current scale.

89
Chapter 2 Command Codes

NOTE: Scale affects data position, not the printed data itself. For example,
alphanumeric data printed at 10 cpi will still print at 10 cpi after a
Scale change; however, where the data is placed on the page is
affected. Also, Scale affects line thickness if dot scale and
horizontal/vertical scaling are given.

Select Format
Purpose Enables the IGP/PGL to ignore all host-generated paper
movement commands (hex 00-1F).
Mode NORMAL, CREATE or EXECUTE
Format (cc)SFON
or
(cc)SFOFF
NOTE: A line terminator is not required in the Select Format Sequence.
(cc) The Special Function Control Code.
SFON The Select Format On command. Enter SFON.
SFOFF Exits Select Format. Enter SFOFF.
Comments
During Select Format, you may enter the following IGP/PGL
paper movement commands. All the commands must be entered
in UPPERCASE. These commands can only be used with the
Select Format command. If used at any other time, an error
condition may result.
Command Paper Movement Function
(cc)CR Sends a carriage return (hex 0D)
(cc)LF Sends a line feed (hex 0A)
(cc)FF Sends a form feed (hex 0C)
Although the Select Format command enables the IGP/PGL to
ignore all host-generated paper movement commands, you can
input IGP/PGL paper movement commands with Select Format
on.
SFON/SFOFF cannot be used during Ignore Sequence (page
71).

90
Setup

Setup
Purpose Automatically executes and loads IGP/PGL commands such as
forms, logos, customized print environments, etc., from the
printer’s flash memory whenever printer power is applied or when
the RESET command (page 87) is sent.
Mode NORMAL
Format (cc)SETUP
HOST DATA
(cc)SETUPEND
(cc) The Special Function Control Code.
SETUP The Setup command; enter SETUP.
HOST DATA Any IGP/PGL commands, form definitions, text, etc.
to be stored and executed at power-up.
SETUPEND Finishes storing host data and returns the printer to
the NORMAL mode. Enter SETUPEND.
Comments
Because the RESET command causes the setup routine to be
executed, the RESET command can not be in the SETUP
information or else an infinite loop will occur.
If IGP/PGL commands have not been added between the SETUP
and SETUPEND commands, the SETUP.PTR file on the printer’s
flash memory is automatically deleted, and no IGP/PGL SETUP
commands are executed upon printer power-up.
NOTE: The SETUP.PTR is automatically created by the IGP/PGL when the
~SETUPEND command is received. When the SETUP.PTR file is not
in the printer’s flash memory, no extra IGP/PGL commands are
performed on power up.

Special Function Control Code Change


Purpose Changes the current Special Function Control Code (SFCC).
Mode NORMAL or EXECUTE
Format (cc)SFCC; n
or
(cc)SFCC; ‘n’
(cc) The current Special Function Control Code.
SFCC; Specifies the Special Function Control Code
change command. Enter SFCC; (the semicolon is
required.)
n Represents the ASCII numeric value for the new
SFCC. Replace n with an ASCII value from 0
through 255.

91
Chapter 2 Command Codes

‘n’ Represents the hexadecimal value for a printable


character as the new SFCC. Replace ‘n’ with a
hexadecimal value from 20 through 7F. If
representing the new SFCC in hexadecimal, it must
be enclosed in single quotes.
Comments
When the SFCC is changed using the SFCC command, the
change is effective immediately and the old SFCC is no longer
recognized.
When printer power is turned off and on, the SFCC returns to the
configuration default. The configuration default SFCC can also be
re-selected by sending the command: (cc)SFCC; ‘ ’
Example The following example, using both the ASCII and hexadecimal
values, changes the SFCC from the tilde (~) to the caret (^).
~SFCC;94 or
~SFCC;’5E’

TIFF Logo
Purpose Places the IGP/PGL in the Create Logo mode, where logos can
be defined using a Tagged Image File Format (TIFF).
Mode NORMAL, CREATE
Format (NORMAL)
(cc)LOGO;logoname;TIFF[;TRIM][;ROT][;DISK](T)
TIFF raster data (cc)RASTEREND
END
Format (CREATE)
LOGODEF;logoname;TIFF[;TRIM][;ROT] (T)
TIFF raster data (cc)RASTEREND
STOP
(cc) The Special Function Control Code.
LOGO The Logo command; enter LOGO.
logoname Enter a maximum of 15 alphanumeric characters
for the name of the logo. (Refer to page 25 for a list
of allowable Logo Name characters.) All future
references to this logo (Delete Logo or Logo Call
commands) must use this name. If a logo is defined
with the same name as a logo already existing in
memory, the newly defined logo will replace the
existing logo.
TIFF The command denoting raster data in TIFF format;
enter TIFF.
TRIM Optional parameter that removes extra white space
bounding the image, which saves memory inside
the printer. Also helps position the image in an
IGP/PGL form. Enter TRIM.

92
TIFF Logo

ROT Optional parameter for images scanned in


orientations other than upright. Enter either CW (for
90 degrees clockwise rotation), CCW (for 90
degree counterclockwise rotation), or INV (for
inverted characters; 180 degrees rotations.)
DISK Optional parameter to store the logo in the printer’s
flash memory. Enter DISK.
(T) A line terminator (i.e., LF, FF) must separate the
LOGO line from the beginning of the TIFF raster
data.
TIFF raster data
Scanned data in TIFF format; data must be black
and white. Grey scales or color TIFF files are
currently not supported. Both uncompressed and
packed-bits compression formats are supported.
(cc) The Special Function Control Code.
RASTEREND Denotes the end of the TIFF raster data. Enter
RASTEREND.
END Terminates the TIFF logo; enter END.
STOP Ends the Create Logo command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.
Comments
The size and number of raster image logos are bounded by
printer memory. Also note that each rotation used requires a copy
of the image; therefore, the number of rotations used affects the
printer memory available.
The logo call command in the Create Form mode brings the
predefined logo into a form. The starting row and column
parameters refer to the upper left corner of the logo grid. Once
created, the logo is ready to be used in any form and will print at
the size shown.
Raster images may contain data that is interpreted by your host
as control codes. This may affect the way the host sends data to
the printer. Consult your host's User's Manual for sending binary
data.
Be careful when editing TIFF output files because most TEXT
editors insert carriage returns and line feeds. If a TIFF file must
be edited, use a binary or hex editor.
NOTE: Be careful sending TIFF data. The LOGO line must be terminated
and then the TIFF data must follow immediately (with no extra
CR/LF's). Otherwise, improper operation will result.

93
Chapter 2 Command Codes

94
3 Bar Codes

Overview
A bar code is a graphic representation of alphanumeric characters. Bar codes
are produced by entering bar code data in the Create Form Mode. The IGP
bar codes are listed in Table 8, with detailed bar code information provided on
the referenced pages. All parameters must be separated by a semicolon (;)
unless noted otherwise. Throughout this chapter, actual commands required
for input are shown exactly as they must be entered, while all parameters
associated with that command are shown in italics. Optional parameters are
enclosed in brackets. Spaces are used only to visually separate the command
parameters, but do not enter these spaces in your command.
The single most important consideration when printing a bar code is to ensure
the bar code will be scanned properly. Incorporating a bar code quality
procedure in the printing process is the best way to ensure that bar codes are
being printed correctly. A properly implemented validation procedure will
increase overall bar code quality, reduce waste from misprinted bar codes,
and achieve high first-time read rates, which is an increasingly important
factor in newer, more efficient systems where manually entered data is not
acceptable as a backup function. Validation also minimizes the costs of
returned products due to poor reading or unaccountable bar codes. For more
information on bar code validation, contact your Printronix representative or
visit our web site at www.printronix.com.

95
Chapter 3 Overview

Table 8. Available Bar Codes

Page
Bar Code Mnemonic Symbol Length Code Set
No

Australian AUSTPOST Variable Alphanumeric 104


4-State
BC412 BC412 Variable Alphanumeric 110
Codabar CODABAR Variable Alphanumeric 114
Code 39 C3/9 Variable Alphanumeric 119
Code 93 CODE93 Variable Alphanumeric 126
Code 128 - C128A Variable Alphanumeric 132
A, B or C C128B
C128C
Data Matrix DATAMATRIX Variable Alphanumeric 142
EAN8 EAN8 7 digits Numeric 152
EAN13 EAN13 12 digits Numeric 157
FIM FIM n/a A, B, C or D 164
German I-2/5 I25GERMAN 11 or 13 digits Numeric 170
Interleaved 2/5 I-2/5 Variable Numeric 170
ITF-14 ITF14 13 digits Numeric 170
Matrix MATRIX Variable Numeric 176
Maxicode MAXICODE Variable Alphanumeric 181
MSI MSI 13 or 14 digits Numeric 187
PDF417 PDF417 Variable Alphanumeric 192
Planet PLANET 11 digits Numeric 197
Plessey PLESSEY Variable Alphanumeric 203
POSTNET POSTNET 5, 9, or 11 digits Numeric 208
PostBar POSTBAR Variable 0-3 214
Royal Mail ROYALBAR Variable Alphanumeric 214
Telepen TELEPEN Variable Alphanumeric 218
UCC/EAN-128 UCC-128 Variable Alphanumeric 224
UPC-A UPC-A 11 digits Numeric 236

96
User-Defined Variable Bar Code Ratios

Table 8. Available Bar Codes (continued)

Page
Bar Code Mnemonic Symbol Length Code Set
No

UPC-E and UPC-E 11 or 6 digits Numeric 242


UPC-E0 UPC-E0
UPCSHIP UPCSHIP 13 digits Numeric 250
UPS11 UPS11 10 digits Alphanumeric 255

User-Defined Variable Bar Code Ratios


The user-defined variable ratio for bar codes is an optional parameter. The
default ratios shown in Table 9 are overridden by the variable ratio feature.
Four- and eight-digit ratios can be used, depending upon the bar code
selected. Ratio data must be decimal values greater than 0. Enter R, followed
by the actual bar code ratio. A colon must separate each element of the ratio.
Like standard bar code ratios, user-defined ratios are also interpreted from left
to right, measuring the size of each bar or space, in dot width, in the following
pattern: narrow bar : narrow space : wide bar : wide space. See Table 9 for
the number of values needed. If the D parameter is specified, the ratios are
represented in printer dots instead of IGP dots (60 x 72 dpi).
User-defined ratios can be disabled from the front panel menu. See your
User’s Guide for details.
NOTE: The IGP does not verify that ratio data creates acceptable
wide/narrow element relationships for bar code readability. When
designing unique ratio data, carefully plot wide and narrow ratios to
conform to readable bar codes.

Variable Ratio Sample


~CREATE;TEST (Enters Create Form mode)
SCALE;CHAR
ALPHA (Alpha command)
2;5;1;1;1;*Std. Ratio*
STOP (Ends Alpha command)
BARCODE (Bar code command)
C3/9;X1;H7;3;5
“CODE39”
PDF;B;N (Printable data field)
STOP (Ends bar code command)
/
/
/
/
/
ALPHA (Alpha command)
2;30;1;1;*Var. Ratio*
STOP (Ends bar code command)
BARCODE (Bar code command)
C3/9;XRD2:2:5:5;H7;3;30
“CODE39”
PDF;B;N (Printable data field)
STOP (Ends bar code command)

97
Chapter 3 Overview

END (Terminates Create Form mode)


~EXECUTE;TEST;1 (Prints the form)

~NORMAL

PDF Character Sizes [PDF [;LOC] [;FONT]]


For UPC and EAN bar codes, a smaller Letter Gothic font will be substituted
for OCR-A or OCR-B when the bar code symbol is not large enough to
accommodate a 10 CPI font.
For all other bar codes, OCR-A and OCR-B will print at 10 CPI. However,
when using the Normal font, the PDF will be automatically sized to fit the
length of the bar code symbol, if necessary.

Magnification Specifications
The magnification specifications for each bar code differ whether the bar code
is printed horizontally or vertically, and whether it is printed on a 203 dpi or
300 dpi printer. Table 9 summarizes the specifications for each bar code.

98
Magnification Specifications

Table 9. IGP Bar Code Specification Summary

Avg. Narrow Element Width Barcode Character Density


Wide:Narrow (ratio)
Magnification (in 0.0001 inches) (cpi)
Parameter
203 dpi 203 dpi 300 dpi 300 dpi 203 dpi 203 dpi 300 dpi 300 dpi 203 dpi 203 dpi 300 dpi 300 dpi
horiz. vert. horiz. vert. horiz. vert. horiz. vert. horiz. vert. horiz. vert.

Code 39 and Telepen


X1 196 199 183 200 2.1:1 2.8:1 2.6:1 2.5:1 3.9 3.3 3.7 3.5
X2 344 350 367 283 2.7:1 1.9:1 2.5:1 2.8:1 1.9 2.3 1.9 2.3
X3 492 501 550 416 3:1 2:1 2.5:1 2.7:1 1.3 1.6 1.3 1.6
X4 738 600 667 550 2.2:1 2.4:1 2.7:1 2.9:1 1 1.2 1 1.2

X1A 320 149 150 151 1.9:1 2.7:1 2.6:1 2.5:1 4.7 4.5 4.6 4.6
X1B 172 199 183 182 2.3:1 3.3:1 2.1:1 3.8:1 4.2 3 4.1 3
X1C 98 98 133 133 2.5:1 2.6:1 2.8:1 2.8:1 7.1 7 5 5
X1D 98 100 133 133 2:1 2:1 2.3:1 2.2:1 7.9 7.8 5.5 5.5
X1E 98 99 99 100 2.5:1 2.5:1 2.7:1 2.7:1 7.1 7 6.7 6.8
X1F 98 100 99 100 2.5:1 2:1 2.4:1 2.3:1 7.1 7.8 7.2 7.2
X1G 48 77 66 95 3.1:1 2.5:1 2.6:1 2.2:1 12.8 8.8 10.4 7.8
X1H 99 98 98 96 3.1:1 3.1:1 3.1:1 3.2:1 6.3 6.3 6.3 6.3

X2A 344 299 367 299 1.9:1 2.7:1 2.5:1 2.6:1 2.3 2.2 1.9 2.3
X2B 344 399 366 365 2.3:1 3.3:1 2.1:1 3.8:1 2.1 1.5 2.1 1.5
X2C 196 198 267 266 2.5:1 2.6:1 2.8:1 2.8:1 3.5 3.5 2.5 2.5
X2D 196 200 267 266 2:1 2:1 2.3:1 2.3:1 3.9 3.9 2.8 2.8
X2E 196 199 200 534 2.5:1 2.5:1 2.7:1 2.7:1 3.5 3.5 3.4 3.4
X2F 197 200 200 467 2.5:1 2:1 2.3:1 2.3:1 3.5 3.9 3.6 3.6

X3A 517 449 450 451 1.9:1 2.7:1 2.6:1 2.6:1 1.6 1.5 1.5 1.5
X3B 516 598 550 549 2.3:1 3.3:1 2.1:1 3.7:1 1.4 1 1.4 1
X3C 295 299 400 400 2.5:1 2.5:1 2.7:1 2.8:1 2.4 2.3 1.7 1.7
X3D 295 301 400 401 2:1 2:1 2.3:1 2.3:1 2.6 2.6 1.8 1.8
X3E 295 300 300 300 2.5:1 2.5:1 2.7:1 2.7:1 2.4 2.3 2.3 2.2
X3F 295 300 300 301 2.5:1 2:1 2.3:1 2.3:1 2.4 2.6 2.4 2.4

X4A 689 599 600 598 1.9:1 2.7:1 2.6:1 2.6:1 1.2 1.1 1.2 1.2
X4B 689 801 716 732 2.3:1 3.3:1 2.1:1 3.7:1 1.1 0.8 1.1 0.8
X4C 393 399 534 533 2.5:1 2.5:1 2.7:1 2.8:1 1.8 1.7 1.3 1.2
X4D 394 400 533 533 2:1 2:1 2.3:1 2.3:1 2 1.9 1.4 1.4
X4E 393 399 401 400 2.5:1 2.5:1 2.7:1 2.7:1 1.8 1.7 1.7 1.7
X4F 393 400 400 400 2.5:1 2:1 2.3:1 2.3:1 2.8 1.9 1.8 1.8

99
Chapter 3 Overview

Table 9. IGP Bar Code Specification Summary (continued)

Avg. Narrow Element Width Barcode Character Density


Wide:Narrow (ratio)
Magnification (in 0.0001 inches) (cpi)
Parameter
203 dpi 203 dpi 300 dpi 300 dpi 203 dpi 203 dpi 300 dpi 300 dpi 203 dpi 203 dpi 300 dpi 300 dpi
horiz. vert. horiz. vert. horiz. vert. horiz. vert. horiz. vert. horiz. vert.

Interleaved 2/5, ITF-14, German I-2/5, Matrix, and UPCSHIP


X1 196 199 182 184 2.3:1 2.5:1 2.6:1 2.8:1 6.8 6.2 6.6 6.3
X2 344 302 367 282 2.7:1 2.5:1 2.5:1 2.7:1 3.4 4.1 3.4 4.2
X3 493 498 550 416 2.7:1 2:1 2.5:1 2.7:1 3.4 2.8 2.3 2.9
X4 591 600 667 551 3.2:1 2.5:1 2.7:1 2.8:1 2.8 2.1 1.8 2.1

X1A 246 150 198 168 2:1 2.7:1 2.7:1 2.2:1 5.8 8 6 8.1
X1B 147 150 165 169 2.3:1 2.7:1 2:1 2.2:1 8.8 8 8.6 8.1
X1C 98 100 133 135 2.5:1 2.5:1 2.5:1 2.5:1 12.7 12.5 9.4 9.4
X1D 98 100 133 133 2:1 2:1 2.8:1 2.7:1 14.5 14.2 8.8 8.8
X1E 98 98 100 100 2.5:1 2.6:1 2.7:1 2.7:1 12.7 12.5 12 12
X1F 98 101 99 101 2.5:1 2:1 2.4:1 2.3:1 12.7 14.2 13 13
X1G 48 78 66 94 3.1:1 2.5:1 2.5:1 2.2:1 22.6 15.9 18.9 14.4

X2A 320 274 333 232 2.2:1 2.1:1 2.1:1 2.7:1 4.3 5 4.2 5.1
X2B 295 300 333 332 2.3:1 2.7:1 2:1 2.2:1 4.4 4 4.3 4
X2C 196 200 267 267 2.5:1 2.5:1 2.5:1 2.5:1 6.3 6.2 4.7 4.7
X2D 196 200 267 267 2:1 2:1 2.7:1 2.7:1 7.3 7.1 4.4 4.4
X2E 196 200 199 199 2.5:1 2.5:1 2.7:1 2.7:1 6.3 6.2 6 6
X2F 196 200 198 200 2.5:1 2:1 2.4:1 2.4:1 6.3 7.1 6.5 6.5

X3A 738 449 602 499 2:1 2.7:1 2.7:1 2.2:1 1.9 2.7 1 2.7
X3B 443 450 501 499 2.3:1 2.7:1 2:1 2.2:1 2.9 2.7 2.9 2.7
X3C 295 300 401 400 2.5:1 2.5:1 2.5:1 2.5:1 4.2 4.1 3.1 3.1
X3D 296 304 400 398 2:1 2:1 2.8:1 2.8:1 4.8 4.7 2.9 2.9
X3E 295 300 300 299 2.5:1 2.5:1 2.7:1 2.7:1 4.2 4.1 4 4
X3F 295 302 298 300 2.5:1 2:1 2.4:1 2.3:1 4.2 4.7 4.3 4.3

X4A 984 602 801 666 2.1:1 2.7:1 2.7:1 2.2:1 1.3 1 1.5 2
X4B 591 601 667 668 2.3:1 2.7:1 2:1 2.2:1 2.2 1 2.1 2
X4C 394 400 534 533 2.5:1 2.5:1 2.5:1 2.5:1 3.2 3.1 2.3 2.3
X4D 393 402 533 534 2:1 2:1 2.8:1 2.8:1 3.6 3.5 2.2 2.2
X4E 394 401 401 399 2.5:1 2.5:1 2.7:1 2.7:1 3.2 3.1 3 3
X4F 394 401 400 401 2.5:1 2:1 2.3:1 2.3:1 3.2 3.6 3.3 3.3

100
Magnification Specifications

Table 9. IGP Bar Code Specification Summary (continued)

Avg. Narrow Element Width Barcode Character Density


Wide:Narrow (ratio)
Magnification (in 0.0001 inches) (cpi)
Parameter
203 dpi 203 dpi 300 dpi 300 dpi 203 dpi 203 dpi 300 dpi 300 dpi 203 dpi 203 dpi 300 dpi 300 dpi
horiz. vert. horiz. vert. horiz. vert. horiz. vert. horiz. vert. horiz. vert.

Code 93, Code 128, and UCC/EAN-128


X1 148 158 165 135 4:3:2: 4:3:2: 4:3:2: 4:3:2: 6.2 6 5.4 6.8
X1.5 246 150 265 135 1 1 1 1 3.7 6 3.6 6.8
X2 311 285 300 285 4:3:2: 4:3:2: 4:3:2: 4:3:2: 2.9 3.2 2.9 3.2
X3 492 413 468 398 1 1 1 1 1.8 2.2 1.9 2.2
X4 644 569 635 568 4:3:2: 4:3:2: 4:3:2: 4:3:2: 1.4 1.6 1.4 1.6
X5 810 803 798 705 1 1 1 1 1.1 1.1 1.1 1.3
4:3:2: 4:3:2: 4:3:2: 4:3:2:
X1A 128 100 165 132 1 1 1 1 7.1 9 5.4 6.8
X2A 257 200 330 267 4:3:2: 4:3:2: 4:3:2: 4:3:2: 3.5 4.5 2.7 3.4
X3A 385 301 500 400 1 1 1 1 2.4 3 1.8 2.3
X4A 513 402 663 535 4:3:2: 4:3:2: 4:3:2: 4:3:2: 1.8 2.3 1.4 1.7
1 1 1 1

4:3:2: 4:3:2: 4:3:2: 4:3:2:


1 1 1 1
4:3:2: 4:3:2: 4:3:2: 4:3:2:
1 1 1 1
4:3:2: 4:3:2: 4:3:2: 4:3:2:
1 1 1 1
4:3:2: 4:3:2: 4:3:2: 4:3:2:
1 1 1 1
UPC and EAN
X0.5 100 100 165 138 4:3:2: 4:3:2: 4:3:2: 4:3:2: n/a n/a n/a n/a
X1 195 152 163 133 1 1 1 1 n/a n/a n/a n/a
X1.5 146 163 168 140 4:3:2: 4:3:2: 4:3:2: 4:3:2: n/a n/a n/a n/a
X2 395 299 295 268 1 1 1 1 n/a n/a n/a n/a
4:3:2: 4:3:2: 4:3:2: 4:3:2:
1 1 1 1
4:3:2: 4:3:2: 4:3:2: 4:3:2:
1 1 1 1

101
Chapter 3 Overview

Table 9. IGP Bar Code Specification Summary (continued)

Avg. Narrow Element Width Barcode Character Density


Wide:Narrow (ratio)
Magnification (in 0.0001 inches) (cpi)
Parameter
203 dpi 203 dpi 300 dpi 300 dpi 203 dpi 203 dpi 300 dpi 300 dpi 203 dpi 203 dpi 300 dpi 300 dpi
horiz. vert. horiz. vert. horiz. vert. horiz. vert. horiz. vert. horiz. vert.

UPS 11
X0.5 148 150 167 131 4:3:2: 4:3:2: 4:3:2: 4:3:2: 6.2 6.1 5.5 6.9
X1 174 150 167 132 1 1 1 1 5.2 6 5.4 6.9
X1.5 246 148 252 131 4:3:2: 4:3:2: 4:3:2: 4:3:2: 3.7 6.1 3.6 6.9
X2 348 301 333 264 1 1 1 1 2.6 3 2.7 3.4
X3 523 452 500 396 4:3:2: 4:3:2: 4:3:2: 4:3:2: 1.7 2 1.8 2.3
X4 696 602 668 528 1 1 1 1 1.1 1.5 1.2 1.7
X5 870 750 835 660 4:3:2: 4:3:2: 4:3:2: 4:3:2: 0.9 1.1 1 1.2
1 1 1 1
X1A 147 150 167 131 4:3:2: 4:3:2: 4:3:2: 4:3:2: 6.2 6 5.5 6.9
X2A 295 301 333 264 1 1 1 1 3.1 3 2.7 3.4
X3A 443 452 500 396 4:3:2: 4:3:2: 4:3:2: 4:3:2: 2.1 2 1.8 2.3
X4A 590 603 668 528 1 1 1 1 2.5 1.5 1.2 1.7
4:3:2: 4:3:2: 4:3:2: 4:3:2:
1 1 1 1

4:3:2: 4:3:2: 4:3:2: 4:3:2:


1 1 1 1
4:3:2: 4:3:2: 4:3:2: 4:3:2:
1 1 1 1
4:3:2: 4:3:2: 4:3:2: 4:3:2:
1 1 1 1
4:3:2: 4:3:2: 4:3:2: 4:3:2:
1 1 1 1
MSI
X1 146 125 149 148 2.4 2.4 2.4 1.8 4.7 5.5 4.7 5.6
X2 221 300 215 283 2.5 1.8 2.5 2 3.1 2.7 3.1 2.8
X3 320 425 300 422 2.2 2 2.3 1.9 2.3 1.8 2.3 1.8
X4 415 575 347 628 2 1.9 2.6 1.7 1.8 1.3 1.8 1.3
X5 517 726 450 696 1.9 1.9 2.3 2 1.4 1.1 1.4 1.1
X6 591 853 517 885 2 2 2.4 1.9 1.2 0.9 1.2 0.9
X7 689 954 602 1053 1.9 2.1 2.3 1.8 1.1 0.7 1.1 0.7
X8 738 1153 651 1154 2 1.9 2.5 1.9 0.9 0.6 0.9 0.6
Codabar
X1 246 199 233 180 2.1 2.1 2.4 2.7 4 4.8 3.9 4.8
X1A 147 100 166 164 2.3 2.5 2.2 2.2 6.2 8.9 5.7 5.7
X1B 122 198 133 131 2.6 2.8 2.5 2.5 7.1 4.2 6.7 6.8
X1C 98 99 133 131 2.5 2.5 2.8 2.8 9.1 8.9 6.4 6.5
X2A 294 200 333 327 2.3 2.5 2.2 2.2 3.1 4.4 2.8 2.9
X2B 246 399 267 263 2.6 2.8 2.5 2.5 3.5 2.1 3.3 3.3
X4A 591 400 668 659 2.3 2.5 2.2 2.2 1.5 2.2 1.4 1.4
X4B 492 802 533 527 2.6 2.8 2.5 2.5 1.8 1 1.6 1.7

102
Magnification Specifications

Table 9. IGP Bar Code Specification Summary (continued)

Avg. Narrow Element Width Barcode Character Density


Wide:Narrow (ratio)
Magnification (in 0.0001 inches) (cpi)
Parameter
203 dpi 203 dpi 300 dpi 300 dpi 203 dpi 203 dpi 300 dpi 300 dpi 203 dpi 203 dpi 300 dpi 300 dpi
horiz. vert. horiz. vert. horiz. vert. horiz. vert. horiz. vert. horiz. vert.

Australian 4-State, PostBar, and Royal Mail


X1 n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a
X1A n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a
BC412, FIM, PDF417, and Maxicode
X1 n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a
Planet and PostNet
X1 n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a
X1A n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a
X1B n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a
X1C n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a

103
Chapter 3 Bar Codes

Bar Codes
The rest of this chapter describes each of the bar codes available with the
IGP emulation.

Australian 4-State
The Australian 4-State structure is shown in Figure 6 and described on the
following pages.

SR, SC QUIET QUIET


SR, SC
POSITION ZONE POSITION ZONE

STOP START
CODE CODE

CCW CW

DATA DATA
FIELD OPTIONAL FIELD
READABLE
DATA
FIELD

START STOP
CODE CODE GUARD
GUARD
BAND BAND
QUIET QUIET
ZONE ZONE

HEIGHT HEIGHT

SR, SC
POSITION
GUARD BAND

QUIET START STOP QUIET


Normal ZONE CODE
DATA FIELD
CODE ZONE HEIGHT

OPTIONAL READABLE DATA FIELD

SR, SC
POSITION

OPTIONAL READABLE DATA FIELD

HEIGHT
QUIET STOP START QUIET
INV ZONE CODE
DATA FIELD
CODE ZONE

GUARD BAND

Figure 6. Australian 4-State Structure

104
Australian 4-State

The Australian 4-State bar code supports the Australian Postal Service.
Australian 4-State bar codes are similar to POSTNET in terms of bar space
and width, but have four different types of bars (Full Height, Ascender,
Descender, and Tracker), whereas POSTNET only has two bar types (Tall
and Short).
The Australian 4-State symbology converts alphanumeric characters into
patterns of four bars, using combinations of Full Height, Ascender,
Descender, and Trackers. It also adds start and stop bar codes as well as
Reed-Solomon parity information.

Quiet Zone
Quiet zones extend on both ends of the bar code to permit the scan to begin
and end in a blank area. The quiet zones should be at least 0.25 inches wide
and completely blank to ensure accurate reading of the start/stop codes and
to prevent adjacent bar codes from overlapping. You are responsible for
providing sufficient space on the form for the quiet zones.

Start/Stop Code
The start and stop bars identify the orientation of the bar code. The start bar
consists of an ascender bar, and is positioned at the left-most end of the bar
code. The stop bar consists of a full height bar, and is positioned at the right-
most end of the bar code adjacent to the check digit.

Data Field
Australian 4-State bar codes use four types of bars to encode its data: Full
Height, Ascender, Descender, and Tracker. Each Full Height bar is 0.198 inch
± 0.030 inch. The Ascender and Descender bars are about 62.5% of the Full
Height bar in length, while the Tracker bar is about 25% of the Full Height bar.
Each bar width is equal, and must be .020-inch ± .005-inch. Horizontal
spacing between bars (pitch) must be 22 bars ± 2 bars per inch over any
0.50-inch portion of the bar code.
The Australian 4-State bar code data field consists of four different sections:
the FCC, Sorting Number, Customer Data, and Reed-Solomon parity
information. The FCC is a two-digit code specifying the format of the barcode
(see Table 10). The Sorting Number is an 8-digit code used to sort the mail
item. Customer Data is optional and is only allowed on certain formats (as
indicated by the FCC selected). The IGP emulation automatically generates
the Reed-Solomon parity information and includes it in the barcode.

Check Digit
No check digit is calculated for the Australian 4-State bar code. The Reed-
Solomon parity information is automatically included.

105
Chapter 3 Bar Codes

Australian 4-State Command Format


BARCODE
AUSTPOST;[FCCn;][INFOn;][DIR;][MAG;][BFn;L;][DARK;]SR;SC
(D) [data field] (D)
[PDF [;LOC] [;FONT]]
STOP
BARCODE The Bar Code command; enter BARCODE.
AUSTPOST Designates bar code type Australian 4-State; enter
AUSTPOST.
FCCn Specifies the FCC code, which defines the format
of the barcode and its size. If no value is specified,
the FCC defaults to a value of 11. Enter FCC, then
one of the values shown in Table 10.
INFOn Specifies the format of the customer information
field. If no value is specified, the information field
defaults to a value of 1. Enter INFO, then one of the
values shown in Table 10.

Table 10. FCC Codes, Customer Information Fields


and Maximum Bar Code Lengths

Customer Maximum Length


FCC (FCCn) Information Valid Data (Sorting Number +
(INFOn) Customer Data)

11, 87, 45, or 92 n/a Any 8+0

59 1 A-Z, a-z, 0-9, space, # 8+5

59 2 0-9 8+7

59 3 0-3 8 + 15

44, 62 1 A-Z, a-z, 0-9, space, # 8 + 10

44, 62 2 0-9 8 + 15

44, 62 3 0-3 8 + 30

NOTE: For an INFOn value of 3, the digits 0 through 3 represent the


following bars: 0 = Full Height; 1 = Ascender; 2 = Descender;
3 = Tracker. Since this is a proprietary encoding, the Customer Data
is not included in the optional readable data field.
DIR Optional parameter to orient the bar code structure
vertically. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.

106
Australian 4-State

MAG Optional parameter to magnify (horizontally


expand) the bar code symbol. The magnification
default value is X1. As required for scanning, enter
a magnification value from Table 9 on page 99 to
increase the magnification. Increasing the
magnification adjusts printed character density.
You can also use XR or XRD as defined on page
97.
BFn;L Optional parameters for assigning a dynamic bar
code data field location on a form and for
designating the length of the data field. With these
parameters, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. Replace L with a number equaling the total
number of characters in the field. (The actual
data provided dynamically during the Execute
Form Mode can be less than L.)
d. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn;L
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).

107
Chapter 3 Bar Codes

(D) The printable character (delimiter) identifying the


start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field, but it is
not printed with the data.
data field Contains the bar code characters. See “Data Field”
on page 105 for a description of the Australian 4-
State bar code data field.
PDF Optional parameter to enable printing of the human
readable data field. Enter PDF to print the data
field. If the parameter is not used, the human
readable data will not print. This parameter is not
allowed if a null data field is specified.
LOC Optional parameter to identify the location of the
printable data field. The default value is B, locating
the human readable data below the bar code. A
locates the printable data field above bar code. To
compensate for printing the 0.1-inch high data, the
height of the bar code body is reduced 0.1 inch.
FONT Optional parameter to select the font for the human
readable data field. Enter O to select OCR-A font;
enter X to select OCR-B font; enter N to select 10
cpi; enter P to select 12 cpi; enter Q to select 13
cpi; enter R to select 15 cpi; enter T to select 17 cpi;
enter V to select 20 cpi.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

108
Australian 4-State

Australian 4-State Example


~CREATE;TEST (Enter Create Form mode)
BARCODE (Bar code command)
AUSTPOST;FCC62;INFO1;9;8 (Australian 4-State bar code, FCC=62,
INFO=1, SR 9, SC 8)
*00141544adc0gre117* (Data Field; 8-digit Sorting Number +
10 alphanumeric customer data)
PDF;A (Printable data field above bar code)
STOP (Ends bar code command)
BARCODE (Bar code command)
AUSTPOST;VSCAN;9;50 (Vertical Australian 4-State bar code,
FCC=11, INFO=1, SR 9, SC 50)
*00540171* (Data Field; 8-digit Sorting Number)
PDF (Printable data field)
STOP (Ends bar code command)
END (Terminates Create Form mode)
~EXECUTE;TEST;1 (Execute the form, form count of 1)

~NORMAL

SC 8
SC 50

SR 9
SR 9

109
Chapter 3 Bar Codes

BC412 BARCODE
The BC412 barcode was invented by IBM in 1988 to meet the needs of the
the semiconductor wafer identification application. The word BC stands for
binary code (presence or absence of a bar) and 412 means 4 bar modules in
a total of 12 module positions in every character. It is a one dimensional
barcode that meets the following requirements: small space, easy scribing,
and robust decoding even if the barcode symbols are under poor light
contrast. It can achieve a density of 23 characters in less than an inch with a
3.3 mil bar width.

Command Format
BARCODE
BC412; [DIR;] [MAG;] [Hn[.m];] [BFn;L;] [DARK;] SR; SC
[(D)Data Field(D)]
[PDF [;LOC][;F][;FONT[VE:HE]]]
STOP

Start Code
The start code is bar,space,space" in all cases.

Termination Code
The stop code is bar,space,bar" in all cases.

Data Field
BC412 can accommodate 35 characters, 0 - 9 and A - Z. The number 0 is
used in place of the letter O. The following table lists the character with it's
module sequence and the character value.
I = Bar
- = Space

Module Character
Character
Sequence Value

0 I-I-I-I----- 00

1 I-I-I--I---- 15

2 I-I-I---I--- 17

3 I-I-I----I-- 29

4 I-I-I-----I- 11
5 I-I--I-I---- 33

6 I-I--I--I--- 19

7 I-I--I---I-- 21

110
BC412 BARCODE

Module Character
Character
Sequence Value

8 I-I--I----I- 08

9 I-I---I-I--- 02

A I-I---I--I-- 07

B I-I---I---I- 25

C I-I----I-I-- 20

D I-I----I--I- 22

E I-I-----I-I- 09

F I--I-I-I---- 30

G I--I-I--I--- 03

H I--I-I---I-- 06

I I--I-I----I- 27

J I--I--I-I--- 16

K I--I--I--I-- 24

L I--I--I---I- 04

M I--I---I-I-- 34

N I--I---I--I- 12

P I--I----I-I- 32

Q I---I-I-I--- 18

R I---I-I--I-- 01

S I---I-I---I- 14

T I---I--I-I-- 13

U I---I--I--I- 26

V I---I---I-I- 05

W I----I-I-I-- 31

X I----I-I--I- 28

Y I----I--I-I- 23

Z I-----I-I-I- 10

Start I--

Stop I-I

111
Chapter 3 Bar Codes

Check Code
The BC412 has a mod 35 check character. The check character is placed in
the second position behind the first data character. The check code is
automatically included in the bar structure; however, it is not included in the
PDF. The check digit computation is shown below:
Let D = D1D2....Dn be a string of n data characters and C = C1C2....Cn+1 be
a string value of n+1 encoded characters.
V1 = Character value of C1. ( refer to the table above)
Fo = (Sum of Odd V1) Mod 35.
Fe = (Sum of Even V1) Mod 35
F = (Fo + 2Fe) Mod 35
The second character is the check character. Hence, designate the second
character of C1C2.... to be the check character of D.
Set C2 = 0. Therefore C1C3C4....Cn+1 = D1D2D3....Dn
Calculate Fo, Fe, and F
C2 = the character that has the check character value 17F Mod 35
Example:
Assume that the data character string is AQ1557
Form the character string C = A0Q1557
Fo = (7 + 18 + 33 + 21) Mod 35
= 79 Mod 35
=9
Fe = (0 + 11 + 19) Mod 35
= 34 Mod 35
= 34
F = (9 + 2*34) Mod 35
= 77 Mod 35
=7
Character value of the check character is = 17*7 Mod 35
= 119 Mod 35
= 14
Cross reference in the table above, 14 is the character value of character 'S'.
Hence the check character is ’S’.

GuardBand
Normally, there are guardbands 0.10 inches both above and below the bars of
the barcode. However, if it is a non-rotated barcode with the PDF below, then
the bottom guardband is reduced to 0.07 inches (1/14 inch). The difference
(0.03 inches) is then subtracted from the overall height of the barcodes. This
is done to provide compatibility with IGP-X00 products.

112
BC412 BARCODE

Magnification
There is only one pre-defined magnification for BC412, X1 which is the default
magnification. Pre-defined magnifications for horizontal and vertical barcodes
are listed in Table 6.13.
There are two values that comprise the dot ratio: bar and a space. Therefore,
user-defined ratios for this barcode should have these two values defined, in
the order previously specified.

Height
The barcode can range from 0.3 - 9.9 inches tall. Default is 0.9 inches. If the
minimum height of 0.3 inch is selected, the PDF is not allowed.
NOTE: the maximum VE allowed in the PDF is dependant on the height of
the entire barcode.

PDF
The PDF is not included unless requested. If included, it is separated from the
bars by a guardband. The default font type used for the PDF is N. The check
character is not included in the PDF.

~CREATE;TEST
BARCODE
BC412;H10;5;5
*12345ABCDE*
STOP
END

~EXECUTE;TEST

~NORMAL

Figure 7. BC412 Barcode

113
Chapter 3 Bar Codes

Codabar
The Codabar structure is shown in Figure 8 and described on the following
pages.

SR, SC QUIET QUIET


SR, SC
POSITION ZONE POSITION ZONE

STOP START
CODE CODE

OPTIONAL
CHECK
DIGIT
CCW CW

DATA DATA
FIELD OPTIONAL FIELD
READABLE
DATA
FIELD

OPTIONAL
CHECK
DIGIT
START STOP UPPER
UPPER LOWER LOWER
CODE CODE GUARD
GUARD GUARD GUARD
BAND BAND BAND BAND
QUIET QUIET
ZONE ZONE

HEIGHT HEIGHT

OPTIONAL
CHECK DIGIT
SR, SC
POSITION
UPPER GUARD BAND

QUIET START STOP QUIET


Normal ZONE CODE
DATA FIELD
CODE ZONE HEIGHT

LOWER GUARD BAND

OPTIONAL READABLE DATA FIELD

SR, SC
POSITION
OPTIONAL READABLE DATA FIELD

LOWER GUARD BAND

HEIGHT
QUIET STOP START QUIET
INV ZONE CODE
DATA FIELD
CODE ZONE

UPPER GUARD BAND

OPTIONAL
CHECK DIGIT

Figure 8. Codabar Structure

114
Codabar

Quiet Zone
Both ends of the bar code structure require blank quiet zones. The quiet
zones must be at least 0.25 inches wide and completely blank to ensure
accurate reading of the start/stop codes and to prevent adjacent bar codes
from overlapping. Be sure to provide sufficient space on the form for the quiet
zones.

Start/Stop Codes
The start/stop code is a unique character identifying the leading and trailing
end of the bar code. The start/stop code is automatically produced with each
bar code. The start/stop code structure permits bidirectional bar code
scanning.

Data Field
The bar code symbol uses a series of wide and narrow bars and spaces to
represent standard alphanumeric characters. Each wide or narrow bar or
space is one element; each character in the data field has nine elements. The
structure is three wide elements (bars or spaces) out of the nine total
elements which compose one character.

Readable Data
The optional readable data field provides a readable interpretation of the bar
code data. It can be printed above or below the bar code symbol.

Check Digit
The optional modulo-43 check digit can be inserted into the bar code to verify
accurate scanning.

Codabar Command Format


BARCODE
CODABAR [CD];[DIR;] [MAG;] [Hn[.m];] [BFn;L;] [DARK;] SR;SC
(D) [data field] (D)
[PDF [;LOC] [;FONT]]
STOP
BARCODE The Bar Code command; enter BARCODE.
CODABAR CD
Designates bar code type Codabar; enter
CODABAR. To calculate and plot the optional
modulo-43 check digit with the bar code symbol
automatically, enter CD.
DIR Optional parameter to orient the bar code structure
vertically. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.

115
Chapter 3 Bar Codes

MAG Optional parameter to magnify (horizontally


expand) the bar code symbol. The magnification
default value is X1. As required for scanning, enter
a magnification value from Table 9 on page 99 to
increase the magnification. Increasing the
magnification adjusts printed character density.
You can also use XR or XRD as defined on page
97.
Hn[.m] Optional parameter to adjust the overall height
(vertical expansion) of the bar code symbol
(including the upper and lower 0.1-inch guard
bands and any human readable data). Height
adjustments are made in 0.1-inch increments; enter
H and a value from 3 through 99 to select height
adjustments from 0.3 through 9.9 inches. The
default value is 0.9 inch.
[.m] is an additional number of dots for the bar code
height. (Dots are in the current dot scale.)
NOTE: If 0.3 inches is the selected height, the PDF cannot be included.
BFn;L Optional parameters for assigning a dynamic bar
code data field location on a form and for
designating the length of the data field. With these
parameters, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. Replace L with a number equaling the total
number of characters in the field. (The actual
data provided dynamically during the Execute
Form Mode can be less than L.)
d. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn;L
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.

116
Codabar

SR Defines the starting row for the bar code. Enter a


value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field, but it is
not printed with the data.
data field Contains the bar code characters. A null data field
(no characters) is permitted. The data field can
contain any of the characters listed in Table 11
except the SFCC, and the first character and the
last character in the data field must be either A, B,
C, or D. The length of the data field is variable;
however, the maximum length is usually limited to
32 characters to minimize potential reading errors.
PDF Optional parameter to enable printing of the human
readable data field. Enter PDF to print the data
field. If the parameter is not used, the human
readable data will not print. This parameter is not
allowed if a null data field is specified.
LOC Optional parameter to identify the location of the
printable data field. The default value is B, locating
the human readable data below the bar code. A
locates the printable data field above bar code. To
compensate for printing the 0.1-inch high data, the
height of the bar code body is reduced 0.1 inch.
FONT Optional parameter to select the font for the human
readable data field. Enter O to select OCR-A font;
enter X to select OCR-B font; enter N to select 10
cpi; enter P to select 12 cpi; enter Q to select 13
cpi; enter R to select 15 cpi; enter T to select 17 cpi;
enter V to select 20 cpi.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

117
Chapter 3 Bar Codes

Table 11. Codabar Character Set

Character Hex Character Hex

0 30 - 2D

1 31 $ 24

2 32 : 3A

3 33 / 2F

4 34 . 2E

5 35 + 2B

6 36 A 41

7 37 B 42

8 38 C 43

9 39 D 44

Codabar Example
~CREATE;TEST;288 (Enter Create Form mode)
BARCODE (Bar code command)
CODABAR;VSCAN;X1;H7;5;20 (Vertical Codabar bar code, MAG 1,
SR 5, SC 20)
*A12345B* (Data Field)
PDF;B;N (Printable data field)
STOP (Ends bar code command)
END (Terminates Create Form mode)
~EXECUTE;TEST

~NORMAL
SC 20

SR 5

118
Code 39

Code 39
The Code 39 structure is shown in Figure 9 and described on the following
pages.

SR, SC QUIET QUIET


SR, SC
POSITION ZONE POSITION ZONE

STOP START
CODE CODE

OPTIONAL
CHECK
DIGIT
CCW CW

DATA DATA
FIELD OPTIONAL FIELD
READABLE
DATA
FIELD

OPTIONAL
CHECK
DIGIT
START STOP UPPER
UPPER LOWER LOWER
CODE CODE GUARD
GUARD GUARD GUARD
BAND BAND BAND BAND
QUIET QUIET
ZONE ZONE

HEIGHT HEIGHT

OPTIONAL
CHECK DIGIT
SR, SC
POSITION
UPPER GUARD BAND

QUIET START STOP QUIET


Normal ZONE CODE
DATA FIELD
CODE ZONE HEIGHT

LOWER GUARD BAND

OPTIONAL READABLE DATA FIELD

SR, SC
POSITION
OPTIONAL READABLE DATA FIELD

LOWER GUARD BAND

HEIGHT
QUIET STOP START QUIET
INV ZONE CODE
DATA FIELD
CODE ZONE

UPPER GUARD BAND

OPTIONAL
CHECK DIGIT

Figure 9. Code 39 Structure

119
Chapter 3 Bar Codes

Quiet Zone
Both ends of the bar code structure require blank quiet zones. The quiet
zones must be at least 0.25 inches wide and completely blank to ensure
accurate reading of the start/stop codes and to prevent adjacent bar codes
from overlapping. Be sure to provide sufficient space on the form for the quiet
zones.

Start/Stop Codes
The start/stop code is a unique character identifying the leading and trailing
end of the bar code. The start/stop code is automatically produced with each
bar code. The start/stop code structure permits bidirectional bar code
scanning.

Data Field
The bar code symbol uses a series of wide and narrow bars and spaces to
represent standard alphanumeric characters. Each wide or narrow bar or
space is one element; each character in the data field has nine elements. The
structure is three wide elements (bars or spaces) out of the nine total
elements which compose one character.

Readable Data
The optional readable data field provides a readable interpretation of the bar
code data. It can be printed above or below the bar code symbol.

Check Digit
The optional modulo-43 check digit can be inserted into the bar code to verify
accurate scanning.

120
Code 39

Code 39 Command Format


NOTE: Although commonly referred to as Code “39”, you must enter the
command as “C3/9” (including the slash) during IGP input.
BARCODE
C3/9 [CD]; [DIR;] [MAG;] [Hn[.m];] [BFn;L;] [DARK;] SR;SC
(D) [data field] (D)
[PDF [;LOC] [;FONT]]
STOP
BARCODE The Bar Code command; enter BARCODE.
C3/9 CD Designates bar code type C39; enter C3/9. To
calculate and plot the optional modulo-43 check
digit with the bar code symbol automatically, enter
CD.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
MAG Optional parameter to magnify (horizontally
expand) the bar code symbol. The magnification
default value is X1. As required for scanning, enter
a magnification value from Table 9 on page 99 to
increase the magnification. Increasing the
magnification adjusts printed character density.
You can also use XR or XRD as defined on page
97.
Hn[.m] Optional parameter to adjust the overall height
(vertical expansion) of the bar code symbol
(including the upper and lower 0.1-inch guard
bands and any human readable data). Height
adjustments are made in 0.1-inch increments plus
dots; enter H and a value from 3 through 99 to
select height adjustments from 0.3 through 9.9
inches. The default value is 0.9 inch. [.m] is an
additional number of dots for the bar code height.
(Dots are in the current dot scale.)
NOTE: If 0.3 inches is the selected height, the PDF cannot be included.
BFn;L Optional parameters for assigning a dynamic bar
code data field location on a form and for
designating the length of the data field. With these
parameters, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The

121
Chapter 3 Bar Codes

SR and SC parameters specify the exact


location of the bar code field identified by n.
c. Replace L with a number equaling the total
number of characters in the field. (The actual
data provided dynamically during the Execute
Form Mode can be less than L.)
d. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn;L
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field, but it is
not printed with the data.
data field Contains the bar code characters. A null data field
(no characters) is permitted. The data field can
contain any of the characters listed in Table 12
except the SFCC. The length of the data field is
variable; however, the maximum length is usually
limited to 32 characters to minimize potential
reading errors.
PDF Optional parameter to enable printing of the human
readable data field. Enter PDF to print the data
field. If the parameter is not used, the human
readable data will not print. This parameter is not
allowed if a null data field is specified.

122
Code 39

LOC Optional parameter to identify the location of the


printable data field. The default value is B, locating
the human readable data below the bar code. A
locates the printable data field above bar code. To
compensate for printing the 0.1-inch high data, the
height of the bar code body is reduced 0.1 inch.
FONT Optional parameter to select the font for the human
readable data field. Enter O to select OCR-A font;
enter X to select OCR-B font; enter N to select 10
cpi; enter P to select 12 cpi; enter Q to select 13
cpi; enter R to select 15 cpi; enter T to select 17 cpi;
enter V to select 20 cpi.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

123
Chapter 3 Bar Codes

Table 12. Code 39 Character Set

ASCII CODE 39 ASCII CODE 39 ASCII CODE 39 ASCII CODE 39

NUL %U SP Space @ %V ` %W
SOH $A ! /A A A a +A
STX $B " /B B B b +B
ETX $C # /C C C c +C
EOT $D $ /D D D d +D
ENQ $E % /E E E e +E
ACK $F & /F F F f +F
BEL $G ' /G G G g +G
BS $H ( /H H H h +H
HT $I ) /I I I i +I
LF $J * /J J J j +J
VT $K + /K K K k +K
FF $L , /L L L l +L
CR $M — — M M m +M
SO $N . . N N n +N
SI $O / /O O O o +O
DLE $P 0 0 P P p +P
DC1 $Q 1 1 Q Q q +Q
DC2 $R 2 2 R R r +R
DC3 $S 3 3 S S s +S
DC4 $T 4 4 T T t +T
NAK $U 5 5 U U u +U
SYN $V 6 6 V V v +V
ETB $W 7 7 W W w +W
CAN $X 8 8 X X x +X
EM $Y 9 9 Y Y y +Y
SUB $Z : /Z Z Z z +Z
ESC %A ; %F [ %K { %P
FS %B < %G \ %L | %Q
GS %C = %H ] %M } %R
RS %D > %I ^ %N ~ %S
US %E ? %J __ %O DEL %T %X
%Y %Z

NOTE: Character pairs /M, /N, and /P through /Y are reserved for future
control character pairs.

124
Code 39

Code 39 Example
Figure 10 illustrates a horizontal and vertical Code 39 bar code generated by
the following program:
~CREATE;C39 (Enter Create Form Mode)
BARCODE (Bar Code Command)
C3/9;DARK;40;15 (Dark Code 39 at SR 40, SC 15)
*SAMPLE C3/9* (Data Field)
PDF (Printable Data Field)
STOP (Ends Bar Code Command)
BARCODE (New Bar Code Command)
C3/9;VSCAN;H14;DARK;27;58 (Vert Dark Code 39, H 1.4, at SR 27,
SC 58)
*SAMPLE C3/9* (Data Field)
PDF (Printable Data Field)
STOP (Ends Bar Code Command)
END (Terminates Create Form Mode)
~EXECUTE;C39;1 (Execute the form, form count of 1)

~NORMAL

SC 58

SR 27

SC 15

SR 40

Figure 10. Sample Code 39 Bar Codes

125
Chapter 3 Bar Codes

Code 93
The Code 93 structure is shown in Figure 11 and described on the following
pages.

SR, SC QUIET QUIET


SR, SC
POSITION ZONE POSITION ZONE

STOP START
CODE CODE

OPTIONAL
CHECK
DIGIT
CCW CW

DATA DATA
FIELD OPTIONAL FIELD
READABLE
DATA
FIELD

OPTIONAL
CHECK
DIGIT
START STOP UPPER
UPPER LOWER LOWER
CODE CODE GUARD
GUARD GUARD GUARD
BAND BAND BAND BAND
QUIET QUIET
ZONE ZONE

HEIGHT HEIGHT

OPTIONAL
CHECK DIGIT
SR, SC
POSITION
UPPER GUARD BAND

QUIET START STOP QUIET


Normal ZONE CODE
DATA FIELD
CODE ZONE HEIGHT

LOWER GUARD BAND

OPTIONAL READABLE DATA FIELD

SR, SC
POSITION
OPTIONAL READABLE DATA FIELD

LOWER GUARD BAND

HEIGHT
QUIET STOP START QUIET
INV ZONE CODE
DATA FIELD
CODE ZONE

UPPER GUARD BAND

OPTIONAL
CHECK DIGIT

Figure 11. Code 93 Structure

126
Code 93

Quiet Zone
Both ends of the bar code structure require blank quiet zones. The quiet
zones must be at least 0.25 inches wide and completely blank to ensure
accurate reading of the start/stop codes and to prevent adjacent bar codes
from overlapping. Be sure to provide sufficient space on the form for the quiet
zones.

Start/Stop Codes
The start/stop code is a unique character identifying the leading and trailing
end of the bar code. The start/stop code is automatically produced with each
bar code. The start/stop code structure permits bidirectional bar code
scanning.

Data Field
The bar code symbol uses a series of varying width bars and spaces to
represent an extensive character set. The bars and spaces vary in width from
one through four modules. Each character consists of three bars and three
spaces that total 11 modules.

Readable Data
The optional readable data field provides a readable interpretation of the bar
code data. It can be printed above or below the bar code symbol.

Check Digit
Two modulo-47 check digits are automatically calculated and inserted in the
bar code symbol. The check digit verifies accurate scanning. The start code is
included in the check digit algorithm.

127
Chapter 3 Bar Codes

Code 93 Command Format


BARCODE
CODE93; [DIR;] [MAG;] [Hn[.m];] [BFn;L;][DARK;] SR;SC
(D) [data field] (D)
[PDF [;LOC] [;FONT]]
STOP
BARCODE The Bar Code command; enter BARCODE.
CODE93 Designates bar code type Code 93; enter CODE93.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
MAG Optional parameter to magnify (horizontally
expand) the bar code symbol. The magnification
default value is X1. Increasing the magnification
adjusts printed character density as shown in Table
9 on page 99. You can also use XR or XRD as
defined on page 97. (You must specify 8 digits for
MAG for variable ratio.)
Hn[.m] Optional parameter to adjust the overall height
(vertical expansion) of the bar code symbol
(including the upper and lower 0.1-inch guard
bands and any human readable data). Height
adjustments are made in 0.1-inch increments; enter
H and a value from 3 through 99 to select height
adjustments from 0.3 through 9.9 inches. The
default value is 0.9 inch.
[.m] is an additional number of dots for the bar code
height. (Dots are in the current dot scale.)
NOTE: If 0.3 inches is the selected height, the PDF cannot be included.
BFn;L Optional parameters for assigning a dynamic bar
code data field location on a form and for
designating the length of the data field. With these
parameters, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. Replace L with a number equaling the total
number of characters in the field. (The actual
data provided dynamically during the Execute
Form Mode can be less than L.)

128
Code 93

d. The information for the data field is entered


dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn;L
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field, but it
will not print with the data.
data field Enter the data for the bar code. A null data field (no
characters) is permitted. The length of the data field
is variable; however, the maximum length is usually
limited to 32 characters to minimize potential
reading errors. The data field can contain any of the
characters listed in Table 13, except the system
SFCC.
PDF Optional parameter to enable printing of the human
readable data field. Enter PDF to print the data
field. If the parameter is not used, the human
readable data will not print. This parameter is not
allowed if a null data field was specified.
LOC Optional parameter to identify the location of the
printable data field. The default value is B, locating
the human readable data below the bar code. A
locates the printable data field above bar code. To
compensate for printing the 0.1-inch high data, the
height of the bar code body is reduced 0.1 inch.

129
Chapter 3 Bar Codes

FONT Optional parameter to select the font for the human


readable data field. Enter O to select OCR-A font;
enter X to select OCR-B font; enter N to select 10
cpi; enter P to select 12 cpi; enter Q to select 13
cpi; enter R to select 15 cpi; enter T to select 17 cpi;
enter V to select 20 cpi.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

Table 13. Code 93 Character Set

Character Hex Character Hex


0 30 P 50
1 31 Q 51
2 32 R 52
3 33 S 53
4 34 T 54
5 35 U 55
6 36 V 56
7 37 W 57
8 38 X 58
9 39 Y 59
A 41 Z 5A
B 42 — 2D
C 43 . 2E
D 44 SPACE 20
E 45 $ 3F
F 46 / 2F
G 47 + 2B
H 48 % 25
I 49 S1 N/A
J 4A S2 N/A
K 4B S3 N/A
L 4C S4 NA
M 4D Start N/A
N 4E Stop N/A
O 4F

130
Code 93

Code 93 Example
The illustration below shows a horizontal Code 93 bar code generated by the
following program:
~CREATE;TEST;288 (Enters Create Form mode)
BARCODE (Bar code command)
CODE93;X1;H7;10;20 (Code 93 bar code, MAG 1,
H 0.7 inches, SR 10, SC 20)
*ABCD5678* (Data Field)
PDF;B;N (Printable data field, 10 cpi font)
STOP (Ends bar code command)
END (Terminates Create Form mode)
~EXECUTE;TEST (Prints form)

~NORMAL

SC 20

SR 10

131
Chapter 3 Bar Codes

Code 128A, 128B and 128C


The Code 128 structure is shown in Figure 12 and described on the following
pages.

SR, SC QUIET QUIET


SR, SC
POSITION ZONE POSITION ZONE

STOP START
CODE CODE

OPTIONAL
CHECK
DIGIT
CCW CW

DATA DATA
FIELD OPTIONAL FIELD
READABLE
DATA
FIELD

OPTIONAL
CHECK
DIGIT
START STOP UPPER
UPPER LOWER LOWER
CODE CODE GUARD
GUARD GUARD GUARD
BAND BAND BAND BAND
QUIET QUIET
ZONE ZONE

HEIGHT HEIGHT

OPTIONAL
CHECK DIGIT
SR, SC
POSITION
UPPER GUARD BAND

QUIET START STOP QUIET


Normal ZONE CODE
DATA FIELD
CODE ZONE HEIGHT

LOWER GUARD BAND

OPTIONAL READABLE DATA FIELD

SR, SC
POSITION
OPTIONAL READABLE DATA FIELD

LOWER GUARD BAND

HEIGHT
QUIET STOP START QUIET
INV ZONE CODE
DATA FIELD
CODE ZONE

UPPER GUARD BAND

OPTIONAL
CHECK DIGIT

Figure 12. Code 128 Structure

132
Code 128A, 128B and 128C

Quiet Zone
Both ends of the bar code structure require blank quiet zones. The quiet
zones must be at least 0.25 inches wide and completely blank to ensure
accurate reading of the start/stop codes and to prevent adjacent bar codes
from overlapping. Be sure to provide sufficient space on the form for the quiet
zones.

Start/Stop Codes
The start/stop codes identify the leading and trailing end of the bar code. Each
of the Code 128 subsets uses a unique start code and a common stop code,
both automatically provided by the IGP. The start/stop code structure permits
bidirectional bar code scanning.

Code 128A Data Field


The bar code symbol uses a series of varying width bars and spaces to
represent an extensive character set (64 ASCII characters and 32 control
characters). The bars and spaces vary in width from one through four
modules. Each character consists of three bars and three spaces that total 11
modules.

Code 128B Data Field


The bar code symbol uses a series of varying width bars and spaces to
represent an extensive character set (96 ASCII characters and seven control
characters). The bars and spaces vary in width from one through four
modules. Each character consists of three bars and three spaces that total 11
modules.

Code 128C Data Field


The bar code symbol uses a series of varying width bars and spaces to
represent 100 pairs of numeric digits (00 through 99) and 3 control
characters. The bars and spaces vary in width from 1 through 4 modules.
Each character consists of three bars and three spaces that total 11 modules.

Readable Data
The optional readable data field provides a readable interpretation of the bar
code data. It can be printed above or below the bar code symbol.

Check Digit
The modulo-103 check digit is automatically calculated and inserted in the bar
code symbol. The check digit verifies accurate scanning. The start code is
included in the check digit algorithm.

133
Chapter 3 Bar Codes

Code 128 Command Format


BARCODE
C128A or C128B or C128C; [DIR;] [MAG;] [Hn[.m];] [BFn;L;]
[DARK;] SR; SC (D) [data field] (D)
[PDF [;LOC] [;FONT] [;MAX]]
STOP
BARCODE The Bar Code command; enter BARCODE.
C128A, C128B or C12BC
Designates bar code type Code 128; enter C128A,
C128B or C128C.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
MAG Optional parameter to magnify (horizontally
expand) the bar code symbol. The magnification
default value is X1. Increasing the magnification
adjusts printed character density as shown in Table
9 on page 99. You can also use XR or XRD as
defined on page 97. (You must specify 8 digits for
MAG for variable ratio.)
Hn[.m] Optional parameter to adjust the overall height
(vertical expansion) of the bar code symbol
(including the upper and lower 0.1-inch guard
bands and any human readable data). Height
adjustments are made in 0.1-inch increments; enter
H and a value from 3 through 99 to select height
adjustments from 0.3 through 9.9 inches. The
default value is 0.9 inch.
[.m] is an additional number of dots for the bar code
height. (Dots are in the current dot scale.)
NOTE: If 0.3 inches is the selected height, the PDF cannot be included.
BFn;L Optional parameters for assigning a dynamic bar
code data field location on a form and for
designating the length of the data field. With these
parameters, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps.
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. Replace L with a number equaling the total
number of characters in the field. (The actual

134
Code 128A, 128B and 128C

data provided dynamically during the Execute


Form Mode can be less than L.)
d. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn;L
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field, but it
will not print with the data.
data field Enter the data for the bar code. A null data field (no
characters) is permitted. Whenever a string of 6 or
more contiguous numeric digits are detected, the
IGP automatically inserts a Code C at the start of
the numeric string and outputs numeric digit pairs
packed into single bar code characters. When the
string is broken (non-numeric data or an unpaired
numeric digit occurs), the IGP automatically inserts
a Code B and returns to normal C128B symbols.
The length of the data field is variable; however, the
maximum length is usually limited to 32 characters
to minimize potential reading errors. The data field
can contain any of the characters listed in Table
Table 14 through Table 16, except the system
SFCC.
PDF Optional parameter to enable printing of the human
readable data field. Enter PDF to print the data
field. If the parameter is not used, the human
readable data will not print. This parameter is not
allowed if a null data field was specified.

135
Chapter 3 Bar Codes

LOC Optional parameter to identify the location of the


printable data field. The default value is B, locating
the human readable data below the bar code. A
locates the printable data field above bar code. To
compensate for printing the 0.1-inch high data, the
height of the bar code body is reduced 0.1 inch.
FONT Optional parameter to select the font for the human
readable data field. Enter O to select OCR-A font;
enter X to select OCR-B font; enter N to select 10
cpi; enter P to select 12 cpi; enter Q to select 13
cpi; enter R to select 15 cpi; enter T to select 17 cpi;
enter V to select 20 cpi.
MAX Optional parameter to specify the maximum
number of data printed in the PDF. If all data should
be printed, do not use this parameter. Valid values
are from 1 through 128. For example, if the barcode
data is “12345” and a MAX value of 3 is specified,
the PDF would print “123”.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

136
Code 128A, 128B and 128C

Table 14. Code 128A Character Set

Character Hex Character Hex Character Hex Character Hex

NUL 00 SUB 1A 4 34 N 4E
SOH 01 ESC 1B 5 35 O 4F
STX 02 FS 1C 6 36 P 50
ETX 03 GS 1D 7 37 Q 51
EOT 04 RS 1E 8 38 R 52
ENQ 05 US 1F 9 39 S 53
ACK 06 SP 20 : 3A T 54
BEL 07 ! 21 ; 3B U 55
BS 08 " 22 < 3C V 56
HT 09 # 23 = 3D W 57
LF 0A $ 24 > 3E X 58
VT 0B % 25 ? 3F Y 59
FF 0C & 26 @ 40 Z 5A
CR 0D ' 27 A 41 [ 5B
SO 0E ( 28 B 42 \ 5C
SI 0F ) 29 C 43 ] 5D
DLE 10 * 2A D 44 5E
DC1 11 + 2B E 45 ^ 5F
DC2 12 , 2C F 46 FNC 3 23 See NOTE
DC3 13 - 2D G 47 FNC 2 22 See NOTE
DC4 14 . 2E H 48 SHIFT 28 See NOTE
NAK 15 / 2F I 49 CODE C 27 See NOTE
SYN 16 0 30 J 4A FUNC 4 24 See NOTE
ETB 17 1 31 K 4B CODE B 26 See NOTE
CAN 18 2 32 L 4C FNC 1 21 See NOTE
EM 19 3 33 M 4D START A (N/A)
STOP (N/A)

NOTE: Access for the alternate set of control function characters is by using
SO (Shift Out, hex 0E). The SO control code identifies the next
character as the control function character, and must be inserted
before each alternate character required. The SO character is
selectable from the printer's front panel (see your User's Guide).

137
Chapter 3 Bar Codes

Table 15. Code 128B Character Set

Character Hex Character Hex Character Hex Character Hex


SP 20 : 3A T 54 n 6E
! 21 ; 3B U 55 o 6F
" 22 < 3C V 56 p 70
# 23 = 3D W 57 q 71
$ 24 > 3E X 58 r 72
% 25 ? 3F Y 59 s 73
& 26 @ 40 Z 5A t 74
' 27 A 41 [ 5B u 75
( 28 B 42 \ 5C v 76
) 29 C 43 ] 5D w 77
* 2A D 44 5E x 78
+ 2B E 45 - 5F y 79
, 2C F 46 ` 60 z 7A
- 2D G 47 a 61 { 7B
. 2E H 48 b 62 | 7C
/ 2F I 49 c 63 } 7D
0 30 J 4A d 64 ~ 7E
1 31 K 4B e 65 7F
2 32 L 4C f 66 FNC 3 23 See NOTE
3 33 M 4D g 67 FNC 2 22 See NOTE
4 34 N 4E h 68 SHIFT 28 See NOTE
5 35 O 4F i 69 CODE C 27 See NOTE
6 36 P 50 j 6A FUNC 4 24 See NOTE
7 37 Q 51 k 6B CODE A 25 See NOTE
8 38 R 52 l 6C FNC 1 21 See NOTE
9 39 S 53 m 6D START B (N/A)
STOP (N/A)

NOTE: Access for the alternate set of control function characters is by using
SO (Shift Out, hex 0E). The SO control code identifies the next
character as the control function character, and must be inserted
before each alternate character required. The SO character is
selectable from the printer's front panel (see your User's Guide).

138
Code 128A, 128B and 128C

Table 16. Code 128C Character Set

Character Hex Character Hex Character Hex Character Hex


00 30 30 27 32 37 54 35 34 81 38 31
01 30 31 28 32 38 55 35 35 82 38 32
02 30 32 29 32 39 56 35 36 83 38 33
03 30 33 30 33 30 57 35 37 84 38 34
04 30 34 31 33 31 58 35 38 85 38 35
05 30 35 32 33 32 59 35 39 86 38 36
06 30 36 33 33 33 60 36 30 87 38 37
07 30 37 34 33 34 61 36 31 88 38 38
08 30 38 35 33 35 62 36 32 89 38 39
09 30 39 36 33 36 63 36 33 90 39 30
10 31 30 37 33 37 64 36 34 91 39 31
11 31 31 38 33 38 65 36 35 92 39 32
12 31 32 39 33 39 66 36 36 93 39 33
13 31 33 40 34 30 67 36 37 94 39 34
14 31 34 41 34 31 68 36 38 95 39 35
15 31 35 42 34 32 69 36 39 96 39 36
16 31 36 43 34 33 70 37 30 97 39 37
17 31 37 44 34 34 71 37 31 98 39 38
18 31 38 45 34 35 72 37 32 99 39 39
19 31 39 46 34 36 73 37 33 CODE B 26 See NOTE
20 32 30 47 34 37 74 37 34 CODE A 25 See NOTE
21 32 31 48 34 38 75 37 35 FNC 1 21 See NOTE
22 32 32 49 34 39 76 37 36 START C (N/A)
23 32 33 50 35 30 77 37 37 STOP (N/A)
24 32 34 51 35 31 78 37 38
25 32 35 52 35 32 79 37 39
26 32 36 53 35 33 80 38 30

NOTE: Access for the alternate set of control function characters is by using
SO (Shift Out, hex 0E). The SO control code identifies the next
character as the control function character, and must be inserted
before each alternate character required. The SO character is
selectable from the printer's front panel (see your User's Guide).

139
Chapter 3 Bar Codes

Code 128B Example


Figure 13 illustrates a horizontal and vertical Code 128B bar code generated
by the following program:
~CREATE;128B (Enter Create Form Mode)
BARCODE (Bar Code command)
C128B;DARK;40;15 (Dark Code 128B at SR 40, SC 15)
*SAMPLE CODE 128B* (Data Field)
PDF;A (Upper Printable Data Field)
STOP (Ends Bar Code command)
BARCODE (New Bar Code command)
C128B;VSCAN;H12;DARK;31;55 (Vert. Dark C128B, H 1.2 at SR 31,
SC 55)
*SAMPLE CODE 128B* (Data Field)
PDF (Printable Data Field)
STOP (Ends Bar Code command)
END (Terminate Create Form Mode)
~EXECUTE;128B;1 (Execute the form, form count of 1)

~NORMAL

SC 55

SR 31

SC 15

SR 40

CO

Figure 13. Sample Code 128B Bar Codes

140
Code 128A, 128B and 128C

Code 128C Example


Figure 14 illustrates a horizontal and vertical Code 128C bar code generated
by the following program:
~CREATE;128C (Enter Create Form Mode)
BARCODE (Bar Code command)
C128C;DARK;35;15 (Dark Code 128C at SR 35, SC 15)
*1234567890* (Data Field)
PDF (Printable Data Field)
STOP (Ends Bar Code command)
BARCODE (New Bar Code command)
C128C;VSCAN;H12;DARK;27;50 (Vert. Dark C128C, H 1.2 at SR 27,
SC 50)
*1234567890* (Data Field)
PDF (Printable Data Field)
STOP (Ends Bar Code command)
END (Terminates Create Form Mode)
~EXECUTE;128C;1 (Execute the form, form count of 1)

~NORMAL

SC 50

SR 27

SC 15

SR 35

Figure 14. Sample Code 128C Bar Codes

141
Chapter 3 Bar Codes

Data Matrix
Data Matrix is a two-dimensional barcode containing small dark and light
square data modules. It has a finder pattern of two solid lines and two
alternating dark and light lines on its perimeter. This barcode is capable of
storing up to 3116 numeric digits, 2335 alphanumeric in a symbol 144
modules square. It is also capable of encoding in a number of different
schemes.
Two main subsets for Data Matrix exist, which differ in terms of error
correction. The first subset uses ECC-000 through ECC-140 and uses
convolution coding for error correction. The second subset is ECC-200, which
uses Reed-Solomon error correction techniques. ECC-200 format is
recommended.

Quiet Zone
The minimum quiet zone is one module width on all four sides.

Readable Data
There is no printable data field allowed for the Data Matrix barcode.

Data Field
The data allowed within the data field depends on the error correction subset
you are using. See the data field description on page 144 for details.

Data Matrix Command Format


BARCODE
DATAMATRIX; [DIR;] [X[D]n;] [Cn;] [Rn;] [ECCn;] [IDn;] [BFn;L;]
[DARK;] SR; SC
(D)data field(D)
STOP
BARCODE The Bar Code command; enter BARCODE.
DATAMATRIX Designates bar code type Data Matrix; enter
DATAMATRIX.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
X[D]n Optional parameter designating the x-dimension
width of a single square data module in IGP dots, or
printer dots if the D option is used. Enter X, then the
optional D parameter if necessary, then a value
from 1 through 1000 printer dots. The y-dimension
is calculated by converting the printer dots in the x-
direction to printer dots in the y-direction.

142
Data Matrix

Cn Optional parameter that sets the number of


columns in the symbol. A value of 0 (the default)
automates this process. See Table 20 through
Table 26 for the combination of columns and rows
allowed and the maximum amount of data that can
be encoded.
Rn Optional parameter that specifies the number of
rows in the symbol. A value of 0 (the default)
automates this process. See Table 20 through
Table 26 for the combination of columns and rows
allowed and the maximum amount of data that can
be encoded.
ECCn Optional parameter that specifies the error
correction level. Enter ECC, then one of the
following values: 0, 50, 80, 100, 140, or 200. Levels
0 through 140 use increasing levels of
convolutional error coding. Level 200 (the default)
uses Reed-Solomon block error correction and is
the recommended level of error correction.
IDn Optional parameter that specifies the format ID.
This field only has meaning for ECC-000 through
ECC-140 and is ignored for ECC-200. This
specifies the type of data that is encoded in the
symbol. Enter ID, then a value from 1 through 6.
The default value is 3. Table 17 shows the type of
data encoded for the various format IDs.
BFn;L Optional parameters for assigning a dynamic bar
code data field location on a form and for
designating the length of the data field. With these
parameters, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. Replace L with a number equaling the total
number of characters in the field. (The actual
data provided dynamically during the Execute
Form Mode can be less than L.)
d. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn;L

143
Chapter 3 Bar Codes

parameters are used. However, refer to the


data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field, but it
will not print with the data.
data field For ECC-000 through ECC-140, the data allowed
within the data field depends on the format ID
parameter. The allowed data for these ECC types
are given in Table 17. For Format ID #5 which
accepts control characters and Format ID #6 which
accepts codes greater than 127, you can enter
these values using a SO character followed by an
identifier. When encoding special characters, you
must enter a SO character followed by at least one
other identifier and its field (i.e., ASCII 254 =
^d254). This is only considered to be one
character, even though the data field holds 5
characters (^d254). If you intend to code the SO
character by itself (no special encoding), then the
SO character should be followed by another SO
character. Table 18 illustrates how to use these
special characters.

144
Data Matrix

Table 17. Data Field for ECC-000 through ECC-140

Format ID # Data

1 Numeric 0-9, Space

2 Uppercase A-Z, Space


3 Uppercase A-Z, Numeric 0-9, Space

4 Uppercase A-Z, Numeric 0-9, Space, Period, Comma,


Minus, Forward Slash

5 Full 128 ASCII set (0-127)

6 User defined (0-255)

For ECC-200, format ID has no meaning and is


ignored. Instead, you can enter data of any type
(ASCII 0-255) and it will be automatically optimized
into the proper encoding scheme. See the “Special
Characters Using SO” section for examples of
methods to enter special characters such as FNC1
into the data stream.
The maximum number of data depend on three
factors: (1) size of the matrix, (2) ECC level, and (3)
type of data. The size of the matrix is automatically
chosen by IGP unless the parameters of row and/or
column are supplied (see Cn and Rn parameters).
The maximum number of data can then be found
by finding the proper table based on ECC type. For
each different valid matrix combination, the
maximum number of data are given for numeric,
alphanumeric, and full 8-byte data. You do not have
to enter the maximum: a pad character is
automatically inserted into the barcode when
necessary.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

145
Chapter 3 Bar Codes

Special Characters Using SO


Table 18 and Table 19 illustrate the methods of encoding special characters,
and shows the special characters supported. These special characters are
identified by using SO. The default value for the SO character is hex 0E, but
this value can be changed using the printer's front panel (see User's Guide for
details). Examples are given with the SO character represented by “^” for
clarity.

Table 18. Special Character Encoding (All ECC Levels)

Special Characters Method Example

Control Characters 0-31 <SO> + @ ... <SO> + _ NUL = ^@, BEL = ^G

Any ASCII value 0 - 255 <SO> + d + 3 digit ASCII 10 = ^d010

ASCII value SO <SO> + <SO> ^^

Table 19. Special Character Encoding (ECC-200 Only)

Special Characters Method Example

FNC1 <SO> + 1. If FNC1 is 2nd 01^1<Data>


codeword, previous data must be
A-Z, a-z, or 01-99

Structured Append <SO> + 2 + 3 digit number ^2042<File ID>


representing symbol sequence
and file identifier

Reader Programming <SO> + 3 ^3<Data>


Must be first in the data field

MH10.8.3 Abbreviated <SO> + 5 ^5<Data>


Format 05 Header Must be first in the data field

MH10.8.3 Abbreviated <SO> + 6 ^6<Data>


Format 06 Header Must be first in the data field

Extended Channel <SO> + 7 + 6 digit EC ^7112233<Data>


Interpretation (000000-999999)

146
Data Matrix

Symbol Characteristics
The following tables illustrate the maximum data capacities for the Data
Matrix barcode as a function of symbol size (column x row) and data type.
Note that all ECC-000 through ECC-140 symbols are square and always have
an odd number of rows and columns. ECC-200 symbols have square or
rectangular sizes and have an even number of rows and columns.

Table 20. ECC-000 Characteristics

Maximum Maximum Maximum 8-Byte


(Row x Column)
Numeric Alphanumeric Data
9X9 3 characters 2 characters 1 character
11 X 11 12 characters 8 characters 5 characters
13 X 13 24 characters 16 characters 10 characters
15 X 15 37 characters 25 characters 16 characters
17 X 17 53 characters 35 characters 23 characters
19 X 19 72 characters 48 characters 31 characters
21 X 21 92 characters 61 characters 40 characters
23 X 23 115 characters 76 characters 50 characters
25 X 25 140 characters 93 characters 61 characters
27 X 27 168 characters 112 characters 73 characters
29 X 29 197 characters 131 characters 86 characters
31 X 31 229 characters 153 characters 100 characters
33 X 33 264 characters 176 characters 115 characters
35 X 35 300 characters 200 characters 131 characters
37 X 37 339 characters 226 characters 148 characters
39 X 39 380 characters 253 characters 166 characters
41 X 41 424 characters 282 characters 185 characters
43 X 43 469 characters 313 characters 205 characters
45 X 45 500 characters 345 characters 226 characters
47 X 47 560 characters 378 characters 248 characters
49 X 49 596 characters 413 characters 271 characters

147
Chapter 3 Bar Codes

Table 21. ECC-050 Characteristics

Maximum Maximum Maximum 8-Byte


(Row x Column)
Numeric Alphanumeric Data
11 X 11 1 character 1 character not supported
13 X 13 10 characters 6 characters 4 characters
15 X 15 20 characters 13 characters 9 characters
17 X 17 32 characters 21 characters 14 characters
19 X 19 46 characters 30 characters 20 characters
21 X 21 61 characters 41 characters 27 characters
23 X 23 78 characters 52 characters 34 characters
25 X 25 97 characters 65 characters 42 characters
27 X 27 118 characters 78 characters 51 characters
29 X 29 140 characters 93 characters 61 characters
31 X 31 164 characters 109 characters 72 characters
33 X 33 190 characters 126 characters 83 characters
35 X 35 217 characters 145 characters 95 characters
37 X 37 246 characters 164 characters 108 characters
39 X 39 277 characters 185 characters 121 characters
41 X 41 310 characters 206 characters 135 characters
43 X 43 344 characters 229 characters 150 characters
45 X 45 380 characters 253 characters 166 characters
47 X 47 418 characters 278 characters 183 characters
49 X 49 457 characters 305 characters 200 characters

Table 22. ECC-080 Characteristics

Maximum Maximum Maximum 8-Byte


(Row x Column)
Numeric Alphanumeric Data
13 X 13 4 characters 3 characters 2 characters
15 X 15 13 characters 9 characters 6 characters
17 X 17 24 characters 16 characters 10 characters
19 X 19 36 characters 24 characters 16 characters
21 X 21 50 characters 33 characters 22 characters
23 X 23 65 characters 43 characters 28 characters
25 X 25 82 characters 54 characters 36 characters
27 X 27 100 characters 67 characters 44 characters
29 X 29 120 characters 80 characters 52 characters
31 X 31 141 characters 94 characters 62 characters
33 X 33 164 characters 109 characters 72 characters
35 X 35 188 characters 125 characters 82 characters
37 X 37 214 characters 143 characters 94 characters
39 X 39 242 characters 161 characters 106 characters
41 X 41 270 characters 180 characters 118 characters
43 X 43 301 characters 201 characters 132 characters

148
Data Matrix

Table 22. ECC-080 Characteristics

Maximum Maximum Maximum 8-Byte


(Row x Column)
Numeric Alphanumeric Data
45 X 45 333 characters 222 characters 146 characters
47 X 47 366 characters 244 characters 160 characters
49 X 49 402 characters 268 characters 176 characters

Table 23. ECC-100 Characteristics

Maximum Maximum Maximum 8-Byte


(Row x Column)
Numeric Alphanumeric Data
13 X 13 1 character 1 character not supported
15 X 15 8 characters 5 characters 3 characters
17 X 17 16 characters 11 characters 7 characters
19 X 19 25 characters 17 characters 11 characters
21 X 21 36 characters 24 characters 15 characters
23 X 23 47 characters 31 characters 20 characters
25 X 25 60 characters 40 characters 26 characters
27 X 27 73 characters 49 characters 32 characters
29 X 29 88 characters 59 characters 38 characters
31 X 31 104 characters 69 characters 62 characters
33 X 33 121 characters 81 characters 53 characters
35 X 35 140 characters 93 characters 61 characters
37 X 37 159 characters 106 characters 69 characters
39 X 39 180 characters 120 characters 78 characters
41 X 41 201 characters 134 characters 88 characters
43 X 43 224 characters 149 characters 98 characters
45 X 45 248 characters 165 characters 108 characters
47 X 47 273 characters 182 characters 119 characters
49 X 49 300 characters 200 characters 131 characters

Table 24. ECC-140 Characteristics

Maximum Maximum Maximum 8-Byte


(Row x Column)
Numeric Alphanumeric Data
17 X 17 2 characters 1 character 1 character
19 X 19 6 characters 4 characters 3 characters
21 X 21 12 characters 8 characters 5 characters
23 X 23 17 characters 11 characters 7 characters
25 X 25 24 characters 16 characters 10 characters
27 X 27 30 characters 20 characters 13 characters
29 X 29 38 characters 25 characters 16 characters
31 X 31 46 characters 30 characters 20 characters
33 X 33 54 characters 36 characters 24 characters
35 X 35 64 characters 42 characters 28 characters

149
Chapter 3 Bar Codes

Table 24. ECC-140 Characteristics

Maximum Maximum Maximum 8-Byte


(Row x Column)
Numeric Alphanumeric Data
37 X 37 73 characters 49 characters 32 characters
39 X 39 84 characters 56 characters 36 characters
41 X 41 94 characters 63 characters 41 characters
43 X 43 106 characters 70 characters 46 characters
45 X 45 118 characters 78 characters 51 characters
47 X 47 130 characters 87 characters 57 characters
49 X 49 144 characters 96 characters 63 characters

Table 25. ECC-200 Square Characteristics

Maximum Maximum Maximum 8-Byte


(Row x Column)
Numeric Alphanumeric Data
10 X 10 6 characters 3 characters 1 character
12 X 12 10 characters 6 characters 3 characters
14 X 14 16 characters 10 characters 6 characters
16 X 16 24 characters 16 characters 10 characters
18 X 18 36 characters 25 characters 16 characters
20 X 20 44 characters 31 characters 20 characters
22 X 22 60 characters 43 characters 28 characters
24 X 24 72 characters 52 characters 34 characters
26 X 26 88 characters 64 characters 42 characters
32 X 32 124 characters 91 characters 60 characters
36 X 36 172 characters 127 characters 84 characters
40 X 40 228 characters 169 characters 112 characters
44 X 44 288 characters 214 characters 142 characters
48 X 48 348 characters 259 characters 172 characters
52 X 52 408 characters 304 characters 202 characters
64 X 64 560 characters 418 characters 278 characters
72 X 72 736 characters 550 characters 366 characters
80 X 80 912 characters 682 characters 454 characters
88 X 88 1152 characters 862 characters 574 characters
96 X 96 1392 characters 1042 characters 694 characters
104 X 104 1632 characters 1222 characters 814 characters
120 X 120 2100 characters 1573 characters 1048 characters
132 X 132 2608 characters 1954 characters 1302 characters
144 X 144 3116 characters 2335 characters 1556 characters

150
Data Matrix

Table 26. ECC-200 Rectangular Characteristics

Maximum Maximum Maximum 8-Byte


(Row x Column)
Numeric Alphanumeric Data
8 X 18 10 characters 6 characters 3 characters
8 X 32 20 characters 13 characters 8 characters
12 X 26 32 characters 22 characters 14 characters
12 X 36 44 characters 31 characters 20 characters
16 X 36 64 characters 46 characters 30 characters
16 X 48 98 characters 72 characters 47 characters

Data Matrix Example


Figure 15 illustrates a Data Matrix bar code generated by the following
program:
~CREATE;DATAMATRIX (Enters Create Form mode)
BARCODE (Bar Code command)
DATAMATRIX;XD8;C18;R18;ECC200;ID5;10;10
(Data Matrix barcode, x-dimension
width of 8 printer dots, 18 columns
and 18 rows, Error Correction level
200, SR 10, SC 10)
*A1B2C3D4E5F6G7H8I9J0* (Data Field)
STOP (Ends Bar Code command)
END (Terminates Create Form mode)
~EXECUTE;DATAMATRIX;1 (Execute the form, form count of 1)

~NORMAL

SC 10

SR 10

Figure 15. Data Matrix Example

151
Chapter 3 Bar Codes

EAN 8
The EAN 8 bar code structure is shown in Figure 16 and described on the
following pages.

SR, SC START CODE CENTER CODE STOP CODE


POSITION

QUIET LEFT DATA RIGHT DATA QUIET 2- or 5-


FIELD
Normal ZONE FIELD ZONE DIGIT
ADD-ON
HEIGHT
CODE

CHECK
DIGIT OPTIONAL READABLE CHECK
FIELD DATA FIELD DIGIT
SR, SC FIELD
POSITION

2- or 5- QUIET QUIET
INV DIGIT
ADD-ON
ZONE ZONE HEIGHT
CODE RIGHT DATA LEFT DATA
FIELD FIELD

STOP CODE CENTER CODE START CODE

2- or 5- QUIET
DIGIT SR, SC
ADD-ON POSITION ZONE
CODE

CCW START
CODE
CW
QUIET
SR, SC ZONE
POSITION LEFT
DATA
STOP
CODE FIELD
CHECK
DIGIT OPTIONAL
FIELD READABLE CENTER
DATA CODE
RIGHT FIELD
DATA
FIELD
RIGHT
OPTIONAL DATA
CENTER READABLE FIELD
CODE DATA
FIELD CHECK
DIGIT
FIELD
LEFT STOP
DATA CODE
FIELD
QUIET
ZONE

START
CODE
2- or 5-
DIGIT
QUIET ADD-ON
ZONE CODE

HEIGHT HEIGHT

Figure 16. EAN 8 Structure

152
EAN 8

Quiet Zone
Both ends of the bar code structure have blank quiet zones. The quiet zones
must be at least 0.25 inches wide and completely blank to ensure accurate
reading of the start/stop codes and to prevent adjacent bar codes from
overlapping. The IGP automatically produces the left quiet zone; you must
provide sufficient space on the form for the right quiet zone.

Start/Center/Stop Codes
The start/center/stop codes are special character codes marking those
portions of the bar code. These codes are automatically provided.

Data Field
The bar code symbol uses a series of varying width bars and spaces to
represent a limited character set (numbers 0-9 and Special Characters Start,
Center, and Stop). The bars and spaces vary in width from one through four
modules. Each character consists of two bars and two spaces that total seven
modules. The symbol coding of the left data field is different from the right
data field to permit read direction sensing.
The optional 2- or 5-digit add-on data, placed within the quotes at the end of
the bar code, typically identifies a periodical issue number or price,
respectively.

Readable Data
The human readable data field provides a readable interpretation of the bar
code data. It can either be suppressed or printed below the bar code symbol.

Check Digit
The modulo-10 check digit is automatically calculated and inserted in the bar
code symbol. The check digit verifies accurate scanning.

153
Chapter 3 Bar Codes

EAN 8 Command Format


BARCODE
EAN8 [+n]; [DIR;] [SCB;] [MAG;] [Hn[.m];] [BFn;] [DARK;] SR; SC
(D)data field(D)
[PDF [;LOC] [;FONT]]
STOP
BARCODE The Bar Code command; enter BARCODE.
EAN8 Designates bar code type EAN 8; enter EAN8.
+n Optional parameter to provide a 2- or 5-digit add-on
code at the end of the bar code data field. Enter a
plus sign (+) and a value of 2 or 5. The first bar of
the add-on code is separated by nine modules from
the last bar of the EAN symbol and a left guard
pattern. No center or right guard pattern exists.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
SCB This option shortens the length of the center guard
bars, which are normally full length. Enter SCB.
MAG Optional parameter to magnify (horizontally
expand) the bar code symbol. The magnification
default value is X1. Increasing the magnification
adjusts printed character density as shown in Table
9 on page 99. You can also use XR or XRD as
defined on page 97. (You must specify 8 digits for
MAG for variable ratio.)
Hn[.m] Optional parameter to adjust the overall height
(vertical expansion) of the bar code symbol
(including the upper and lower 0.1-inch guard
bands and any human readable data). Height
adjustments are made in 0.1-inch increments; enter
H and a value from 4 through 99 to select height
adjustments from 0.4 through 9.9 inches. The
default value is 1.3 inches.
[.m] is an additional number of dots for the bar code
height. (Dots are in the current dot scale.)
BFn Optional parameter for assigning a dynamic bar
code data field location on a form. With this
parameter, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The

154
EAN 8

SR and SC parameters specify the exact


location of the bar code field identified by n.
c. The length of the data field need not be
specified since it is fixed at seven digits, plus
any add-on data.
d. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field, but it is
not printed with the data.
data field The characters of the bar code data are restricted
to exactly seven digits. If the 2- or 5-digit add-on
data option is used, include this data at the end of
the data field. The characters available for the data
field are 0 through 9 (hex 30 through 39).
PDF Optional parameter to print the human readable
data field. The data field prints automatically unless
the PDF-suppress command is specified in the
FONT parameter. The human readable data field
can be printed above or below the bar code
symbol. This parameter is not allowed if a null data
field is specified. If no PDF command is entered,
the data field will print automatically in the default
OCR-B font.

155
Chapter 3 Bar Codes

LOC Optional parameter to identify the location of the


printable data field. The default value is B, locating
the human readable data below the bar code. A
locates the printable data field above bar code. To
compensate for printing the 0.1-inch high data, the
height of the bar code body is reduced 0.1 inch.
FONT Optional parameter to select the font for the human
readable data field. Enter O to select OCR-A font;
enter X to select OCR-B font; enter N to select 10
cpi; enter P to select 12 cpi; enter Q to select 13
cpi; enter R to select 15 cpi; enter T to select 17 cpi;
enter V to select 20 cpi. Enter S to suppress
printing the data field and the trailing lower portions
of the EAN bar code.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

EAN 8 Example
Figure 17 illustrates a horizontal and vertical EAN 8 bar code generated by
the following program:
~CREATE;EAN8 (Enter Create Form Mode)
BARCODE (Bar Code command)
EAN8+2;H9;DARK;33;15 (Dark Code EAN 8, 2-digit add-on,
H 0.9, SR 33, SC 15)
*123456722* (Data Field + 2-digit add-on Data Field)
PDF (Printable Data Field)
STOP (Ends Bar Code command)
BARCODE (New Bar Code command)
EAN8+2;VSCAN;H10;DARK;33;55
(Vertical Dark EAN 8, 2-digit add-on,
H 1.0, SR 33, SC 55)
*123456722* (Data Field + 2-digit add-on Data Field)
PDF (Printable Data Field)
STOP (Ends Bar Code command)
END (Terminates Create Form Mode)
~EXECUTE;EAN8;1 (Execute the form, form count of 1)

~NORMAL

SC 55

SC 15

SR 33 SR 33

Figure 17. Sample EAN 8 Bar Codes

156
EAN 13

EAN 13
The EAN 13 bar code structure is shown in Figure 18 and described on the
following pages.

SR, SC START CODE CENTER CODE STOP CODE


POSITION

QUIET LEFT DATA


Normal ZONE FIELD
RIGHT DATA
FIELD
QUIET
ZONE
2- or 5-
DIGIT HEIGHT
ADD-ON
NUMBER CODE
SYSTEM N
CHARACTER

CHECK NUMBER
DIGIT CHECK SYSTEM
OPTIONAL READABLE
FIELD DIGIT CHARACTER
DATA FIELD
SR, SC FIELD
POSITION

N
INV 2- or 5-
DIGIT
QUIET
ZONE
QUIET
ZONE HEIGHT
ADD-ON
CODE RIGHT DATA LEFT DATA
FIELD FIELD

STOP CODE CENTER CODE START CODE

SR, SC
POSITION

NUMBER N
2- or 5- SYSTEM
DIGIT QUIET
CHARACTER
ADD-ON ZONE
CODE
START
CODE

QUIET
SR, SC ZONE
POSITION LEFT
STOP DATA
CODE FIELD
CHECK
DIGIT
FIELD OPTIONAL
READABLE CENTER
RIGHT DATA CODE
DATA FIELD
FIELD
CCW RIGHT CW
DATA
CENTER OPTIONAL FIELD
CODE READABLE
DATA CHECK
FIELD DIGIT
FIELD
LEFT STOP
DATA CODE
FIELD

QUIET
ZONE
START
CODE
2- or 5-
DIGIT
QUIET ADD-ON
ZONE NUMBER CODE
N SYSTEM
CHARACTER
HEIGHT HEIGHT

Figure 18. EAN 13 Structure

157
Chapter 3 Bar Codes

Quiet Zone
Quiet zones extend on both ends of the bar code to permit the scan to begin
and end in a blank area. The IGP automatically produces an 11-module wide
left quiet zone; you are responsible for providing sufficient space (minimum of
seven modules) on the form for the right quiet zone. The number system
character is also printed automatically in the left quiet zone.

Start/Center/Stop Codes
The start/center/stop codes are special character codes marking those
portions of the bar code. These codes are automatically provided.

Number System Character


The number system character field allows you to provide a code to a class or
type of item. The first character in the data field is used as the number system
character.

Data Field
The bar code symbol uses a series of varying width bars and spaces to
represent a limited character set (numbers 0-9 and Special Characters Start,
Center, and Stop). The bars and spaces vary in width from one through four
modules. Each character consists of two bars and two spaces that total seven
modules. The symbol coding of the left data field is different from the right
data field to permit read direction sensing.
The optional 2 or 5-digit add-on data field is placed within the quotes at the
end of the bar code data and typically identifies a periodical issue number or
price, respectively.

Readable Data
The human readable data field provides a readable interpretation of the bar
code data. It can either be suppressed or printed below the bar code symbol.

Check Digit
The modulo-10 check digit is automatically calculated and inserted in the bar
code symbol. The check digit verifies accurate scanning. The number system
character is included in the check digit algorithm.

158
EAN 13

EAN 13 Command Format


BARCODE
EAN13 [+n]; [DIR;] [SCB;] [MAG;] [Hn[.m];] [BFn;] [DARK;]SR;SC
(D)data field(D)
[PDF [;LOC] [;FONT]]
STOP
BARCODE The Bar Code command; enter BARCODE.
EAN13 Designates bar code type EAN 13; enter EAN13.
+n Optional parameter to provide a 2- or 5-digit add-on
code at the end of the bar code data field. Enter a
plus sign (+) and a value of 2 or 5. The first bar of
the add-on code is separated by nine modules from
the last bar of the EAN symbol and a left guard
pattern. No center or right guard pattern exists.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
SCB This option shortens the length of the center guard
bars, which are normally full length. Enter SCB.
MAG Optional parameter to magnify (horizontally
expand) the bar code symbol. The magnification
default value is X1. Increasing the magnification
adjusts printed character density as shown in Table
9 on page 99. You can also use XR or XRD as
defined on page 97. (You must specify 8 digits for
MAG for variable ratio.)
Hn[.m] Optional parameter to adjust the overall height
(vertical expansion) of the bar code symbol
(including the upper and lower 0.1-inch guard
bands and any human readable data). Height
adjustments are made in 0.1-inch increments; enter
H and a value from 4 through 99 to select height
adjustments from 0.4 through 9.9 inches. The
default value is 1.3 inches. [.m] is an additional
number of dots for the bar code height. (Dots are in
the current dot scale.)
BFn Optional parameter for assigning a dynamic bar
code data field location on a form. With this
parameter, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The

159
Chapter 3 Bar Codes

SR and SC parameters specify the exact


location of the bar code field identified by n.
c. The length of the data field need not be
specified, since it is fixed at 12 digits, plus any
add-on data.
d. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field, but it is
not printed with the data.
data field Enter the characters of the bar code data, restricted
to exactly 12 digits. If the 2- or 5-digit add-on data
option is used, include this data at the end of the
data field. The characters available for the data
field are 0 through 9 (hex 30 through 39). The first
character is interpreted as the number system
character.

160
EAN 13

The left side of the data field (or lower side on


vertically oriented symbols) can be encoded in
either format A or format B as determined by the
value of the number system character. (A bar code
character is not produced for the number system
character.) The number system character is
derived from the left side data field encoding. The
right side of the data field (or upper side on
vertically oriented symbols) and check digit are
always encoded in format C. Table 27 defines the
left side data field format based on the number
system character.
PDF Optional parameter which affects printing of the
human readable data field. The data field will print
automatically in the OCR-B font (default) unless the
PDF-suppress command is specified in the FONT
parameter. The human readable data field can be
printed above or below the bar code symbol. This
parameter is not allowed if a null data field is
specified.
LOC Optional parameter to identify the location of the
printable data field. The default value is B, locating
the human readable data below the bar code. A
locates the printable data field above bar code. To
compensate for printing the 0.1-inch high data, the
height of the bar code body is reduced 0.1 inch.
FONT Optional parameter to select the font for the human
readable data field. Enter O to select OCR-A font;
enter X to select OCR-B font; enter N to select 10
cpi; enter P to select 12 cpi; enter Q to select 13
cpi; enter R to select 15 cpi; enter T to select 17 cpi;
enter V to select 20 cpi. Enter S to suppress
printing the data field and the trailing lower portions
of the EAN bar code.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

161
Chapter 3 Bar Codes

Table 27. Left Side Data Field Format

Format for Left Side Data Field Positions

Number System
12 11 10 9 8 7
Character Value

0 A A A A A A

1 A A B A B B

2 A A B B A B

3 A A B B B A

4 A B A A B B

5 A B B A A B
6 A B B B A A

7 A B A B A B

8 A B A B B A

9 A B B A B A

EAN 13 Example
Figure 19 illustrates a horizontal and vertical EAN 13 bar code generated by
the following program:
~CREATE;EAN13 (Enter Create Form Mode)
BARCODE (Bar Code Command)
EAN13+5;DARK;28;15 (Dark Code EAN 13, 5-digit add on,
at SR 28, SC 15)
*12345678987655555* (Data Field + 5-digit add-on Data Field)
PDF (Printable Data Field)
STOP (Ends Bar Code command)
BARCODE (New Bar Code command)
EAN13+5;VSCAN;H12;DARK;27;39
(Vertical Dark EAN 13, 2-digit add on,
H 1.2, at SR 27, SC 39)
*12345678987655555* (Data Field + 5-digit add on Data Field)
PDF (Printable Data Field)
STOP (Ends Bar Code command)
END (Terminates Create Form Mode)
~EXECUTE;EAN13;1 (Execute the form, form count of 1)

~NORMAL

162
EAN 13

SC 39

SC 15

SR 27
SR 28

Figure 19. Sample EAN 13 Bar Codes

163
Chapter 3 Bar Codes

FIM
The FIM (Facing Identification Mark) bar code structure is shown in Figure 20
and Figure 21 and described on the following pages. The left boundary must
begin 3 inches from the right edge of the mail piece. The right-most bar must
be 2 inches ± 1/8-inch from the right edge of the mail piece. Bars must be 5/8-
inch ± 1/8-inch tall; the top of the bars must be no lower than 1/8-inch from
the top edge of the mail piece (and may touch the top edge of the mail piece).
The bar code baseline must be within 1/8-inch from the bottom edge of the
clear zone.

SR, SC 3"
POSITION
NOTE: Illustration is not to scale 2"- 1-7/8"
1-1/4" 1-3/4"

1/8"
Return Address Area
5/8" Clear
Zone

(Optional Line) NON-ADDRESS DATA


(Top Line) NAME OF RECIPIENT
(Optional Line) INFORMATION/ATTENTION LINE
(Line Above Last) DELIVERY ADDRESS
(Last Line) POST OFFICE STATE ZIP

Figure 20. FIM Structure

164
FIM

1-3/4"

SR, SC
POSITION
3"

INFORMATION/ATTENTION LINE

POST OFFICE STATE ZIP


1-1/4" 1/8" Clear
Zone

NON-ADDRESS DATA
NAME OF RECIPIENT

DELIVERY ADDRESS
5/8"

(Optional Line)
(Top Line)
(Optional Line)
(Line Above Last)
(Last Line)
NOTE: Illustration is not to scale

Return Address Area

Figure 21. FIM Structure (VSCAN or CCW)


NOTE: Additional information regarding FIM bar code requirements can be
obtained from the U.S. Postal Service's Publication 25: A Guide to
Business Mail Preparation.

165
Chapter 3 Bar Codes

Clear Zone
The bar code structure requires a completely blank, 1/4-inch wide, 5/8-inch
tall clear zone, reserved for only the appropriate FIM pattern. You must
provide sufficient space for this zone.

Start/Stop Code
The start/stop code is a unique character identifying the leading and trailing
end of the bar code. The start/stop code is automatically produced with each
bar code. The start/stop code structure permits bidirectional bar code
scanning.

Data Field
The bar code symbol uses a nine-position bar/no-bar pattern of tall (full) bars
of uniform height. Minimum height must be 5/8-inch ± 1/8-inch. (Bar height
may be longer to wrap around the top of the envelope.) Minimum bar width is
.031-inch ± .008-inch. Spacing (pitch) between each bar/no-bar must be 1/16-
inch. Bar tilt (slant) can vary ± 5 degrees (relative to a line perpendicular to the
top edge of the envelope).

FIM Command Format


BARCODE
FIM; [DIR;] [Hn[.m];] [BFn;] [DARK;] SR;SC
(D)data field(D)
STOP
BARCODE The Bar Code command; enter BARCODE.
FIM Designates bar code type FIM; enter FIM.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
Hn[.m] Optional parameter to adjust the overall height
(vertical expansion) of the bar code symbol
(including the upper and lower 0.1-inch guard
bands and any human readable data). Height
adjustments are made in 0.1-inch increments; enter
H and a value from 6 through 99 to select height
adjustments from 0.6 to 9.9 inches. The default
value is 0.6 inches.
[.m] is an additional number of dots for the bar code
height. (Dots are in the current dot scale.)
BFn Optional parameter for assigning a dynamic bar
code data field location on a form. With this
parameter, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps:

166
FIM

a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn
parameters are used. Refer to the data field
description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value 1/8-inch from the top edge of the mail piece.
Character row or dot row is specified based on the
Scale command (page 89), or use the CP.DP
format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field, but it is
not printed with the data.
data field A single-character data field to designate one of
four available FIM patterns: A, B, C, or D. Based on
your application (check with your Postal Service for
more information), enter one of the following FIM
types:
A Used only on courtesy reply envelopes bearing a
preprinted POSTNET bar code (page 208); it
requires a luminescent stamp or meter mark to be
accepted in the facer/canceler.
B Used on Business Reply Mail, Penalty Mail, and
Franked Mail without a preprinted POSTNET bar
code, and does not require luminescent indicia.
C Used on Business Reply Mail, Penalty Mail, or
Franked Mail bearing a preprinted POSTNET bar
code (page 208).

167
Chapter 3 Bar Codes

D Used on OCR readable mail (usually courtesy


reply window envelopes) without a preprinted
POSTNET bar code.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

FIM Example
Figure 22 below illustrates a horizontal FIMB bar code generated by the
following program without the POSTNET preprinted bar code (POSTNET is
discussed on page 208.)
~CREATE;FIMB (Enter Create Form Mode)
ALPHA (Alpha command)
23;11;0;0;*ACME MOTOR, INC.*
25;11;0;0;*ATTN: CUSTOMER SERVICE*
27;11;0;0;*P.O. BOX 200*
29;11;0;0;*USCITY, CA 12345-6789*
STOP (Ends Alpha command)
BARCODE (Bar Code command)
FIM;DARK;15;22 (Dark FIM Bar Code at SR 15, SC 22)
*B* (Data field selecting FIMB Bar Code)
STOP (Ends FIMB Bar Code command)
END (Terminates Create Form Mode)
~EXECUTE;FIMB;1 (Executes the form, form count of 1)

~NORMAL

SR 15

SC 22

Figure 22. Sample FIMB Bar Code

168
FIM

Figure 23 illustrates a horizontal FIMC bar code generated by the following


program and bears the preprinted POSTNET bar code.
~CREATE;FIMC (Enter Create Form Mode)
ALPHA (Alpha command)
23;11;0;0;*ACME MOTOR, INC.*
25;11;0;0;*ATTN: CUSTOMER SERVICE*
27;11;0;0;*P.O. BOX 2000*
29;11;0;0;*USCITY, CA 12345-6789*
STOP (Ends Alpha command)
BARCODE (Bar Code command)
FIM;DARK;17;25 (Dark FIM Bar Code at SR 17, SC 25)
*C* (Data field selecting FIMC Bar Code)
STOP (Ends Bar Code command)
BARCODE (New Bar Code command)
POSTNET;DARK;33.3;15 (Dark POSTNET Bar Code at SR 33.3, SC 15)
*927149559* (POSTNET data field)
STOP (Ends POSTNET Bar Code command)
END (Terminates Create Form Mode)
~EXECUTE;FIMC;1 (Executes the form, form count of 1)

~NORMAL

SR 17

SC 25

SC 15

SR 33.3

Figure 23. Sample FIMC Bar Code

169
Chapter 3 Bar Codes

Interleaved 2/5 (I-2/5), German I-2/5, and ITF-14


The structure for the I-2/5, German I-2/5 and ITF-14 bar codes is shown in
Figure 24 and described on the following pages.

SR, SC QUIET QUIET


SR, SC
POSITION ZONE POSITION ZONE

STOP START
CODE CODE

OPTIONAL
CHECK
DIGIT
CCW CW

DATA DATA
FIELD OPTIONAL FIELD
READABLE
DATA
FIELD

OPTIONAL
CHECK
DIGIT
START STOP UPPER
UPPER LOWER LOWER
CODE CODE GUARD
GUARD GUARD GUARD
BAND BAND BAND BAND
QUIET QUIET
ZONE ZONE

HEIGHT HEIGHT

OPTIONAL
CHECK DIGIT
SR, SC
POSITION
UPPER GUARD BAND

QUIET START STOP QUIET


Normal ZONE CODE
DATA FIELD
CODE ZONE HEIGHT

LOWER GUARD BAND

OPTIONAL READABLE DATA FIELD

SR, SC
POSITION
OPTIONAL READABLE DATA FIELD

LOWER GUARD BAND

HEIGHT
QUIET STOP START QUIET
INV ZONE CODE
DATA FIELD
CODE ZONE

UPPER GUARD BAND

OPTIONAL
CHECK DIGIT

Figure 24. I-2/5, German I-2/5 and ITF-14 Structure

170
Interleaved 2/5 (I-2/5), German I-2/5, and ITF-14

Quiet Zone
Both ends of the bar code structure have blank quiet zones. The quiet zones
must be at least 0.25 inches wide and completely blank to ensure accurate
reading of the start/stop codes and to prevent adjacent bar codes from
overlapping. You must provide sufficient space on the form for the quiet
zones.

Start/Stop Codes
Unique start and stop codes permit bidirectional scanning. Both start and stop
codes contain bars and spaces. They are automatically produced.

Data Field
The bar code symbol uses a series of wide and narrow bars and spaces to
represent numeric characters. The structure is 2 wide elements (bars or
spaces) and 3 narrow elements. In the bar code, two characters are
interleaved (paired); bars are used to represent the first character in the pair
and spaces are used to represent the second character in the pair.
German I-2/5 and ITF-14 are special cases of Interleaved 2/5 bar codes.
While Interleaved 2/5 has a variable data field, German I-2/5 is restricted to 11
or 13 digits, and ITF-14 is restricted to 13 digits.

Readable Data
The optional readable data field provides a readable interpretation of the bar
code data. It can be printed above or below the bar code symbol.

Check Digit
The modulo-10 check digit can be inserted into the bar code to verify accurate
scanning.
Interleaved 2/5 can be printed with or without a check digit, but German I-2/5
and ITF-14 have the check digit automatically included.

171
Chapter 3 Bar Codes

I-2/5, German I-2/5, and ITF-14 Command Format


BARCODE
I-2/5 [CD]; or
I25GERMAN; or
ITF14; [DIR;] [MAG;] [Hn[.m];] [BFn;L;] [DARK;] SR; SC
(D)data field(D)
[PDF [;LOC] [;FONT]]
STOP
BARCODE The Bar Code command; enter BARCODE.
I-2/5 CD Designates bar code type Interleaved 2/5; enter
I-2/5. To calculate and plot the optional modulo-10
check digit with the bar code symbol automatically,
enter CD.
I25GERMAN Designates German Interleaved 2/5; enter
I25GERMAN. The mod-10 check digit is
automatically included.
ITF14 Designates ITF-14; enter ITF14. The mod-10 check
digit is automatically included.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
MAG Optional parameter to magnify (horizontally
expand) the bar code symbol. The magnification
default value is X1. As required for scanning, enter
a magnification value from Table 9 on page 99 to
increase the magnification. Increasing the
magnification adjusts printed character density.
You can also use XR or XRD as defined on page
97.
Hn[.m] Optional parameter to adjust the overall height
(vertical expansion) of the bar code symbol
(including the upper and lower 0.1-inch guard
bands and any human readable data). Height
adjustments are made in 0.1-inch increments; enter
H and a value from 3 through 99 to select height
adjustments from 0.3 through 9.9 inches. The
default value is 0.9-inch.
[.m] is an additional number of dots for the bar code
height. (Dots are in the current dot scale.)
NOTE: If 0.3 inches is the selected height, the PDF cannot be included.

172
Interleaved 2/5 (I-2/5), German I-2/5, and ITF-14

BFn;L Optional parameters for assigning a dynamic bar


code data field location on a form and for
designating the length of the data field. With these
parameters, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. Replace L with a number equaling the total
number of characters in the field. (The actual
data provided dynamically during the Execute
Form Mode can be less than L.)
d. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn;L
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field, but it
will not print with the data.

173
Chapter 3 Bar Codes

data field Interleaved 2/5: Enter the characters for the bar
code data. A null data field (no characters) is
permitted. The length of the data field is variable;
however, the maximum length is usually limited to
32 characters to minimize potential reading errors.
An even number of characters are required for the
interleaving process. Consequently, if an odd
number of characters are entered in the data field,
a leading zero is added automatically. The
characters available for the data field are 0 through
9 (hex 30 through 39).
German I-2/5: The data field must be 11 or 13
digits exactly.
ITF-14: The data field must be 13 digits exactly.
PDF Optional parameter to enable printing of the human
readable data field. Enter PDF to print the data
field. If the parameter is not used, the human
readable data is not printed. This parameter is not
allowed if a null data field was specified. For
German I-2/5, fields of the data are separated by
dots and spaces.
LOC Optional parameter to identify the location of the
printable data field. The default value is B, locating
the human readable data below the bar code. A
locates the printable data field above bar code. To
compensate for printing the 0.1-inch high data, the
height of the bar code body is reduced 0.1-inch.
FONT Optional parameter to select the font for the human
readable data field. Enter O to select OCR-A font;
enter X to select OCR-B font; enter N to select 10
cpi; enter P to select 12 cpi; enter Q to select 13
cpi; enter R to select 15 cpi; enter T to select 17 cpi;
enter V to select 20 cpi.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

174
Interleaved 2/5 (I-2/5), German I-2/5, and ITF-14

I-2/5 Example
Figure 25 illustrates a horizontal and vertical I-2/5 bar code generated by the
following program:
~CREATE;I25 (Enter Create Form Mode)
BARCODE (Bar Code command)
I-2/5;DARK;49;27 (Dark Code I-2/5, at SR 49, SC 27)
*24688642* (Data Field)
PDF;A (Upper Printable Data Field)
STOP (Ends Bar Code command)
BARCODE (New Bar Code command)
I-2/5;VSCAN;H12;DARK;44;52
(Vertical Dark I-2/5, H 1.2 at
SR 44, SC 52)
*24688642* (Data Field)
PDF (Printable Data Field)
STOP (Ends Bar Code command)
END (Terminates Create Form Mode)
~EXECUTE;I25;1 (Execute the form, form count of 1)

~NORMAL

SC 52

SR 44

SC 27

SR 49

Figure 25. Sample I-2/5 Bar Codes

175
Chapter 3 Bar Codes

Matrix
The structure for the Matrix bar code is shown in Figure 26 and described on
the following pages.

SR, SC QUIET QUIET


SR, SC
POSITION ZONE POSITION ZONE

STOP START
CODE CODE

OPTIONAL
CHECK
DIGIT
CCW CW

DATA DATA
FIELD OPTIONAL FIELD
READABLE
DATA
FIELD

OPTIONAL
CHECK
DIGIT
START STOP UPPER
UPPER LOWER LOWER
CODE CODE GUARD
GUARD GUARD GUARD
BAND BAND BAND BAND
QUIET QUIET
ZONE ZONE

HEIGHT HEIGHT

OPTIONAL
CHECK DIGIT
SR, SC
POSITION
UPPER GUARD BAND

QUIET START STOP QUIET


Normal ZONE CODE
DATA FIELD
CODE ZONE HEIGHT

LOWER GUARD BAND

OPTIONAL READABLE DATA FIELD

SR, SC
POSITION
OPTIONAL READABLE DATA FIELD

LOWER GUARD BAND

HEIGHT
QUIET STOP START QUIET
INV ZONE CODE
DATA FIELD
CODE ZONE

UPPER GUARD BAND

OPTIONAL
CHECK DIGIT

Figure 26. Matrix Structure

176
Matrix

Quiet Zone
Both ends of the bar code structure have blank quiet zones. The quiet zones
must be at least 0.25 inches wide and completely blank to ensure accurate
reading of the start/stop codes and to prevent adjacent bar codes from
overlapping. You must provide sufficient space on the form for quiet zones.

Start/Stop Codes
Unique start and stop codes permit bidirectional scanning. Both start and stop
codes contain bars and spaces. They are automatically produced.

Data Field
The bar code symbol uses a series of wide and narrow bars and spaces to
represent numeric characters. The structure is 2 wide elements (bars or
spaces) and 3 narrow elements. In the bar code, each character encoded is
separated by a narrow space.

Readable Data
The optional readable data field provides a readable interpretation of the bar
code data. It can be printed above or below the bar code symbol.

Check Digit
The modulo-10 check digit can be inserted into the bar code to verify accurate
scanning.

Matrix Command Format


BARCODE
MATRIX [CD]; [DIR;] [MAG;] [Hn[.m];] [BFn;L;] [DARK;] SR; SC
(D) [data field] (D)
[PDF [;LOC] [;FONT]]
STOP
BARCODE The Bar Code command; enter BARCODE.
MATRIX CD Designates bar code type Matrix; enter MATRIX.
To calculate and plot the optional modulo-10 check
digit with the bar code symbol automatically, enter
CD.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.

177
Chapter 3 Bar Codes

MAG Optional parameter to magnify (horizontally


expand) the bar code symbol. The magnification
default value is X1. As required for scanning, enter
a magnification value from Table 9 on page 99 to
increase the magnification. Increasing the
magnification adjusts printed character density.
You can also use XR or XRD as defined on page
97.
Hn[.m] Optional parameter to adjust the overall height
(vertical expansion) of the bar code symbol
(including the upper and lower 0.1-inch guard
bands and any human readable data). Height
adjustments are made in 0.1-inch increments; enter
H and a value from 3 through 99 to select height
adjustments from 0.3 through 9.9 inches. The
default value is 0.9-inch.
[.m] is an additional number of dots for the bar code
height. (Dots are in the current dot scale.)
NOTE: If 0.3 inches is the selected height, the PDF cannot be included.
BFn;L Optional parameters for assigning a dynamic bar
code data field location on a form and for
designating the length of the data field. With these
parameters, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. Replace L with a number equaling the total
number of characters in the field. (The actual
data provided dynamically during the Execute
Form Mode can be less than L.)
d. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn;L
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.

178
Matrix

SR Defines the starting row for the bar code. Enter a


value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field, but it
will not print with the data.
data field Enter the characters for the bar code data. A null
data field (no characters) is permitted. The length of
the data field is variable; however, the maximum
length is usually limited to 32 characters to
minimize potential reading errors. An even number
of characters are required for the interleaving
process. Consequently, if an odd number of
characters are entered in the data field, a leading
zero is added automatically. The characters
available for the data field are 0 through 9 (hex 30
through 39).
PDF Optional parameter to enable printing of the human
readable data field. Enter PDF to print the data
field. If the parameter is not used, the human
readable data is not printed. This parameter is not
allowed if a null data field was specified.
LOC Optional parameter to identify the location of the
printable data field. The default value is B, locating
the human readable data below the bar code. A
locates the printable data field above bar code. To
compensate for printing the 0.1-inch high data, the
height of the bar code body is reduced 0.1-inch.
FONT Optional parameter to select the font for the human
readable data field. Enter O to select OCR-A font;
enter X to select OCR-B font; enter N to select 10
cpi; enter P to select 12 cpi; enter Q to select 13
cpi; enter R to select 15 cpi; enter T to select 17 cpi;
enter V to select 20 cpi.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

179
Chapter 3 Bar Codes

Matrix Example
Figure 27 illustrates a horizontal and vertical Matrix bar code generated by the
following program:
~CREATE;MATRIX (Enter Create Form Mode)
BARCODE (Bar Code command)
MATRIX;DARK;49;27 (Dark Code Matrix, at SR 49, SC 27)
*24688642* (Data Field)
PDF (Printable Data Field)
STOP (Ends Bar Code command)
BARCODE (New Bar Code command)
MATRIX;VSCAN;H12;DARK;44;52
(Vertical Dark Matrix, H 1.2
at SR 44, SC 52)
*24688642* (Data Field)
PDF (Printable Data Field)
STOP (Ends Bar Code command)
END (Terminates Create Form Mode)
~EXECUTE;MATRIX;1 (Execute the form, form count of 1)

~NORMAL

SC 52
SC 27

SR 49 SR 44

Figure 27. Sample Matrix Bar Codes

180
Maxicode

Maxicode
The Maxicode bar code is a fixed size matrix symbology made up of an offset
of rows of hexagonal elements arranged around a unique finder pattern.
Maxicode is suitable for high speed scanning applications, and is capable of
encoding all of the 256 ASCII characters.

Readable Data
The Maxicode bar code does not support a human readable form.

Data Field
The data field of a Maxicode bar code is divided into a primary message and a
secondary message. The primary message has a fixed structure, while the
secondary message has a free format. The maximum number of characters
encoded in the message depends on the error correction mechanism used.
When the Standard Error Correction (SEC) method is in use (see the Mn
definition, below) a maximum of 84 symbol characters can be encoded. Each
segment in the secondary message is 21 characters long.

Maxicode Command Format


BARCODE
MAXICODE [Mn;] [Z;] [DIR;] [BFn;L;] [DARK;] SR; SC
(D)data field(D)
STOP
BARCODE The Bar Code command; enter BARCODE.
MAXICODE Designates bar code type Maxicode; enter
MAXICODE.
Mn Parameter that specifies the bar code mode. Valid
values are 2, 3, 4, 6, and D. Default value is 2.
Table 28 defines the modes supported.

181
Chapter 3 Bar Codes

Table 28. Maxicode Bar Code Modes

Mode Definition

2 Primary and secondary messages employ SEC. Primary


message is a structured carrier message with a numeric
postal code.

3 Primary and secondary messages employ SEC. Primary


message is a structured carrier message with an
alphanumeric postal code.

4 Primary and secondary messages together encode up to


93 characters.

6 Primary and secondary messages together encode up to


93 characters. For reader configuration purposes only.

D Optional parameter that allows for postponing the


definition of the mode until form execution. When used, the
first character of the dynamic barcode data is used as the
mode. The character is extracted and not used as barcode
data. This mode should be used with BFn.

Z Specifies the zipper option. Enter Z.


DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
BFn;L Optional parameter for assigning a dynamic bar
code data field location on a form and for
designating the length of the data field. With these
parameters, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. Replace L with a number equaling the total
number of characters in the field. (The actual
data provided dynamically during the Execute
Form Mode can be less than L.)

182
Maxicode

d. The information for the data field is entered


dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn;L
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. This parameter is ignored.
D Optional parameter that allows for postponing the
definition of the mode until form execution. When
used, the first character of the dynamic barcode
data is used as the mode. The character is
extracted and not used as barcode data. This mode
should be used with BFn.
SR Defines the starting row for the bar code. Enter a
value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field, but it
will not print with the data.
data field There are two different ways the Maxicode data
field can be formatted:
Standard Data Field
The modes 2 and 3 have their primary message
structured as shown in Table 29. The data following
the primary message is the secondary message
and has a free format.

183
Chapter 3 Bar Codes

Table 29. Standard Data Fields

Character
Title Data
Positions

0-2 Class of Service Numeric

3-5 Country Code Numeric

6 - 14 Postal Code 9 Digit Numeric for US


OR
6 Digit Alphanumeric for Canada

15, 16 Separator '>A'

17 - ... Secondary Message Free Format

UPS Shipping Data Field


This syntax begins with seven encoded data
characters followed by a date (yy). The first four
characters are the Message Header and the next
five are the Transportation Data Format Header.
The format of the Message Header is “[)>Rs”. The
Transportation Data Format Header is “01Gs<yy>”
where <yy> is the year, and “G's” and “R's” are
control characters. The structure is shown in Table
30.

Table 30. UPS Shipping Data Fields

Character
Title Data
Positions

0-3 Message Header [)>Rs

4-8 Transportation Data Format 01Gs<yy>


Header

9 - 17 Postal Code 9 Digit Numeric for US or


6 Digit Alphanumeric for
Canada

18 Separator Gs

19 - 21 Country Code Numeric

22 Separator Gs

23 - 25 Class of Service Numeric

26 Separator Gs

27 - ... Secondary Message As per the UPS Guide To


Barcoding

184
Maxicode

STOP Ends the Bar Code command while the IGP


continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

Maxicode Control Characters


The non-printable control characters can be generated by using the switch
characters defined in Table 31.
NOTE: <pp> = Shift Out Character

Table 31. Maxicode Control Characters

Control Character Alternate Character


NUL <pp>SP
SOH <pp>!
STX <pp>"
ETX <pp>#
EOT <pp>$
ENQ <pp>%
ACK <pp>&
BEL <pp>'
BS <pp>(
HT <pp>)
LF <pp>*
VT <pp>+
FF <pp>,
CR <pp>-
SO <pp>.
SI <pp>/
DLE <pp>`
DC1 <pp>a
DC2 <pp>b
DC3 <pp>c
DC4 <pp>d
NAK <pp>e
SYN <pp>f
ETB <pp>g
CAN <pp>h
EM <pp>i
SUM <pp>j
ESC <pp>k
FS <pp>l
GS <pp>m
RS <pp>n
US <pp>o

185
Chapter 3 Bar Codes

Maxicode Examples
Figure 28 illustrates a Maxicode bar code generated by the following program:
NOTE: “|” in the bar code represents the Shift Out Character.
~CREATE;MAXI (Enter Create Form Mode)
BARCODE (Bar Code command)
MAXICODE;32;37 (Dark Bar Code MAXICODE at SR 32, SC 27)
*999840068107317|;This is a secondary message.* (Data Field)
STOP (Ends Bar Code command)
END (Terminates Create Form Mode)
~EXECUTE;MAXI;1 (Execute the form, form count of 1)

~NORMAL

Figure 28. Sample MAXICODE Bar Code


Figure 29 illustrates a MAXICODE bar code generated by the following
program:
NOTE: “|” in the bar code represents the Shift Out Character.
~CREATE;MAXI (Enter Create Form Mode)
BARCODE (Bar Code command)
MAXICODE;32;54 (Dark Bar Code MAXICODE at SR 32, SC 54)
*[)>|n01|m96841706672|m840|m001|m1Z12345675|mUPSN|m12345E|m089|
m|m1/1|m10.1|mY|m|m|mUT|n|$* (Data Field)
STOP (Ends Bar Code command)
END (Terminates Create Form Mode)
~EXECUTE;MAXI;1 (Execute the form, form count of 1)

~NORMAL

Figure 29. Sample MAXICODE Bar Code

186
MSI

MSI
The MSI bar code structure is shown in Figure 30 and described on the
following pages.

SR, SC QUIET QUIET


SR, SC
POSITION ZONE POSITION ZONE

STOP START
CODE CODE

OPTIONAL
CHECK
DIGIT
CCW CW

DATA DATA
FIELD OPTIONAL FIELD
READABLE
DATA
FIELD

OPTIONAL
CHECK
DIGIT
START STOP UPPER
UPPER LOWER LOWER
CODE CODE GUARD
GUARD GUARD GUARD
BAND BAND BAND BAND
QUIET QUIET
ZONE ZONE

HEIGHT HEIGHT

OPTIONAL
CHECK DIGIT
SR, SC
POSITION
UPPER GUARD BAND

QUIET START STOP QUIET


Normal ZONE CODE
DATA FIELD
CODE ZONE HEIGHT

LOWER GUARD BAND

OPTIONAL READABLE DATA FIELD

SR, SC
POSITION
OPTIONAL READABLE DATA FIELD

LOWER GUARD BAND

HEIGHT
QUIET STOP START QUIET
INV ZONE CODE
DATA FIELD
CODE ZONE

UPPER GUARD BAND

OPTIONAL
CHECK DIGIT

Figure 30. MSI Structure

187
Chapter 3 Bar Codes

Quiet Zone
Both ends of the bar code structure require blank quiet zones. The quiet
zones must be at least 0.25-inches wide and completely blank to ensure
accurate reading of the start/stop codes and to prevent adjacent bar codes
from overlapping. You must provide sufficient space on the form for the quiet
zones.

Start/Stop Code
Unique start and stop codes permit bidirectional scanning. Both start and stop
codes contain bars and spaces. They are automatically produced.

Data Field
The bar code symbol uses a series of wide and narrow bars and spaces to
represent each numeric character. The structure is four wide elements (bars
or spaces) and four narrow elements. Each character contains four data bits,
with each 0-bit made up of a narrow bar/wide space arrangement and each 1-
bit made up of a wide bar/narrow space arrangement.

Readable Data
The optional readable data field provides a readable interpretation of the bar
code data. It can be printed above or below the bar code symbol.

Check Digit
If specified, the modulo-10 or modulo-11 (or both) check digit is automatically
calculated and inserted in the bar code symbol. The check digit verifies
accurate scanning.

MSI Command Format


BARCODE
MSI n; [DIR;] [MAG;] [Hn[.m];] [BFn;L;] [DARK;] SR; SC
(D) [data field] (D)
[PDF [;LOC] [;FONT]]
STOP
BARCODE The Bar Code command; enter BARCODE.
MSI Designates bar code type MSI; enter MSI.
n Designates the type of check digit combinations for
the bar code. Replace n with one of the following
codes to specify the check digit.
A single-digit modulo-10 followed by a second
modulo-10 digit
B single-digit modulo-11 followed by a single
modulo-10 digit
C single-digit modulo-10
D single-digit modulo-11

188
MSI

DIR Optional parameter that allows for rotating a


barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
MAG Optional parameter to magnify (horizontally
expand) the bar code symbol. The magnification
default value is X1. As required for scanning, enter
a magnification value from Table 9 on page 99 to
increase the magnification. Increasing the
magnification adjusts printed character density.
You can also use XR or XRD as defined on page
97.
Hn[.m] Optional parameter to adjust the overall height
(vertical expansion) of the bar code symbol
(including the upper and lower 0.1-inch guard
bands and any human readable data). Height
adjustments are made in 0.1-inch increments; enter
H and a value from 3 through 99 to select height
adjustments from 0.3 through 9.9 inches. The
default value is 0.9-inch.
[.m] is an additional number of dots for the bar code
height. (Dots are in the current dot scale.)
NOTE: If 0.3 inches is the selected height, the PDF cannot be included.
BFn;L Optional parameters for assigning a dynamic bar
code data field location on a form and for
designating the length of the data field. With these
parameters, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. Replace L with a number equaling the total
number of characters in the field. (The actual
data provided dynamically during the Execute
Form Mode can be less than L.)
d. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn;L
parameters are used. However, refer to the
data field description for available characters.

189
Chapter 3 Bar Codes

DARK Optional parameter to produce darker looking bar


codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field, but it
will not print with the data.
data field Enter the characters for the bar code data. A null
data field (no characters) is permitted. The length of
the data field is variable; however, a maximum of
14 data characters are allowed if a one-character
check digit field is specified; a maximum of 13 data
characters are allowed if a two-character check
digit field is specified. The characters available for
the data field are 0 through 9 (hex 30 through 39).
PDF Optional parameter to enable printing of the human
readable data field. Enter PDF to print the data
field. If the parameter is not used, the human
readable data will not print.
LOC Optional parameter to identify the location of the
printable data field. The default value is B, locating
the human readable data below the bar code. A
locates the printable data field above the bar code.
To compensate for printing the 0.1-inch high data,
the height of the bar code body is reduced 0.1-inch.
FONT Optional parameter to select the font for the human
readable data field. Enter O to select OCR-A font;
enter X to select OCR-B font; enter N to select 10
cpi; enter P to select 12 cpi; enter Q to select 13
cpi; enter R to select 15 cpi; enter T to select 17 cpi;
enter V to select 20 cpi.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

190
MSI

MSI Example
Figure 31 illustrates a horizontal and vertical MSI bar code generated by the
following program:
~CREATE;MSI (Enter Create Form Mode)
BARCODE (Bar Code command)
MSIA;DARK;32;27 (Dark Bar Code MSIA at SR 32, SC 27)
*24688642* (Data Field)
PDF;X (Printable Data Field, OCR-B)
STOP (Ends Bar Code command)
BARCODE (New Bar Code command)
MSIB;VSCAN;X2;H12;DARK;32;54
(Vertical Dark MSIB, Mag 2, H 1.2 at
SR 32, SC 54)
*24688642* (Data Field)
PDF;A (Upper Data Field)
STOP (Ends Bar Code command)
END (Terminates Create Form Mode)
~EXECUTE;MSI;1 (Execute the form, form count of 1)

~NORMAL

SC 27 SC 54

SR 32 SR 32

Figure 31. Sample MSI Bar Codes

191
Chapter 3 Bar Codes

PDF417
The PDF417 structure is shown in Figure 32 and described on the following
pages.

QUIET QUIET
SR, SC ZONE SR, SC ZONE
POSITION POSITION
STOP START
CODE CODE

CCW CW
DATA DATA
FIELD FIELD

UPPER START LOWER LOWER STOP UPPER


GUARD CODE GUARD GUARD CODE GUARD
BAND BAND BAND BAND
QUIET QUIET
ZONE ZONE

SR, SC
POSITION UPPER GUARD BAND

QUIET START DATA FIELD STOP QUIET


Normal ZONE CODE CODE ZONE

LOWER GUARD BAND

SR, SC
POSITION LOWER GUARD BAND

INV QUIET
ZONE
STOP
CODE
START
CODE
QUIET
ZONE

UPPER GUARD BAND

Figure 32. PDF417 Structure

192
PDF417

Quiet Zone
Both ends of the bar code structure require blank quiet zones. The quiet
zones must be at least 0.25 inches wide and completely blank to ensure
accurate reading of the start/stop codes and to prevent adjacent bar codes
from overlapping. Be sure to provide sufficient space on the form for the quiet
zones.

Start/Stop Codes
The start/stop codes identify the leading and trailing end of the bar code.

Data Field
PDF417 provides twelve modes to encode data. The first three are pre-
established (the remaining nine are user modes, which can be defined by
users or industry associations according to specific applications):
1. Extended Alphanumeric Compaction mode (EXC). Comprised of four
sub-modes, this mode offers encodation of all printable ASCII characters.
This is the default mode; the IGP uses shift or latch characters to enable
other modes.
2. Binary/ASCII Plus mode. This offers encodation for all ASCII characters,
printable or not, and binary values.
3. Numeric Compaction mode. This offers encodation for numeric values to
a density of almost 3 digits per code word.
4. The IGP will automatically switch between modes to provide the smallest
encodation for the data.

Security Level
PDF417 can detect and correct errors. Each label has 2 code words of error
detection. You can select the error correction capacity based on application
needs. Specify a security level in the range of 0 - 8, at the time of printing.
PDF417 can also recover from omissions and misdecodes of code words.
Since it requires two code words to recover from a misdecode, one to detect
the error and one to correct for it, a given security level can support half the
number of misdecodes that it can of undecoded words.

PDF
Print Data Field is not offered due to the large amount of data that can be
encoded.

193
Chapter 3 Bar Codes

PDF417 Command Format


BARCODE
PDF417; [DIR;] [X[D]n;] [Y[D]n;] [(Hn)| (Wn);] [ASPECT;h:w;]
[(Rn)| (Cn);] [Sn;][BFn;L;] [DARK;] SR; SC
(D)data field(D)
STOP
BARCODE The Bar Code command; enter BARCODE.
PDF417 Designates bar code type PDF417; enter PDF417.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
X[D]n Optional parameter to designate the width of the
narrow element in either the default 60 X 72 dots
per inch or, if the D is given, in target dots. The
default size is 1/60th of an inch.
Y[D]n Optional parameter to designate the height of the
bar code in either the default 60 X 72 dots per inch
or, if the D is given, in target dots. The default size
is 2/72nd of an inch.
Hn Optional parameter to adjust the overall height of
the bar code symbol (including human readable
data). Height adjustments are made in 0.1-inch
increments; enter H and a value from 4 through 99
to select height adjustments from 0.4 through 9.9
inches. Parameters Wn, Rn, Cn or ASPECT cannot
be entered if this parameter is used.
Wn Optional parameter to adjust the maximum width of
the symbol based on the narrow element width.
Enter Wn; where n is the overall width in tenths of
an inch. Parameters Hn, Rn, Cn or ASPECT cannot
be entered if this parameter is used.
ASPECT;h:w Optional parameter for specifying the symbol
height-to-width ratio where h is the height and w is
the width, both expressed as integers. The default
is 1:2. Parameters Hn, Wn, Rn, or Cn cannot be
entered if this parameter is used.
Rn Optional parameter that specifies the number of
rows the symbol will have. Enter R followed by the
number of rows in the range of 3 through 90 in
multiples of 3. Parameters Hn, Wn, Cn or ASPECT
cannot be entered if this parameter is used.
Cn Optional parameter that specifies the number of
columns the symbol will have. Enter C followed by
the number of columns in the range of 1 through
90. Parameters Hn, Wn, Rn or ASPECT cannot be
entered if this parameter is used.

194
PDF417

Sn Optional parameter that specifies the security level.


Enter S followed by the security level in the range
of 0 through 8. The default is 2.
BFn;L Optional parameters for assigning a dynamic bar
code data field location on a form and for
designating the length of the data field. With these
parameters, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. Replace L with a number equaling the total
number of characters in the field. (The actual
data provided dynamically during the Execute
Form Mode can be less than L.)
d. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn;L
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field, but it
will not print with the data.
data field Enter the data for the bar code. A null data field (no
characters) is not permitted. The data field can
contain any character including carriage returns

195
Chapter 3 Bar Codes

and line feeds. The length of the data field is


variable; however, the maximum length is usually
limited to 1024 bytes to minimize potential reading
errors.
NOTE: New lines (i.e. carriage returns/line feeds) are allowed in the PDF417
data field and as PDF417 dynamic data field input.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

PDF417 Example
Figure 33 illustrates a horizontal PDF417 bar code generated by the following
program:
~CREATE;PDF417 (Enter Create Form Mode)
BARCODE (Bar Code command)
PDF417;XD3;YD9;S0;37;21 (PDF417; width; height, security
level, SR 37, SC 21)
*ACME MOTOR SUPPORTS PRINTING OF PDF417 TWO-DIMENSIONAL BAR
CODE SYMBOLOGY 123456789012345678901234567890123456789*
STOP (Ends Bar Code command)
END (Terminate Create Form Mode)
~EXECUTE;PDF;1 (Execute the form)
~NORMAL

SC 21

SR 37

Figure 33. Sample PDF417 Bar Code

196
Planet

Planet
The Planet bar code was introduced by the U.S. Postal Service under the
product name “Confirm.” Planet is a 12-digit bar code used to track mail
electronically, both inbound and outbound. Under the “Confirm” process, the
first two digits of the Planet data field defines the service expected. The next
nine digits are customer information, and the last digit is the check digit.
The Planet bar code structure is illustrated in Figure 34 and Figure 35 and
described on the following pages. The Planet code can be a part of the
address block and appear anywhere within a vertical 4-inch area across the
length of the mail piece.

Return Address Area Postage Area

ADDRESS BLOCK BAR CODE READ AREA


1/2" 1/2"
4"

SR, SC
POSITION

QUIET ZONE

QUIET START STOP QUIET


ZONE BAR CODE DATA FIELD ZONE
CODE CODE

QUIET ZONE

CHECK DIGIT

NOTE: Illustration is not to scale

Figure 34. Planet Structure


NOTE: Additional information regarding Planet bar code requirements can be
obtained from the U.S. Postal Service's Publication 25: A Guide to
Business Mail Preparation.

197
Chapter 3 Bar Codes

1/2"
Postage Area

QUIET
ZONE

STOP
CODE

CHECK DIGIT
ADDRESS BLOCK BAR CODE READ AREA

SR, SC
POSITION

BAR
CODE
DATA
FIELD

START
CODE

4" QUIET
ZONE
Return Address Area

1/2"

NOTE: Illustration is not to s

Figure 35. Planet Structure (VSCAN or CCW)

198
Planet

Quiet Zone
The bar code structure requires a completely blank quiet zone which extends
4.75 inches from the right edge of the mail piece. In addition, a minimum quiet
zone of 0.040-inch above and below the bar code data must also be provided.
You must provide sufficient space for this zone.

Start/Stop Code
The start and stop codes are referred to as “framing bars” in Planet. The start
and stop codes are each one tall bar, one identifying the leading and trailing
end of the bar code. The start/stop code is automatically produced with each
bar code. The start/stop code structure permits bar code scanning in a left-to-
right direction only.

Data Field
The bar code data produces a single field of 60 bars for an 11-digit data field.
The bars are grouped in sets of five. Each set of five bars (comprised of three
tall bars and two short bars) represents one of the five digits of the zip code,
plus the four-digit zip code extension. If the Advanced Bar Code is used, an
additional two-digit code is also added to make an 11-digit data field.
Each bar width is equal, and must be .020-inch ± .005-inch. Each bar height is
either a tall (full) or short (half) bar, representing a 1 or 0, respectively. Each
tall bar must be .125-inch ± .010-inch; each short bar must be .050-inch ±
.010-inch. Horizontal spacing between bars (pitch) must be 22 bars ± 2 bars
per inch over any 0.50-inch portion of the bar code. Horizontal spacing at 24
and 20 bars per inch is 0.0416-inch and .050-inch, respectively, with a clear
vertical space ranging from 0.012-inch to 0.040-inch between bars.

Check Digit
The twelfth digit represents the automatic check digit character. The check
digit is added automatically to verify accurate scanning.

199
Chapter 3 Bar Codes

Planet Command Format


BARCODE
PLANET; [DIR;] [BFn;L;] [DARK;] SR; SC
(D)data field(D)
STOP
BARCODE The Bar Code command; enter BARCODE.
PLANET Designates bar code type Planet; enter PLANET.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
BFn;L Optional parameters for assigning a dynamic bar
code data field location on a form and for
designating the length of the data field. With these
parameters, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. Replace L with a number equaling the total
number of characters in the field. The data
field must be numeric and contain exactly 11
digits. (The actual data provided dynamically
during the Execute Form Mode can be less
than L.)
d. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn;L
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value within the range of the 4-inch vertical address
block. Character row or dot row is specified based
on the Scale command (page 89), or use the
CP.DP format (page 26).

200
Planet

SC Defines the starting column of the bar code. Enter a


value between the 1/2-inch left and right margins of
the mail piece. Character column or dot column is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/) the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field but it will
not print with the data.
data field The bar code data. Enter 11 digits. The available
characters for the data field are 0 through 9 (hex 30
through 39).
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message will result.

201
Chapter 3 Bar Codes

Planet Example
Figure 36 illustrates a horizontal and vertical Planet bar code generated by
the following program:
~CREATE;TEST (Enter Create Form Mode)
BARCODE (Bar code command)
PLANET;DARK;11;15 (Dark Planet bar code at SR 11, SC 15)
*01675433738* (11-digit data field)
STOP (Ends Bar Code command)
BARCODE (Bar code command)
PLANET;VSCAN;DARK;5;48 (Dark Vertical bar code Planet at
SR 5, SC 48)
*01858022199* (11-digit data field)
STOP (Ends Bar Code command)
END (Terminates Create Form Mode)
~EXECUTE;TEST;1 (Execute the form, with form count of 1)

~NORMAL

SC 48

SR 5

SC 15

SR 11

Figure 36. Sample Planet Bar Codes

202
Plessey

Plessey
The Plessey bar code structure is shown in Figure 37 and described on the
following pages.

SR, SC QUIET QUIET


SR, SC
POSITION ZONE POSITION ZONE

STOP START
CODE CODE

OPTIONAL
CHECK
DIGIT
CCW CW

DATA DATA
FIELD OPTIONAL FIELD
READABLE
DATA
FIELD

OPTIONAL
CHECK
DIGIT
START STOP UPPER
UPPER LOWER LOWER
CODE CODE GUARD
GUARD GUARD GUARD
BAND BAND BAND BAND
QUIET QUIET
ZONE ZONE

HEIGHT HEIGHT

OPTIONAL
CHECK DIGIT
SR, SC
POSITION
UPPER GUARD BAND

QUIET START STOP QUIET


Normal ZONE CODE
DATA FIELD
CODE ZONE HEIGHT

LOWER GUARD BAND

OPTIONAL READABLE DATA FIELD

SR, SC
POSITION
OPTIONAL READABLE DATA FIELD

LOWER GUARD BAND

HEIGHT
QUIET STOP START QUIET
INV ZONE CODE
DATA FIELD
CODE ZONE

UPPER GUARD BAND

OPTIONAL
CHECK DIGIT

Figure 37. Plessey Structure

203
Chapter 3 Bar Codes

Quiet Zone
Both ends of the bar code structure require blank quiet zones. The quiet
zones must be at least 0.25-inches wide and completely blank to ensure
accurate reading of the start/stop codes and to prevent adjacent bar codes
from overlapping. You must provide sufficient space on the form for the quiet
zones.

Start/Stop Code
Unique start and stop codes permit bidirectional scanning. Both start and stop
codes contain bars and spaces. They are automatically produced.

Data Field
The bar code symbol uses a series of wide and narrow bars and spaces to
represent each character. The structure is four wide elements (bars or
spaces) and four narrow elements. Each character contains four data bits,
with each 0-bit made up of a narrow bar/wide space arrangement and each
1-bit made up of a wide bar/narrow space arrangement.

Readable Data
The optional readable data field provides a readable interpretation of the bar
code data. It can be printed above or below the bar code symbol.

Check Digit
If specified, a “logical division” check digit is automatically calculated and
inserted in the bar code symbol. The check digit verifies accurate scanning.

204
Plessey

Plessey Command Format


BARCODE
PLESSEY;[DIR;] [MAG;] [Hn[.m];] [BFn;L;] [DARK;] SR; SC
[(D)data field(D)]
[PDF [;LOC] [;FONT]]
STOP
BARCODE The Bar Code command; enter BARCODE.
PLESSEY Designates bar code type Plessey; enter
PLESSEY.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
MAG Optional parameter to magnify (horizontally
expand) the bar code symbol. The magnification
default value is X1. As required for scanning, enter
a magnification value from Table 9 on page 99 to
increase the magnification. Increasing the
magnification adjusts printed character density.
Hn[.m] Optional parameter to adjust the overall height
(vertical expansion) of the bar code symbol
(including the upper and lower 0.1-inch guard
bands and any human readable data). Height
adjustments are made in 0.1-inch increments; enter
H and a value from 3 through 99 to select height
adjustments from 0.3 through 9.9 inches. The
default value is 0.9-inch. The [.m] provides an
additional number of dots for the bar code height.
(Dots are in the current dot scale.)
NOTE: If 0.3 inches is the selected height, the PDF cannot be included.
BFn;L Optional parameters for assigning a dynamic bar
code data field location on a form and for
designating the length of the data field. With these
parameters, the actual data for the bar code data
field is dynamically provided during the Execute
Form mode; the data is not specified during the
Create Form mode. To use this field:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. Replace L with a number equaling the total
number of characters in the field. (The actual
data provided dynamically during the Execute
Form mode can be less than L.)

205
Chapter 3 Bar Codes

d. The information for the data field is entered


dynamically during the Execute Form mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn;L
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field, but it
will not print with the data.
data field Enter the characters for the bar code data. A null
data field (no characters) is permitted. The length of
the data field is variable; however, a maximum of
16 data characters is allowed. The characters
available for the data field are 0 through 9 and
A through F (hex 30 through 39).
PDF Optional parameter to enable printing of the human
readable data field. Enter PDF to print the data
field. If the parameter is not used, the human
readable data will not print.
LOC Optional parameter to identify the location of the
printable data field. The default value is B, locating
the human readable data below the bar code. A
locates the printable data field above the bar code.
To compensate for printing the 0.1-inch high data,
the height of the bar code body is reduced 0.1-inch.
FONT Optional parameter to select the font for the human
readable data field. Enter O to select OCR-A font;
enter X to select OCR-B font; enter N to select 10
cpi; enter P to select 12 cpi; enter Q to select 13
cpi; enter R to select 15 cpi; enter T to select 17 cpi;
enter V to select 20 cpi.

206
Plessey

STOP Ends the Bar Code command while the IGP/PGL


continues in the Create Form mode. Enter STOP. If
STOP is not entered, an error message results.

Plessey Example
Figure 38 illustrates a horizontal and vertical Plessey bar code generated by
the following program:
~CREATE;PLESSEY(Enter Create Form mode)
BARCODE(Bar Code command)
PLESSEY;DARK;32;27(Dark Bar Code PLESSEY at SR 32, SC 27)
*24688642*(Data Field)
PDF;X(Printable Data Field, OCR-B)
STOP(Ends Bar Code command)
BARCODE(New Bar Code command)
PLESSEY;VSCAN;X2;H12;DARK;32;54
(Vert. Dark PLESSEY, Mag 2, H 1.2 at
SR 32, SC 54)
*24688642*(Data Field)
PDF;A (Upper Data Field)
STOP (Ends Bar Code command)
END(Terminates Create Form mode)
~EXECUTE;PLESSEY;1(Execute the form, form count of 1)

SC 54
SC 27

SR 32
SR 32

Figure 38. Sample Plessey Bar Codes

207
Chapter 3 Bar Codes

POSTNET
The POSTNET bar code structure is illustrated in Figure 39 and Figure 40 and
described on the following pages. The POSTNET code can be a part of the
address block and appear anywhere within a vertical 4-inch area across the
length of the mail piece.

Return Address Area Postage Area

ADDRESS BLOCK BAR CODE READ AREA


1/2" 1/2"
4"

SR, SC
POSITION

QUIET ZONE

QUIET START STOP QUIET


ZONE BAR CODE DATA FIELD ZONE
CODE CODE

QUIET ZONE

CHECK DIGIT

NOTE: Illustration is not to scale

Figure 39. POSTNET Structure


NOTE: Additional information regarding POSTNET bar code requirements
can be obtained from the U.S. Postal Service's Publication 25: A
Guide to Business Mail Preparation.

208
POSTNET

1/2"
Postage Area

QUIET
ZONE

STOP
CODE

CHECK DIGIT
ADDRESS BLOCK BAR CODE READ AREA

SR, SC
POSITION

BAR
CODE
DATA
FIELD

START
CODE

4" QUIET
ZONE
Return Address Area

NOTE: Illustration is not to scale


1/2"

NOTE: Illustration is not to scale

Figure 40. POSTNET Structure (VSCAN or CCW)

209
Chapter 3 Bar Codes

Quiet Zone
The bar code structure requires a completely blank quiet zone which extends
4.75 inches from the right edge of the mail piece. In addition, a minimum quiet
zone of 0.040-inch above and below the bar code data must also be provided.
You must provide sufficient space for this zone.

Start/Stop Code
The start and stop codes are referred to as “framing bars” in POSTNET. The
start and stop codes are each one tall bar, one identifying the leading and
trailing end of the bar code. The start/stop code is automatically produced
with each bar code. The start/stop code structure permits bar code scanning
in a left-to-right direction only.

Data Field
The bar code data produces a single field of 30 bars for a 5-digit field, 50 bars
for a 9-digit data field, or 60 bars for an 11-digit data field. The bars are
grouped in sets of five. Each set of five bars (comprised of two tall bars and
three short bars) represents one of the five digits of the zip code, plus the
four-digit zip code extension. If the Advanced Bar Code is used, an additional
two-digit code is also added to make an 11-digit data field.
Each bar width is equal, and must be .020-inch ± .005-inch. Each bar height is
either a tall (full) or short (half) bar, representing a 1 or 0, respectively. Each
tall bar must be .125-inch ± .010-inch; each short bar must be .050-inch ±
.010-inch. Horizontal spacing between bars (pitch) must be 22 bars ± 2 bars
per inch over any 0.50-inch portion of the bar code. Horizontal spacing at 24
and 20 bars per inch is 0.0416-inch and .050-inch, respectively, with a clear
vertical space ranging from 0.012-inch to 0.040-inch between bars.

Check Digit
The sixth, tenth or twelfth digit represents the automatic check digit character
for the 5, 9 or 11-digit data field, respectively. The check digit is added
automatically to verify accurate scanning.

210
POSTNET

POSTNET Command Format


BARCODE
POSTNET; [DIR;] [BFn;L;] [DARK;] SR; SC
(D)data field(D)
STOP
BARCODE The Bar Code command; enter BARCODE.
POSTNET Designates bar code type POSTNET; enter
POSTNET.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
BFn;L Optional parameters for assigning a dynamic bar
code data field location on a form and for
designating the length of the data field. With these
parameters, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. Replace L with a number equaling the total
number of characters in the field. The data
field must be numeric and contain exactly 5, 9
or 11 digits. (The actual data provided
dynamically during the Execute Form Mode
can be less than L.)
d. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn;L
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value within the range of the 4-inch vertical address
block. Character row or dot row is specified based
on the Scale command (page 89), or use the
CP.DP format (page 26).

211
Chapter 3 Bar Codes

SC Defines the starting column of the bar code. Enter a


value between the 1/2-inch left and right margins of
the mail piece. Character column or dot column is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/) the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field but it will
not print with the data.
data field The bar code data. Enter 5 digits (for zip code), 9
digits for a nine-digit zip code, or 11 digits (for the
Delivery Point Bar Code format). The available
characters for the data field are 0 through 9 (hex 30
through 39).
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message will result.

212
POSTNET

POSTNET Example
Figure 41 illustrates a horizontal and vertical POSTNET bar code generated
by the following program:
~CREATE;POSTNET (Enter Create Form Mode)
BARCODE (Bar code command)
POSTNET;DARK;10;40 (Dark POSTNET bar code at SR 10, SC 40)
*601159912* (ZIP + 4 data field 60115-9912)
STOP (Ends Bar Code command)
END (Terminates Create Form Mode)
~CREATE;POSTNET (Enter Create Form Mode)
BARCODE (Bar code command)
POSTNET;VSCAN;DARK;10;20
(Dark Vertical bar code POSTNET at
SR 10, SC 40)
*601159912* (ZIP + 4 data field 60115-9912)
STOP (Ends Bar Code command)
END (Terminates Create Form Mode)
~EXECUTE;POSTNET;1 (Execute the form, with form count of 1)

~NORMAL

SC 20

SR 10 SR 10

SC 40

POSTNET.EX

Figure 41. Sample POSTNET Bar Code

213
Chapter 3 Bar Codes

PostBar and Royal Mail (KIX)


PostBar and Royal Mail bar codes, like POSTNET, are used for mailing
applications. However, these bar codes can encode full addresses on labels.
These bar codes are similar to POSTNET in terms of bar space and width, but
have four different types of bars (Full Height, Ascender, Descender, and
Tracker), whereas POSTNET only has two bar types (Tall and Short).
The Royal Mail symbology converts alphanumeric characters into patterns of
four bars, using combinations of Full Height, Ascender, Descender, and
Trackers. It also adds start and stop bar codes as well as a check digit, except
with the KIX format (see below).
PostBar allows you complete flexibility to specify the individual bar types that
comprise the bar code. For PostBar, you are responsible for encoding the
address, adding the start and stop codes, and supplying the appropriate
check digit.

Quiet Zone
The bar code structure requires a completely blank quiet zone which is a 2mm
border on each side of the bar code.

Start/Stop Code
The start and stop bars identify the orientation of the bar code.

Data Field
For PostBar, a variable length data field of digits “0” through “3” are allowed to
represent the bars: Full Height (0), Ascender (1), Descender (2), and Tracker
(3). For Royal Mail, the data is restricted to alphanumeric characters “A”
through “Z” and “0” through “9”. If using the KIX format for Royal Mail,
lowercase characters “a” through “z” are also valid.
Each bar width is equal, and must be .020-inch ± .005-inch. Horizontal
spacing between bars (pitch) must be 22 bars ± 2 bars per inch over any 0.50-
inch portion of the bar code. The height of the bars (Full Height) has a
maximum of 0.230 inches and a minimum of 0.165 inches.

Check Digit
For PostBar, you are responsible for encoding and check digit. For Royal
Mail, a modulo-6 check digit is inserted at the end of the data field.

KIX Format
The KIX format for Royal Mail does not include the start/stop code or the
check digit.

214
PostBar and Royal Mail (KIX)

PostBar and Royal Mail Command Format


BARCODE
POSTBAR or ROYALBAR; [KIX;][MAG;][BFn;L;][DARK;] SR; SC
(D)data field(D)
STOP
BARCODE The Bar Code command; enter BARCODE.
POSTBAR or ROYALBAR
Designates bar code type PostBar or Royal Mail;
enter POSTBAR or ROYALBAR.
KIX Optional parameter to specify the KIX format for
Royal Mail bar codes only; enter KIX.
MAG Optional parameter to magnify (horizontally
expand) the bar code symbol. The magnification
default value is X1. As required for scanning, enter
a magnification value to increase the magnification.
Increasing the magnification adjusts printed
character density. X1A uses shorter bars to reach
the minimum height specification that allows it to fit
on a 6 LPI line.
BFn;L Optional parameters for assigning a dynamic bar
code data field location on a form and for
designating the length of the data field. With these
parameters, the actual data for the bar code data
field is provided dynamically during the Execute
Form mode; the data is not specified during the
Create Form mode. To use this field, perform the
following steps:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. Replace L with a number equaling the total
number of characters in the field. (The actual
data provided dynamically during the Execute
Form Mode can be less than L.)
d. The information for the data field is entered
dynamically during the Execute Form mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn;L
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.

215
Chapter 3 Bar Codes

SR Defines the starting row for the bar code. Character


row or dot row is specified based on the Scale
command (page 89), or use the CP.DP format
(page 26).
SC Defines the starting column of the bar code.
Character column or dot column is specified based
on the Scale command (page 89), or use the
CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/) the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field but it will
not print with the data.
data field The bar code data. For PostBar, enter values 0
through 3 to represent the four different types of
bars. For Royal Mail, enter alphanumeric data (A
through Z and 0 through 9). If using the KIX format
for Royal Mail, lowercase characters a through z
are also valid.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message will result.

216
PostBar and Royal Mail (KIX)

PostBar and Royal Mail Examples


Figure 42 illustrates a horizontal Royal Mail bar code generated by the
following program:
~CREATE;ROYALBAR (Enter Create Form Mode)
BARCODE (Bar Code command)
ROYALBAR;X1A;10;40 (Royal Mail bar code at SR 10, SC 40
with MAG 1A)
*SN34RD1A* (Data Field)
STOP (Ends Bar Code command)
END (Terminates Create Form Mode)
~EXECUTE;ROYALBAR;1 (Execute the form, with form count of 1)

~NORMAL

SC 40

SR 10

Figure 42. Sample Royal Mail bar code (X1A Magnification)

Figure 43 illustrates a horizontal PostBar bar code generated by the following


program:
~CREATE;POSTBAR (Enter Create Form Mode)
BARCODE (Bar Code command)
POSTBAR;10;40 (PostBar bar code at SR 10, SC 40
with default MAG 1)
*10303023123102301031230123210212112210* (Data Field)
STOP (Ends Bar Code command)
END (Terminates Create Form Mode)
~EXECUTE;POSTBAR;1 (Execute the form, with form count of 1)

~NORMAL

SC 40

SR 10

Figure 43. Sample PostBar bar code (X1 Magnification)

217
Chapter 3 Bar Codes

Telepen
The Telepen structure is shown in Figure 44 and described on the following
pages.

SR, SC QUIET QUIET


SR, SC
POSITION ZONE POSITION ZONE

STOP START
CODE CODE

OPTIONAL
CHECK
DIGIT
CCW CW

DATA DATA
FIELD OPTIONAL FIELD
READABLE
DATA
FIELD

OPTIONAL
CHECK
DIGIT
START STOP UPPER
UPPER LOWER LOWER
CODE CODE GUARD
GUARD GUARD GUARD
BAND BAND BAND BAND
QUIET QUIET
ZONE ZONE

HEIGHT HEIGHT

OPTIONAL
CHECK DIGIT
SR, SC
POSITION
UPPER GUARD BAND

QUIET START STOP QUIET


Normal ZONE CODE
DATA FIELD
CODE ZONE HEIGHT

LOWER GUARD BAND

OPTIONAL READABLE DATA FIELD

SR, SC
POSITION
OPTIONAL READABLE DATA FIELD

LOWER GUARD BAND

HEIGHT
QUIET STOP START QUIET
INV ZONE CODE
DATA FIELD
CODE ZONE

UPPER GUARD BAND

OPTIONAL
CHECK DIGIT

Figure 44. Telepen Structure

218
Telepen

Quiet Zone
Both ends of the bar code structure require blank quiet zones. The quiet
zones must be at least 0.25 inches wide and completely blank to ensure
accurate reading of the start/stop codes and to prevent adjacent bar codes
from overlapping. Be sure to provide sufficient space on the form for the quiet
zones.

Start/Stop Codes
The start/stop code is a unique character identifying the leading and trailing
end of the bar code. The start/stop code is automatically produced with each
bar code. The start/stop code structure permits bidirectional bar code
scanning.

Data Field
The bar code symbol uses a series of wide and narrow bars and spaces to
represent standard alphanumeric characters. Each character is represented
by a different series of bars and spaces, both wide and narrow, but is always
16 units in width (for a wide to narrow ratio of 3). Each character starts with a
bar and ends with a space.

Readable Data
The optional readable data field provides a readable interpretation of the bar
code data. It can be printed above or below the bar code symbol.

Check Digit
A mandatory modulo-127 check digit is inserted into the bar code to verify
accurate scanning.

219
Chapter 3 Bar Codes

Telepen Command Format


BARCODE
TELEPEN; [DIR;] [MAG;] [Hn[.m];] [BFn;L;] [DARK;] SR; SC
(D) [data field] (D)
[PDF [;LOC] [;FONT]]
STOP
BARCODE The Bar Code command; enter BARCODE.
TELEPEN Designates bar code type Telepen; enter
TELEPEN.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
MAG Optional parameter to magnify (horizontally
expand) the bar code symbol. The magnification
default value is X1. As required for scanning, enter
a magnification value from Table 9 on page 99 to
increase the magnification. Increasing the
magnification adjusts printed character density.
You can also use XR or XRD as defined on page
97.
Hn[.m] Optional parameter to adjust the overall height
(vertical expansion) of the bar code symbol
(including the upper and lower 0.1-inch guard
bands and any human readable data). Height
adjustments are made in 0.1-inch increments plus
dots; enter H and a value from 3 through 99 to
select height adjustments from 0.3 through 9.9
inches. The default value is 0.9 inch. [.m] is an
additional number of dots for the bar code height.
(Dots are in the current dot scale.)
NOTE: If 0.3 inches is the selected height, the PDF cannot be included.
BFn;L Optional parameters for assigning a dynamic bar
code data field location on a form and for
designating the length of the data field. With these
parameters, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. Replace L with a number equaling the total
number of characters in the field. (The actual

220
Telepen

data provided dynamically during the Execute


Form Mode can be less than L.)
d. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn;L
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field, but it is
not printed with the data.
data field Contains the bar code characters. A null data field
(no characters) is permitted. The data field can
contain any of the characters listed in Table 32
except the SFCC. The length of the data field is
variable; however, the maximum length is usually
limited to 32 characters to minimize potential
reading errors.
PDF Optional parameter to enable printing of the human
readable data field. Enter PDF to print the data
field. If the parameter is not used, the human
readable data will not print. This parameter is not
allowed if a null data field is specified.
LOC Optional parameter to identify the location of the
printable data field. The default value is B, locating
the human readable data below the bar code. A
locates the printable data field above bar code. To
compensate for printing the 0.1-inch high data, the
height of the bar code body is reduced 0.1 inch.
FONT Optional parameter to select the font for the human
readable data field. Enter O to select OCR-A font;
enter X to select OCR-B font; enter N to select 10

221
Chapter 3 Bar Codes

cpi; enter P to select 12 cpi; enter Q to select 13


cpi; enter R to select 15 cpi; enter T to select 17 cpi;
enter V to select 20 cpi.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

Table 32. Telepen Character Set

ASCII Telepen ASCII Telepen ASCII Telepen ASCII Telepen

NUL %U SP Space @ %V ` %W
SOH $A ! /A A A a +A
STX $B " /B B B b +B
ETX $C # /C C C c +C
EOT $D $ /D D D d +D
ENQ $E % /E E E e +E
ACK $F & /F F F f +F
BEL $G ' /G G G g +G
BS $H ( /H H H h +H
HT $I ) /I I I i +I
LF $J * /J J J j +J
VT $K + /K K K k +K
FF $L , /L L L l +L
CR $M — — M M m +M
SO $N . . N N n +N
SI $O / /O O O o +O
DLE $P 0 0 P P p +P
DC1 $Q 1 1 Q Q q +Q
DC2 $R 2 2 R R r +R
DC3 $S 3 3 S S s +S
DC4 $T 4 4 T T t +T
NAK $U 5 5 U U u +U
SYN $V 6 6 V V v +V
ETB $W 7 7 W W w +W
CAN $X 8 8 X X x +X
EM $Y 9 9 Y Y y +Y
SUB $Z : /Z Z Z z +Z
ESC %A ; %F [ %K { %P
FS %B < %G \ %L | %Q
GS %C = %H ] %M } %R
RS %D > %I ^ %N ~ %S
US %E ? %J __ %O DEL %T %X
%Y %Z

NOTE: Character pairs /M, /N, and /P through /Y are reserved for future
control character pairs.

222
Telepen

Telepen Example
Figure 10 illustrates a horizontal and vertical Telepen bar code generated by
the following program:
~CREATE;TELEPEN (Enter Create Form Mode)
BARCODE (Bar Code Command)
TELEPEN;5;5 (Telepen barcode at SR 5, SC 5)
"SAMPLE#1" (Data Field)
PDF;B (Printable Data Field)
STOP (Ends Bar Code Command)
BARCODE (New Bar Code Command)
TELEPEN;VSCAN;10;5 (Vertical Telepen barcode at SR 10, SC 5)
"AB12&%*" (Data Field)
PDF;B (Printable Data Field)
STOP (Ends Bar Code Command)
END (Terminates Create Form Mode)
~EXECUTE;TELEPEN;1 (Execute the form, form count of 1)

~NORMAL

SC 5

SR 5

SR 10

Figure 45. Sample Telepen Bar Codes

223
Chapter 3 Bar Codes

UCC/EAN-128

SR, SC QUIET QUIET


SR, SC
POSITION ZONE POSITION ZONE

STOP START
CODE CODE

OPTIONAL
CHECK
DIGIT
CCW CW

DATA DATA
FIELD OPTIONAL FIELD
READABLE
DATA
FIELD

OPTIONAL
CHECK
DIGIT
START STOP UPPER
UPPER LOWER LOWER
CODE CODE GUARD
GUARD GUARD GUARD
BAND BAND BAND BAND
QUIET QUIET
ZONE ZONE

HEIGHT HEIGHT

OPTIONAL
CHECK DIGIT
SR, SC
POSITION
UPPER GUARD BAND

QUIET START STOP QUIET


Normal ZONE CODE
DATA FIELD
CODE ZONE HEIGHT

LOWER GUARD BAND

OPTIONAL READABLE DATA FIELD

SR, SC
POSITION
OPTIONAL READABLE DATA FIELD

LOWER GUARD BAND

HEIGHT
QUIET STOP START QUIET
INV ZONE CODE
DATA FIELD
CODE ZONE

UPPER GUARD BAND

OPTIONAL
CHECK DIGIT

Figure 46. UCC/EAN-128 Structure

224
UCC/EAN-128

UCC/EAN-128 uses the same bar code and character set as Code 128.
However, in UCC/EAN-128, the Function 1 character FNC1 immediately
follows the start code. The FNC1 character has been reserved exclusively for
UCC/EAN-128.
The UCC/EAN-128 data structure requires an Application Identifier (AI) at the
beginning of bar code data. Each AI determines the format and length of the
data which follows. Refer to Table 33 for more detail.

Table 33. UCC/EAN-128 Application Identifiers

Application
Content Format
Identifier (AI)
00 Serial Shipping Container Code n2+n18
02 Item Num. of Goods Within Another Unit n2+n14
10 Batch or Lot Number n2+an..20
11 (*) Production Date (YYMMDD) n2+n6
13 (*) Packaging Date (YYMMDD) n2+n6
15 (*) Sell By Date (Quality) (YYMMDD) n2+n6
17 (*) Expiration Date (Safety) (YYMMDD) n2+n6
20 Product Variant n2+n2
21 Serial Number n2+an..20
22 HIBCC = Quantity, Date, Batch and Link n2+an..29
23 (**) Lot Number (Transitional Use) n3+n..19
240 Additional Product ID Assigned By Manufacturer n3+an..30
250 Secondary Serial Number n3+an..30
30 Quantity n2+n..8
310 (***) Net Weight, Kilograms n4+n6
311 (***) Length or 1st Dimension, Meters n4+n6
312 (***) Width, Diameter or 2nd Dimension, Meters n4+n6
313 (***) Depth, Thickness, Height or 3rd Dimension, Meters n4+n6
314 (***) Area, Square Meters n4+n6
315 (***) Volume, Liters n4+n6
316 (***) Volume, Cubic Meters n4+n6
320 (***) Net Weight, Pounds n4+n6
321 (***) Length Or 1st Dimension, Inches n4+n6
322 (***) Length Or 1st Dimension, Feet n4+n6
323 (***) Length Or 1st Dimension, Yards n4+n6
324 (***) Width, Diameter, or 2nd Dimension, Inches n4+n6
325 (***) Width, Diameter, or 2nd Dimension, Feet n4+n6

225
Chapter 3 Bar Codes

Table 33. UCC/EAN-128 Application Identifiers (continued)

Application
Content Format
Identifier (AI)
326 (***) Width, Diameter, or 2nd Dimension, Yards n4+n6
327 (***) Depth, Thickness, Height, or 3rd Dimension, Inches n4+n6
328 (***) Depth, Thickness, Height, or 3rd Dimension, Feet n4+n6
329 (***) Depth, Thickness, Height, or 3rd Dimension, Yards n4+n6
330 (***) Gross Weight-Kilograms n4+n6
331 (***) Length or 1st Dimension, Logistics n4+n6
332(***) Width, Diameter, or 2nd Dimension, Meters, Logistics n4+n6
333 (***) Depth, Thickness, Height or 3rd Dimension, Meters, n4+n6
Logistics
334 (***) Area, Square Meters, Logistics n4+n6
335 (***) Gross Volume, Liters n4+n6
336 (***) Gross Volume, Cubic Meters n4+n6
337 (***) Kilograms Per Square Meter n4+n6
340 (***) Gross Weight, Pounds n4+n6
341 (***) Length Or 1st Dimension, Inches, Logistics n4+n6
342 (***) Length Or 1st Dimension, Feet, Logistics n4+n6
343 (***) Length Or 1st Dimension, Yards, Logistics n4+n6
344 (***) Width, Diameter, or 2nd Dimension, Inches, Logistics n4+n6
345 (***) Width, Diameter, or 2nd Dimension, Feet, Logistics n4+n6
346 (***) Width, Diameter, or 2nd Dimension, Yards, Logistics n4+n6
347 (***) Depth, Thickness, Height or 3rd Dimension, Inches, n4+n6
Logistics
348 (***) Depth, Thickness, Height or 3rd Dimension, Feet, Logistics n4+n6
349 (***) Depth, Thickness, Height or 3rd Dimension, Yards, Logistics n4+n6
350 (***) Area, Square Inches n4+n6
351 (***) Area, Square Feet n4+n6
352 (***) Area, Square Yards n4+n6
353 (***) Area, Square Inches, Logistics n4+n6
354 (***) Area, Square Feet, Logistics n4+n6
355 (***) Area, Square Yards, Logistics n4+n6
356 (***) Net Weight, Troy Ounce n4+n6
357 (***) Net Volume, Ounces n4+n6
360 (***) Volume, Quarts n4+n6
361 (***) Volume, Gallons n4+n6
362 (***) Gross Volume, Quarts n4+n6

226
UCC/EAN-128

Table 33. UCC/EAN-128 Application Identifiers (continued)

Application
Content Format
Identifier (AI)
363 (***) Gross Volume, Gallons n4+n6
364 (***) Volume, Cubic Inches n4+n6
365 (***) Volume, Cubic Feet n4+n6
366 (***) Volume, Cubic Yards n4+n6
367 (***) Gross Volume, Cubic Inches n4+n6
368 (***) Gross Volume, Cubic Inches n4+n6
369 (***) Gross Volume, Cubic Inches n4+n6
37 Quantity of Units Contained (For Use With AI 02 Only) n2+n..8
400 Customer's Purchase Order Number n3+an..30
401 Consignment Number n3+an..30
410 Ship To (Deliver To) Location Code Using EAN-13 n3+n13
411 Bill To (Invoice To) Location Code Using EAN-13 n3+n13
412 Purchase From (Location Code of Party From Whom Goods n3+n13
Are Purchased)
413 Ship For UCC/EAN Location Code n3+n13
414 EAN Location Code For Physical Identification n3+n13
420 Ship To (Deliver To) Postal Code Within a Single Postal n3+an..20
Authority
421 Ship To (Deliver To) Postal Code With 3-Digit ISO Country n3+n3+an..9
Code Prefix
8001 Roll Products-Width, Length, Core Diameter, Direction and n4+n14
Splices
8003 UPC/EAN Number and Serial Number Or Returnable Asset n4+n14+an..16
8004 UCC/EAN Serial Identification n4+an..30
8005 Identifies the Price Per Unit of Measure n4+n6
8006 Component of an Article n4+n14+n2+n2
8018 Service Relation Number n4+n18
8100 Coupon Extended Code-Number System Character and n4+n1+n5
Offer
8101 Coupon Extended Code-Number System Character, Offer n4+n1+n5+n4
and End of Offer
8102 Coupon Extended Code-Number System Character n4+n1+n1
Preceded by Zero
90 Mutually Agreed, Between Trading Partners n2+an..30
91 Intra-Company (Internal) n2+an..30
92 Intra-Company (Internal) n2+an..30

227
Chapter 3 Bar Codes

Table 33. UCC/EAN-128 Application Identifiers (continued)

Application
Content Format
Identifier (AI)
93 Intra-Company (Internal) n2+an..30
94 Intra-Company (Internal) n2+an..30
95 Internal-Carriers n2+an..30
96 Internal-Carriers n2+an..30
97 Intra-Company (Internal) n2+an..30
98 Intra-Company (Internal) n2+an..30
99 Internal n2+an..30

(*) To indicate only year and month, DD must be filled with “00”
(**) Plus one digit for length indication
(***) Plus one digit for decimal point indication
Data Value Representation:
a - alphabetic characters n - numeric characters
an - alpha-numeric characters n3 - 3 numeric characters, fixed length
an..3 - up to 3 alpha-numeric characters n..3 - up to 3 numeric characters

Quiet Zone
Both ends of the bar code structure require blank quiet zones. The quiet
zones must be at least 0.25 inches wide and completely blank to ensure
accurate reading of the start/stop codes and to prevent adjacent bar codes
from overlapping. You must provide sufficient space on the form for the quiet
zones.

Start/Stop Codes
The start and stop codes identify the leading and trailing ends of the bar code.
UCC/EAN-128 uses unique start codes for character subsets B and C, and a
stop code common to both. An automatic mode switching feature is used to
generate the correct start code based on the first four data field characters.

Data Field
UCC/EAN-128 bar codes require a special character called “Function 1”
(FNC1) to immediately follow the start code. IGP automatically supplies this
character, so it must not be included in the data field by the user.
A character is made up of three bars and three spaces, each varying in width
from 1 through 4 modules, for a total of eleven modules. The number of
modules making up the bars is even. The stop code has four bars and is 13
modules wide.
The character set for UCC/EAN-128 is the same as the character set for Code
128. Every character is interpreted according to the currently active character
subset. UCC/EAN-128 uses subset B and subset C only. Subset B, shown in
Table 15 (page 138), includes all standard alphanumeric keyboard
characters, lowercase alphabetical characters, and special characters.
Subset C interprets the characters as pairs of numbers 00 through 99, along

228
UCC/EAN-128

with some special characters, as shown in Table 16 (page 139). The start
code or subset switch code determines whether a particular bar code
character is decoded as one character or as a pair of numbers.

Readable Data
The optional printed data field (PDF) provides a human-readable
interpretation of the bar code data. When the printed data field is enabled by
use of the “PDF” parameter, the overall height of the bars is reduced to make
room for a guard band and the human-readable characters. The printed data
field will be formatted with spaces or parentheses denoting particular data
fields such as the application identifier. Special characters such as start, stop,
subset switch, modulo-103 check digit, and FNC1 do not appear in the
human-readable data.
The readable data is oriented along the bar code from start code to stop code.
It may be positioned above or below a bar code, and the bar code may be
horizontal, vertical, or inverted.

Modulo-103 Check Digit


A modulo-103 check digit is automatically calculated and inserted in the bar
code symbol immediately in front of the stop code, in the same manner as the
Code 128 bar code. The check digit verifies accurate scanning. The start
code is included in the check digit algorithm. The modulo-103 check digit is
not displayed in the readable data field.

Modulo-10 Data Field Check Digit for SSCC-18 and SCC-14


AI 00 (called the Serial Shipping Container Code, or SSCC-18) takes
eighteen additional numerical data bytes. The last data byte is a modulo-10
check digit on the preceding seventeen data bytes. Counting the two zeros of
the application identifier, the modulo-10 check digit is the twentieth byte in the
data field.
AI 01 (called the Shipping Container Code, or SCC-14) takes fourteen
additional numerical data bytes. The last data byte is a modulo-10 check digit
on the preceding thirteen data bytes. Counting the zero and the one of the
application identifier, the modulo-10 check digit is the sixteenth byte in the
data field.
The modulo-10 data field check digit for both SSCC-18 and SCC-14 is printed
in the bar code as the second half of the last number pair using subset C. It is
displayed in the human-readable data field as the twentieth byte for SSCC-18
or the sixteenth byte for SCC-14.
IGP automatically calculates the modulo-10 check digit for SSCC-18 if only 17
data digits are provided following the application identifier of 00.

229
Chapter 3 Bar Codes

UCC/EAN-128 Command Format


BARCODE
UCC-128; [DIR;] [MAG;] [Hn[.m];] [BFn;L;] [DARK;] SR;SC
(D)data field(D)
[PDF [;LOC] [;FONT]]
STOP
BARCODE The Bar Code command; enter BARCODE.
UCC-128 Designates bar code type Code UCC-128; enter
UCC-128.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
MAG Optional parameter to magnify the bar code symbol
by increasing the width of the bars and spaces. The
magnification default value is X1. Increasing the
magnification adjusts printed character density as
shown in Table 9 on page 99. You can also use XR
or XRD as defined on page 97. You must specify
eight digits for variable ratio. They stand for the
widths of alternating bars and spaces from the
narrowest to the widest. Note that a valid
UCC/EAN-128 bar code can be no larger than
165 mm (6.5 inches) wide.
Hn[.m] Optional parameter to adjust the overall height of
the bar code symbol (including the upper and lower
0.1 inch guard bands and any human-readable
data). Height adjustments are made in 0.1 inch
increments; enter H and a value from 3 through 99
to select height adjustments from 0.3 through 9.9
inches. The default value is 0.9 inch. [.m] is an
additional number of dots for the bar code height.
(Dots are in the current scale).
NOTE: If 0.3 inches is the selected height, the PDF cannot be included.
BFn;L Optional parameters for assigning a dynamic bar
code data field location on a form and for
designating the length of the data field. With these
parameters, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.

230
UCC/EAN-128

c. Replace L with the maximum number of


characters in the field. The actual data
provided dynamically during the Execute Form
Mode can be less than L. It is permitted to
supply no data at all.
d. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn;L
parameters are used. However, refer to the
data field description for available characters
to use during Execute Form Mode.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command, or use the
CP.DP format.
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command, or use
the CP.DP format.
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used on both ends of the data field. It will
not print with the data.
data field The bar code data. The data field for UCC/EAN-
128 consists of an “application identifier” (AI) of two
to four numbers, followed by data of appropriate
length (variable or fixed) and type (numeric or
alphanumeric). See Table 33 for a list of application
identifiers and their associated data fields.
The FNC1 character is required as the first
character after the start code for UCC/EAN-128 bar
codes, and IGP will always generate it
automatically. It will appear in the bar code but not
in the human-readable field. Do not supply FNC1 in
the data field.
The start code and subset switching is done
automatically by IGP based on the data field
contents so that the bar code length is minimized.
Subset C encodes each pair of numbers as a single
bar code character, providing a higher character

231
Chapter 3 Bar Codes

density. If the first four data digits are numbers, the


bar code starts in subset C; otherwise it starts in
subset B. The subset will switch from B to C at any
point in the data field if the next four characters are
numbers, and will switch from C to B if the next two
characters are not numbers or only one character
remains.
The data field can contain any of the characters
listed in Table 33 except the system SFCC and the
character used as a delimiter.
PDF Optional parameter to enable printing of the human
readable data field. Enter PDF to print the data
field. If this parameter is not used, the human
readable data will not print.
LOC Optional parameter to identify the location of the
printable data field. The default value is B, locating
the human readable data below the bar code. A
locates the printable data field above the bar code.
The height of the bar code body is reduced to
compensate for the human readable field and the
guard bands.
FONT Optional parameter to identify the font of the
printable data field. Enter O to select OCR-A font;
enter X to select OCR-B font; enter N to select 10
cpi; enter P to select 12 cpi; enter Q to select 13
cpi; enter R to select 15 cpi; enter T to select 17 cpi;
enter V to select 20 cpi.
STOP Ends the bar code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not encountered, an error message
results.

232
UCC/EAN-128

Code UCC/EAN-128 Examples


The following example generates the SSCC-18 variant of a UCC/EAN-128
bar code in horizontal orientation at the default ratio, and vertically at a user
defined ratio of double normal size.
NOTE: The fields of AI=00 are seen here separated by spaces. By default,
the AI is separated from the rest of the data by parenthesis. This is
controlled by the front panel option “AI 00 Spaces” in the IGP menu
(see your User's Guide).
~CREATE;UCCTEST
/ Horizontal bar code is dark, nominal width, start row 35,
start column 15.
/ Human-readable field is below the bar code in OCR-B font.
BARCODE
UCC-128;DARK;35;15
*0034567890123456789*
PDF;X
STOP
/ Vertical bar code is dark, double width, start row 35, start
column 50.
/ Human-readable data field is above the bar code in normal 10
cpi font.
BARCODE
UCC-128;VSCAN;XR2:2:4:4:6:6:8:8;H12;DARK;35;50
*0034567890123456789*
PDF;A
STOP
END
~EXECUTE;UCCTEST

~NORMAL

Figure 47. UCC/EAN-128 Example 1

233
Chapter 3 Bar Codes

The program below illustrates incremental UCC/EAN-128 barcodes.


Incremental UCC/EAN-128 barcode syntax for non-impact printers requires
that the STARTMASK be exactly as wide as the data field.
~CREATE;UCCINC;140
BARCODE
UCC-128;I;DARK;3;20
+XXXXXXXXX00001;*400P0119600001*
PDF;B
STOP
ALPHA
DARK;1;20;0;0;*PURCHASE ORDER NUMBER*
STOP
END
~EXECUTE;UCCINC;3

~NORMAL

Figure 48. UCC/EAN-128 Example 2

234
UCC/EAN-128

The following example shows the use of dynamic data. The ship-to-postal
code, AI 420, is used to encode 5 digit ZIP Codes.
~CREATE;UCCDYN;140
BARCODE
UCC-128;BF1;8;3;20
PDF;X
STOP
ALPHA
DARK;1;20;0;0;*SHIP TO POSTAL*
STOP
END
~EXECUTE;UCCDYN
~BF1;*42092614*
~NORMAL
~EXECUTE;UCCDYN
~BF1;*42090210*

~NORMAL
~EXECUTE;UCCDYN
~BF1;*42090028*

~NORMAL

Figure 49. UCC/EAN-128 Example 3

235
Chapter 3 Bar Codes

UPC-A
The UPC-A bar code structure is shown in Figure 50 and described on the
following pages.

SR, SC START CODE CENTER CODE STOP CODE


POSITION

QUIET LEFT DATA RIGHT DATA QUIET 2- or 5-


Normal ZONE FIELD FIELD ZONE DIGIT
ADD-ON
HEIGHT

NUMBER CODE
SYSTEM N C
CHARACTER

CHECK DIGIT FIELD CHECK DIGIT


NUMBER SYSTEM OPTIONAL READABLE CHARACTER
CHARACTER FIELD DATA FIELD NUMBER SYSTEM
SR, SC CHARACTER FIELD
POSITION

INV 2- or 5- QUIET QUIET


DIGIT ZONE ZONE HEIGHT
ADD-ON
CODE RIGHT DATA LEFT DATA
FIELD FIELD
C N

STOP CODE CENTER START CODE


CODE NUMBER SYSTEM
CHECK DIGIT CHARACTER
CHECK DIGIT FIELD
CHARACTER

2- or 5- QUIET
DIGIT SR, SC
CCW ADD-ON
CODE POSITION
ZONE N NUMBER
SYSTEM CW
CHARACTER
START CODE NUMBER
QUIET
ZONE C CHECK SYSTEM
SR, SC DIGIT CHARACTER
POSITION CHARACTER FIELD
STOP CODE LEFT
DATA
CHECK FIELD
DIGIT
FIELD
OPTIONAL
RIGHT READABLE CENTER
DATA DATA CODE
FIELD FIELD

OPTIONAL RIGHT
READABLE
CENTER CODE DATA DATA
FIELD FIELD

CHECK
LEFT DIGIT
DATA FIELD
FIELD
STOP CODE

NUMBER QUIET
SYSTEM ZONE CHECK
CHARACTER C DIGIT
START CODE FIELD CHARACTER
2- or 5-
QUIET DIGIT
ZONE N NUMBER ADD-ON
SYSTEM CODE
CHARACTER
HEIGHT HEIGHT

Figure 50. UPC-A Structure

236
UPC-A

Quiet Zone
Quiet zones extend on both ends of the bar code to permit the scan to begin
and end in a blank area. The IGP automatically produces an 11-module wide
left quiet zone; you are responsible for providing sufficient space (minimum of
seven modules) on the form for the right quiet zone. The number system
character is also printed automatically in the left quiet zone.

Start/Center/Stop Codes
The start/center/stop codes are special character codes marking those
portions of the bar code. These codes are automatically provided.

Number System Character


The number system character field allows you to provide a code to a class or
type of item. The first character in the data field is used as the number system
character.

Data Field
The bar code symbol uses a series of varying width bars and spaces to
represent a limited character set (numbers 0-9 and Special Characters Start,
Center, and Stop). The bars and spaces vary in width from one through four
modules. Each character consists of two bars and two spaces that total seven
modules. The symbol coding of the left data field is different from the right
data field to permit read direction sensing.
The optional 2- or 5-digit add-on data field is placed at the end of the bar code
and typically identifies a periodical issue number or price, respectively.

Readable Data
The human readable data field provides a readable interpretation of the bar
code data. It can either be suppressed or printed above or below the bar code
symbol.

Check Digit
The modulo-10 check digit is automatically calculated and inserted in the bar
code symbol. The check digit verifies accurate scanning. The number system
character is included in the check digit algorithm.

237
Chapter 3 Bar Codes

UPC-A Command Format


BARCODE
UPC-A [+n];[DIR;] [SCB;] [MAG;] [Hn[.m];] [BFn;] [DARK;] SR; SC
(D)data field(D)
[PDF [;LOC] [;FONT]]
STOP
BARCODE The Bar Code command; enter BARCODE.
UPC-A Designates bar code type UPC-A; enter UPC-A.
+n Optional parameter to provide a 2- or 5-digit add-on
code at the end of the bar code data field. Enter a
plus sign (+) and a value of 2 or 5. The first bar of
the add-on code is separated by nine modules from
the last bar of the UPC symbol and a left guard
pattern.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
SCB This option shortens the length of the center guard
bars, which are normally full length. Enter SCB.
MAG Optional parameter to magnify (horizontally
expand) the bar code symbol. The magnification
default value is X1. Enter a magnification value
from Table 9 on page 99 to increase the
magnification. Increasing the magnification adjusts
printed character density. You can also use XR or
XRD as defined on page 97. (You must specify 8
digits for MAG for variable ratio.)
Hn[.m] Optional parameter to adjust the overall height
(vertical expansion) of the bar code symbol
(including the upper and lower 0.1-inch guard
bands and any human readable data). Height
adjustments are made in 0.1-inch increments; enter
H and a value from 4 through 99 to select height
adjustments from 0.4 through 9.9 inches. The
default value is 1.3 inches.
[.m] is an additional number of dots for the bar code
height. (Dots are in the current dot scale.)
BFn Optional parameter for assigning a dynamic bar
code data field location on a form. With this
parameter, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps:
a. Enter BF.

238
UPC-A

b. Replace n with a number ranging from 0


through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. The length of the data field need not be
specified, since it is fixed at 11 digits, plus any
add-on data.
d. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. (It will not print with
the data.) Use the same character at both ends of
the data field.
data field Enter the characters for the bar code data,
restricted to exactly 11 digits. If the 2- or 5-digit
add-on data option is used, include this data at the
end of the data field. The first digit is interpreted as
the number system character. The remaining 10
digits are the data field characters. The characters
available for the data field are 0 through 9 (hex 30
through 39).

239
Chapter 3 Bar Codes

PDF Optional parameter which affects printing of the


human readable data field. The data field will print
automatically unless the PDF-suppress command
is specified in the FONT parameter. UPC-A data
fields can be printed above or below the bar code
symbol. This parameter is not allowed if a null data
field is specified. If the PDF command is not
entered in the UPC-A command format, the data
field automatically prints in OCR-B.
LOC Optional parameter to identify the location of the
printable data field. The default value is B, locating
the human readable data below the bar code. A
locates the printable data field above bar code. To
compensate for printing the 0.1-inch high data, the
height of the bar code body is reduced 0.1-inch.
FONT Optional parameter to select the font for the human
readable data field. The default font type for UPC-A
bar codes is OCR-B; if no PDF command is
entered in the command format, the data field is
printed automatically in OCR-B. Entering X will also
designate the OCR-B type font. Enter N to select
the normal ASCII 10 cpi font; enter O to select the
OCR-A 10 cpi font. Enter P to select 12 cpi. Enter Q
to select 13 cpi. Enter R to select 15 cpi. Enter T to
select 17 cpi. Enter V to select 20 cpi. Enter S to
suppress printing the data field and the trailing
lower portions of the UPC bar code.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

240
UPC-A

UPC-A Example
Figure 51 illustrates a horizontal and vertical UPC-A bar code generated by
the following program:
~CREATE;UPCA (Enter Create Form Mode)
BARCODE (Bar Code command)
UPC-A+5;H9;DARK;39;15 (Dark Code UPC-A, 5-digit add-on,
H 0.9, SR 39, SC 15)
*1234567887655555* (Data Field + 5-digit add-on data field)
PDF (Printable Data Field)
STOP (Ends Bar Code command)
BARCODE (New Bar Code command)
UPC-A+5;VSCAN;H12;DARK;39;50
(Vertical Dark UPC-A, 5-digit add-on,
H 1.2, SR 39, SC 50)
*1234567887655555* (Data Field + 5-digit add-on data field)
PDF (Printable Data Field)
STOP (Ends Bar Code command)
END (Terminates Create Form Mode)
~EXECUTE;UPCA;1 (Executes the form, form count of 1)

~NORMAL

SC 50

SC 15

SR 39 SR 39

UPC-A.EX

Figure 51. Sample UPC-A Bar Codes with Add-on Data

241
Chapter 3 Bar Codes

UPC-E and UPC-E0


The UPC-E and UPC-E0 bar code structure is shown in Figure 52 and
described on the following pages.

START STOP
SR, SC
POSITION CODE CODE

DATA
Normal QUIET
ZONE FIELD CHECK
QUIET
ZONE
2- or 5-
DIGIT
HEIGHT DIGIT
FIELD ADD-ON
CODE
N C

NUMBER OPTIONAL CHECK


SYSTEM NUMBER SYSTEM READABLE DIGIT
CHARACTER FIELD DATA FIELD OPTIONAL CHARACTER
CHARACTER READABLE
DATA FIELD
SR, SC
POSITION

2- or 5- QUIET QUIET
DIGIT CHECK
INV HEIGHT ADD-ON
CODE
ZONE DIGIT
FIELD DATA
ZONE

FIELD
C N

CHECK DIGIT NUMBER SYSTEM NUMBER SYSTEM


CHARACTER CHARACTER FIELD CHARACTER

2- or 5- NUMBER
N SYSTEM
DIGIT
ADD-ON SR, SC QUIET CHARACTER
CODE POSITION ZONE

CHECK
C DIGIT START CODE
QUIET CHARACTER
SR, SC ZONE
CCW POSITION
NUMBER SYSTEM CW
CHARACTER FIELD
STOP CODE

CHECK DATA
OPTIONAL
DIGIT READABLE FIELD
FIELD DATA
FIELD

DATA
OPTIONAL
FIELD READABLE CHECK
DATA DIGIT
FIELD FIELD
STOP CODE

NUMBER
SYSTEM
CHARACTER QUIET C CHECK
START CODE FIELD DIGIT
ZONE
CHARACTER

2- or 5-
N NUMBER DIGIT
QUIET ADD-ON
ZONE SYSTEM
CHARACTER CODE

HEIGHT HEIGHT

Figure 52. UPC-E and UPC-E0 Structure

242
UPC-E and UPC-E0

Quiet Zone
Quiet zones extend on both ends of the bar code to permit the scan to begin
and end in a blank area. The IGP automatically produces an 11-module wide
left quiet zone. You must provide sufficient space (minimum of seven
modules) on the form for the right quiet zone. The number system character is
also printed automatically in the left quiet zone.

Start/Stop Codes
The start/stop codes are special character codes marking those portions of
the bar code. These codes are automatically provided.

Number System Character


The number system character field for all UPC-E and UPC-E0 bar codes must
be zero.

Data Field
The bar code symbol uses a series of varying width bars and spaces to
represent a limited character set (numbers 0-9 and Special Characters Start
and Stop). The bars and spaces vary in width from one through four modules.
Each character consists of two bars and two spaces that total seven modules.
For UPC-E, eleven digits are expected, which are compressed down to the
six encoded symbol characters. For UPC-E0, six compressed digits are
expected.
The optional 2- or 5-digit add-on data field is placed at the end of the bar code
and typically identifies a periodical issue number or price, respectively.

Readable Data
The human readable data field provides a readable interpretation of the bar
code data. It can either be suppressed or printed above or below the bar code
symbol.

Check Digit
The modulo-10 check digit is automatically calculated and inserted in the bar
code symbol. The check digit verifies accurate scanning. The number system
character is included in the check digit algorithm.

243
Chapter 3 Bar Codes

UPC-E and UPC-E0 Command Format


BARCODE
type [+n]; [DIR;] [MAG;] [Hn[.m];] [BFn;] [DARK;] SR; SC
(D)data field(D)
[PDF [;LOC] [;FONT]]
STOP
BARCODE The Bar Code command; enter BARCODE.
type Designates bar code type UPC-E or UPC-E0; enter
UPC-E or UPC-E0.
+n Optional parameter to provide a 2- or 5-digit add-on
code at the end of the bar code. Enter plus (+) and
a value of 2 or 5. The first bar of the add-on code is
separated by nine modules from the last bar of the
UPC symbol and a left guard pattern.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
MAG Optional parameter to magnify (horizontally
expand) the bar code symbol. The magnification
default value is X1. Enter a magnification value
from Table 9 on page 99 to increase the
magnification. Increasing the magnification adjusts
printed character density. You can also use XR or
XRD as defined on page 97. (You must specify 8
digits for MAG for variable ratio.)
Hn[.m] Optional parameter to adjust the overall height
(vertical expansion) of the bar code symbol
(including the upper and lower 0.1-inch guard
bands and any human readable data). Height
adjustments are made in 0.1-inch increments; enter
H and a value from 4 through 99 to select height
adjustments from 0.4 through 9.9 inches. The
default value is 1.3 inches.
[.m] is an additional number of dots for the bar code
height. (Dots are in the current dot scale.)
BFn Optional parameter for assigning a dynamic bar
code data field location on a form. With this
parameter, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.

244
UPC-E and UPC-E0

c. The length of the data field need not be


specified, since it is fixed at 6 or 11 digits, plus
any add-on data.
d. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field but it will
not print with the data.
data field The characters available for the data field are 0
through 9 (hex 30 through 39).
For UPC-E, eleven digits are expected: Enter the
number system character first by entering 0;
followed by the five-digit Manufacturer Number;
ending with the five-digit Item Number. The
Manufacturing Number and Item Number
sequences must conform to one of the number
pattern sequences shown in Table 34.
The IGP will compress the 11 characters of data
down to the six encoded UPC-E symbol characters.
Include the 2- or 5-digit add-on data within the
quotes at the end of this data field.
For UPC-E0, six digits are expected. These six
digits must be a valid compressed UPC-E number.
Otherwise, Error 96 will be generated.

245
Chapter 3 Bar Codes

PDF Optional parameter which affects printing of the


human readable data field. The data field will print
automatically unless the PDF-suppress command
is specified in the FONT parameter. UPC-E data
fields can be printed above or below the bar code
symbol. This parameter is not allowed if a null data
field is specified. If the PDF is not entered in the
UPC-E command format, the data field
automatically prints in OCR-B.
LOC Optional parameter to identify the location of the
printable data field. The default value is B, locating
the human readable data below the bar code. A
locates the printable data field above bar code. To
compensate for printing the 0.1-inch high data, the
height of the bar code body is reduced 0.1-inch.
FONT Optional parameter to select the font for the human
readable data field. The default font type for UPC-A
bar codes is OCR-B; if no PDF command is
entered in the command format, the data field is
printed automatically in OCR-B. Entering X will also
designate the OCR-B type font. Enter N to select
the normal ASCII 10 cpi font; enter O to select the
OCR-A 10 cpi font. Enter P to select 12 cpi. Enter Q
to select 13 cpi. Enter R to select 15 cpi. Enter T to
select 17 cpi. Enter V to select 20 cpi. Enter S to
suppress printing the data field and the trailing
lower portions of the UPC bar code.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

246
UPC-E and UPC-E0

Table 34. Eleven-Digit Compression

1. Manufacturer’s Number Product Numbers that can be used 00000-00999

X X 0 0 0 ( ) ( ) ( )
X X 1 0 0 first two digits of last three digits of third digit of the
X X 2 0 0 manufacturer’s the product manufacturer’s
number number number, use 0
through 2 only

2. Manufacturer’s Number Product Numbers that can be used 00000-00999

X X 3 0 0 ( ) ( ) ( 3 )
X X 9 0 0 first three digits of last two digits of depends on how
manufacturer’s the product many digits appear
number number; use 00-99 in the
only manufacturer’s
number

3. Manufacturer’s Number Product Numbers that can be used 00000-00999

X X X X 0 ( ) ( ) ( 4 )
first four digits of last digit of product depends on how
manufacturer’s number, use 0 many digits appear
number through 9 only in the
manufacturer’s
number

4. Manufacturer’s Number Product Numbers that can be used 00000-00999

X X X X X ( ) ( )
all five digits of last digit of product
manufacturer’s number, use 5-9
number only

247
Chapter 3 Bar Codes

Table 35. Six-Digit Zero Expansion

if the 6 digit number ends


then the MFPS number is: and the Product Number is:
with:

0 the first 2 digits (of the zero 00 plus the THIRD, FOURTH
Example: 124560 suppressed number) plus 000 and FIFTH digit (of the zero
12000 suppressed number)
00456

1 the first two digits plus 100 same as above


Example: 275831 27100 00583

2 the first two digits plus 200 same as above


Example: 412022 41200 00202

3 the first three digits plus 00 000 plus the FOURTH and
Example: 876543 87600 FIFTH digit
00054

4 the first four digits plus 0 0000 plus the FIFTH digit
Example: 753774 75370 00007

5, 6, 7, 8, 9 the first five digits of the zero 0000 plus the SIXTH digit
Examples: suppressed number
213756 21375 00006
517019 51701 00009

248
UPC-E and UPC-E0

UPC-E and UPC-E0 Example


Figure 53 illustrates a horizontal and vertical UPC-E bar code generated by
the following program:
~CREATE;UPCE (Enter Create Form Mode)
BARCODE (Bar Code command)
UPC-E+2;H9;DARK;34;15 (Dark Code UPC-E, 2-digit add-on,
H 0.9, at SR 34, SC 15)
*0927400000522* (Data Field + the 2-digit add-on)
PDF (Printable Data Field)
STOP (Ends Bar Code command)
BARCODE (New Bar Code command)
UPC-E0+2;VSCAN;H10;DARK;34;50
(Vertical Dark UPC-E0, 2-digit add-on,
H 1.0, at SR 34, SC 50)
*92745422* (Data Field plus the 2-digit add-on)
PDF (Printable Data Field)
STOP (Ends Bar Code command)
END (Terminates Create Form Mode)
~EXECUTE;UPCE0;1 (Executes the form, form count of 1)

~NORMAL

SC 50

SC 15

SR 34 SR 34

UPC-E UPC-E0

UPC-E.EX

Figure 53. Sample UPC-E Bar Codes

249
Chapter 3 Bar Codes

UPCSHIP
The structure for the UPCSHIP bar code is shown in Figure 54 and described
on the following pages.

SR, SC QUIET QUIET


SR, SC
POSITION ZONE POSITION ZONE

STOP START
CODE CODE

OPTIONAL
CHECK
DIGIT
CCW CW

DATA DATA
FIELD OPTIONAL FIELD
READABLE
DATA
FIELD

OPTIONAL
CHECK
DIGIT
START STOP UPPER
UPPER LOWER LOWER
CODE CODE GUARD
GUARD GUARD GUARD
BAND BAND BAND BAND
QUIET QUIET
ZONE ZONE

HEIGHT HEIGHT

OPTIONAL
CHECK DIGIT
SR, SC
POSITION
UPPER GUARD BAND

QUIET START STOP QUIET


Normal ZONE CODE
DATA FIELD
CODE ZONE HEIGHT

LOWER GUARD BAND

OPTIONAL READABLE DATA FIELD

SR, SC
POSITION
OPTIONAL READABLE DATA FIELD

LOWER GUARD BAND

HEIGHT
QUIET STOP START QUIET
INV ZONE CODE
DATA FIELD
CODE ZONE

UPPER GUARD BAND

OPTIONAL
CHECK DIGIT

Figure 54. UPCSHIP Structure

250
UPCSHIP

Quiet Zone
Both ends of the bar code structure have blank quiet zones. The quiet zones
must be at least 0.25 inches wide and completely blank to ensure accurate
reading of the start/stop codes and to prevent adjacent bar codes from
overlapping. You must provide sufficient space on the form for the quiet
zones.

Start/Stop Codes
Unique start and stop codes permit bidirectional scanning. Both start and stop
codes contain bars and spaces. They are automatically produced.

Data Field
The bar code symbol uses a series of wide and narrow bars and spaces to
represent numeric characters. The structure is 2 wide elements (bars or
spaces) and 3 narrow elements. The UPCSHIP barcode must contain exactly
13 digits of numeric data.

Readable Data
The optional readable data field provides a readable interpretation of the bar
code data. It can be printed above or below the bar code symbol.

Check Digit
The modulo-10 check digit is inserted automatically into the bar code to verify
accurate scanning.

251
Chapter 3 Bar Codes

UPCSHIP Command Format


BARCODE
UPCSHIP; [DIR;] [MAG;] [Hn[.m];] [BFn;] [DARK;] SR; SC
[(D)data field(D)]
[PDF [;LOC] [;FONT]]
STOP
BARCODE The Bar Code command; enter BARCODE.
UPCSHIP Designates bar code type UPCSHIP; enter
UPCSHIP.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
MAG Optional parameter to magnify (horizontally
expand) the bar code symbol. The magnification
default value is X1. As required for scanning, enter
a magnification value from Table 9 on page 99 to
increase the magnification. Increasing the
magnification adjusts printed character density.
You can also use XR or XRD as defined on page
97.
Hn[.m] Optional parameter to adjust the overall height
(vertical expansion) of the bar code symbol
(including the upper and lower 0.1-inch guard
bands and any human readable data). Height
adjustments are made in 0.1-inch increments; enter
H and a value from 3 through 99 to select height
adjustments from 0.3 through 9.9 inches. The
default value is 0.9-inch.
[.m] is an additional number of dots for the bar code
height. (Dots are in the current dot scale.)
NOTE: If 0.3 inches is the selected height, the PDF cannot be included.
BFn Optional parameter for assigning a dynamic bar
code data field location on a form. With this
parameter, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps:
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. The length of the data field need not be
specified, since it is fixed at 13 digits, plus any
add-on data.

252
UPCSHIP

d. The information for the data field is entered


dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).
(D) The printable character (delimiter) identifying the
start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field, but it
will not print with the data.
data field The barcode data. The UPCSHIP barcode requires
exactly 13 characters of data. The available
characters are 0 through 9 (hex 30 through hex 39).
The modulo-10 check digit is automatically included
in the barcode.
PDF Optional parameter to enable printing of the human
readable data field. Enter PDF to print the data
field. If the parameter is not used, the human
readable data is not printed.
LOC Optional parameter to identify the location of the
printable data field. The default value is B, locating
the human readable data below the bar code. A
locates the printable data field above bar code. To
compensate for printing the 0.1-inch high data, the
height of the bar code body is reduced 0.1-inch.

253
Chapter 3 Bar Codes

FONT Optional parameter to select the font for the human


readable data field. Enter O to select OCR-A font;
enter X to select OCR-B font; enter N to select 10
cpi; enter P to select 12 cpi; enter Q to select 13
cpi; enter R to select 15 cpi; enter T to select 17 cpi;
enter V to select 20 cpi.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

UPCSHIP Example
~CREATE;UPCSHIP (Enter Create Form Mode)
BARCODE (Bar Code command)
UPCSHIP;H12;9;8 (UPCSHIP Bar Code, height 1.2 inches,
at SR 9, SC 8)
*0014154401171* (Data Field)
PDF (Print Data Field)
STOP (Ends Bar Code command)
BARCODE (New Bar Code command)
UPCSHIP;VSCAN;3;45 (Vertical UPCSHIP Bar Code at SR 3, SC 45)
*1141281029432* (Data Field)
PDF;A (Print Data Field above the bar code)
STOP (Ends Bar Code command)
END (Terminates Create Form Mode)
~EXECUTE;UPCSHIP;1 (Execute the form, form count of 1)

~NORMAL

SC 45

SR 3

SC 8

SR 9

Figure 55. Sample UPCSHIP Bar Codes

254
UPS 11

UPS 11
The UPS 11 structure is shown in Figure 56 and described on the following
pages.

SR, SC QUIET QUIET


SR, SC
POSITION ZONE POSITION ZONE

STOP START
CODE CODE

OPTIONAL
CHECK
DIGIT
CCW CW

DATA DATA
FIELD OPTIONAL FIELD
READABLE
DATA
FIELD

OPTIONAL
CHECK
DIGIT
START STOP UPPER
UPPER LOWER LOWER
CODE CODE GUARD
GUARD GUARD GUARD
BAND BAND BAND BAND
QUIET QUIET
ZONE ZONE

HEIGHT HEIGHT

OPTIONAL
CHECK DIGIT
SR, SC
POSITION
UPPER GUARD BAND

QUIET START STOP QUIET


Normal ZONE CODE
DATA FIELD
CODE ZONE HEIGHT

LOWER GUARD BAND

OPTIONAL READABLE DATA FIELD

SR, SC
POSITION
OPTIONAL READABLE DATA FIELD

LOWER GUARD BAND

HEIGHT
QUIET STOP START QUIET
INV ZONE CODE
DATA FIELD
CODE ZONE

UPPER GUARD BAND

OPTIONAL
CHECK DIGIT

Figure 56. UPS 11 Structure

255
Chapter 3 Bar Codes

Quiet Zone
Both ends of the bar code structure require blank quiet zones. The quiet
zones must be at least 0.25 inches wide and completely blank to ensure
accurate reading of the start/stop codes and to prevent adjacent bar codes
from overlapping. Be sure to provide sufficient space on the form for the quiet
zones.

Start/Stop Codes
The start/stop codes identify the leading and trailing end of the bar code. Each
of the UPS 11 subsets uses a unique start code and a common stop code,
both automatically provided by the IGP.

Data Field
UPS 11 is a special case of Code 128 (page 132). This bar code is restricted
to 10 data characters. The first character must be 0 through 9 or A through Z.
The remaining nine digits must be 0 through 9.

Readable Data
The optional readable data field provides a readable interpretation of the bar
code data. It can be printed above or below the bar code symbol.

Check Digit
The modulo-103 check digit is automatically calculated and inserted in the bar
code symbol. The check digit verifies accurate scanning. The start code is
included in the check digit algorithm.

UPS 11 Command Format


BARCODE
UPS11; [DIR;] [MAG;] [Hn[.m];] [BFn;] [DARK;] SR; SC
(D)data field(D)
[PDF [;LOC] [;FONT]]
STOP
BARCODE The Bar Code command; enter BARCODE.
UPS11 Designates bar code type UPS 11; enter UPS11.
DIR Optional parameter that allows for rotating a
barcode. Enter CW for clockwise rotation. Enter
CCW or VSCAN for counter-clockwise rotation.
Enter INV for inverted rotation. If DIR is not
entered, the barcode is horizontally oriented.
MAG Optional parameter to magnify (horizontally
expand) the bar code symbol. The magnification
default value is X1. Increasing the magnification
adjusts printed character density as shown in Table
9 on page 99. You can also use XR or XRD as
defined on page 97. (You must specify 8 digits for
MAG for variable ratio.)

256
UPS 11

Hn[.m] Optional parameter to adjust the overall height


(vertical expansion) of the bar code symbol
(including the upper and lower 0.1-inch guard
bands and any human readable data). Height
adjustments are made in 0.1-inch increments; enter
H and a value from 3 through 99 to select height
adjustments from 0.3 through 9.9 inches. The
default value is 0.9 inch.
[.m] is an additional number of dots for the bar code
height. (Dots are in the current dot scale.)
NOTE: If 0.3 inches is the selected height, the PDF cannot be included.
BFn; Optional parameters for assigning a dynamic bar
code data field location on a form and for
designating the length of the data field. With these
parameters, the actual data for the bar code data
field is dynamically provided during the Execute
Form Mode; the data is not specified during the
Create Form Mode. To use this field, perform the
following steps.
a. Enter BF.
b. Replace n with a number ranging from 0
through 512 to identify the bar code field. The
SR and SC parameters specify the exact
location of the bar code field identified by n.
c. The length of the data field need not be
specified, since it is fixed at10 digits.
d. The information for the data field is entered
dynamically during the Execute Form Mode.
(Refer to “Execute Form: Dynamic Bar Code
Data” on page 61.) Do not use the data field
parameter to enter data when the BFn;L
parameters are used. However, refer to the
data field description for available characters.
DARK Optional parameter to produce darker looking bar
codes. Enter DARK. Refer to “Dark Printing” on
page 29 for more information.
SR Defines the starting row for the bar code. Enter a
value ranging from row 1 to one less than the
length of the form. Character row or dot row is
specified based on the Scale command (page 89),
or use the CP.DP format (page 26).
SC Defines the starting column of the bar code. Enter a
value ranging from column 1 to one less than the
width of the form. Character column or dot column
is specified based on the Scale command (page
89), or use the CP.DP format (page 26).

257
Chapter 3 Bar Codes

(D) The printable character (delimiter) identifying the


start and finish of the data field. Enter any printable
character other than a slash (/), the SFCC, or a
character used within the data. The same character
must be used at both ends of the data field, but it
will not print with the data.
data field Enter the data for the bar code. This bar code is
restricted to 10 data characters. The first character
must be 0 through 9 or A through Z. The remaining
nine digits must be 0 through 9.
PDF Optional parameter to enable printing of the human
readable data field. Enter PDF to print the data
field. If the parameter is not used, the human
readable data will not print. This parameter is not
allowed if a null data field was specified.
LOC Optional parameter to identify the location of the
printable data field. The default value is B, locating
the human readable data below the bar code. A
locates the printable data field above bar code. To
compensate for printing the 0.1-inch high data, the
height of the bar code body is reduced 0.1 inch.
FONT Optional parameter to select the font for the human
readable data field. Enter O to select OCR-A font;
enter X to select OCR-B font; enter N to select 10
cpi; enter P to select 12 cpi; enter Q to select 13
cpi; enter R to select 15 cpi; enter T to select 17 cpi;
enter V to select 20 cpi.
STOP Ends the Bar Code command while the IGP
continues in the Create Form Mode. Enter STOP. If
STOP is not entered, an error message results.

258
Incrementing Bar Code Data

Incremental Bar Code Fields


With the incremental bar code fields feature, you can update bar code (and
alphanumeric) data fields in a numeric or alphabetical manner automatically
with just one set of data sent from the host computer. You can print up to
65,535 forms with incremental fields automatically updated.
NOTE: Throughout the discussion of incremental fields, the term “increment”
or “incremental” means the field is automatically updated by a
specified amount (or increment). You can actually increment the field
by a positive amount (added) or a negative amount (subtracted) as
specified within the command.
You can use bar code incremental fields with fixed (static) data input as part
of the Create Form Mode, or with dynamic data supplied in the Execute Form
Mode. New formats and parameters are required in the bar code commands
for static and dynamic incremental fields. In addition, the Execute Form
command requires a new format and parameters when you use incremental
fields with dynamic data. You can increment or decrement incremental fields,
repeat at specified intervals before updating, and reset to the starting value
after a specified number of increments.

Incrementing Bar Code Data


Incrementing is controlled with the STEPMASK and STARTDATA command
parameters as described in Table 36. The parameters are part of the bar code
command or part of the Execute command when using the Incremental Bar
Code Dynamic Data command.
The STEPMASK parameter performs three functions:
1. It defines the increment amount (step);
2. It defines the number of characters allowed in the data field
(STARTDATA); and
3. It provides a “mask” to link or unlink subfields of data for individual
incremental activity. The data provided in the STEPMASK field combined
with the data in the STARTDATA field determine the result of these
functions.

259
Chapter 3 Incremental Bar Code Fields

Table 36. Incremental Bar Code Data

STARTDAT
STEPMASK Character Type and Function
A

0-9 A-Z Alpha characters are incremented by


amount in STEPMASK field.

0-9 0-9 Numeric characters are incremented by


amount in STEPMASK field.
0-9 Space Same character type as character in the
next right adjacent, linked increment
position. Character type is numeric if in
the least significant position.
0-9 Not A-Z or Error
0-9

Not 0-9 or L Any Non-incrementing alphanumeric


character.

L Any Linked, non-incrementing alphanumeric


character.

The increment amount is defined by the numeric value of the STEPMASK


data. For example, a STEPMASK value of 1 increments the STARTDATA by
1; a STEPMASK value of 2 increments the STARTDATA by 2.
The maximum number of characters allowed in the STARTDATA is defined
by the number of characters in the STEPMASK field and depends on the
specific type of bar code; the STARTDATA field cannot contain more
characters than used in the STEPMASK field and can only contain the
number and type of characters allowed by the bar code.
Linked and unlinked masking of subfields within the STARTDATA is defined
by using the L value in the STEPMASK field. L indicates linked but non–
incrementing data in the corresponding position of the STARTDATA field. Any
alphanumeric character other than L in the STEPMASK field indicates a non–
incrementing, non-linked STARTDATA subfield.
The following examples illustrate incrementing of bar code data fields. All
cases in the examples use a repeat count parameter value of 1 and a reset
count parameter value of 0. Incremental bar code data is generated identically
to incremental alphanumeric data except the IGP does not add leading
spaces to bar code data.
NOTE: In the following bar code examples, the value of the data is shown
automatically incrementing. In practical applications, the bar code
itself would print corresponding to the incremented data as shown in
the Auto Increment Fields Example in Chapter 2.

260
Incrementing Bar Code Data

Value Description

STARTDATA: ABC123 Linked subfields: ABC and 123


STEPMASK: 000001 RPT = 1
RST = 0
Printed Results: ABC123
ABC124
......
......
......
ABC999
ABD000
......
......
......
ZZZ999
AAA000

Value Description

STARTDATA: 1ABC123 Two separate but linked numeric


STEPMASK: 0LLL001 subfields: 1 and 123, while fixed data
ABC is non–incrementing
Printed Results: 1ABC123 RPT = 1
1ABC124
. ... RPT = 0
. ...
. ...
1ABC999
2ABC000

Value Description

STARTDATA: ABC123 Two separate unlinked subfields:


STEPMASK: 001XX1 ABC and 3, while fixed data 1 and 2
is non–incrementing
Printed Results: ABC123 RPT = 1
ABD124
. . RPT = 0
. .
. .
ABI129
ABJ120

261
Chapter 3 Incremental Bar Code Fields

Incremental Bar Code Fixed Data Fields


The Incremental Bar Code Fixed Data Fields command is a variation of the
standard IGP bar code commands. Use this command with the appropriate
parameters from the standard bar code command when automatic
incrementing of fixed bar code data fields is required. The Incremental Bar
Code Fixed Data Fields command format is shown and defined below.
(Incremental command parameters are shown in boldface type; standard bar
code command parameters and optional non–incremental parameters are
shown in italics.)
BARCODE
type; [DIR;] [MAG;] [Hn;m] I; [DARK;] SR; SC
[idir] STEPMASK; [RPTn;] [RSTn;] (D)STARTDATA(D)
[PDF [;LOC] [;FONT]]
STOP
I Identifies this bar code command as an
Incremental Bar Code command; enter I.
idir The optional increment direction parameter to
specify an increment (add) or decrement (subtract)
to the data. Enter a plus sign (+) or leave the field
blank to increment (the default). Enter a minus sign
(-) to decrement.
STEPMASK Defines the increment amount (step), number of
character positions in the data field, and provides a
mask to control the increment function on specific
parts of the data. Refer to “Incrementing Bar Code
Data” on page 259 for complete information on
STEPMASK parameter values.
RPTn The optional incremental repeat count parameter to
specify the number of times a particular field value
will repeat before it is incremented. A repeated field
value is useful when printing multiple rows/columns
of identical labels before increasing to the next
value. To use the repeat count parameter, enter
RPT and replace n with a numeric value ranging
from 1 through 65535 to specify the repeat count.
The default repeat count parameter is 1, which will
increment the field value each time it is printed.
RSTn The optional incremental reset count parameter to
specify the number of times an incremented field is
printed (on one or more forms) before it is reset to
the starting value. A reset count is useful when
printing a hierarchy of fields where a low-level field
generates a sequence of numbers, is reset, and the
next higher field level is incremented (such as in a
unit/box/carton application). To use the reset count
parameter, enter RST and replace n with a number
ranging from 1 through 65535 to specify the reset
count. The default reset count value is 0.

262
Incremental Bar Code Fixed Data Fields

STARTDATA Defines the starting value of the incrementing field.


The maximum amount of STARTDATA characters
must be less than or equal to the number of
characters in the STEPMASK field. Characters
allowed for incrementing fields is based on the type
of bar code; refer to the individual bar code
descriptions for information on valid type and
quantity of data characters. The STARTDATA must
be enclosed within standard printable character
delimiters just as a standard bar code data field is
enclosed within delimiters.
~CREATE;TEST;288 (Enters Create Form mode)
VDUP;3;6
BARCODE (Bar code command)
C3/9;H7;I;6;5
-00001;*12345*
PDF (Printable data field)
STOP (Ends bar code command)
VDUP;OFF
END (Terminates Create Form mode)
~EXECUTE;TEST (Prints form)

~NORMAL

263
Chapter 3 Incremental Bar Code Fields

Incremental Bar Code Dynamic Data Fields


The Incremental Bar Code Dynamic Data Field command specifies the
location and size of the incremental dynamic data field during the Create
Form Mode. STEPMASK and STARTDATA parameters are supplied in the
Execute command during the Execute Form Mode. As with standard dynamic
data fields, incremental dynamic data fields allow you to change the starting
data without changing the form definition program. Additionally, you can also
change the increment parameters with each new job without changing the
form definition program.
The Incremental Bar Code Dynamic Data Fields command is a variation of
the standard IGP bar code commands. Use this command with the
appropriate parameters from the standard bar code command when
automatic incrementing of dynamic bar code data fields is required. The
Incremental Bar Code Dynamic Data Fields command format is shown and
defined below. (Incremental command parameters are shown in boldface
type; standard bar code command parameters and optional non–incremental
parameters are shown in italics.)
BARCODE
type; [DIR;] [MAG;] [Hn;m] IBFn;L [DARK;] SR; SC
[PDF [;LOC] [;FONT]]
STOP
IBFn;L Identifies this bar code command as an
Incremental Bar Code Dynamic Data Field
command. The command parameter string
identifies the incremental dynamic data field
location on the form and defines the length of the
bar code data. If these parameters are used, do not
enter the STEPMASK and STARTDATA
parameters in the Create Form Mode; enter them
dynamically during the Execute Form Mode. To use
the incremental dynamic data field:
a. Enter IBF to specify an incremental bar code
dynamic data field.
b. Replace n with a number ranging from 0
through 512 to identify the bar code string
location on the form. The standard bar code
SR and SC command parameters specify the
exact location of the field identified by n.
c. Replace L with a number equal to the number
of characters in the dynamic bar code string.
The number of characters and type of
characters depends on the type of bar code
used. Refer to the individual bar code
descriptions for information on type and
quantity of data allowed for the specific bar
code type.
d. Dynamically enter the STEPMASK and
STARTDATA parameters in the Execute Form
Mode. The length of the data must be less

264
Duplicating Incremental Bar Code Fields

than or equal to the value assigned to the


length (L) parameter. Refer to “Execute Form:
Incremental Dynamic Data” on page 63 for
more information.

Duplicating Incremental Bar Code Fields


Fixed and dynamic incremental bar code data fields are duplicated
horizontally and vertically in the same way that incremental alphanumeric
fixed and dynamic data fields are duplicated. Refer to Chapter 2 for more
information on duplicating incremental data.
~CREATE;TEST;288 (Enters Create Form mode)
VDUP;3;6
BARCODE (Bar code command)
C3/9;H7;IBF1;6;6;5
PDF
STOP (Ends bar code command)
VDUP;OFF
END (Terminates Create Form mode)
~EXECUTE;TEST (Prints form)
~IBF1;+000001;*123459*

~NORMAL

265
Chapter 3 Incremental Bar Code Fields

266
4 Form Examples And
Exercises

Form Examples
NOTE: Using a different type of printer or a different configuration could
affect the appearance of your printed samples compared to those
shown in this manual. Additionally, depending on the paper, top-of-
form setting and initial print position, the positioning of your printed
samples on the page may vary compared to the examples shown
here; these samples have been positioned on the page to correspond
with the related text.
The example on the following page demonstrates how to use Create
commands in the Create Form mode using the CP.DP format. The printed
output for this program is shown in Figure 57 on page 269. (The Hand logo
used in this example was previously defined and stored and, thus, is not
shown in the form program.) The box surrounding the form represents the
paper size.
NOTE: If comment lines are used on command lines, they must be preceded
by a slash (/). Do not use / comments on lines containing an SFCC
(NORMAL, CREATE, EXECUTE, etc.). Comments in parentheses in
this section are provided for better understanding of IGP/PGL
operation but should not be included in your IGP/PGL files.

267
Chapter 4 Form Examples

Example: Create Commands


~CREATE;BASICFRM

BOX
/LT;SR;SC;ER;EC
1;1;1;25;25
STOP

ALPHA
/[R;][E;][Cn;][AFn;L;][DIR;][UC;][DARK;][POINT;][HSn;]SR;SC;VE;
/HE;(D)ASCIITEXT(D)
3;3;0;0;*STATIC ALPHA DATA*
AF1;18;4;3;0;0
/DIR;SR;SC;VE;HE
CW;8;4;1;1;*PRINTRONIX*
R;15;5;2;2;*IGP*
STOP

CORNER
/LT;SR;SC;ER;EC;VL;HL
1;18;2;23;7;2;2
STOP

HDUP;5;1
VERT
/LT;C;SR;ER
1;17;18;22
STOP
HDUP;OFF

VDUP;5;1
HORZ
/LT;R;SC;EC
1;18;17;21.1
STOP
VDUP;OFF

LOGO
10;13;HAND
/(PREVIOUSLY DEFINED AND STORED)
STOP

END

~EXECUTE;BASICFRM
~AF1;*DYNAMIC ALPHA DATA*

OVERLAY DATA

~NORMAL

268
Example: Create Commands

Figure 57. Basic Create Form Example

269
Chapter 4 Form Examples

Example: Using The Setup Command


The following example demonstrates how the margins, landscape orientation,
8LPI and double wide font are automatically SETUP at power-up.
~SETUP
TOP/BOTTOM MARGIN;1
LEFT MARGIN;10
END
~PAPER;ROTATE 90
~LPI;8
~EXPAND;1;2
~SETUPEND

Example: Dynamic Data


The process of executing dynamic alphanumeric and bar code data fields is
explained in the following exercises. Each stage includes printing the
program; however, the total program may be entered as one unit. Each stage
offers the option of choosing features applicable to specific needs.

Basic Design
The SAMPLE program below, shown in Figure 58, is a basic design in CP.DP
format and defined by standard Create Form mode command sequences.
The label is duplicated twice horizontally on an approximate form size of
8 1/2 x 5 1/2 inches (390 dots), with three bar code locations specified per
label. The result is two “forms”: two labels per form, four labels printed on one
8 1/2 x 11 inch “page”. On the next few pages, you will add bar code data,
dynamic alphanumeric data, and dynamic bar code data. Then you will
execute and print the complete form (Figure 59).
When entering command lines, remember to correctly terminate each line
with a line feed or carriage return with line feed. Use your system commands
to open a file for the label program. When you have finished, exit the file (if
necessary for your system) and print.

270
Example: Dynamic Data

~CREATE;SAMPLE;390 (Create Form; form length is 390 dots)


HDUP;2;37 (2 horizontal dupes, 37 columns apart)
BOX (Box command)
2;3.5;9;30;35
STOP (Stop the Box command)
HORZ (Horizontal Line command)
1;14.5;9;35
1;19.5;9;35
1;24.5;9;35
STOP (Stop the Horizontal Line command)
CORNER (Begin Corner command)
2;4;11;9;33;1.2;2
2;9.6;11;13.6;33;1.2;2
STOP (Stop the Corner command)
ALPHA (Begin Alphanumeric command)
4.8;12;0;0;*FROM:* (This is fixed text on the form)
6.3;12;2;2;*PRINTRONIX*
C15;7.3;16;0;0;*17500 CARTWRIGHT RD.*
C15;8.1;16;0;0;*IRVINE , CA 92714*
10;12;0;0;*TO*
14.8;11;0;0;*S.O.*
19.8;11;0;0;*S/N:*
24.8;11;0;0;*P/N:*
STOP (Stop the Alphanumerics command)
HDUP;OFF (Stop the horizontal duplication)
END (End the Create Form mode)
~EXECUTE;SAMPLE;1 (Execute form)

~NORMAL
~EXECUTE;SAMPLE;1 (Execute again to print second form)

~NORMAL
~FF

271
Chapter 4 Form Examples

14600 Myford Road 14600 Myford Road


P.O. Box 19559 P.O. Box 19559
Irvine, CA 92623-9559 Irvine, CA 92623-9559

14600 Myford Road 14600 Myford Road


P.O. Box 19559 P.O. Box 19559
Irvine, CA 92623-9559 Irvine, CA 92623-9559

dyn1.ex

Figure 58. Sample Form

272
Example: Dynamic Data

Bar Code Fields


Identify the location of the data fields for each of the six bar codes (one
location at each S.O., S/N, and P/N field on the form). The type of bar code
and the human readable data information is also specified within the bar code
commands. (Refer to Chapter 3 for detailed bar code information.)
Each bar code must be designated separately. The bar code commands are
part of the Create Form mode; therefore, they must be entered in the Create
Form mode before the END command. However, because each dynamic field
is assigned a unique number, the commands should not be duplicated.
Reopen the file and input the following commands before the END command
line but after the HDUP;OFF command.
NOTE: The IGP/PGL will horizontally or vertically duplicate dynamic bar code
or alphanumeric data fields if required. This will also duplicate the n
parameter identifying the dynamic data fields. If unique data fields are
required, do not duplicate the commands.
BARCODE (First bar code command)
C3/9;H7;BF1;8;DARK;15.1;10.4
(Upper left S.O. field, assigned #1)
C3/9;H7;BF1;8;DARK;15.1;10.4
PDF;O (Print the data field in OCR-A font)
STOP (Stop the first bar code command)
BARCODE (New bar code command)
C3/9;H7;BF2;8;DARK;20;10.4
(Upper left S/N field, assigned #2)
PDF;O
STOP
BARCODE
C3/9;H7;BF3;8;DARK;25.5;10.4
(Upper left P/N field, assigned #3)
PDF;O
STOP
BARCODE
C3/9;H7;BF4;8;DARK;15.1;47.4
(Upper right S.O. field, assigned #4)
PDF;O
STOP
BARCODE
C3/9;H7;BF5;8;DARK;20;47.4
(Upper right S/N field, assigned #5)
PDF;O
STOP
BARCODE
C3/9;H7;BF6;8;DARK;25.5;47.4
(Upper right P/N field, assigned #6)
PDF;O
STOP (Stop the bar code command)

273
Chapter 4 Form Examples

Dynamic Alphanumeric Fields


Identify the location of the dynamic alphanumeric fields using the
alphanumerics command. Input the following alphanumeric command lines
after the HDUP;OFF command and before the Create Form mode END line.
A separate alphanumerics command sequence is used in order to assign
unique numbers to each dynamic data field. (If unique identifying numbers
were not required, these alphanumeric commands would be added to the
existing alphanumeric commands being duplicated to produce the fixed form
alphanumeric data.)
NOTE: Before the following dynamic data commands can be entered, delete
the form count parameter from the existing Execute command line
(the ;1 at the end of the Execute command line shown on the program
on page 271). The Form Count parameter cannot be used when data
is supplied dynamically. The Execute command line should now read
~EXECUTE;SAMPLE and must be correctly terminated. This is the
Execute command for the first page of dynamic data.
ALPHA (Begin alpha command for dynamic data)
AF1;20;10.8;12;0;0 (AF1 - 1st line of upper left TO area)
AF2;20;11.8;12;0;0 (AF2 - 2nd line of upper left TO area)
AF3;20;12.8;12;0;0 (AF3 - 3rd line of upper left TO area)
AF4;20;10.8;49;0;0 (AF4 - 1st line of lower left TO area)
AF5;20;11.8;49;0;0 (AF5 - 2nd line of lower left TO area)
AF6;20;12.8;49;0;0 (AF6 - 3rd line of lower left TO area)
STOP (Stop the alphanumerics command)

Dynamic Alphanumeric and Bar Code Data


Enter the following dynamic data following the Execute command. These
dynamic data commands will supply the variable data to the bar code and
alphanumeric fields previously identified in the Create Form mode. After
entering the data, exit the file (if necessary with your system) and print. The
completed form is shown in Figure 59.

274
Example: Dynamic Data

~EXECUTE;SAMPLE
~AF1;*B AND C CO.* (Upper left label addressee)
~AF2;*P.O. BOX 212*
~AF3;*LOS ANGELES, CA 90051*
~AF4;*M. H. INC* (Upper right label addressee)
~AF5;*101 BEACH RD*
~AF6;*MALIBU, CA 97772*
~BF1;*S05995* (Upper left label S.O.)
~BF2;*011233* (Upper left label S/N)
~BF3;*190204* (Upper left label P/N)
~BF4;*S05996* (Upper right label S.O.)
~BF5;*000535* (Upper right label S/N)
~BF6;*104523* (Upper right label P/N)
~FF (Completes 1st form-upper labels)
~AF1;*ABC CORPORATION* (Lower left label addressee)
~AF2;*1234 ANYWHERE ST*
~AF3;*YOUR TOWN, MA 03498*
~AF4;*XYZ COMPUTERS* (Lower right label addressee)
~AF5;*845 N. ALLEN ST*
~AF6;*WEST BEND, OR 97601*
~BF1;*S05997* (Lower left label S.O.)
~BF2;*456789* (Lower left label S/N)
~BF3;*102245* (Lower left label P/N)
~BF4;*S05999* (Lower right label S.O.)
~BF5;*567890* (Lower right label S/N)
~BF6;*103764* (Lower right label P/N)

~NORMAL (Completes 2nd form-lower labels)


Multiple page documents must be separated by a form feed. (The “page” of
data includes the Execute command, the dynamic data commands, and the
Normal command.) Using the SFON command (described on page 90), a ~FF
(form feed) command will allow as many forms as required to print with the
appropriate new data supplied dynamically. When the SFOFF command is
used, send a hex 0C instead of ~FF to print multiple pages with new dynamic
data.

275
Chapter 4 Form Examples

14600 Myford Road 14600 Myford Road


P.O. Box 19559 P.O. Box 19559
Irvine, CA 92623-9559 Irvine, CA 92623-9559

14600 Myford Road 14600 Myford Road


P.O. Box 19559 P.O. Box 19559
Irvine, CA 92623-9559 Irvine, CA 92623-9559

dyn2.ex

Figure 59. Dynamic Data Example

276
Example: Auto Increment Fields

Example: Auto Increment Fields


The following program, designed in accordance with current specifications for
AIAG-B-3 shipping label standards, creates four automatically
incrementing/decrementing AIAG labels with alphanumeric and bar code
data. The printed output of this program is shown on page 279.
~CREATE;AIAG
BOX
1;31.2;1;55.2;66.5
STOP
HORZ
1;38.5;1;66.5
1;44.9;1;40
1;49.10;1;40
STOP
VERT
1;26;38.5;44.9
1;40;44.9;55.2
STOP
ALPHA
C15;31.8;2;0;0;*PART NO*
C15;32.6;2;0;0;*(P)*
I;34.3;9;4;4;00000000001;*A0000000001*
C15;38.9;2;0;0;*QUANTITY*
C15;39.6;2;0;0;* (Q)*
40.5;8;4;4;*100*
C15;41.9;28;0;0;*SPECIAL*
C15;42.6;28;0;0;* (C)*
I;43.9;34;4;4;-00001;*A20UG*
C15;45;2;0;0;*SUPPLIER*
C15;45.10;2;0;0;* (V)*
45.7;7;2;2;* 040898755*
C15;50.4;2;0;0;*SERIAL*
C15;51.2;2;0;0;* (S)*
50.8;7;2;2;* 0002110*
C15;54.5;4;0;0;*PRINTRONIX, INC IRVINE CA 92713 (714) 863-1900*
STOP
BARCODE
C3/9;H7;I;DARK;34.7;5.5
X000000002;*A000000002*
STOP
BARCODE
C3/9;H7;DARK;40.9;5.5
*Q100*
STOP
BARCODE
C3/9;H7;I;DARK;38.1;33
-X00002;*CA2OUF*
STOP
BARCODE
C3/9;H7;DARK;45.11;5.5
*V040898755*
STOP
BARCODE
C3/9;H7;DARK;50.9;5.5
*S0002110*
STOP
BOX
1;1.2;1;25.2;66.5
STOP
HORZ

277
Chapter 4 Form Examples

1;8.4;1;66.5
1;14.9;1;40
1;19.6;1;40
STOP
VERT
1;26;8.4;14.9
1;40;14.9;25.2
STOP
ALPHA
C15;1.8;2;0;0;*PART NO*
C15;2.6;2;0;0;*(P)*
I;4.3;9;4;4;00000000002;*A0000000001*
C15;8.9;2;0;0;*QUANTITY*
C15;9.6;2;0;0;* (Q)*
10.5;8;4;4;*100*
C15;11.9;28;0;0;*SPECIAL*
C15;12.6;28;0;0;* (C)*
I;13.9;34;4;4;-00002;*A2OUG*
C15;15;2;0;0;*SUPPLIER*
C15;15.10;2;0;0;* (V)*
15.6;7;2;2;* 040898755*
C15;20;2;0;0;*SERIAL*
C15;21;2;0;0;* (S)*
20.5;7;2;2;* 0002110*
C15;24.5;4;0;0;*PRINTRONIX,INC. IRVINE CA 92713 (714) 863-1900*
STOP
BARCODE
C3/9;H7;I;DARK;4.7;5.5
X000000002;*A000000001*
STOP
BARCODE
C3/9;H7;DARK;10.9;5.5
*Q100*
STOP
BARCODE
C3/9;H7;I;DARK;8.1;33
-X00002;*CA20UG*
STOP
BARCODE
C3/9;H7;DARK;15.7;5.5
*V040898755*
STOP
BARCODE
C3/9;H7;DARK;20.8;5.5
*S0002110*
STOP
END
~EXECUTE;AIAG;2

~NORMAL

278
Example: Auto Increment Fields

Figure 60. Auto Increment Fields Example

279
Chapter 4 Form Exercise

Form Exercise
In the following example, you will create and execute a form. Using character
scaling (discussed in detail on page 89) on a 60 x 72 dot per inch (dpi) grid,
your form will include the following:
• a box
• a set of corners
• vertical lines
• alphanumeric data
• horizontal lines
• a bar code
This exercise will help you become familiar with the IGP/PGL by taking you
through 14 steps to build a complete form. Detailed command descriptions for
producing forms, bar codes, and logos are described in the “Commands”
chapter.
All the data and commands for the form are entered into a file in the host
computer. The filename used in this exercise is PRACTC.FRM, and the form
name used is PRACTICE. If another form named PRACTICE already exists, it
will be deleted by this exercise.
Begin each step by reading the explanation. The information you input is
listed under the word Enter. The parameters of each command have a
specific order for data entry; input the data exactly as shown, but always use
the actual SFCC required by your system where the ~ is shown. The general
command format is listed under the word Format next to each example. The
SFCC is represented by (cc) in the general format.
Use the standard commands on your system to open, close, or print the file
with the form data where your system format is required.
NOTE: Do not forget to terminate each command line with a line feed (or
carriage return with line feed), or a paper motion command. Enter all
commands in uppercase. Make sure the printer power is on and the
printer is READY, ON-LINE.

280
Creating A Box And Corners

Creating A Box And Corners


1. On your host computer, open/create a file for your practice form. For
example:
Enter Format
PRACTC.FRM (system format)
2. Enter the Create Form mode, and specify a form name. This is the first
input for every new form. Use the Create command and PRACTICE as
the form name.
Enter Format
~CREATE;PRACTICE (cc)CREATE[/];formname[;FL][;DISK]
3. The IGP/PGL is now ready for Create Form mode commands. Design a
box with a line thickness (LT) of 2 dots, a top left corner at starting row
(SR) 35, starting column (SC) 16, and a bottom right corner at ending row
(ER) 53, ending column (EC) 61. The STOP command must be entered
to inform the IGP/PGL that the Box command is complete.
Enter Format
BOX BOX
2;35;16;53;61 LT;SR;SC;ER;EC
STOP STOP
4. Use the Corner command to set the box off with corners having a line
thickness (LT) of 3 dots, a top left corner at row (SR) 30, column (SC) 13,
a bottom right corner at row (ER) 57, column (EC) 64, a vertical length
(VL) 5 character spaces long, and a horizontal length (HL) 7 character
spaces long. The STOP command must be entered to stop the Corner
command and END must be entered to terminate the Create Form mode
to prepare for printing.
Enter Format
CORNER CORNER
3;30;13;57;64;5;7 LT;SR;SC;ER;EC;VL;HL
STOP STOP
END END
5. Now use the Execute command and form name to prepare for printing.
Enter a blank line using a terminator and then the Normal command to
instruct the IGP/PGL to return to the Normal mode after executing the
form.
Enter Format
~EXECUTE;PRACTICE (cc)EXECUTE;formname
[;PAGE n][;FC]

~NORMAL (cc)NORMAL
6. To print the form, exit the file (if necessary for your system) and use the
system print command to print the file. For example, after exiting the file
and your system prompt returns:
Enter Format
.PRINT PRACTC.FRM (System Format)

281
Chapter 4 Form Exercise

The form should look like the one shown in Figure 61. When it was printed,
the form program was stored in the IGP/PGL memory. If errors are detected in
the program, error messages are printed and only the error-free portions of
the program are stored in the IGP/PGL memory. (Refer to “Solving Program
Errors” on page 302.)

SC 13
SR 30

SC 16

SR 35

ER 53

EC 61
ER 57

EC 64

Figure 61. Box and Corner Example

282
Adding Horizontal And Vertical Lines

Adding Horizontal And Vertical Lines


7. Now return to the file. When the file reopens, the existing program (the
contents of the file) is displayed. Use your system commands to reopen
the file. For example:
Enter Format
.PRACTC.FRM (System Format)
8. All Create Form mode commands must be entered into the program
before the End command line. Add three horizontal lines, each with a
thickness (LT) of 1, at rows (R) 40, 45, and 49 and each ranging from
column (SC) 16 to column (EC) 61.
Enter Format
HORZ HORZ
1;40;16;61 LT;R;SC;EC
1;45;16;61
1;49;16;61
STOP STOP
9. Add two vertical lines, each with a thickness (LT) of 1, both in column (C)
49, one ranging from row (SR) 40 to row (ER) 45 and the other ranging
from row (SR) 49 to row (ER) 53.
Enter Format
VERT VERT
1;49;40;45 LT;C;SR;ER
1;49;49;53
STOP STOP
The last two commands have added to the form definition. PRACTICE now
looks like Figure 62.

COLUMN
COLUMN
49 49

ROWROW
40 40

ROWROW
45 45

ROWROW
49 49

Figure 62. Box/Corner Example with Horizontal and Vertical Lines

283
Chapter 4 Form Exercise

Adding Fixed Alphanumeric Text


10. Use the Create Form mode Alpha command to add some fixed
alphanumeric text to the form. Specify some compressed print (Cn), the
starting row (SR) and starting column (SC) for each alphanumeric string,
any vertically (VE) or horizontally (HE) expanded strings, and the
alphanumeric string itself which must be within the printable character
(quotation marks or asterisks, for example). Substitute your own name,
address, etc. in the appropriate areas. If you do not want to include some
of the data on your form, do not enter the complete line.
Enter Format
ALPHA ALPHA
31;22;0;0;*PRINTRONIX, INC*
[R;][E;][Cn;][AFn;L;][T;][DIR;][UC;][DARK;]

[POINT;][HSn;]SR;SC;VE;HE;(D)text(D)
32;22;0;0;*17500 CARTWRIGHT ROAD*
33;22;0;0;*IRVINE, CA 92714*
35.9;17;0;0;*SERIAL NUMBER*
40.3;17;0;0;*PART NUMBER*
40.3;50;0;0;*MFG. DATE*
45.3;17;0;0;*DESCRIPTION*
49.3;17;0;0;*INTERFACE*
49.3;50;0;0;*VERSION*
C13;31;16;0;0;*FROM:*
C15;54;26;0;0;*Call PRINTRONIX for more information.*
C15;55;34;0;0;*(714)863-1900*
STOP STOP
NOTE: The sample data entered above uses CP.DP format (such as 35.9,
40.3, etc.) in the starting row (SR) parameters. This precisely
positions the data to avoid overlapping the alphanumeric data with
the box and horizontal line data previously entered. For complete
information on CP.DP format, refer to the “Commands” chapter.
At this point, the PRACTC.FRM file should contain the following form program
data:
~CREATE;PRACTICE
BOX
2;35;16;53;61
STOP
CORNER
3;30;13;57;64;5;7
STOP
HORZ
1;40;16;61
1;45;16;61
1;49;16;61
STOP
VERT
1;49;40;45
1;49;49;53
STOP
ALPHA
31;22;0;0;*PRINTRONIX, INC.*
32;22;0;0;*17500 CARTWRIGHT ROAD*

284
Adding Fixed Alphanumeric Text

33;22;0;0;*IRVINE, CA 92714*
35.9;17;0;0;*SERIAL NUMBER*
40.3;17;0;0;*PART NUMBER*
40.3;50;0;0;*MFG. DATE*
45.3;17;0;0;*DESCRIPTION*
49.3;17;0;0;*INTERFACE*
49.3;50;0;0;*VERSION*
C13;31;16;0;0;*FROM:*
C15;54;26;0;0;*Call PRINTRONIX for more information.*
C15;55;34;0;0;*(714)863-1900*
STOP
END
~EXECUTE;PRACTICE

~NORMAL
.PRINT PRACTC.FRM
Notice that the END, EXECUTE;PRACTICE and NORMAL statements are
still in the file. These are always necessary to end the storage of the form in
the IGP/PGL and cause it to print. Remember, a blank line must always
separate the EXECUTE and NORMAL commands. Print the file
PRACTC.FRM. The PRACTICE form should look like Figure 63, except for
any alphanumeric data substitutions you made. Again, if error messages
occur, refer to “Solving Program Errors” on page 302.

COLUMN 16
COLUMN 22

ROW 31 Printronix, INC


ROW 32 14600 Myford Road P.O. Box 19559
ROW 33 Irvine, CA 92623-9559

ROW 35.9
COLUMN 50
COLUMN 17

ROW 40.3

ROW 45.3

ROW 49.3

ROW 54
ROW 55

COLUMN 26
COLUMN 34
practc1 ex
Figure 63. Practice Form Example

285
Chapter 4 Form Exercise

Adding A Bar Code


11. Change the form definition by adding bar code type Code 39 (C39), one
of the codes available on the IGP/PGL. First, reopen the file. Bar codes
are defined in the Create Form mode; therefore, the Bar Code command
must be entered before the End command line. In the Bar Code
command, specify type C39 and 0.8 inch height (Hn). Use a dynamic bar
code data field (BF) identified by the number (n) 1 with a length (L) of 5.
The actual data will be provided dynamically in the Execute Form mode.
Specify the starting row (SR) 35.7 and starting column (SC) 39, and stop
the command.
Enter Format
BARCODE BARCODE
C3/9;H8;BF1;5;DARK;35.7;39 C3/9[CD]; [DIR;] [MAG;] [Hn[.m];]
[BFn;L;][DARK;] SR;SC
STOP STOP
12. To dynamically input alphanumeric data fields, first identify the locations
for the data in the Create Form mode as part of the form definition. Enter
the locations in the existing Alpha command sequence (or use a new
Alpha command). In the Alpha command sequence, enter the
alphanumeric field (AF), the field number (n), length (L), starting row (SR)
and column (SC), and any vertical (VE) or horizontal (HE) expansion. To
enter this alphanumeric data in the existing Alpha command sequence,
the data must be entered before the existing Alpha command STOP line.
Enter Format
AF1;7;38.7;19.3;3;3 [R;] [E;] [Cn;][AFn;L;][T;][DIR;][UC;][DARK;]
AF2;11;43;20;2;2 [POINT;][HSn;]SR;SC;VE;HE;(D)text(D)
AF3;31;47.3;20;2;1
AF4;33;51.3;20;2;1
13. Supply the dynamic data during the Execute Form mode (following the
EXECUTE;PRACTICE line). Use the SFCC, specify the dynamic
alphanumeric field (AF), bar code field (BF), the field number
(corresponding to those just entered in the form definition), and the data
itself. (This method can be repeated to supply new data to each form
printed by separating the pages of data with a form feed. Refer to
“Execute Form: Dynamic Alphanumeric Data” on page 60.)
Enter Format
~AF1;*49114* (cc)AFn;(D)data(D)
~AF2;*106772-902*
~AF3;*INTELLIGENT GRAPHICS PROCESSOR*
~AF4;*PARALLEL - CENTRONICS*
~BF1;*49114* (cc)BFn;(D)data(D)
14. Now the PRACTC.FRM file contains all the following information (the
complete form program). Print the form by printing the file. The completed
form is shown in Figure 64.
~CREATE;PRACTICE
BOX
2;35;16;53;61
STOP
CORNER
3;30;13;57;64;5;7

286
Adding A Bar Code

STOP
HORZ
1;40;16;61
1;45;16;61
1;49;16;61
STOP
VERT
1;49;40;45
1;49;49;53
STOP
ALPHA
31;22;0;0;*PRINTRONIX, INC.*
32;22;0;0;*17500 CARTWRIGHT ROAD*
33;22;0;0;*IRVINE, CA 92714*
35.9;17;0;0;*SERIAL NUMBER*
40.3;17;0;0;*PART NUMBER*
40.3;50;0;0;*MFG. DATE*
45.3;17;0;0;*DESCRIPTION*
49.3;17;0;0;*INTERFACE*
49.3;50;0;0;*VERSION*
C13;31;16;0;0;*FROM:*
C15;54;26;0;0;*Call PRINTRONIX for more information.*
C15;55;34;0;0;*(714)863-1900*
AF1;7;38.7;19.3;4;3
AF2;11;43;20;2;2
AF3;31;47.3;20;2;1
AF4;33;51.3;20;2;1
STOP
BARCODE
C3/9;H8;BF1;5;DARK;35.7;39
STOP
END
~EXECUTE;PRACTICE
~AF1;*49114*
~AF2;*106772-902*
~AF3;*INTELLIGENT GRAPHICS PROCESSOR*
~AF4;*PARALLEL - CENTRONICS*
~BF1;*49114*

~NORMAL
.PRINT PRACTC.FRM

287
Chapter 4 Logo Exercise

Printronix, INC
14600 Myford Road P.O. Box 19559
Irvine, CA 92623-9559
COLUMN 19.3 COLUMN 39
ROW 35.7

ROW 38.7

ROW 43

ROW 47.3

ROW 51.3

2
Figure 64. Completed Practice Form Example

Logo Exercise
In this exercise, you will generate a logo. The following sample uses a hand
logo. Using dot scaling (discussed in detail on page 89) on an 8-1/2 x 11-inch
form, a hand was drawn on a grid, with each dot tabulated by row and column
position. If a grid coordinate occupies half or more of a dot position, include
that position in your logo program. (Grid samples are located in Appendix B.)
Each dot position used must be identified individually. However, you can use
a hyphen between the starting and ending columns to indicate a section of
consecutive dots. For example, this hand logo requires dots in row 1, columns
40-42, shown in Figure 65 below. A sequential row order is not required.

288
Adding A Bar Code

A logo is created and stored as an element in the definition of a form. For


example, to use a logo, first design it in the Create Logo mode; then add it to
a form in the Create Form mode; then execute the form (with the logo) in the
Execute Form mode. The following logo exercise includes all three of these
steps.

DOT POSITIONS DOT POSITIONS


Row Column Row Column
1 40-42 31 1-36
2 35-42 32 1-39
3 36-42 33 1-58
4 35-42 34 1-58
5 33-41 35 1-58
6 31-40 36 1-58
7 30-38 37 1-58
8 29-36 38 1-57
9 28-35 39 4-24
10 27-34;52-54 40 7-23
11 24-33;48-54 41 8-23
12 22-31;45-54 42 9-23
13 19-30;41-54 43 11-24
14 16-29;38-53 44 12-25
15 13-29;36-51 45 14-27
16 11-29;33-48 46 15-30
17 9-44 47 17-32
18 7-42 48 18-35
19 6-39 49 22-34
20 4-36 50 25-35
21 1-34 51 26-36
22 1-34 52 28-37
23 1-34 53 30-37
24 1-60 54 32-37
25 1-60 55 33-37
26 1-60 56 35-36
27 1-60
28 1-59
29 1-59
30 1-35
Figure 65. Sample Logo

289
Chapter 4 Logo Exercise

Creating A Logo
1. Use your system commands to open a file for the logo program with the
filename HNDLGO.FOM. For example:
Enter Format
HNDLGO.FOM (System Format)
2. Input the Special Function Control Code and Logo mode command to put
the IGP/PGL in the Create Logo mode. Include HAND as the logo name;
specify a vertical length (VL) of 56 (column length) and a horizontal length
(HL) of 60 (row length).
Enter Format
~LOGO;HAND;56;60 (cc)LOGO;logoname;VL;HL[;DISK]
3. Enter each row of dot positions as tabulated from the grid and shown in
Figure 65. The format is Row;Column (for example, 15;13-29;36-51).
Each row is entered on a separate line. After all the dot positions are
entered, terminate the Create Logo mode by entering an End command
line.
4. Use the Special Function Control Code and Create command to create a
form with the form name LEFTHAND. To add the logo to the form, input a
Create Form mode Logo Call command, identify the logo starting row
(SR) 45 and starting column (SC) 33, and specify the logo to use by its
name (HAND). Stop the Logo command and end the Create Form mode.
Enter Format
~CREATE;LEFTHAND (cc)CREATE;[/]formname[;FL][;DISK]
LOGO LOGO
45;33;HAND SR;SC;logoname[;DISK]
STOP STOP
END END
5. Input the Special Function Control Code and Execute command for the
LEFTHAND form just created. Input a blank line, the Special Function
Control Code, and the Normal command to instruct the IGP/PGL to return
to the Normal mode after execution.
Enter Format
~EXECUTE;LEFTHAND (cc)EXECUTE;formname[;PAGE n]
[;FC] [;DISK]
~NORMAL (cc)NORMAL
6. Use system commands to exit the HNDLGO.FOM file and print. The
finished program and logo should look like the following sample. If error
messages occur, refer to “Solving Program Errors” on page 302.
~LOGO;HAND;56;60
1;40-42
2;38-42
3;36-42
4;35-42
5;33-41
6;31-40
7;30-38
8;29-36
9;28-35
10;27-34;52-54

290
Creating A Logo

11;24-33;48-54
12;22-31;45-54
13;19-30;41-54
14;16-29;38-53
15;13-29;36-51
16;11-29;33-48
17;9-44
18;7-42
19;6-39
20;4-36
21;1-34
22;1-34
23;1-34
24;1-60
25;1-60
26;1-60
27;1-60
28;1-59
29;1-59
30;1-35
31;1-36
32;1-39
33;1-58
34;1-58
35;1-58
36;1-58
37;1-58
38;1-57
39;4-24
40;7-23
41;8-23
42;9-23
43;11-24
44;12-25
45;14-27
46;15-30
47;17-32
48;18-33
49;22-34 ROW 45
50;25-35
51;26-36
52;28-37
53;30-37
54;32-37
55;33-37
56;35-36 HANDLOGO.EX
END
~CREATE;LEFTHAND COLUMN 33
LOGO
45;33;HAND
STOP
END
~EXECUTE;LEFTHAND

~NORMAL

291
Chapter 4 Form Design

Form Design
In this exercise, you will produce a complete form by sketching it out on a grid
in the same way the logo was designed. Again, this exercise uses character
scaling on an 8-1/2 x 11-inch (60 x 72 dpi) page. (Refer to page 89 in the
“Commands” chapter, where character scaling is discussed in detail.)

Page Layout Considerations


At 6 lines per inch (lpi) and 10 characters per inch (cpi) printing, a standard 8-
1/2 x 11-inch sheet of paper has a print area of 66 lines (rows) and 85
characters (columns). (The printable area will vary if you are not printing at 6
lpi and 10 cpi.) Thus, the grid used to design an 8-1/2 x 11-inch form should
accommodate this 66 x 85 area. (Appendix C discusses the printable area for
different form sizes in more detail.)
Using the grids provided in Appendix B, sketch out the form layout and
identify the starting and ending values. These values will be used to input
IGP/PGL command parameters.

Planning The Form Layout


In this example, assume you work for the HandCraft Boat Company. Your
slogan is “Quality boats crafted by hand,” and the owner, Mr. Handcraft, has
asked you to design a simple form that his salespeople can use for special
orders. On the form, he wants a logo, the slogan, the customer's name,
spaces for other particulars of the order, and a bar code to distinguish the
sales region and boat division from other HandCraft enterprises. Begin this
12-step task as described below.
1. First, design the form on the Standard Grid provided in Appendix B.
Figure 66 shows the locations of the various form components.
Compensate for expanded characters and plan for the logo.
2. Define the logo and then return to the form to add all the form
components. Modify the hand logo already on file as the HandCraft logo.
Use the Logo Grid in Appendix B, and refer to Figure 67, which shows the
dot positions of the hand logo with a boat added to the hand. When dot
positions (or a range of dot positions) are not specified, the boat image in
the hand emerges.
3. Open a file named HNDCFT.FOM to contain all the form information. As
shown in the following example, use the Create Logo mode command,
name the logo HANDCRFT, specify the logo height (VL) and width (HL),
enter the dot positions used, and end the Logo command.
Enter Format
HNDCFT.FOM (System Format)
~LOGO;HANDCRFT;56;60 (cc)LOGO;logoname;VL;HL[;DISK]
1;40-42 row#;dot;dot1-dot2;dot
2;38-42
3;36-42
4;35-42
5;33-41

292
Planning The Form Layout

6;31-40
7;30-38
8;29-36
9;28-35
10;27-34;52-54
11;24-33;48-54
12;22-31;45-54
13;19-30;41-54
14;16-29;38-53
15;13-17;19-29;36-51
16;11-17;20-29;33-48
17;9-17;21-44
18;7-17;22-42
19;6-17;22-39
20;4-17;23-36
21;1-17;24-34
22;1-17;25-34
23;1-17;26-34
24;1-17;27-60
25;1-17;28-60
26;1-17;29-60
27;1-17;30-60
28;1-17;31-59
29;1-17;19-59
30;1-17;19-35
31;1-4;33-36
32;1-5;33-39
33;1-6;33-58
34;1-7;33-58
35;1-58
36;1-58
37;1-58
38;1-57
39;4-24
40;7-23
41;8-23
42;9-23
43;11-24
44;12-25
45;14-27
46;15-30
47;17-32
48;18-33
49;22-34
50;25-35
51;26-36
52;28-37
53;30-37
54;32-37
55;33-37
56;35-36
END END

293
Chapter 4 Form Design

Figure 66. Sample Form Design

294
Planning The Form Layout

Figure 67. Logo Design

295
Chapter 4 Form Design

Creating A Form And Adding Form Components


4. Now create the form and start adding the form components from the
layout grid. (Refer to Figure 66). Use the Special Function Control Code
and Create command to define a form named HCBOATS. Use the Box
command to define the outer border with a line thickness (LT) 3, top left
corner at row (SR) 11 column (SC) 10, and bottom right corner at row
(ER) 55, column (EC) 70. In the same Box command sequence, define
another box with a line thickness of 2, top left corner at row 28 column 14,
and bottom right corner at row 44.9 column 66. After defining the boxes,
stop the Box command.
Enter Format
~CREATE;HCBOATS (cc)CREATE;[/]formname[;FL][;DISK]
BOX BOX
3;11;10;55;70 LT;SR;SC;ER;EC
2;28;14;44.9;66
STOP STOP
5. Mr. Handcraft would like corners around the slogan. Use the Corner
command to define a line thickness (LT) of 2, top left corner at row (SR)
48 column (SC) 24, and bottom right corner at row (ER) 52 column (EC)
56. Make the vertical (VL) corner piece 4 spaces long and the horizontal
(HL) corner piece 5 spaces long. Then stop the Corner command.
Enter Format
CORNER CORNER
2;48;24;52;56;4;5 LT;SR;SC;ER;EC;VL;HL
STOP STOP
6. To make the columns for the special order items, add two vertical lines
each with a line thickness (LT) of 1, one line in column (C) 22 and the
other line in column 58. Each line will start at row (SR) 28 and end at row
(ER) 44.9.
Enter Format
VERT VERT
1;22;28;44.9 LT;C;SR;ER
1;58;28;44.9
STOP STOP
7. To add the horizontal lines, define one line and then duplicate that line
using the Vertical Duplication command. The line will have a single line
thickness (LT), be in row (R) 30.4, starting in column (SC) 14 and ending
in column (EC) 66. With vertical duplication, the line will be duplicated
(dup#) 6 times with 2.5 row offset (offset#) spacing between each
duplication. The Vertical Duplication command must be input, the
horizontal line being duplicated must be input, and the Vertical
Duplication command must be turned off.
Enter Format
VDUP;6;2.5 VDUP;dup#;offset#
HORZ HORZ
1;30.4;14;66 LT;R;SC;EC
STOP STOP
VDUP;OFF VDUP;OFF

296
Creating A Form And Adding Form Components

8. All the text shown on the grid is fixed into position on the form with a
single Alpha command sequence. The starting row, starting column, and
text can be taken right from the grid and put into the program.
Enter Format
ALPHA ALPHA
14;31;3;2;*HandCraft Boats* [R;][E;][Cn;][AFn;L;][T;][DIR;][UC;][DARK;]
18;14;0;0;*CUSTOMER:* [POINT;][HSn;]SR;SC;VE;HE;(D)text(D)
18;51;0;0;*PHONE:*
20;14;0;0;*HULL NO:*
20;49;0;0;*RIGGING:*
22;14;0;0;*COLOR:*
22;43;0;0;*DELIVERY DATE:*
25;31;1;1;*SPECIAL ORDER ITEMS*
27;17;0;0;*ITEM*
27;34;0;0;*DESCRIPTION*
27;60;0;0;*PRICE*
50;26;1;1;*Quality Boats Crafted By Hand*
C17;48;14;0;0;*HandCraft Boats*
C17;48.10;14;0;0;*123 Boat Way*
C17;49.8;14;0;0;*Boat Town, CA*
C17;50.6;19;0;0;*333444*
C17;51.4;14;0;0;*(714)555-0011*
STOP STOP
9. HandCraft Boats uses bar code type Code 128B (C128B) in many
applications. Use bar code C128B, height (Hn) of .5-inch, starting at row
(SR) 49, column (SC) 59, code the West Coast Sales Region as *WC*,
and print the data field (PDF) below the symbol.
NOTE: Due to space constraints, the C128B command below is separated
into two lines. During actual input, do not separate the command
parameters.
Enter Format
BARCODE BARCODE
C128B;H5;49;59 C128B;[DIR;][MAG;][Hn[.m];][BFn;L;]
[DARK;]SR;SC
*WC* [(D)datafield(D)]
PDF [PDF[;LOC][;FONT][;MAX]]
STOP STOP
NOTE: The decimal point is not entered in the height parameter (H5) above
because values are expected in .10-inch increments. Values from 4
to 99 (.4-inch to 9.9 inches) are accepted.
10. Add the logo and end the Create Form mode. Use the Logo Call
command, specify the starting row (SR) at 12 and column (SC) at 18 as
shown on the grid and call the logo by name (HANDCRFT). (The starting
row and column of the logo refer to the upper left corner of the grid used
in the logo design.)
Enter Format
LOGO LOGO
12;18;HANDCRFT SR;SC;logoname[;DISK]
STOP STOP
END END

297
Chapter 4 Form Design

11. Execute the form (HCBOATS), return to the Normal mode (remember the
blank line before the NORMAL command), exit the file using your system
commands (if necessary), and print the document.
Enter Format
~EXECUTE;HCBOATS (cc)EXECUTE;formname[;PAGE n]
[;FC][;DISK]
~NORMAL (cc)NORMAL
.PRINT HNDCFT.FOM (System Format)
NOTE: Always separate the EXECUTE and NORMAL commands by a line.
Figure 68 shows the finished form. If Mr. Handcraft would like to rearrange the
words, change line thickness of a box, etc., simply reopen the file and change
the appropriate command lines. Otherwise, his salespeople have a new form
for notes on custom orders.

298
Creating A Form And Adding Form Components

hcform.ex

Figure 68. Completed Sample Form

299
Chapter 4 Directory Command

Directory Command
The Directory command lists the contents of the IGP/PGL directory on the
host system. The directory command provides the following information:
• All form names currently defined
• All logo names currently defined
• The association of logos to forms
• The amount of memory used for form storage
• The amount of dynamic storage space used and available

Example
A form will not execute unless enough room exists in the memory as indicated
in the Dynamic Memory Available portion of the directory listing. To print the
directory, open a file, input the directory command, exit the file, and print. For
example:
Enter Format
DIRECT.FOM (System Format)
~DIRECTORY (cc)DIRECTORY
.PRINT DIRECT.FOM (System Format)
The Directory command can only be used when the IGP/PGL is in the Normal
mode. Upon completion of the directory listing, the IGP/PGL returns to the
Normal mode. If the IGP/PGL is not in the Normal mode, input the Normal
mode command before the Directory command. Figure 69 shows a sample
directory.

Figure 69. Directory Example

300
Example

Delete Command
The Delete command deletes any individual form or logo from the printer’s
flash memory. The deletion of a form includes its directory entry and any
alphanumeric or vector information associated with it. The Delete command is
used only when the IGP/PGL is in the Normal mode.
Deletion of a logo includes its directory entry and its data in the logo storage
area. Deletion of a valid logo which is still combined with a form will not cause
an error at the time it is deleted; however, an error will occur if you execute a
form that contains a previously deleted logo.

Example
From the directory printed in the preceding section, delete the practice form,
the HandCraft Logo, and the HandCraft Boats form. Similar to the format used
with other command sequences, the procedure is as follows: open a file, input
the commands, exit the file, and print. For example:
Enter Format
DELETE.FRM (System Format)
~DELETE FORM;PRACTICE (cc)DELETE FORM;formname
~DELETE FORM;HCBOATS
~DELETE LOGO;HANDCRFT (cc)DELETE LOGO;logoname
.PRINT DELETE.FRM (System Format)
NOTE: List the directory again to verify that the forms and logos were
deleted.
To delete a form or logo from the printer’s flash memory, add the DISK
parameter to the above DELETE FORM or DELETE LOGO command:
~DELETE FORM;formname;DISK
~DELETE LOGO;logoname;DISK
A form cannot execute if insufficient space exists in the IGP/PGL memory.
The directory Dynamic Memory Available must be greater than the total size
(in bytes) of the form. Delete older forms or logos to allow memory space for
new forms and logos, or include the Delete command as the last statement in
a logo or form program to immediately delete the data after it is processed.
Creating a form (or logo) with the same name as an existing IGP/PGL form (or
logo) will automatically delete the existing form (or logo).

301
Chapter 4 Solving Program Errors

Solving Program Errors


If you make an error in the program to create a form or an element in the form,
a coded error message and program line containing the error will print when
the form is executed. These error codes are defined in the “Error Codes”
chapter.
To solve program errors, perform the following steps:
1. Locate the error message in the listing provided in the “Error Codes”
chapter for a description of the error.
2. Analyze the related portion of the program to find the error.
3. Correct the error and reprint the file containing the program.
4. If the error persists or you cannot locate it in the program, use the debug
parameter [/] in the Create command as described in the “Error Codes”
chapter. Print the file with the IGP/PGL program. The debug parameter
lists the program, line by line (including the error on the line where the
error occurs), followed by the error-free sections of the form. Correct the
error and print the file again. When the error has been corrected, delete
the debug parameter.

Example
Assume you made two errors in the Box and Corner commands input in steps
3 and 4 of the Form and Bar Code Example on page 280. Using the debug
parameter in the Create command produces the following sample listing:
/PRACTICE
BOX
2;35;16:53;61
*** ERROR 24 : BOX format or delimiter error in input parameters
STOP
CORNER
3;300;13;57;64;5;7
*** ERROR 35 : CORNER vertical length VL out of bounds
*** ERROR 31 : CORNER starting row SR out of bounds
*** ERROR 39 : CORNER starting row SR > ending row ER
STOP
END
From the description of the error messages and the incorrect line identified by
the error message, the errors are easily located and corrected. Notice a colon
was accidentally input in the Box command where a semicolon was required
(error number 24).
/PRACTICE
BOX
2;35;16:53;61
*** ERROR 24 : BOX format or delimiter error in input parameters
STOP

302
Example

In the Corner command, the starting row was too large. This single input error
caused the vertical length of the corner to extend beyond the form boundaries
(error number 35), the starting row to begin outside the form boundaries (error
number 31), and the starting/ending row parameters to be out of order (error
number 39).
CORNER
3;300;13;57;64;5;7
*** ERROR 35 : CORNER vertical length VL out of bounds
*** ERROR 31 : CORNER starting row SR out of bounds
*** ERROR 39 : CORNER starting row SR > ending row ER
STOP
END

303
Chapter 4 Solving Program Errors

304
5 Multinational And
International Character
Sets

Multinational Character Sets


The Multinational Character Set accesses one of 32 international character
sets. Each character set is 96 characters long and can be accessed by
configuration selection or IGP/PGL command. Individual characters in the font
can be accessed with the use of data bit 8.
The character sets and their corresponding set values are listed in Table 37.

Table 37. Multinational Character Sets and Set Values

Character Set Value Character Set Value

U.S. ASCII 0 Dutch 7


German 1 French 8
Swedish 2 Spanish 9
Danish 3 Italian 10
Norwegian 4 Turkish 11
Finnish 5 Reserved 12-23
English 6 User-Defined Sets 24-31

Sets 0 through 11 are resident character sets. Sets 12 through 23 are


reserved spaces in font memory for future resident character sets. If a value
from 12 through 23 is called when attempting to choose a character set, the
character font will default to ASCII. The last eight addressable character set
values, 24 through 31, are reserved for user-defined sets. You can create
custom character sets from existing characters in font memory. If you select a
set value from 24 to 31 when no new character set has been created or
assigned that value, the character font will default to ASCII.
Refer to page 311 for printouts of the primary and extended character sets
and their corresponding values.
To select one of these sets using the “SYMSET” option of the font command
or the ISET command, use the appropriate value as stated above.

305
Chapter 5 Multinational Character Sets

Character Addresses
Both the ASCII and multinational character sets have hex values for each
character and symbol. The primary character set (ASCII characters) resides
at hex addresses ranging from 00 through 7F. The extended character set,
which contains the multinational characters, resides at hex addresses ranging
from 80 through FF. Table 38 shows each multinational character substitution
hex value and the applicable ASCII hex values. To access the extended
character set, the IGP/PGL must be configured with the data bit 8 option
enabled.

Making Character Substitutions


Multinational character sets are created by substituting the multinational
character values for the standard ASCII values. Each of the 12 multinational
character sets allows up to 16 character substitutions (located at hex 21, 22,
23, 24, 25, 26, 40, 5B, 5C, 5D, 5E, 60, 7B, 7C, 7D, and 7E). The most
common character substitutions specific to a particular country are provided
in each set and shown in Table 38.
For example, when the Danish character set is selected, calling character
address cell 5B substitutes the Danish character residing at C6 (Æ) from the
Multinational Character Set (page 311); when the Spanish character set is
selected, calling character address cell 7C substitutes the Spanish character
residing at F1 (ñ) from the Multinational Character Set.These substitutions are
automatically performed when a particular Multinational Character Set is
selected.

Table 38. Substitution Set Hex Values

Character
Substitution Hex Value
Set

U.S. ASCII 21 22 23 24 25 26 40 5B 5C 5D 5E 60 7B 7C 7D 7E

Danish C6 D8 C5 B0 E6 F8 E5

Dutch A3 80 81

English A3

Finnish A4 C4 D6 C5 E4 F6 E5 FC

French E0 FB E7 A7 F4 EA E9 F9 E8 EE
German A7 C4 D6 DC E4 F6 FC DF

Italian A7 B0 E9 83 F9 E0 F2 E8 EC

Norwegian A4 C9 C6 D8 C5 DC E9 E6 F8 E5 FC

Spanish 82 C3 D1 D5 A1 E3 F1 F5 BF

306
OCR Character Sets

Table 38. Substitution Set Hex Values

Character
Substitution Hex Value
Set

Swedish A4 C9 C4 D6 C5 DC E9 E4 F6 E5 FC

Turkish 84 C7 E7 85 86 D6 DC 87 88 89 F6 FC 8A

OCR Character Sets


Purpose Accesses OCR-A and OCR-B character sets.
Mode CREATE, NORMAL and EXECUTE
Format See Comments
Comments In the Create mode, you can access OCR fonts using the
alphanumeric command. Use the Cn parameter in the ALPHA
command (“Commands” chapter, page 29) for more information.
In the Normal and Execute modes, you can access OCR fonts
using the Compressed Print (Density) command (“Commands”
chapter, page 44).
NOTE: OCR fonts are only available in 10 cpi.

Accessing Characters and Character Sets


Data Bit 8
You can access individual characters using data bit 8 addressing. The
primary character set is ASCII. These character values reside at hex
addresses 20 through 7F. The Multinational or extended character sets reside
at hex addresses 80 through FF and are accessible without reconfiguration.
NOTE: Data bit 8 must be set high so that Multinational or extended
character sets are accessible without reconfiguration. However, the
PION/PIOFF command (page 83) must also be set OFF to access
these character sets in the hex 80-FF range. A PION setting will
cause data in the hex 80-FF range to be interpreted as PI line data
instead of extended character set data.

Power-Up Character Set Selection


You can select any one of the twelve resident multinational character sets
shown in Table 37 (0 through 11) or any of the International Sets shown in
Table 40 as the default character set at printer power-up. The IGP/PGL
configuration settings determine which character set is the default character
set at power-up. Refer to your User's Manual to configure the IGP/PGL for a
specific character set. (See Select Font in the configuration menu.)

307
Chapter 5 Multinational Character Sets

The character font selected at power-up will remain active until either the
ISET or SYMSET command is selected or the configuration is changed. OCR
and user-definable character sets cannot be configured as the default
character set at printer power-up.

User-Defined Set Command (USET)


Purpose Creates custom character sets (except OCR fonts) from existing
characters stored on the flash memory.
Mode NORMAL
Format (cc)USET n
ca;fa
END
(cc) Represents the Special Function Control Code.
USET The User Set command; enter USET.
n Selects USET character set number; enter a value
ranging from 1 through 8.
ca Represents the ASCII character cell hex address
which will have its contents replaced with the
character located in the font address (fa). The ca
value must be one of the 16 hex values specified in
Table 38 on page 306.
fa Represents the hexadecimal value for the font
address of a specified character in the Multinational
character set (page 311) which will replace the
current contents of ca. The fa value is the character
substitution for the cell address (ca). The value of
fa may range from hex 20 through FF.
END Ends the USET command.
Comments
You can define up to 16 character substitutions for each of the
eight user-definable character sets. It is not necessary to address
all 16 spaces available for character substitutions with a single
USET command.
The character sets in the USET command are numbered 1
through 8. The character set values in the Character Set
Selection (ISET) command (page 310) are numbered 24 through
31 and correspond to User Sets 1 through 8. The ISET command
accesses and prints that custom character set.
The USET and ISET commands are related as shown in Table
39. Therefore, ISET;24 selects the substitution set defined as
USET1, ISET;29 selects USET6, etc.

308
User-Defined Set Command (USET)

Table 39. USET-ISET Relationship

corresponds
USETn ISET;n
to

n=1 n = 24

n=2 n = 25

n=3 n = 26

n=4 n = 27

n=5 n = 28

n=6 n = 29

n=7 n = 30

n=8 n = 31

Example The following example defines User Set 1 to contain the


Multinational font addresses B1 (±), A1 (¡), and BF (¿) at the hex
cell addresses 23, 24, and 25, respectively. Therefore, if ca = 23
and fa = B1, each time that cell address 23 is received, it will
select the character located at font address B1 (±).
~USET1
23;B1
24;A1
25;BF
END
User Set 1 now contains the following: the plus or minus sign ±
(hex B1) in place of the number sign # (hex 23); the upside down
exclamation point ¡ (hex A1) in place of the dollar sign $ (hex 24);
and the upside down question mark ¿ (hex BF) in place of the
percent sign % (hex 25). To print User Set 1, you must use the
ISET command discussed on page 310.

309
Chapter 5 Multinational Character Sets

Character Set Selection Command (ISET)


Purpose Accesses one of the multinational (Table 37) or international
(Table 40) character sets. Use this command to access a
different character set from the configured power-up default
character set.
Mode NORMAL, CREATE, and EXECUTE
Format In Normal and Execute modes: (cc)ISET; n
In the Create mode (SFCC not required): ISET; n
(cc) Represents the Special Function Control Code.
ISET The Multinational Character Set command; enter
ISET.
n The character substitution set number; enter a
value from the multinational (Table 37) or
international (Table 40) character set tables.
Character sets 0 through 23 represent resident
character sets. Values from 24 through 31
correspond to the customized USET character sets
1 through 8, respectively.
For example, refer to Table 39 on page 309. If you
want to use the User Set 1 created in the example
on page 309, call ISET;24. Similarly, if you want
User Set 5 that you had previously defined, call
ISET;28 to select and print the User Set 5
substitution set.
Comments
You can issue the ISET command as many times within a form as
needed. The character set selected will remain active until a new
character set is selected. If you choose an incorrect character set
value or make a syntax error, an error message will result. If a
value for n is not specified, an error message will print.
Using the ISET command in the Execute mode declares the
character set for use in conjunction with the dynamic data within
that Execute command. Fixed form data specified in the Create
mode is not affected by an ISET command in the Execute mode.
The character set selected will remain in effect until another
character set is selected.
NOTE: See the Fonts section in the “Commands” chapter, page 66, for
information on the SYMSET command.

310
Multinational Character Set Charts

Multinational Character Set Charts

IGP/PGL MULTINATIONAL Set

ASCII Set GERMAN Set

311
Chapter 5 Multinational Character Sets

SWEDISH Set DANISH Set

NORWEGIAN Set FINNISH Set

312
Multinational Character Set Charts

ENGLISH Set DUTCH Set

FRENCH Set SPANISH Set

313
Chapter 5 Multinational Character Sets

ITALIAN Set TURKISH Set

OCR-A Set OCR-B Set

314
International Character Sets

International Character Sets


The International Character Sets supported are listed in Table 40. Select
these sets from the configuration menu “Select Font” option, or through the
SYMSET option of the “FONT” command or the ISET command.
See Table 40 for a list of the Multinational Character Sets and their
corresponding set values.

Table 40. International Character Sets and SYMSET Value

Character Set Set Value Character Set Set Value

Arabic 32 Greek Sets


Greek 33 DEC 256 Greek 400
Hebrew 34 ELOT 928 Greek 401
Portuguese 35 Greek 3 402
Spanish 36 ABY Greek 403
Latin 1 37 ABG Greek 404
Slavic-852 (Latin 2) 38 ELOT 927 Greek 405
Farsi 39 Greek 851 406
Turkish 40 Greek 437 407
OCR-A 41 Greek 8859-7 408
OCR-B 42 Win CP 1253 409

Arabic Sets Turkish Sets


ASMO 449 100 Data General Turkish 600
ASMO 449+ 101 DEC Turkish 601
ASMO 708 102 IBM Turkish 602
ASMO 708 103 Siemens Turkish 603
MS DOS CP 710 104 PTT Turkish 604
MS DOS CP 720 105 IBC Turkish 605
Sakr CP 714 106 Bull Turkish 606
Aptec CP 715 107 AS400 Turkish 607
CP 786 108 Unisys Turkish 608
Arabic CP 864 109 NCR Turkish 609
Arabic CP 1046 110 PST Turkish 610
Arabic Lam 1 111 Unis-1 Turkish 611
Arabic Lam 2 112 Code Page 853 612
Win CP 1256 113 INFO Turkish 613
Win CP 1254 614
Code Page 857 615

315
Chapter 5 Multinational Character Sets

Table 40. International Character Sets and SYMSET Value (continued)

Character Set Set Value Character Set Set Value

Cyrillic Sets Hebrew Sets


Code Page 866 200 Hebrew Old 500
Cyrillic CP 437 201 Hebrew New 501
Cyrillic 113 202 Hebrew DEC 502
Cyrillic 8859-5 203 Latin-1 Hebrew 503
ISO 915 204 Win CP 1255 504
Code Page 855 205
7-bit Cyrillic 206
Ukranian 207
Bulgarian 208
Win CP 1251 209

European Sets
Latin 2 8859-2 300
Latin 2 852 301
Mazovia 302
Kamenicky 303
Roman 8 304
PC-437 Slavic 305
Slavic 1250 306
Code Page 865 307
Code Page 860 308
Latin 1 8859-1 309
Latin 5 8859-9 310
Latin 9 8859-15 311
Polish Pol 1 312
Win CP 1250 313
Win CP 1252 314
Win CP 1257 315

316
6 Error Codes

IGP/PGL Emulation Error Codes


The IGP/PGL provides coded error messages to assist in “debugging”
programs. The printer will print an error message number and the program
line which contains the error when an error is detected. To help determine
exactly where the error occurred, use the following debug command
sequence:
(CC)CREATE;/FORM NAME
The slash (/) places the IGP/PGL in a debug mode, and the program prints,
line by line, with the error number and message printed below the specific
error in the program. The error-free portions of the form will print following the
program. After correcting the error(s), print the file again. When the errors
have been corrected, delete the slash. (A sample debug listing is shown in
“Solving Program Errors” on page 302.)
In the Execute mode, that part of the form which was correctly defined and
stored during the Create mode will print, including any dynamic data and
overlay text which was accepted before the error occurred. (Sections
containing errors must be corrected before storage in the Directory can take
place.) Any error messages will print following the printed form, and
processing will continue in the Normal mode.
In the Create Form or Create Logo mode, any error messages will print first,
followed by that part of the form/logo which was correctly defined. Incorrectly
defined elements are excluded from the form/logo.
The error codes are broken down into categories. In each category, the
number preceding each error message is the actual error code reported by
the printer, and the error shown in bold is the error message printed.

317
Chapter 6 IGP/PGL Emulation Error Codes

Horizontal Line Errors


01 HORiZontal line starting row SR out of bounds
The row specified by the second parameter in the horizontal line
command places the horizontal line outside the boundaries of the
form.
02 HORiZontal line starting column SC out of bounds
The left (starting) column of the horizontal line specified by the
third parameter in the horizontal line command places the
horizontal line outside the boundaries of the form.
03 HORiZontal line ending column EC out of bounds
The right (ending) column of the horizontal line specified by the
fourth parameter in the horizontal line command places the
horizontal line outside the boundaries of the form.
04 HORiZontal line format or delimiter error
Some type of format or delimiter error was detected in the
parameters of the horizontal line command. This error is usually
caused by one or more of the following:
a. A missing semicolon;
b. A colon in place of a semicolon;
c. Too many or too few parameters in the command string;
d. Alpha characters instead of numeric characters in the
parameters.
05 Insufficient memory to store the HORiZontal line
No more room in the IGP/PGL memory exists for another
horizontal line. The rest of the horizontal line commands are
flushed until the Stop command is found. Processing will then
continue normally. To create space in the IGP/PGL memory,
delete forms with horizontal line elements that are no longer
required.
06 HORiZontal line starting column SC > ending column EC
The left (starting) column parameter of the horizontal line
command is greater than or equal to the right (ending) column
parameter.
07 HORiZontal line thickness LT error
The thickness of the horizontal line specified by the first
parameter in the horizontal line command is incorrect. This error
is usually caused by specifying a thickness of zero.
08-09 Not defined.

318
Vertical Line Errors

Vertical Line Errors


10 VERTical line starting column SC out of bounds
The column specified by the second parameter in the vertical line
command places the vertical line outside the form boundaries.
11 VERTical line starting row SR out of bounds
The upper (starting) row of the vertical line specified by the third
parameter in the vertical line command places the vertical line
outside the boundaries of the form.
12 VERTical line ending row ER out of bounds
The lower (ending) row of the vertical line specified by the fourth
parameter in the vertical line command places the vertical line
outside the boundaries of the form.
13 VERTical line format or delimiter error
Some type of format or delimiter error was detected in the
parameters of the vertical line command. This error is usually
caused by one or more of the following:
a. A missing semicolon;
b. A colon in place of a semicolon;
c. Too many or too few parameters in the command string;
d. Alpha characters instead of numeric characters in the
parameters.
14 Insufficient memory to store the VERTical line
No more room in the IGP/PGL memory exists for another vertical
line. The rest of the vertical line commands are flushed until the
Stop command is found. Processing will then continue normally.
To create space in the IGP/PGL memory, delete forms with
vertical line elements that are no longer required.
15 VERTical line starting row SR > ending row ER
The upper (starting) row parameter of the vertical line command
is greater than or equal to the lower (ending) row parameter.
16 VERTical line thickness LT error
The thickness of the vertical line specified by the first parameter
in the vertical line command is incorrect. This error is usually
caused by specifying a thickness of zero.
17-19 Not defined.

319
Chapter 6 IGP/PGL Emulation Error Codes

Box Errors
20 BOX starting column SC out of bounds
The left (starting) column specified by the third parameter in the
box command places the box outside the form boundaries.
21 BOX starting row SR out of bounds
The upper (starting) row of the box specified by the second
parameter in the box command will place the box outside the
boundaries of the form.
22 BOX ending column EC out of bounds
The right (ending) column specified by the fifth parameter in the
box command places the box outside the form boundaries.
23 BOX ending row ER out of bounds
The lower (ending) row of the box specified by the fourth
parameter in the box command will place the box outside the
boundaries of the form.
24 BOX format or delimiter error in input parameters
Some type of format or delimiter error was detected in the
parameters of the box command. This error is usually caused by
one or more of the following:
a. A missing semicolon;
b. A colon in place of a semicolon;
c. Too many or too few parameters in the command string;
d. Alpha characters instead of numeric characters in the
parameters.
25 Insufficient memory to store the BOX
No more room in the IGP/PGL memory exists for another box.
The rest of the box commands are flushed until the Stop
command is found. Processing will then continue normally. To
create space in the IGP/PGL memory, delete forms with box
elements that are no longer required.
26 BOX starting column SC > ending column EC
The left (starting) column parameter of the box command is
greater than or equal to the right (ending) column parameter.
27 BOX starting row SR > ending row ER
The upper (starting) row parameter of the box command is
greater than or equal to the lower (ending) row parameter.
28 BOX line thickness LT error
The thickness of the box specified by the first parameter in the
box command is incorrect. This error is usually caused by
specifying a thickness of zero.
29 Not defined.

320
Corner Errors

Corner Errors
30 CORNER starting column SC out of bounds
The left (starting) column specified by the third parameter in the
corner command places the corner outside the form boundaries.
31 CORNER starting row SR out of bounds
The upper (starting) row of the corner specified by the second
parameter in the corner command will place the corner outside
the boundaries of the form.
32 CORNER ending column EC out of bounds
The right (ending) column specified by the fifth parameter in the
corner command places the corner outside the form boundaries.
33 CORNER ending row ER out of bounds
The lower (ending) row of the corner specified by the fourth
parameter in the corner command will place the corner outside
the boundaries of the form.
34 CORNER horizontal length HL out of bounds
The length of the horizontal arms of the corner specified by the
seventh parameter in the corner command will cause parts of the
corner to extend outside the form boundaries.
35 CORNER vertical length VL out of bounds
The length of the vertical arms of the corner specified by the sixth
parameter in the corner command will cause parts of the corner
to extend above or below the boundaries of the form.
36 CORNER format or delimiter error in input parameters
Some type of format or delimiter error was detected in the
parameters of the corner command. This error is usually caused
by one or more of the following:
a. A missing semicolon;
b. A colon in place of a semicolon;
c. Too many or too few parameters in the command string;
d. Alpha characters instead of numeric characters in the
parameters.
37 Insufficient memory to store the CORNER
No more room in the IGP/PGL memory exists for another corner.
The rest of the corner commands are flushed until the Stop
command is found. Processing will then continue normally. To
create space in the IGP/PGL memory, delete forms with corner
elements that are no longer required.
38 CORNER starting column SC > ending column EC
The left (starting) column parameter of the corner command is
greater than or equal to the right (ending) column parameter.
39 CORNER starting row SR > ending row ER
The upper (starting) row parameter of the corner command is
greater than or equal to the lower (ending) row parameter.

321
Chapter 6 IGP/PGL Emulation Error Codes

Alpha Errors
40 ALPHA leading and trailing delimiters mismatched
The leading delimiter (printable character) of the actual text string
was not matched with an ending delimiter before the line
terminator was found.
41 ALPHA starting row SR out of bounds
The starting row parameter in the Alpha command will cause the
text string to print either above or below the limits of the form.
NOTE: Expanded print text strings expand up from the specified row. This
could cause an attempt to print the text string above the top of the
form and generate the error message.
42 ALPHA starting column SC out of bounds
The starting column parameter in the Alpha command is either
extending the alpha string beyond the left margin of the form or
the starting column parameter, plus the actual length of the text is
extending the string beyond the right margin of the page.
43 ALPHA string length > 255 characters
The string contains more than 255 characters.
44 ALPHA format or delimiter error in input parameters
Some type of format or delimiter error was detected in the
parameters of the alpha command. This error is usually caused
by one or more of the following:
a. A missing semicolon;
b. A colon in place of a semicolon;
c. Too many or too few parameters in the command string;
d. Alpha characters instead of numeric characters in the
parameters.
45 Insufficient memory to store the ALPHA string
No more room in the IGP/PGL memory exists for another alpha
string. The rest of the Alpha commands are flushed until the Stop
command is found. Processing of the form will then continue
normally. To create space in the IGP/PGL memory, delete forms
with alpha string elements that are no longer required.
46 ALPHA X expansion HE and Y expansion VE must be zero
When the expanded character parameters VE and HE are used
within the ALPHA command, both values must be either zero or
non-zero values. If the elongated characters parameter [E] or the
compressed characters parameter [Cn] is used in the ALPHA
command, the VE and HE values must be set to 0.
47 ALPHA X expansion factor HE out of bounds
The horizontal expansion factor is greater than the maximum
allowed.
48 ALPHA Y expansion factor VE out of bounds
The vertical expansion factor is greater than the maximum
allowed.

322
Logo Errors

49 ALPHA compression factor Cn or Density error (10, 10A,


10B, 12, 13, 15, 17, 20)
The optional compression parameter (Cn) which defines the
horizontal pitch of the text was specified incorrectly. The pitches
currently available are 10, 10A, 10B, 12, 13, 15, 17, and 20 cpi.

Logo Errors
50 LOGO horizontal width HL > 240 or dot col> HL
a. The horizontal width of the logo is equal to zero or greater than
240. The IGP/PGL automatically reverts to Normal mode when
this occurs.
b. A dot position specified in the logo program exceeds the
specified horizontal width of the logo. When this occurs, the
buffer is flushed until a line terminator is found, and then logo
construction continues normally.
51 LOGO vertical length VL > 252 or dot row n > VL
a. The vertical length of the logo is equal to zero or greater than
252. The IGP/PGL automatically reverts to Normal mode when
this occurs.
b. A dot row specified in the logo program exceeds the specified
vertical length of the logo. When this occurs, the buffer is flushed
until a line terminator is found, and then logo construction
continues normally.
52 LOGO hyphen syntax error in input parameters
The beginning or ending dots are out of order, or a parameter is
missing. The buffer is flushed until a line terminator is found, and
then logo construction continues normally.
53 Insufficient memory to create the LOGO
No more room exists in IGP/PGL memory to construct a logo for
the size specified. When this occurs, the IGP/PGL automatically
reverts to Normal mode. To create space in IGP/PGL memory,
delete forms with logo elements (including the logos) that are no
longer required.
54 LOGO format or delimiter error
Some type of format or delimiter error was detected in the Logo
command. If this occurs while specifying the size and name of the
logo, the IGP/PGL automatically reverts to the Normal mode. If
this occurs during the actual construction of the logo, the buffer is
flushed until a line terminator is found, and then logo construction
continues normally.
55 LOGO call not previously defined
An attempt was made in the Create Form mode to incorporate an
undefined logo into a form. This error is not generated during the
Logo Form mode. When this error occurs, the buffer is flushed
until a line terminator is found, and then forms creation continues
normally.

323
Chapter 6 IGP/PGL Emulation Error Codes

56 Insufficient memory for another LOGO call


IGP/PGL memory cannot store another logo call. To create space
in the IGP/PGL memory, delete forms with logo elements
(including the logos) no longer required.
57 LOGO call starting row SR out of bounds
During form creation, the parameter specifying the row position of
a logo places the logo outside the form boundaries. The buffer is
flushed until a line terminator is found, and then processing
continues normally.
58 LOGO call starting column SC out of bounds
During form creation, the parameter specifying the column
position of a logo places the logo outside the form boundaries.
When this occurs, the buffer is flushed until a line terminator is
found, and then processing continues normally.
59 LOGO error found in DISK/FLASH file
When the logo was loaded dynamically in Execute Form mode
from disk or flash, there was an error in processing the logo.

Create Errors
60 Directory full - cannot CREATE the form or LOGO
The directory is full, or no more room exists in the IGP/PGL
memory for another form. When this occurs, the IGP/PGL
automatically reverts to the Normal mode. To create space in the
IGP/PGL memory, delete forms that are no longer required.
61 CREATE function unrecognized
An unrecognizable command is entered during the Create Form
mode. At this point, the buffer is flushed until a Stop command is
found, and then processing continues.
62 CREATE horizontal duplication parameter HDUP error
Either a format error was detected or a parameter was exceeded.
The duplication number must be no greater than 255, and the
offset must be no greater than 792 (dot scale). If this error occurs,
the Horizontal Duplication command is ignored, and forms
processing continues.
63 CREATE vertical duplication parameter VDUP error
Either a format error was detected, or a parameter was
exceeded. The duplication number must be no greater than 255
and the offset must be no greater than the specified length of the
form. If this error occurs, the Vertical Duplication command is
ignored, and forms processing continues.
64 CREATE scale factor parameter SCALE invalid
Either a format error was detected, or a parameter was specified
incorrectly. The vertical lines per inch can be specified as 1 to the
target DPI. The horizontal characters per inch can be specified
only as 10, 12, 13, 15, 17 or 20 cpi. If this error occurs, the Scale
command is ignored and forms processing continues.

324
Execute Errors

65 CREATE page starting row PAGE SR out of bounds


When you specify the position of the page parameters with the
Page command in the Create Form mode, the row position
specified will place the page number above or below the
boundaries of the form. When this error occurs, the IGP/PGL will
automatically revert to the Normal mode.
66 CREATE page starting column PAGE SC out of bounds
When you specify the position of the page parameters in the
Create command, the column position specified will place the
page number outside the form boundaries. When this error
occurs, the IGP/PGL will automatically revert to the Normal
mode.
67 CREATE STOP command missing
This error occurs when the IGP/PGL receives a new function
command, an End command, or a mode command without
receiving a Stop command. The IGP/PGL will continue to process
subsequent commands correctly.
68 Insufficient memory to store the SETUP program
No more room in the IGP/PGL memory exists for storing the
SETUP routine.
69 Insufficient memory to store the form
The directory is full, or no more room exists in the IGP/PGL
memory for another form. When this occurs, the IGP/PGL
automatically reverts to the Normal mode. To create space in the
IGP/PGL memory, delete forms that are no longer required.

Execute Errors
70 EXECUTE form count parameter FC error
This error occurs when the parameter specifying the number of
blank forms to print was entered incorrectly. When this error
occurs, the IGP/PGL will automatically revert to the Normal
mode. Form count can be from 1 through 65,535.
71 EXECUTE/DELETE form not found in the directory
An attempt was made to execute or delete a form which does not
exist in the forms directory. When this error occurs, the IGP/PGL
reverts to the Normal mode.
72 EXECUTE EVFU load error
This error is generated only during the Execute Form mode while
programming the EVFU. If more channels than lines per physical
page are specified during a load sequence, this error is
generated, and the IGP/PGL automatically reverts to the Normal
mode.
73 EXECUTE EVFU terminator invalid
This error is generated only during the Execute Form mode. The
EVFU LOAD is missing an END LOAD code. If the line terminator
cannot be deciphered, an error is generated, and the IGP/PGL
reverts to the Normal mode.

325
Chapter 6 IGP/PGL Emulation Error Codes

74 Missing delimiter - must be a single quotation mark


When issuing an SFCC change command, the new SFCC
character must be contained within two single quotation marks. If
the new SFCC character is being identified by the ASCII value,
no quotation marks are required.
75 Not defined.
76 EXECUTE page number error
An error was made while specifying the page number used with
the form being executed. This error can be generated because of
incorrect format or a page number that is too large. The specified
page number can range from 0 through 99,999,999. Since the
page number is part of the Execute command, the IGP/PGL will
automatically revert to the Normal mode.
77 EXECUTE format or delimiter error
A format or delimiter error was detected in the Execute
command; the IGP/PGL will automatically revert to the Normal
mode. This error is usually caused by one or more of the
following:
a. A missing semicolon;
b. A colon in place of a semicolon;
c. Too many or too few parameters in the command string;
d. Alpha characters instead of decimal digits in the parameters;
e. Page command misspelled when specifying the page
number.
78 Insufficient memory to EXECUTE the form
Insufficient memory was available to recall and execute a form.
The IGP/PGL will automatically revert to the Normal mode.
79 Not defined.

326
Miscellaneous Errors

Miscellaneous Errors
80 Special function must be called from the NORMAL mode
This special function must be called from the Normal mode and
not the Create Form or Execute Form mode. This error is
generally due to a missing End command in the Create Form
mode. For example, an attempt to enter the Create Form mode
while executing a form will cause the IGP/PGL automatically to
revert to the Normal mode.
81 No such special function
The special function call was unrecognizable. The IGP/PGL will
automatically revert to the Normal mode.
82 Numeric value expected in input parameter
Characters other than numeric digits (0-9) are encountered
where digits are expected.
83 Decimal input error in input parameter
The parameter expected was a decimal number. Either the
number was not there, or it was too large (greater than 65,535).
This error can also be caused by entering an alpha character
instead of a numeric character.
84 Missing or wrong delimiter - must be a semicolon ;
The delimiter is either wrong or missing. The delimiter expected is
a semicolon.
85 Missing or wrong delimiter - must be a colon :
86 DENSITY param error - 10, 10A, 10B, 12, 13, 15, 17, or 20
The parameters of the Density command are improperly
specified. The densities currently implemented are 10, 10A, 10B,
12, 13, 15, 17, and 20 characters per inch. The command is
ignored and processing continues.
87 LPI parameter error
The parameters of the LPI command are improperly specified.
The allowable range is from 1 through 1000. The command is
ignored and processing continues.
88 BARCODE type not supported
The bar code type selected is a valid IGP/PGL bar code, but is
not supported by this type of printer.
89 EXPAND parameters out of bounds or format error
The parameters of the Expand command are improperly
specified. Either the parameters are out of bounds, or some type
of format error was detected. The command is ignored, and
processing continues.

327
Chapter 6 IGP/PGL Emulation Error Codes

Bar Code Errors


90 Insufficient memory to store the BARCODE
No more room exists in the IGP/PGL memory for another bar
code. The rest of the bar code commands are flushed until the
Stop command is found. Processing will then continue.
91 ALPHA/BARCODE syntax error
Some type of syntax (format) error was detected in the
parameters of the bar code command. This error is usually
caused by one or more of the following:
a. Misspelled keywords;
b. Lowercase used;
c. A missing semicolon;
d. A colon in place of a semicolon;
e. An ending delimiter for the data field was not found;
f. Too many or too few parameters in the command string.
The rest of the command line is flushed until the Stop command
is found. Processing will then continue.
92 BARCODE magnification factor MAG out of bounds or not
allowed
The magnification factor specified in the bar code command is
out of bounds. Refer to the applicable section in the “Bar Codes”
chapter to determine the acceptable magnification values for the
bar code symbol being used.
93 BARCODE starting row SR out of bounds
The starting row parameter in the bar code command will cause
the bar code symbol to print either above or below the limits of
the form.
94 BARCODE starting column SC out of bounds
The starting column parameter in the bar code command will
cause the bar code symbol to print either beyond the left margin
or the right margin of the form.
95 BARCODE height Hn out of bounds - must be 3 through 99
The height parameter specified in the bar code command is out
of bounds. Acceptable values are 3 through 99.
96 BARCODE data field has illegal character/format
A character in the data field was not recognized as an acceptable
character. Refer to the applicable section in the “Bar Codes”
chapter to determine the acceptable characters for the bar code
symbol being used. The missing ending delimiter also causes this
error.
97 BARCODE data field too short or too long
The data field in the bar code command has too few or too many
data characters. Refer to the applicable section in the “Bar
Codes” chapter to determine the acceptable number of data
characters for the bar code symbol being used.

328
Bar Code Errors

98 BARCODE symbol(s) exceeds the form length


The bar code command causes a bar code symbol to print below
the limits of the form. This error occurs on the data field line of the
bar code.
99 BARCODE symbol(s) exceeds the form width
The bar code command causes a bar code symbol to print
beyond the right margin. This error occurs on the data field line of
the bar code.
100 BARCODE variable ratio 0 or not ascending
101 BARCODE PDF not allowed or error - LOC: A or B - FONT: N,
P, Q, R, T, V, O, X or S
Either the alternate font was selected for a bar code or an invalid
parameter was used. Acceptable parameters must be “N” for the
normal font, “O” for the OCR-A optional font, “X” for the OCR-B
optional font, or “S” to suppress printing of the data field, “P” for
12 cpi, “Q” for 13 cpi, “R” for 15 cpi, “T” for 17 cpi, “V” for 20 cpi.
102 Dynamic BARCODE symbol exceeds the form length
The bar code command with a dynamic data field exceeds the
limits of the current form length.
103 Dynamic data must be inserted at Top-of-Form
Dynamic data must immediately follow the EXECUTE command
before any overlay data.
104 Dynamic BARCODE data field BFn not previously defined
Dynamic data field designated in the Execute Form mode was
not defined in the Create Form mode.
105 Dynamic ALPHA/BARCODE/LOGO field
AFn/BFn/GFn error - must be 0-512
Dynamic alpha field number (AFn), bar code field number (BFn),
or logo field number (GFn) must range from 0 through 512.
106 Dynamic BARCODE symbol exceeds the form width
107 Dynamic ALPHA data field AFn not previously defined
The dynamic alpha field number called for was not previously
defined in the Create Form mode.
108 BARCODE symbol check digit CD out of bounds
109 Dynamic Alpha/BARCODE field longer than previously
defined
The BARCODE data provided exceeds the maximum length for
the bar code selected.
110 SFCC decimal input error - must be 01 - 255
The hexadecimal value on the ASCII chart for the Special
Function Control Code is not valid. Refer to page 91 to select a
valid SFCC.

329
Chapter 6 IGP/PGL Emulation Error Codes

Reverse Print Errors


111 REVERSE format error in input parameters
Re-enter the command with proper format.
112 REVERSE starting row SR/ending row ER out of bounds
Exceeds the value specified to reverse the element.
113 REVERSE starting SC/ending column EC out of bounds
Exceeds the value specified to reverse the element.
114 Insufficient memory to store the REVERSE element
Insufficient memory space available for reversed print
requirements.

Miscellaneous Errors
115 PDF417 barcode sizing parameter illegal or too small for
data.
116 PDF417 security level has illegal value or format
117 Unusable or illegal raster data
118 Unsupported raster image type
119 Unsupported raster compression type
120 Dynamic LOGO data field GFn not previously defined.
Dynamic logo field designated in the Execute Form mode was not
defined in the Create Form mode.
121 Not defined.
122 EXECUTE form too wide for current page setting
The form was defined in one orientation while sent to print in
another orientation. Use the debug slash (/) when creating a form
to show which element is out of bounds (see page 341).
123 EXECUTE form too long for current page setting
The form was defined in one orientation while sent to print in
another orientation. Use the debug slash (/) when creating a form
to show which element is out of bounds (see page 341).
124-125 Not defined.
126 LFORMx form length parameter n error
The number of lines exceeds 66 (for 6 lpi) or 88 (for 8 lpi) lines
when using the LFORMx command.
127 Not defined.
128 FORM/LOGO name is not a legal file name
The file name exceeds the 15-character limitation, or an invalid
character was used in the file name. Refer to IGP/PGL Command
Standards in the “Commands” chapter.
129 Not defined.

330
Incremental Fields Errors

Incremental Fields Errors


130 Not defined.
131 Incremental STEPMASK parameter error
A semicolon is missing after the STEPMASK data.
132 Incremental REPEAT/RESET parameter error
An illegal RPT or RST parameter value was found in the
incremental command. The value must range from 1 through
65,535.
133 Incremental STEPMASK/STARTDATA length error
The dynamic stepmask exceeded created field length or start
data exceeded stepmask.
134 Incremental EXECUTE command error
An illegal IRST or ICNT parameter value was found in the
Execute command. The value must range from 1 through 65,535.
135 Not defined.
136 Incremental STEPMASK/STARTDATA mismatched
The STARTDATA value must be A-Z or 0-9, when the
STEPMASK value is a value from 0-9.

Miscellaneous Errors
137 Data Matrix barcode sizing parameter illegal or too small for
data
138 Data Matrix barcode format ID parameter is illegal
139 Data Matrix barcode ECC type is illegal
140 PMODE or SMODE not the first command in the CREATE
mode
141 PMODE or SMODE syntax error
142 PMODE or SMODE printer type PT parameter error
143 PMODE or SMODE scaling parameter error
144 PMODE or SMODE exit mode (EM) parameter error
145 PMODE entries exceeded - maximum = 8
146 - 149 Not defined.

331
Chapter 6 IGP/PGL Emulation Error Codes

Multinational Character Set Errors


150 ISET character selection parameter n error
An ISET character set selection parameter value between 0 and
31 was expected. Error was caused possibly by an invalid
numeric value or an alpha character. See Chapter 5.
151 USET decimal input error in input parameter
The USET command was expecting a decimal parameter and
either received none or received an alpha character.
152 USET character set n parameter error
A USET character set selection parameter value between 1 and 8
was expected. Error was caused possibly by an invalid numeric
value or an alpha character.
153 USET substituted character illegal - must be 1 of 16
During character substitution in the USET command, the hex
value for the character being replaced must be one of the
specified 16 hex values. Only the following hex values (ca) can
be replaced by another hex value (fa): 21, 22, 23, 24, 25, 26, 40,
5B, 5C, 5D, 5E, 60, 7B, 7C, 7D, 7E.
154 USET defined character illegal - must be hex 20-FF
During the USET command, the hex value for the substituted
character (fa) must range between hex 20 and hex FF. The value
given may be out of bounds.
155 USET syntax error - END command is expected
An END command is expected when the USET character set
definition is completed.

Miscellaneous Errors
160 FONT command parameter error
The FACE # parameter is either missing a space between the
parameter and its value, or a semicolon is missing between font
parameters.
161 Illegal FONT typeface value - must be (9)0000-(9)9999
An illegal FONT typeface value was used. FONT typeface values
range from 90000 through 99999, or 0 through 9999.
162 Illegal FONT bolding factor - must be ON(1) or OFF(0)
An illegal FONT bolding value was used. ON (or 1) or OFF (or 0)
must be entered.
163 Illegal FONT slant - must be LEFT (-1), OFF (0), or RIGHT (1)
An illegal FONT slant value was used. LEFT (or -1), OFF (or 0),
or RIGHT (or 1) must be entered.
164 Illegal FONT point size - must be 4-999
An illegal FONT point size was used. Valid values range from 4
through 999.
165 Illegal FONT symbol set value
An invalid SYMSET parameter value was used. Valid parameter
values are 0 through 31.

332
Font Errors

166 Illegal FONT space value - must be 0, 1, 2 or 3


An illegal FONT space value was used. Only 0, 1, 2 or 3
constitute valid values.
167 Illegal FONT block setting - must be 0, 1, 2, or 3
168-169 Not defined.
170 PAPER command syntax error
171 Invalid PAPER parameter error - out of range
172 Illegal FONT name format, too long or not found

Font Errors
160 FONT command or FONTLOAD parameter error
The FACE # parameter or FONTLOAD command is either
missing a space between the parameter and its value, or a
semicolon is missing between font parameters.
161 Illegal FONT typeface value - must be resident
An illegal FONT typeface value was used. FONT typeface values
range from 90000 through 99999, or 0 through 9999.
162 Illegal FONT bolding factor - must be ON(1) or OFF(0)
An illegal FONT bolding value was used. ON (or 1) or OFF (or 0)
must be entered.
163 Illegal FONT slant - must be LEFT (-1), OFF (0) or RIGHT (1)
An illegal FONT slant value was used. LEFT (or -1), OFF (or 0),
or RIGHT (or 1) must be entered.
164 Illegal FONT point size - must be 4-999
An illegal FONT point size was used. Valid values range from 4
through 999.
165 Illegal FONT symbol set value
An invalid SYMSET parameter value was used. Valid parameter
values are 0 through 31.
166 Illegal FONT space value - must be 0, 1, 2 or 3
An illegal FONT space value was used. Only 0, 1, 2 or 3
constitute valid values.
167 Illegal FONT Block setting - must be 0, 1, 2, or 3
168-169 Not defined.
170 PAPER/CASSETTE command syntax error
171 Invalid PAPER parameter error - out of range
172 Illegal FONT name format, too long or not found
173 Insufficient memory for font download
174 Parameter out of bounds
175-179 Not defined.

333
Chapter 6 IGP/PGL Emulation Error Codes

Bar Code Errors


180 Australian 4-state barcode invalid FCC (2 digits)
181 Australian 4-state barcode invalid Sorting number (8 digits)
182 Australian 4-state barcode invalid Customer Data

334
A Standard ASCII Character
Set
B7 0
B6 0
B5 1
BITS
KEY B4 B3 B2 B1
33 OCTAL
1 0 1 1 ESC 27 DECIMAL
1B HEX
ASCII CHARACTER
B7 0 0 0 0 1 1 1 1
B6 0 0 1 1 0 0 1 1
B5 0 1 0 1 0 1 0 1
BITS COLUMN
B4 B3 B2 B1 ROW 0 1 2 3 4 5 6 7
0 20 40 60 100 120 140 160
0 0 0 0 0 NUL 0 DLE 16 SP 32 0 48 @ 64 P 80 96 p 112
0 10 20 30 40 50 60 70
1 21 41 61 101 121 141 161
0 0 0 1 1 SOH 1
DC1 17
! 33
1 49
A 65
Q 81
a 97
q 113
(XON)
1 11 21 31 41 51 61 71
2 22 42 62 102 122 142 162
0 0 1 0 2 STX 2 DC2 18 " 34 2 50 B 66 R 82 b 98 r 114
2 12 22 32 42 52 62 72
3 23 43 63 103 123 143 163
0 0 1 1 3 ETX 3
DC3 19 # 35 3 51 C 67 S 83 c 99 s 115
(XOFF)
3 13 23 33 43 53 63 73
4 24 44 64 104 124 144 164
0 1 0 0 4 EOT 4 DC4 20 $ 36 4 52 D 68 T 84 d 100 t 116
4 14 24 34 44 54 64 74
5 25 45 65 105 125 145 165
0 1 0 1 5 ENQ 5 NAK 21 % 37 5 53 E 69 U 85 e 101 u 117
5 15 25 35 45 55 65 75
6 26 46 66 106 126 146 166
0 1 1 0 6 ACK 6 SYN 22 & 38 6 54 F 70 V 86 f 102 v 118
6 16 26 36 46 56 66 76
7 27 47 67 107 127 147 167
0 1 1 1 7 BEL 7 ETB 23 ' 39 7 55 G 71 W 87 g 103 w 119
7 17 27 37 47 57 67 77
10 30 50 70 110 130 150 170
1 0 0 0 8 BS 8 CAN 24 ( 40 8 56 H 72 X 88 h 104 x 120
8 18 28 38 48 58 68 78
11 31 51 71 111 131 151 171
1 0 0 1 9 HT 9 EM 25 ) 41 9 57 I 73 Y 89 i 105 y 121
9 19 29 39 49 59 69 79
12 32 52 72 112 132 152 172
1 0 1 0 10 LF 10 SUB 26
* 42 : 58 J 74 Z 90 j 106 z 122
0A 1A 2A 3A 4A 5A 6A 7A
13 33 53 73 113 133 153 173
1 0 1 1 11 VT 11 ESC 27 + 43 ; 59 K 75 [ 91 k 107 { 123
0B 1B 2B 3B 4B 5B 6B 7B
14 34 54 74 114 134 154 174
1 1 0 0 12 FF 12 FS 28 , 44 < 60 L 76 \ 92 l 108 | 124
0C 1C 2C 3C 4C 5C 6C 7C
15 35 55 75 115 135 155 175
1 1 0 1 13 CR 13 GS 29 - 45 = 61 M 77 ] 93 m 109 } 125
0D 1D 2D 3D 4D 5D 6D 7D
16 36 56 76 116 136 156 176
1 1 1 0 14 SO 14
0E
RS 30
1E
. 46
2E
> 62
3E
N 78
4E
^ 94
5E
n 110
6E
~ 126
7E
17 37 57 77 117 137 157 177
1 1 1 1 15 SI 15 US 31 / 47 ? 63 O 79 _ 95 o 111 DEL 127
0F 1F 2F 3F 4F 5F 6F 7F

335
Appendix A

336
B Grid Programs And
Samples

The Standard Grid. The standard grid is used for form design. The program
for the standard grid is listed below, and a sample of the standard grid follows
on the next page. Photocopy the grid provided or enter the grid program and
make your own printout.

337
The Logo Grid. The program for a logo grid is listed below and the sample
grid follows. It is not the full size logo grid; the grid can measure up to 240
columns wide by 252 rows high for a logo 4 x 3.5 inches. Photocopy the grid
or enter the grid program to obtain a printout.

339
C Page Boundaries

Paper Selection And Maximum Values


Most Create Form mode commands require you to identify specific form
boundaries using the SR, SC, ER, EC parameters. This appendix addresses
the page boundaries affecting IGP/PGL products for both cut-sheet page
printers and continuous form printers.
All printers have maximum print boundaries according to the printer type and
paper size selected. Refer to your printer User's Manual for the specific page
boundaries associated with your printer. Table 41 shows the print boundaries
for page printers using several different widths and lengths.
Note that while both cut-sheet page printers and continuous form printers
have specific maximum width values based on paper size, continuous form
printers are not bound by the same maximum page length values; on a
continuous form printer, if you specify a page length exceeding the actual
paper size, the form will continue to print until it is completed.
The maximum dot values such as those shown in Table 41 are necessary to
determine the maximum printable area on your form for your printer when
modifying top/bottom margin settings or offsetting the values for left margin
print positions. The following pages explain how to determine the Top/Bottom
Margin and Left Margin requirements for your printer.

Create Form Mode


In the Create Form mode, both the form's length and width used for boundary
checking may be specified by the user. However, if the form size is not
specified, the form length defaults to 11” and the width is not checked.
Boundary checking for form elements is performed only when the form length
is specified.

Execute Form Mode


In the Execute Form mode, use the following guidelines to determine if a form
will print on the current page size.

Not User-Defined
If the form's length/width is not user-defined, and the minimum length/width is
greater than the current page length/ width, minus the margins, then the result
will be error 74 or 75.

341
Appendix C Paper Selection And Maximum Values

User-defined
If the form's length/width is user-defined greater than the current page length/
width, minus the margins, then the result will be error 74 or 75.

Not-defined
If the form's length/width is not-defined and the minimum length/width is less
than or equal to the current page length/width, minus the margins, then the
form length/width will equal the page length/width, minus the margins.

Table 41. Paper Sizes and Maximum Print Area

Maximum Dot Value*

Dimensions
Paper Size Page Width Page Length
(inches)

Letter 8.0 x 11 481 793

Letter 8.5 x 11 511 793

Legal 8.5 x 14 511 1009

A4 8.268 x 11.693 497 842

B5 6.929 x 9.842 416 709

AIAG Label 4x6 241 433

Odette Label 8x5 481 361


*How to calculate Maximum Dot Values:
1. Page Length x 72 dpi minus Top and Bottom Margin Values + 1 = maxi-
mum height value;
2. Page Width x 60 dpi minus Left Margin Value + 1 = maximum width
value.
Values exceeding maximum values will produce an error message.

Setting Top/Bottom Margins


Using dot values to identify maximum vertical print positions, the page
boundary parameter of an 11-inch form has 792 dot rows at n/72-inch vertical
resolution (72 dpi X 11 inches). (See Figure 70.)
With no Top/Bottom Margin configuration setting on an 11-inch form, the first
print position is Starting Row 1, Starting Column 1 (A). However, if a Top/
Bottom Margin value is set at 10, then Starting Row 1 is adjusted down by 10
dot rows (B), and the Ending Row is adjusted up 10 dot rows (C), thereby
reducing the maximum vertical printable area to 773 dots (793 - [10 + 10]).
The greater the top/bottom margin setting, the smaller the printable area on
the form.

342
Setting Left Margins

NOTE: The Top/Bottom margins are set under the LinePrinter+ configuration
menu, or from the host by sending the PGL CONFIG command. See
the “Commands” chapter.

Maximum Character Column


Maximum Horizontal Dot 511

A
B

Maximum Vertical
Print Area (772 dots)

C Maximum Character Row 67


Maximum Vertical Dot 793

Figure 70. Top/Bottom Margin Example

Setting Left Margins


Using dot values to identify maximum horizontal print positions, the page
boundary parameter of an 8-1/2-inch wide form (85 character columns) has
510 dot columns (1-511) + n/60-inch horizontal resolution (60 dpi X 8.5
inches). (See Figure 70.) Setting a Left Margin value repositions the Starting
Column 1 position by the degree of offset required. This offset can be a 0, a
positive, or negative value. The following examples explain how setting the
Left Margin affects printed output:
No Left Margin Setting. When the Left Margin configuration setting is 0 on
an 8-1/2-inch form, the Starting Column is 1, and the Ending Column is 511 (,
A and B, respectively).
Positive Left Margin Setting. When the Left Margin setting is 20 on an 8-1/2-
inch form, the left margin is offset by 20 dots, and that 20th dot position
becomes Starting Column 1 in IGP/PGL memory (A, Figure 72). This 20 dots
also offsets the Ending Column by 20 dots, thus narrowing the maximum print
width on the form from 511 to 491 dots (B, Figure 72).

343
Appendix C Paper Selection And Maximum Values

Negative Left Margin Setting. With a Left Margin setting of -20 on an 8-1/2-
inch form, the left margin is offset -20 dots, and that -20 becomes the Starting
Column 1 in IGP/PGL memory (A, Figure 73). This -20 offset appears to
expand the horizontal printable area to 531 dots (B, Figure 73); however, the
expanded area is actually beyond the addressable range of the 8-1/2-inch-
wide form containing the -20 offset position and is, therefore, not accessible.
Column 21 is the left-most addressable area on the page.
NOTE: Negative Left Margin configuration is a method of offsetting and
printing an existing IGP/PGL file which may otherwise require
modification in order to orient the output on the page properly. Use
this option if your IGP/PGL file was written for applications where the
leftmost printable area is not designated as the first printable
character column on the form.

B Maximum Character Column


Maximum Horizontal Dot 511
A

Maximum Horizontal
Print Area (510 dots)

Figure 71. Left Margin Example - No Setting

344
Setting Left Margins

A Dot Column 20 B Maximum Horizontal Dot Column


Becomes Column 1 (511) becomes 491 due to
+20 offset

Maximum Horizontal
Print Area (490 dots)

Figure 72. Left Margin Setting +20 Example

A Dot Column -20


Becomes Column 1 B Maximum Horizontal Dot
Column 531

Nonprintable area due


to -20 left margin
offset

Maximum Horizontal Printable Area


(510 dots)

Figure 73. Left Margin -20 Setting Example

345
Appendix C Paper Selection And Maximum Values

346
D Vertical Paper Motion

Introduction
There are three methods of advancing the print position with the IGP/PGL
which are explained in this appendix:
1. Using line feeds or form feeds;
2. Using the paper instruction (PI) line; or
3. Using the Electronic Vertical Format Unit (EVFU).
In impact printers, print position is adjusted by vertical paper motion down the
page. Because no paper motion occurs during forms creation in non-impact
printers, advancing the print position refers to cursor movement down the
page according to positioning commands received by the host. Throughout
this appendix, the term advancing the print position will be used to generically
refer to this concept of cursor movement/vertical paper motion.

Paper Motion Using Line Feeds And Form Feeds


The most common method of advancing the print position with IGP/PGL is
through the use of line feeds and form feeds. A line feed moves the print
position down a distance determined by the current line spacing (lpi). In the
Normal mode, a form feed character advances the print position to the top of
the next page; in the Execute mode, a form feed advances the print position
to the top of the next form. Form length is determined by the CREATE
command.

347
Appendix D Paper Motion Using The PI Line (Relative Line Slewing)

Paper Motion Using The PI Line (Relative Line Slewing)


The method of moving the print position using the PI line results in vertical
slews of a specified number of lines relative to the current print position
(rather than slewing to a specific line). For this to occur, the following criteria
must be met:
1. The PI line must be enabled and set high; and
2. Data bit 5 must be 1 (set).
When a number of blank lines will be skipped on a form, (called “paper
slewing”) another method of paper motion may be used. The PI signal can be
detected by the IGP/PGL as the 8th data bit in a serial interface, or a separate
input line in a parallel interface. (Refer to the EN-PI/DIS-PI command and the
PION/PIOFF command on page 83 and page 83 in the “Commands” chapter,
respectively.) When the PI signal is used, bits 6 and 7 are interpreted as 0
values, and characters hex 10 through 1F are interpreted as binary slew
commands.
The binary slew commands can skip from 1 through 15 or 1 through 16 lines
on the form, depending on how the Slew Range configuration option is
configured. Refer to Table 42 which illustrates how lines are skipped for each
value. (Note that the state of data bit 5 is the difference between line slewing
and using the interface lines as EVFU channel codes.) This type of vertical
paper motion occurs whenever the line slewing command is used regardless
of whether the EVFU memory is loaded or not.

348
Table 42. Line Slewing

Slew Range
ASCII Data Bits Configuration
8*
Hex Dec Code 7 6 5 4 3 2 1 0 1

10 16 DLE 1 X X 1 0 0 0 0 1 1

11 17 DC1 1 X X 1 0 0 0 1 2 1

12 18 DC2 1 X X 1 0 0 1 0 3 2

13 19 DC3 1 X X 1 0 0 1 1 4 3

14 20 DC4 1 X X 1 0 1 0 0 5 4

15 21 NAK 1 X X 1 0 1 0 1 6 5

16 22 SYN 1 X X 1 0 1 1 0 7 6

17 23 ETB 1 X X 1 0 1 1 1 8 7

18 24 CAN 1 X X 1 1 0 0 0 9 8

19 25 EM 1 X X 1 1 0 0 1 10 9

1A 26 SUB 1 X X 1 1 0 1 0 11 10

1B 27 ESC 1 X X 1 1 0 1 1 12 11

1C 28 FS 1 X X 1 1 1 0 0 13 12

1D 29 GS 1 X X 1 1 1 0 1 14 13

1E 30 RS 1 0 0 1 1 1 1 0 15 14

1F 31 US 1 0 0 1 1 1 1 1 16 15

X = Undefined, 0 or 1 1 = High 0 = Low

NOTE: *The ASCII values in Table 42 assume that all undefined bits are set
to 0. When the PI line is enabled, data bit 8 is the PI line on a serial
interface, and data bit 8 is undefined on a parallel interface.

349
Appendix D Paper Motion Using The EVFU

Paper Motion Using The EVFU


The Electronic Vertical Format Unit (EVFU) is an efficient method of skipping
to a specified print position during repetitive printing tasks. The EVFU affects
the vertical placement of overlay data produced in the Execute Form mode.

General EVFU Programming


The general EVFU programming procedure is as follows:
1. Design a form, determining spacing and channel assignments for each
line.
2. Send the programming sequence to the printer.
The following information applies when programming and using the EVFU:
PI Line. The PI signal can be detected by the IGP/PGL as the 8th data bit in a
serial interface, or a separate input line in a parallel interface. (Refer to the
EN-PI/DIS-PI command and the PION/PIOFF command on page 83 and
page 83 in the “Commands” chapter, respectively.)
Elongated Characters. Elongated (double high) characters can be used
within EVFU programs. The EVFU automatically counts one line of elongated
characters as two normal character lines.
Paper Runaway Protection. If the EVFU is selected but not loaded when an
EVFU command is sent from the host computer, the printer moves the paper
a single line feed. If the EVFU is selected and the memory is loaded, a
channel code sent from the host, which is not a part of the assigned sequence
currently in memory, moves the paper a single line feed.
Line Spacing. The printer can use any line spacing with the EVFU. The
EVFU determines the forms length according to the program specifications
and the currently selected line spacing. For example, 14-inch paper with 10 lpi
line spacing would yield a 140-line form which can be defined by the EVFU.
Mixing line spacing on the same form unloads the EVFU.

EVFU Programming Sequence


The EVFU provides 16 channels to identify up to 192 lines. An error results if
the EVFU form length exceeds the physical length of the page, and the IGP/
PGL returns to the Normal mode. The number of channels in an EVFU
overrides the length of the form as it was defined in the CREATE mode;
therefore, the EVFU must be equal to or longer than the form being used.
The EVFU programming sequence is listed below and explained in the
following sections.
1. Start load code;
2. Line identification codes; and
3. End load code.

350
EVFU Programming Sequence

Start Load Code - Hex 1E or 6E


The Start Load code clears and initializes the EVFU memory for channel
assignment storage. Refer to Table 43 or Table 44 on page 353 and page
354, respectively, for the appropriate start load code.

Channel Assignment
The EVFU memory has the capacity for 192-line forms. The first line
identification code (channel code) in the EVFU load data defines the first line
on the form; the second line identification code defines the second line on the
form, etc. Each line must have a line identification code.
A single channel code is used repeatedly throughout a form to reserve blank
lines between defined channel codes and to maintain the correct forms
length. These “filler” channels can be any channel number except channel
code 1 (which is reserved for the top-of-form) and channel code 12 (which is
reserved as the vertical tab channel). In the EVFU example which begins on
page 355, filler channels are represented by a hex 11 code. Calls are rarely
made to filler channels because they do not specify a unique print position on
the form.
Channel 1. The top-of-form code, reserved as the first line on the form. The
operating program sends the channel 1 code to advance to the top of the next
form. After the memory is loaded, a Form Feed code (FF, hex 0C) moves the
paper to the next channel 1 (top-of-form).
Channels 2 through 11, 13 and 14. Used as general channel codes (also
referred to as line identification codes) or as filler channels. Each line on the
form must be identified by a channel code. When the operating program
sends the channel code, the print position moves to the line identified by the
channel code.
Channel 12. Reserved as the vertical tab channel. The vertical tab code (VT,
hex 0B) rapidly advances the print position to the next line identified by the
channel 12 code. If channel 12 is not loaded in the EVFU memory, a single
line feed is executed when a VT code is sent.

351
Appendix D Paper Motion Using The EVFU

End Load - Hex 1F or 6F


The end load code terminates the channel storage and saves the EVFU in
memory. Refer to Table 43 or Table 44 on page 353 and page 354,
respectively, for the appropriate end load code. Channel codes in excess of
92 channels received prior to the end load code cause an error.

Using The EVFU


Sending the appropriate EVFU channel code to the printer causes any data in
the buffer to print and move the print position to the next line on the form
having the specified channel number assigned in EVFU memory.
To recognize a data byte as an EVFU instruction, one of the following sets of
criteria must be met:
1. The PI line must be enabled and set high;
2. Bits 7 and 6 can be set to 1 or 0; and
3. Data bit 5 must be 0 (not set).
OR:
1. The PI line must be disabled or low;
2. Bits 7 and 6 must be 0 (not set); and
3. Data bit 5 must be 1 (set).
Given these conditions, the lower four bits of a byte specify the EVFU channel
number. Table 43 lists the EVFU channels and their equivalent data bytes
when the PI line is enabled; Table 44 lists the EVFU channel and their
equivalent data bytes when the PI line is disabled.

352
Using The EVFU

Table 43. EVFU Codes - PI Line Enabled

ASCII Data Bits Channel

Hex Dec Code 8* 7 6 5 4 3 2 1


00 0 NUL 1 X X 0 0 0 0 0 1 (TOF)
01 1 SOH 1 X X 0 0 0 0 1 2
02 2 STX 1 X X 0 0 0 1 0 3
03 3 ETX 1 X X 0 0 0 1 1 4
04 4 EOT 1 X X 0 0 1 0 0 5
05 5 ENQ 1 X X 0 0 1 0 1 6
06 6 ACK 1 X X 0 0 1 1 0 7
07 7 BEL 1 X X 0 0 1 1 1 8
08 8 BS 1 X X 0 1 0 0 0 9
09 9 HT 1 X X 0 1 0 0 1 10
0A 10 LF 1 X X 0 1 0 1 0 11
0B 11 VT 1 X X 0 1 0 1 1 12 (VT)
0C 12 FF 1 X X 0 1 1 0 0 13
0D 13 CR 1 X X 0 1 1 0 1 14
6E 110 n 1 1 1 0 1 1 1 0 Start Load
6F 111 o 1 1 1 0 1 1 1 1 End Load

X = Undefined, 0 or 1 1 = High 0 = Low

NOTE: *The ASCII values in Table 43 assume that all undefined bits are set
to 0. When the PI line is enabled, data bit 8 is the PI line on a serial
interface, and data bit 8 is undefined on a parallel interface.

353
Appendix D Paper Motion Using The EVFU

Table 44. EVFU Codes - PI Line Disabled or Not Used

ASCII Data Bits Channel


Hex Dec Code 8 7 6 5 4 3 2 1
10 16 DLE 0 0 0 1 0 0 0 0 1 (TOF)
11 17 DC1 0 0 0 1 0 0 0 1 2
12 18 DC2 0 0 0 1 0 0 1 0 3
13 19 DC3 0 0 0 1 0 0 1 1 4
14 20 DC4 0 0 0 1 0 1 0 0 5
15 21 NAK 0 0 0 1 0 1 0 1 6
16 22 SYN 0 0 0 1 0 1 1 0 7
17 23 ETB 0 0 0 1 0 1 1 1 8
18 24 CAN 0 0 0 1 1 0 0 0 9
19 25 EM 0 0 0 1 1 0 0 1 10
1A 26 SUB 0 0 0 1 1 0 1 0 11
1B 27 ESC 0 0 0 1 1 0 1 1 12 (VT)
1C 28 FS 0 0 0 1 1 1 0 0 13
1D 29 GS 0 0 0 1 1 1 0 1 14
1E 30 RS 0 0 0 1 1 1 1 0 Start Load
1F 31 US 0 0 0 1 1 1 1 1 End Load
X = Undefined, 0 or 1 1 = High 0 = Low

NOTE: Do not use your SFCC as a channel code when using the EVFU.

Clearing The EVFU Memory


The following actions reset (clear) the EVFU memory:
1. Sending only the start load code.
2. Sending a start load code followed immediately by an end load code.
3. A second start load code is received, resulting in re-initialization of the
EVFU. (This restarts the EVFU load sequence.)
When the EVFU memory is cleared, the forms length returns to the previously
set value.

354
EVFU Example

EVFU Example
The following EVFU example is a 2-inch form at 6 lpi line spacing. Thus, 12
lines on the form must be defined. The form is repeated 3 times. Paper
instructions are disabled.

Assign Line Identification Codes


Line ID Code Description Assigned Hex Code
Start Load Start EVFU 1E
Line 1 Top of Form 10
Line 2 Filler 11
Line 3 Filler 11
Line 4 Filler 11
Line 5 Vertical Tab 1B
Line 6 First channel stop 13
Line 7 Filler 11
Line 8 Filler 11
Line 9 Second channel stop 12
Line 10 Filler 11
Line 11 Third channel stop 15
Line 12 Filler 11
Stop Load End EVFU 1F

EVFU Format in Execute Mode


The Execute command shown on page 356, derived from the Execute
command format on page 57, illustrates how the EVFU data above is
incorporated into the Execute command. All other Execute command
parameters are shown in italics. (Optional parameters are shown in brackets
[ ].) Figure 74 illustrates the printed output from this data.
The boldface line below the EXECUTE command represents the hexadecimal
EVFU load sequence which identifies the channel codes at which overlay
data will be placed on each form. The example hex values correspond to the
line identification codes listed above. Channel codes not described above as
Filler channels are assigned unique hex codes. Calls to these channels will
print overlay data at specific positions on the form.
The two ~AF lines, also shown in italics, represent the dynamic data. While
the EVFU does not affect dynamic data positioning (data placement is defined
by the ALPHA statement when the form was created), the commands are
shown to specify where they would occur in relation to the EXECUTE
command, the EVFU load sequence, and the overlay data.
The four lines of EVFU overlay data (shown in boldface type) follow the two
lines of dynamic data. This overlay data is positioned on the form according to
the specified channel codes called. The superscript hexadecimal numbers
enclosed in < > symbols represent calls to the four unique EVFU channel
codes.

355
Appendix D Paper Motion Using The EVFU

(cc)EXECUTE; formname [;PAGE n] [;FC] [;ICNTn] [;IRSTn] [;DISK]


1E 10 11 11 11 1B 13 11 11 12 11 15 11 1F
~AF1;*DYNAMIC DATA #1*
~AF2;*DYNAMIC DATA #2*
<13>DATA FOR LINE 6<17>
<10><12>DATA FOR LINE 9
<1B>DATA FOR VERTICAL TAB CHANNEL
<15>DATA FOR LINE 11
[Form Feed character]

(cc)NORMAL
When the IGP/PGL receives a channel call, it searches for that channel from
the current print position in the EVFU load sequence to the end of the EVFU
load sequence. If that channel is found, the current print position becomes
that channel on the same form. If the channel is not found, the search
continues from the beginning of the EVFU load sequence to the current print
position. If this search is successful, the current form is printed, the next form
is called, and the current print position becomes the channel position in the
EVFU. If the channel called is not found in either search, the channel call is
treated as if it were a line feed.

356
EVFU Example

EVFU Channel
Code Sent Line No. Form Output

1E Start Load

10 1 (TOF) (top of form, Form #1)


11 2
11 3
Form 11 4
#1 1B 5
13 6 DATA FOR LINE 6
17 7 (undefined hex 17 causes single line feed)
11 8
12 9
11 10
15 11
11 12

10 1 (TOF) (top of form, Form #2)


11 2
11 3
11 4
Form 1B 5
#2 13 6
11 7
11 8
12 9 DATA FOR LINE 9
11 10
15 11
11 12

10 1 (TOF) (top of form, Form #3)


11 2
11 3
11 4
1B 5 DATA FOR VERTICAL TAB CHANNEL
Form 13 6
#3
11 7
11 8
12 9
11 10
15 11 DATA FOR LINE 11
11 12

1F End Load
Figure 74. Sample EVFU Form

357
Appendix D Paper Motion Using The EVFU

358
E PTX_SETUP Option

Overview
The PTX_SETUP commands are a superset of commands which allow the
printer to perform several tasks by parsing commands either stored in flash or
sent to the printer by the host. Commands range from re-routing debug
statements to downloading complete printer configurations.
This appendix describes the PTX_SETUP commands specific to line matrix,
laser and thermal printers, as well as the commands which are not platform
specific.

The PTX_SETUP Commands


The PTX_SETUP commands were originally designed for the disk-based
laser and thermal printers with IGPs. As a result, many of the original
PTX_SETUP commands have no meaning on a flash-based line matrix
printer. However, the line matrix printers can benefit from some of the
functionality provided by the PTX_SETUP commands. As a result, a non-
platform specific PTX_SETUP library has been added to line matrix printers.
Some concepts to keep in mind are as follows:
1. PTX_SETUP commands are not emulation specific. In a system with an
IGP, the IGP level emulation will process the PTX_SETUP commands. In
a system without an IGP, the PTX_SETUP commands will be processed
by the base emulation. The CTHI emulation will not process PTX_SETUP
commands.
2. Since there is no disk on a flash-based printer, DISK_IO commands are
now called FILE_IO. However, for backwards compatibility DISK_IO and
FILE_IO are synonymous.
3. The PTX_SETUP command set is case sensitive; all PTX_SETUP
commands are in upper case characters only.
4. The white space separating commands may be any number of spaces
and tabs. This allows a PTX_SETUP file to be formatted for easier
readability.
5. Any unknown command will terminate the PTX_SETUP processing. The
offending command will be the first line of printed text.
6. Although the original implementation of PTX_SETUP allowed for only a
single parameter, separated from the sub-command by a single
semicolon (;) character, the new PTX_SETUP command set allows for
multiple parameters separated by commas, semicolons, spaces or tabs.

359
Appendix E The PTX_SETUP Commands

Commands (Non-Platform Specific)


The original PTX_SETUP commands were implemented on the laser and
thermal printers; however, many commands are also supported for line matrix
printers. This section describes the existing commands which work across all
three platforms, and provides a general description of how commands are
formed.
Each emulation has modes in which the PTX_SETUP commands could get
missed. For this reason, it is highly recommended that all PTX_SETUP
commands be placed between print jobs, rather than attempting to imbed
them within jobs.
PTX_SETUP commands have the following format:
(SFCC)PTX_SETUP
Command–Sub Command;Value
PTX_END
For example, if the SFCC assigned to the emulation you are using is the caret
(^, hex 5E), and you wanted to load configuration number 4 and capture all
incoming data to a file named “BIN”, you would use the following command:
^PTX_SETUP
CONFIG–LOAD;4 FILE_IO–CAPTURE;BIN
PTX_END
Table 45 lists all the command, sub-command, and parameter combinations
and gives a brief description of the command. This section documents the
existence of PTX_SETUP commands which work across all three platforms
(line matrix, thermal and laser). The following sections document commands
which are specific to each platform.
NOTE: When a file system error occurs, a message will be displayed on the
front panel indicating the error, and the action needed to take to
correct the error.

360
Commands (Non-Platform Specific)

Table 45. PTX_SETUP Commands (Non-Platform Specific)

Command Sub-Command Parameter Description

CONFIG LOAD Cfg Cfg can be 0-8. The PTX_SETUP


will load configuration Cfg. If
configuration Cfg was not previously
saved, the operator panel will
display an error message and the
current configuration will be kept.

SAVE Cfg Cfg must be 1-8. This command will


save the current configuration as
configuration Cfg. If Cfg is not in the
range of 1-8, the command is
ignored.

CONFIG POWERUP Cfg Sets the power-up configuration to


Cfg and loads Configuration Cfg.
Cfg can be any value from 0-8,
where 0 is the factory default.

PRINT Cfg Print Configuration Cfg. Cfg can be


a number 1-8, or one of four pre-
defined configurations. The four
non-numeric configurations are
requested using the first character
for the CURRENT, FACTORY,
POWERUP, or ALL
configuration(s).

DELETE Cfg Deletes Configuration number Cfg.


Cfg must be in the range of 1-8.

UPLOAD Port;Cfg This command uploads the


configuration stored in location Cfg
to the port specified by Port. Port
must either be 1284 or SERIAL. Cfg
may be 1-8 or ALL.

DOWNLOAD Cfg This command saves the


configuration data that follows as
configuration Cfg. Cfg must be 1-8
or END.

RESET Reboots the printer.

361
Appendix E The PTX_SETUP Commands

Table 45. PTX_SETUP Commands (Non-Platform Specific) (continued)

Command Sub-Command Parameter Description

LP MODE n/a Protocol Protocol must be 0-4. This


command resets the software
protocol, and is selected as follows:
0 - P-Series
1 - P-Series XQ
2 - Serial Matrix
3 - Proprinter III XL
4 - Epson FX-1050

FILE_IO CAPTURE Filename Captures all incoming data into a file


(DISK_IO) named Filename. Receipt of a
FILE_IO–CAPTURE command
without the Filename parameter will
force the file data to be written to
flash, and will end the file capture.

DRIVE Letter This command is parsed for


backwards compatibility. However,
since the flash file system is a single
device, the drive letter will be
ignored.

FILE_IO DEL Filename The DEL command will mark a file


(DISK_IO) as deleted. The space the file
occupied will be freed the next time
the printer is powered up.

RUNFILE File;Prop The RUNFILE command will open


the file named File for printing. After
the PTX_END command is
processed, the contents of File will
get printed before any more data is
read from the host. If the Prop field
is present, RUNFILE will verify that
Prop matches the saved file
properties. Any mismatch will cause
the command to be ignored.
MAXSIZE Kb For backwards compatibility.

MINSIZE Kb For backwards compatibility.

PTX_END (none) (none) Exits the PTX_SETUP.

362
Commands (Non-Platform Specific)

Summary of the CONFIG Command


The UPLOAD and DOWNLOAD command can be used for uploading and
downloading complete printer configurations. If a customer needs to configure
50 printers identically, the customer needs only configure one printer and
UPLOAD the configurations. The UPLOADed configurations may then be
DOWNLOADed to other printers eliminating the necessity for the operator to
configure each printer manually.
The UPLOAD command will always place a header and a footer into the
uploaded data. This header will be the DOWNLOAD command followed by
the configuration number. The footer will be the DOWNLOAD END command.
The operator should be aware that the UPLOAD and DOWNLOAD
commands use a secondary copy of the menu structure which does not affect
the printer's active configuration. This allows the UPLOAD and DOWNLOAD
commands to operate without affecting the printer's current configuration. If
the operator intends to use one of the DOWNLOADed configurations, the
operator should reboot the printer to ensure proper operation. This can be
accomplished by adding the RESET command as the last command in your
setup file. This is necessary because the printer caches the active
configuration. Rebooting the printer ensures that the desired configuration is
correctly read from Non-Volatile RAM.
NOTE: While an upload or download is in progress, the Front Panel will be
unavailable.
The Configuration Save and Delete commands from the front panel can be
blocked by using the Protect Configurations feature. This is intended to
prevent someone from inadvertently reconfiguring a printer. The PTX_SETUP
commands, however, will override the protect configurations feature. All
PTX_SETUP commands will be honored regardless of the value of the
Protect Configurations feature.

Operation of the FILE_IO Command


When a file is opened for writing with the FILE_IO–CAPTURE;filename
command, the system will allocate RAM for file control blocks and 1 Kbyte for
data. If the file already exists on the Flash File System and the Overwrite
Enable feature in the Flash File System menu is set to disable, a warning will
be displayed on the front panel. After clearing the warning, the file data will be
printed. To overwrite the existing file, set the Overwrite Files option to enable.
Due to the nature of writing to flash, any data intended to be stored
permanently in flash must first be copied into RAM. As a result, the ability to
manipulate files in the Flash File System is dependent upon the printer having
sufficient RAM. None of the captured file data will be committed to flash until
the entire file is loaded. The PTX_SETUP parser will interpret the command
“FILE_IO–CAPTURE<lf>” as an end of file marker. Receipt of the command
will cause all file data to be written to flash. The file system allocates RAM for
temporary data storage in 1 Kbyte blocks. If at any time during the file
download the printer runs out of RAM, a warning will be displayed on the front
panel and as much of the file as possible will be saved in flash. To download
larger files you may need to add additional RAM to the printer.

363
Appendix E The PTX_SETUP Commands

Three things can limit the ability to save a file: insufficient RAM, insufficient
Flash, and lack of empty file system entries. Flash can only be written once
before it needs to be “optimized”. As a result, the maximum file size is limited
to the largest unwritten block of Flash. If any of these problems occur, the
printer will display an error message and will attempt to provide the operator
with a description of what steps to take to correct the error. Normally, the
solution will involve optimizing the Flash File System. This can be
accomplished by selecting the Optimize & Reboot function in the Flash File
System menu under MAINT/MISC.
NOTE: After selecting the Optimize & Reboot function, do not shut off the
printer's power until after the printer returns to the power-on state.
Loss of power during the optimize process may corrupt the printer's
program. If this occurs, first attempt to repeat the downloading
process. If that fails, contact an authorized service representative.

Line Matrix Commands


Table 46 lists PTX_SETUP commands which apply to line matrix printers
only.

Table 46. PTX_SETUP Commands (Line Matrix only)

Command Sub-Command Parameter Description

FILE_IO PROPS File;Prop The PROPS command will set the


(DISK_IO) file properties of a given file. The file
properties are a four letter, case
sensitive file descriptor. The
properties field can be used to
ensure that a file is used for its
intended purpose. Once properties
have been associated with a file,
they can not be changed.

UPLOAD File;Port Reads the file named File out of the


flash file system and sends it to a
host computer via the Port I/O port.
Port is either 1284 (for reverse
nibble or byte mode transfer using
the parallel port), or SERIAL.
NOTE: if the Ethernet option is
installed, 1284 is used to upload
across the network.

364
Thermal Commands

Thermal Commands
Table 47 lists PTX_SETUP commands which apply to thermal printers only.

Table 47. PTX_SETUP Commands (Thermal Only)

Command Sub-Command Parameter Description

FILE_IO FONT FontName Downloads an HP LaserJet font and


saves it as FontName.

IFONT FontName Downloads a scalable AGFA type


font and saves it as FontName.
ENGINE ALM_WIDE wide width Set the Auto Label Mapping wide
width (in units of 1/1000”; e.g., a
wide width value of 1000 = 1”),
which represents the width of the
image in the file sent from the host
which is to be auto label mapped
into several labels, each of which
will have a width of narrow width.
# of labels=wide width/narrow width
(rounded down)

ALM_NARROW narrow width Set the Auto Label Mapping narrow


width, which represents the width of
one auto mapped label (in units of
1/1000”; e.g., a narrow width value
of 1000 = 1”). This width should be
set prior to the wide width. In
addition, it can never exceed the
physical width of the printer. If it
does, the narrow width will be
automatically reduced to the Page
Width value set in the configuration
menu.

ALM_ENABLE N/W/* Set Auto Label Mapping to Narrow,


Wide, or Off. Enter N for Narrow, W
for Wide, or any other letter to
disable ALM. By default, only the
Narrow option is implemented.
IMAGE_SHFT_H Value Shifts the image Value horizontally
in 1/1000” units. If Value is out of
the specified range (-1” to +1”), the
command will be ignored.

IMAGE_SHFT_V Value Shifts the image Value vertically in


1/1000” units. If Value is out of the
specified range (-1” to +6”), the
command will be ignored.

365
Appendix E The PTX_SETUP Commands

Table 47. PTX_SETUP Commands (Thermal Only)

Command Sub-Command Parameter Description

ENGINE LENGTH Value Sets the Page Length (in 1/1000”


units).

MEDIA_HANDLING Value Sets the type of media handling:


0 - Continuous
1 - Tear-Off Strip
2 - Tear-Off
3 - Peel-Off
4 - Cut

MODE X Sets the print mode to Thermal


Transfer.

D Sets the print mode to Direct


Thermal.

WIDTH Value Sets the Page Width (in 1/1000”


units).

366
Laser Commands

Laser Commands
Table 48 lists PTX_SETUP commands which apply to laser printers only.

Table 48. PTX_SETUP Commands (Laser Only)

Command Sub-Command Parameter Description

FORMAT JOG * Jogs the output tray if in Duplex.

OFFSET Value Offsets print by Value if in Duplex.

ENGINE ALM_WIDE Value Set the Auto Label Mapping wide


width, which represents the width of
the image in the file sent from the
host which is to be auto label
mapped into several labels, each of
which will have a width of narrow
width.
# of labels=wide width/narrow width
(rounded down)

ALM_NARROW Value Set the Auto Label Mapping narrow


width, which represents the width of
one auto mapped label. This width
should be set prior to the wide
width. In addition, it can never
exceed the physical width of the
printer. If it does, the narrow width
will be automatically reduced to the
physical width.

ALM_ENABLE N/W/* Set Auto Label Mapping to Narrow,


Wide, or Off. Enter N for Narrow, W
for Wide, or any other letter to
disable ALM. By default, only the
Narrow option is implemented.
DUPLEX OFF Turns duplexing off.

H-H Duplex On, Tumble Off.

H-T Duplex On, Tumble On.

ENERGY Minute Sets the Energy Saver Timer to


Minute minutes (0-30). Enter 0 to
disable energy saver.

IMAGE_SHFT_H Value Shifts the image Value horizontally


in 1/1000” units. If Value is out of
the specified range (-1” to +1”), the
command will be ignored.

367
Appendix E The PTX_SETUP Commands

Table 48. PTX_SETUP Commands (Laser Only)

Command Sub-Command Parameter Description

ENGINE IMAGE_SHFT_V Value Shifts the image Value vertically in


1/1000” units. If Value is out of the
specified range (-6” to +6”), the
command will be ignored.

INPUT Value Sets the input cassette to 0-7.

LENGTH Value Sets the Page Length.

LINK Value If Value = 0, cassette linking is off,


otherwise cassettes which hold
similar paper are linked as a single
cassette.

MIRROR Value Value of 0 turns mirroring off, non-


zero turns mirroring on.

OUTPUT Destination Sends printed pages to the


Destination output bin.

TEMPERATURE Temperature Sets fuser temperature to


Temperature if Temperature is in
the valid range.

WIDTH Value Sets the Page Width.

368
Index

A Code 93, 126


Data Matrix, 142
Accessing characters and character sets Duplicating Incremental Bar Code Fields, 265
Data Bit 8, 307 EAN 13, 157
Power-Up character set selection, 307 EAN 8, 152
Accessing characters and character sets, FIM, 164
Multinational Character Sets, 307 German I-2/5, 170
Adding a Bar Code, Bar Code, ading, 286 Incremental Bar Code Dynamic Data
Advancing the print position, introduction, 347 Fields, 264
Alpha errors, 322 Incremental Fields, 259
Alphanumeric Command, 284 Interleaved 2/5, 170
Alphanumeric Data, 22 ITF-14, 170
Dynamic data, 22 I-2/5, 170
Fixed data, 22 Matrix, 176
Overlay data, 22 Maxicode, 181
Alphanumerics, 29 MSI, 187
Alphanumerics, incremental PDF-417, 192
dynamic data fields, 39 Planet, 197
fixed data fields, 37 PostBar and Royal Mail (KIX), 214
Alphanumerics, incremental fields, 34 POSTNET, 208
using incremental alphanumeric data, 34 Telepen, 218
Australian 4-State, 104 UCC/EAN-128, 224
command format, 106 UPC-A, 236
example, 109 UPC-E, 242
Auto Increment Fields, example, 277 UPC-E0, 242
Automatic Increment/Decrement Capability, UPCSHIP, 250
IGP/PGL Emulation features, 14 UPS 11, 255
B Bar code errors, 328, 334
Bar Code Fields, 273
Bar Code
Bar code specification summary, 99
Australian 4-State, 104
Bar Codes
BC412 Barcode, 110
Plessey, 203
Codabar, 114
Bar Code, overview, 95
Code 128A, 128B, and 128C, 132
Basic Design, 270
Code 39, 119

369
BC412 Barcode, 110 Clear Zone, FIM, 166
Check Code, 112 Clearing EVFU memory, 354
Command Format, 110 Codabar, 114
Data Field, 110 Check Digit, 115
GuardBand, 112 command format, 115
Height, 113 Data Field, 115
Magnification, 113 example, 118
PDF, 113 Quiet Aone, 115
Start Code, 110 Readable Data, 115
Termination Code, 110 Start/Stop Codes, 115
Box and Corners, creating, 281 Code 128 Command Format, Code 128A, 128B,
Box errors, 320 and 128C, 134
Boxes, 42 Code 128A Data Field, Code 128A, 128B,
C and 128C, 133
Code 128A, 128B, and 128C, 132
Channel assignments, EVFU, 351 Check Digit, 133
Character address, Multinational Character Code 128 Command format, 134
Sets, 306 Code 128A Data Field, 133
Character Position.Dot Position (CP.DP), 26 Code 128B Data Field, 133
Character set selection command (ISET), Code 128C Data Field, 133
Multinational Character Sets, 310 Quiet Zone, 133
Character sizes, PDF, 98 Readable Data, 133
Character substitutions, Multinational Character Start/Stop Codes, 133
Sets, 306 Code 128B Data Field, Code 128A, 128B,
Check Code, BC412 Barcode, 112 and 128C, 133
Check Digit Code 128B, example, 140
Code 128A, 128B, and 128C, 133 Code 128C Data Field, Code 128A, 128B,
Code 93, 127 and 128C, 133
EAN 13, 158 Code 128C, example, 141
EAN 8, 153 Code 39, 119
Interleaved 2/5 (I-2/5), German I-2/5, and command format, 121
ITF-14, 171 example, 125
Matrix, 177 Code 93, 126
MSI, 188 Check Digit, 127
Planet, 199 command format, 128
PostBar and Royal Mail (KIX), 214 Data Field, 127
POSTNET, 210 example, 131
Telepen, 219 Quiet Zone, 127
UPC-A, 237 Readable Data, 127
UPC-E, 243 Start/Stop Codes, 127
UPCSHIP, 251
UPS 11, 256
Check Digit, Codabar, 115

370
Command Listen, 74
Delete, 301 Logo call, 75
Directory, 300 Logo mode, create, 77
operation of FILE_IO, 363 Normal mode, 80
Command codes, 28 Page number, 80
Alphanumerics, 29 Paper, 81
Alphanumerics, incremental dynamic data Paper Instruction - Data Bit 8, 83
fields, 39 Paper Instruction (PI) Enable/Disable, 83
Alphanumerics, incremental fields, 34 PCX Logo, 84
Alphanumerics, incremental fixed data Print File, 86
fields, 37 Quiet, 86
Boxes, 42 Recall, 87
Compressed print (density), 44 Repeat, 87
Configuration, 45 Reset, 87
Corners, 47 Reverse Print, 88
Create, 49 Scale, 89
Dark printing, 29 Select Format, 90
Data fields for alphanumeric and incremental Setup command, 91
data, 28 Special Function Control Code Change, 91
Delete form, 51 TIFF Logo, 92
Delete logo, 51 Command format
Directory, 52 German I-2/5, 172
Duplication, horizontal, 52 Incremental Bar Code Fixed Data Fields, 262
Duplication, vertical, 54 ITF-14, 172
Emulation switching, 55 I-2/5, 172
End, 55 Matrix, 177
Execute Form mode, 56 Maxicode, 181
Execute form, dynamic alphanumeric data, 60 MSI, 188
Execute form, dynamic bar code data, 61 PDF417, 194
Execute form, dynamic logo, 62 Planet, 200
Execute form, electronic vertical format unit, 59 PostBar and Royal Mail, 215
Execute form, general format, 57 POSTNET, 211
Execute form, incremental dynamic data, 63 Telepen, 220
Execute form, overlay data, 65 UCC/EAN-128, 230
Expanded print, 66 UPC-A, 238
font, 66 UPC-E, 244
Font load, 69 UPCSHIP, 252
Form Length, 70 UPS 11, 256
Ignore Sequence, 71 Command Format, BC412 Barcode, 110
Line Spacing, 71 Command parameters, 25
Lines, horizontal, 72 Command standards, IGP/PGL, 23
Lines, vertical, 73

371
Commands Data Field
Alphanumerics, 284 Code 93, 127
Corner, 281 Data Matrix, 142
Create Form Mode, 19, 281 EAN 13, 158
Execute Form Mode, 281 EAN 8, 153
Execute Forms, 21 FIM, 166
Hex Character Encoding, 71 Interleaved 2/5 (I-2/5), German I-2/5, and
Horizontal Line, 283 ITF-14, 171
laser, 367 Matrix, 177
line matrix, 364 Maxicode, 181
Normal mode, 17 MSI, 188
Plessey, 205 PDF-417, 193
PostBar, 215 Planet, 199
PTX_SETUP, 359 PostBar and Royal Mail (KIX), 214
Royal Mail, 215 POSTNET, 210
thermal, 365 Telepen, 219
Vertical Lines, 283 UCC/EAN-128, 228
Comments in command lines, 26 UPC-A, 237
Compressed print (density), 44 UPC-E, 243
Compression, 26 UPCSHIP, 251
CONFIG command, summary, 363 UPS 11, 256
Configuration, command codes, 45 Data fields for alphanumeric and incremental
Control characters, Maxicode, 185 data, 28
Control panel, configure IGP/PGL, 22 dynamic data, 28
Corner Command, 281 fixed data, 28
Corner errors, 321 incremental data fields, 28
Corners, command codes, 47 overlay data, 28
Create commands, example, 268 Data Field, BC412 Barcode, 110
Create errors, 324 Data Field, Codabar, 115
Create Form Command, 281 Data Matrix, 142
Create Form Mode, 18, 281 command format, 142
Create Form Mode commands, 19 Data Field, 142
Create Form mode, Paper selection and maximum example, 151
values, 341 Quiet Zone, 142
Create Logo Mode, 20 Readable Data, 142
Create, command codes, 49 special characters using SO, 146
Creating a Box and Corners, 281 symbol characteristics, 147
Creating a logo, 290 Debugging Programs, 317
D Delete command, 301
example, 301
Dark printing, 29 Delete form, 51
Data Bit 8, Accessing characters and character Delete logo, 51
sets, 307

372
Design, form, 292 Error codes, 317
Directory, 52 Errors
Directory command, 300 alpha, 322
example, 300 bar code, 328, 334
Duplicating Incremental Bar Code Fields, 265 box, 320
Duplicating Incremental Bar Codes, 265 corner, 321
Duplication, horizontal, 52 create, 324
Duplication, vertical, 54 execute, 325
Dynamic Alphanumeric and Bar Code Data, 274 font, 333
Dynamic Data horizontal line, 318
Bar Code Fields, 273 incremental fields, 331
Basic Design, 270 logo, 323
Dynamic Alphanumeric and Bar Code miscellaneous, 327, 330, 331, 332
Data, 274 multinational character set, 332
Dynamic Alphanumeric Fields, 274 reverse print, 330
Dynamic data, 28 vertical line, 319
Dynamic data, Alphanumeric Data, 22 Errors, solving, 302
Dynamic Data, example, 270 EVFU, 350
E channel assignment, 351
clearing memory, 354
EAN 13, 157 end load code, 352
Check Digit, 158 General programming information, 350
command format, 159 memory, clearing, 354
Data Field, 158 programming sequence See EVFU, 350
example, 162 start load code, 351
Number System Character, 158 EVFU example, 355
Quiet Zone, 158 Example Forms, 267
Readable Data, 158 Examples
Start/Center/Stop Codes, 158 EVFU, 355
EAN 8, 152 Royal Mail, 217
Check Digit, 153 Execute errors, 325
command format, 154 Execute Form Command, 281
Data Field, 153 Execute Form commands, 21
example, 156 Execute Form Mode, 20, 281
Quiet Zone, 153 Execute Form mode, 56
Readable Data, 153 Not User-Defined, 341
Start/Center/Stop Codes, 153 Not-defined, 342
structure, 152 User-defined, 342
Electronic Vertical Format Unit, 350 Execute Form mode, Paper selection and
Emulation switching, 55 maximum values, 341
End load code, 352 Execute form, dynamic alphanumeric data, 60
EVFU, 352 Execute form, dynamic bar code data, 61
End, command codes, 55

373
Execute form, dynamic logo, 62 H
Execute form, electronic vertical format unit, 59
Execute form, general format, 57 Height, BC412 Barcode, 113
Execute form, incremental dynamic data, 63 Hex Character Encoding Command, 71
Execute form, overlay data, 65 Horizontal Line Command, 283
Exericse, Logo, 288 Horizontal Line Errors, 318
Expanded and Compressed Character Print, IGP/ Horizontal line errors, 318
PGL Emulation features, 14 Horizontal lines, adding, 283

F I
FIM, 164 Ignore Sequence command, 71
Clear Zone, 166 IGP/PGL
command format, 166 Alphanumeric Data, 22
Data Field, 166 configure with control panel, 22
example, 168 Incremental Data, 22
Start/Stop Code, 166 modes of operation, 16
Fixed alphanumeric text, adding, 284 operation, 15
Fixed data, 28 IGP/PGL command standards, 23
Fixed data, Alphanumeric Data, 22 Character Position.Dot Position (CP.DP)
Font command, 66 format, 26
Font errors, 333 command parameters, 25
Font load command, 69 comments in command lines, 26
Form Design, 292 form name, 25
Form Layout, planning, 292 Inline commands, 24
page layout considerations, 292 line terminator, 24
Form Exercise, 280 numeric values, 25
Adding fixed alphanumeric text, 284 printable character, 24
Adding horizontal and vertical lines, 283 prompt, 25
Bar Code, adding, 286 semicolon, 23
Creating a Box and Corners, 281 spaces, 24
Form feeds, paper motion, 347 Special Function Control Code (SFCC), 23
Form length command, 70 storing data, 26
Form name, 25 uncompressed and packed bits
compression, 26
G
uppercase, 23
German I-2/5, command format, 172 IGP/PGL Emulation, 13
Grid error codes, 317
logo, 339 features, 13
standard, 337 IGP/PGL Emulation features
GuardBand, BC412 Barcode, 112 Automatic Increment/Decrement Capability, 14
Expanded and Compressed Character
Print, 14
IGP-100 Compatible, 14

374
International Symbol Set Mapping, 14 Line errors
Label Generation, 13 horizontal, 318
Logos, 14 vertical, 319
On-Line Form, 13 Line feeds, paper motion, 347
PGL Normal Control, 14 Line matrix commands, 364
Plessey Bar Code, 14 Line Spacing command, 71
Reversed Print, 14 Line terminator, 24
Rotated Alphanumerics, 14 Lines, horizontal command, 72
Selectable Bar Codes, 14 Lines, vertical command, 73
IGP-100 Compatible, IGP/PGL Emulation Listen command, 74
features, 14 Logo
Incremental Bar Code Dynamic Data Fields, 264 creating, 290
Incremental Bar Code Fields, 259 exericse, 288
Incrementing bar code data, 259 Logo call command, 75
Incremental Bar Code Fixed Data Fields, command Logo errors, 323
format, 262 Logo grid, 339
Incremental Data, 22 Logo mode, create command, 77
Incremental data fields, 28 Logos, IGP/PGL Emulation features, 14
Incremental dynamic data, supplying, 63 M
Incremental fields errors, 331
Incrementing bar code data, 259 Magnification specifications, 98
Inline commands, 24 Magnification, BC412 Barcode, 113
Interleaved 2/5 (I-2/5), German I-2/5, and ITF-14 Manual, about, 13
Check Digit, 171 Matrix, 176
Data Field, 171 Check Digit, 177
Quiet Zone, 171 command format, 177
Readable Data, 171 Data Field, 177
Start/Stop Codes, 171 example, 180
International character sets, 315 Quiet Zone, 177
International Symbol Set Mapping, IGP/PGL Readable Data, 177
Emulation features, 14 Start/Stop Codes, 177
ITF-14, command format, 172 Maxicode, 181
I-2/5 command format, 181
command format, 172 Control characters, 185
example, 175 Data Field, 181
example, 186
K
Readable Data, 181
KIX Format, PostBar and Royal Mail (KIX), 214 Miscellaneous errors, 327, 330, 331, 332
L Mode
Create Form, 281
Label Generation, IGP/PGL Emulation features, 13 Execute Form, 281
Laser commands, 367
Left margins, setting, 343

375
Modes of operation O
Create Form Mode, 18
Create Logo Mode, 20 OCR character sets, Multinational Character
Execute Form Mode, 20 Sets, 307
Normal mode, 16 On-Line Form, IGP/PGL Emulation features, 13
Quiet mode, 16 Operation of FILE_IO command, 363
Modes of operation, IGP/PGL, 16 Operation, IGP/PGL, 15
Modulo-10 Data Field Check Digit for SSCC-18 and Overlay data, 28
SCC-14, UCC/EAN-128, 229 Overlay data, Alphanumeric Data, 22
Modulo-103 Check Digit, UCC/EAN-128, 229 P
MSI, 187
Page layout considerations, 292
Check Digit, 188
Page number command, 80
command format, 188
Paper command, 81
Data Field, 188
Paper Instruction - Data Bit 8 command, 83
example, 191
Paper Instruction (PI) Enable/Disable command, 83
Quiet Zone, 188
Paper motion
Readable Data, 188
form feeds, 347
Start/Stop Code, 188
line feeds, 347
structure, 187
PI Line (Relative Line Slewing), 348
Multinational character set charts, 311
Paper selection and maximum value
Multinational character set errors, 332
setting left margins, 343
Multinational Character Sets, 305
setting top/bottom margins, 342
accessing characters and character sets, 307
Paper selection and maximum values, 341
Character address, 306
Create Form mode, 341
Character set selection command (ISET), 310
Execute Form mode, 341
character substitutions, 306
PCX Logo command, 84
International character sets, 315
PDF character sizes, 98
multinational character set charts, 311
PDF, BC412 Barcode, 113
OCR character sets, 307
PDF, PDF-417, 193
User-Defined set command (USET), 308
PDF-417, 192
N command format, 194
Non-platform specific commands, 360 Data Field, 193
Normal mode command, 80 example, 196
Normal mode, commands, 17 PDF, 193
Not User-Defined, Execute Form mode, 341 Quiet Zone, 193
Not-defined, Execute Form mode, 342 Security Level, 193
Number System Character Start/Stop Codes, 193
EAN 13, 158 structure, 192
UPC-A, 237 PGL Normal Control, IGP/PGL Emulation
UPC-E, 243 features, 14
Numeric Values, 25 PI Line (Relative Line Slewing), paper motion, 348
Planet, 197

376
Check Digit, 199 Quiet Zone
command format, 200 Code 128A, 128B, and 128C, 133
Data Field, 199 Code 93, 127
example, 202 Data Matrix, 142
Quiet Zone, 199 EAN 13, 158
Start/Stop Code, 199 EAN 8, 153
Plessey, 203 Interleaved 2/5 (I-2/5), German I-2/5, and
command format, 205 ITF-14, 171
example, 207 Matrix, 177
structure, 203 MSI, 188
Plessey Bar Code, IGP/PGL Emulation features, 14 PDF-417, 193
PostBar and Royal Mail Planet, 199
command format, 215 PostBar and Royal Mail (KIX), 214
example, 217 POSTNET, 210
PostBar and Royal Mail (KIX), 214 Telepen, 219
Check Digit, 214 UCC/EAN-128, 228
Data Field, 214 UPC-A, 237
KIX Format, 214 UPC-E, 243
Quiet Zone, 214 UPCSHIP, 251
Start/Stop Code, 214 UPS 11, 256
POSTNET, 208 Quiet Zone, Codabar, 115
Check Digit, 210 R
command format, 211
Data Field, 210 Readable Data
example, 213 Code 128A, 128B, and 128C, 133
Quiet Zone, 210 Code 93, 127
Start/Stop Code, 210 Data Matrix, 142
Power-Up character set selection, Accessing EAN 13, 158
characters and character sets, 307 EAN 8, 153
Print boundaries, 18 Interleaved 2/5 (I-2/5), German I-2/5, and
Print File command, 86 ITF-14, 171
Printable character, 24 Matrix, 177
Printronix_SETUP Option, overview, 359 Maxicode, 181
Program errors, solving, 302 MSI, 188
Prompt, 25 Telepen, 219
PTX_SETUP commands, 359 UCC/EAN-128, 229
non-platform specific, 360 UPC-A, 237
UPC-E, 243
Q
UPCSHIP, 251
Quiet command, 86 UPS 11, 256
Quiet mode, 16 Readable Data, Codabar, 115
Recall command, 87
Repeat, 87

377
Repeat command, 87 Start/Stop Codes
Reset command, 87 Code 128A, 128B, and 128C, 133
Reverse Print command, 88 Code 93, 127
Reverse print errors, 330 Interleaved 2/5 (I-2/5), German I-2/5, and
Reversed Print, IGP/PGL Emulation features, 14 ITF-14, 171
Rotated Alphanumerics, IGP/PGL Emulation Matrix, 177
features, 14 PDF-417, 193
Royal Mail Telepen, 219
command format, 215 UCC/EAN-128, 228
example, 217 UPC-E, 243
S UPCSHIP, 251
UPS 11, 256
SAVEDYN, 57 Start/Stop Codes, Codabar, 115
Scale command, 89 Storing data, 26
Security Level, PDF-417, 193 Summary, CONFIG command, 363
Select Format command, 90
T
Selectable Bar Codes, IGP/PGL Emulation
features, 14 Telepen, 218
Semicolon command, 23 Check Digit, 219
Setup command, 91 command format, 220
Solving program errors, 302 Data Field, 219
example, 302 example, 223
Spaces, 24 Quiet Zone, 219
Special Function Control Code Change, 91 Readable Data, 219
Special Function Control Code (SFCC), 23 Start/Stop Codes, 219
Special information, 13 structure, 218
Specifications, magnification, 98 Termination Code, BC412 Barcode, 110
Standard grid, 337 Thermal commands, 365
Start Code, BC412 Barcode, 110 TIFF Logo command, 92
Start load code, 351 Top/bottom margins, setting, 342
EVFU, 351 U
Start/Center/Stop Codes
EAN 13, 158 UCC/EAN-128, 224
EAN 8, 153 application identifiers, 225
UPC-A, 237 command format, 230
Start/Stop Code Data Field, 228
FIM, 166 example, 233
MSI, 188 Modulo-10 Data Field Check Digit for SSCC-18
Planet, 199 and SCC-14, 229
PostBar and Royal Mail (KIX), 214 Modulo-103 Check Digit, 229
POSTNET, 210 Quiet Zone, 228
Readable Data, 229
Start/Stop Codes, 228

378
Uncompressed and packed bits compression, 26 User-defined variable bar code ratios, 97
UPC-A, 236 User-defined, Execute Form mode, 342
Check Digit, 237 Using the Setup command, example, 270
command format, 238 V
Data Field, 237
example, 241 Variable bar code ratios, user-defined, 97
Number System Character, 237 Variable ratio, sample, 97
Quiet Zone, 237 Vertical line errors, 319
Readable Data, 237 Vertical Lines Command, 283
Start/Center/Stop Codes, 237 Vertical lines, adding, 283
UPC-E, 242 Vertical paper motion, introduction, 347
Check Digit, 243 W
Command format, 244
Warnings, 13
Data Field, 243
example, 249
Numer System Character, 243
Quiet Zone, 243
Readable Data, 243
Start/Stop Codes, 243
UPC-E0, 242
example, 249
structure, 242
UPCSHIP, 250
Check Digit, 251
command format, 252
Data Field, 251
example, 254
Quiet Zone, 251
Readable Data, 251
Start/Stop Codes, 251
structure, 250
Uppercase, 23
UPS 11, 255
Check Digit, 256
command format, 256
Data Field, 256
Quiet Zone, 256
Readable Data, 256
Start/Stop Codes, 256
structure, 255
User-Defined set command (USET), Multinational
Character Sets, 308

379
380
PRINTRONIX, INC.
14600 MYFORD ROAD
P.O. BOX 19559
IRVINE, CA 92623-9559
PHONE: (714) 368-2300
FAX: (714) 368-2600
CUSTOMER SOLUTIONS CENTER: (714) 368-2686

PRINTRONIX
NEDERLAND BV
P.O. BOX 163, NIEUWEWEG 283
NL-6600 AD WIJCHEN
THE NETHERLANDS
PHONE: (31) 24 6489489
FAX: (31) 24 6489499

PRINTRONIX SCHWEIZ GMBH


42 CHANGI SOUTH STREET 1
CHANGI SOUTH INDUSTRIAL ESTATE
SINGAPORE 486763
PHONE: (65) 6542-0110
FAX: (65) 6543-0220

VISIT OUR WEBSITE AT:


http://www.printronix.com

750929-001E

*750929-001*

You might also like