You are on page 1of 131

www.markem-imaje.

com
9, rue Gaspard Monge B.P. 110
26501 Bourg-ls-Valence Cedex
France
Tl. : +33 (0) 4 75 75 55 00
Fax : +33 (0) 4 75 82 98 10
the team to trust the team to trust
labelpoint
540340-G
programmers reference manual
C
M
J
CM
MJ
CJ
CMJ
N
540340-G.ai 24/11/2009 15:48:57
Pr ogr ammer s Ref er enc e Manual
Table of Contents





1 The Labelpoint Command Language 6
1.1 Introduction 6
1.2 Labelpoint Features 6
1.3 The Labelpoint Command Language 7
2 Label Layout Definition Commands 8
2.1 The Print Area 8
2.1.1 Configurable Coordinate System 8
2.1.2 Legacy Coordinate System 8
2.2 Field Syntax 11
2.2.1 Configurable Coordinate System 11
2.2.2 Legacy Coordinate System 11
2.3 Field Insertion Points 13
2.4 Building a Label Layout 15
2.5 Defining a Text Field 16
2.5.1 Scalable Text Field 16
2.5.2 The Text to be Printed 19
2.6 Defining a Barcode Field 24
2.6.1 Barcode Symbologies 25
2.6.2 Barcode Interpretation 28
2.6.3 Defining a 2D Barcode Field 29
2.6.4 2D Barcode Symbologies 30
2.6.5 Code 128 31
2.6.6 RSS 32
2.6.7 MaxiCode 33
2.6.8 Code PDF417 35
2.6.9 QR Code 36
2.7 Defining a Line/Box Field 37
2.8 Defining a Text Box Field 38
2.8.1 Text Box Field Dimensions 39
2.8.2 Hyphenation 39
2.9 Defining a Circle/Ellipse Field 40
2.10 Defining a Graphics Field 42
2.11 Variable Information in Text and Barcode Fields 44
2.11.1 Changing a Single Variable 44
2.11.2 Lock Variable 46
2.11.3 Clearing Variable Information 46
Pr ogr ammer s Ref er enc e Manual
Table of Contents




2.12 Clear Layout 47
2.13 Print Command 47
2.14 Triggered Printout 48
2.14.1 Compact, 2300 and Nova 48
2.14.2 2000 Series 48
3 Status Request Commands 49
3.1 Status Request 1 49
3. 2 Status Request 2 51
3.3 Status Request 3 53
3.4 Status Request 4 and 5 54
3.5 Status Request 7 55
3.6 Status Request 8 56
3.7 Status Request 16 58
3.8 Status Request 17 59
3.9 Status Request 100 60
4 Service Commands 62
4.1 Special Service Commands 66
4.2 Expression Engine Service Commands 67
5 Printer Settings 69
5.1 Printer Configuration 69
6 Dot Check 80
6.1 Barcode Displacement 80
7 Configuration Menu 81
7.1 HTML Version 81
7.2 Text Version 81
7.3 ASCII User Interface 81
7.3.1 Introduction 81
7.3.2 Command Keys 81
Pr ogr ammer s Ref er enc e Manual
Table of Contents




8 Document Commands 83
8.1 Document Start 83
8.2 Document End 83
8.3 Cutter Mode 84
8.4 Cutting Command 84
8.5 Label-taken Sensor (LTS) 84
9 Printer Connection 85
9.1 Local Printer 85
9.2 Network Printer 85
10 Printer File System 86
10.1 Configurable Storage Path 86
10.2 Macros 87
10.2.1 Loading a Macro 87
10.2.2 Deleting a Macro 87
10.2.3 Executing a Macro 87
10.2.4 Auto Macro 87
10.3 Graphics 88
10.3.1 Loading a Graphics File 88
10.3.2 Deleting a Graphics File 88
10.4 Fonts 89
10.4.1 Downloading a Font File 89
10.4.2 Deleting a Font File 90
11 Miscellaneous Commands 91
11.1 Counters 91
11.1.1 Initialising Counters 91
11.1.2 Retrieving Information About Counters 92
11.1.3 Printout 92
11.2 Paper Feed 93
11.2.1 Automatic Reverse Feed 93
11.2.2 Paper Feed on Command 93
11.3 Information 94
11.4 String Translation 95
11.5 Shift Codes 96
11.6 Match Code 98
Pr ogr ammer s Ref er enc e Manual
Table of Contents




11.7 Switch Date Offset 99
12 Flow Control 100
12.1 True Two-way Communication 100
12.2 ENQ - ACK/NAK 100
Appendix A Compressed Graphics 101
Appendix B IntelHex 105
Appendix C Intel Binary 107
Appendix D Raw Binary 108
Appendix E Code Pages 109
Appendix F Quick Reference Guide 119
Appendix G Bitmap Textfield 128
Index 129

Pr ogr ammer s Ref er enc e Manual
1. The Labelpoint Command Language




1.1 I nt r oduc t i on
The Markem-Imaje printer family features a simple, yet powerful command language: Labelpoint II
(LP II). It allows the printers to be controlled from most computers.
Text can be printed in any integer rotation in degrees (0 through 359). Barcodes can be printed in
0, 90, 180 or 270 degrees rotation. Other rotations would decrease the barcode quality and
readability.
Counters for consecutive numbering are available and an integral real-time clock allows labels to
be time-stamped at print time.
Labelpoint II uses only printable ASCII characters to allow commands to be easily manipulated in
the host computer. This also avoids problems with control characters, which some computer
systems reserve for internal use.

1.2 Label poi nt Feat ur es
Prints text, barcodes and matrix codes, lines, boxes, text boxes, circles/ellipses and graphics.
Contains character sets for all major European languages as well as support for UTF-8 to
transfer any Unicode character to the printer.
Supports most standard 1D and 2D barcodes.
Includes ten scalable fonts as standard (Unicode character set is used internally to be able to
use all Latin and Cyrillic characters).
Supports TCP/IP (LPD, RAW, TELNET).
Provides Terminal Server functionality (COM1 and/or COM2 connected to the network).
Provides an easy-to-use configuration menu, which is accessible through any of the COM,
Telnet or RAW ports as well as by using a common web browser.
Includes date and time symbols.
Includes ten onboard counters for consecutive numbering.
6
Pr ogr ammer s Ref er enc e Manual
1. The Labelpoint Command Language




1.3 The Label poi nt Command Language
Labelpoint consists of a number of commands for creating a label layout, configuring the printer,
checking the printer set-up, et cetera.
The printer receives characters and interprets them as either commands or data. A command
instructs the printer to perform an action, for example create a field in the label layout. Data can, for
example, be variable data that is to be included in the print-out, or it can be a sequence of
commands that are going to be stored in the printer file system.
The printer acts on incoming data on a line-by-line basis. Input data is buffered until the end-of-line
character is received. The default end-of-line character is CR (carriage return, ASCII 13
10
=0D
16
).
When an end-of-line character is received, the line of data received is interpreted. If a line begins
with the command character it is treated as a command.
A command line starts with an ! character (ASCII 33
10
=21
16
) , followed by a character specifying
the command type. Some commands take parameters.
Note: The command line must start with the ! character, otherwise the line will be interpreted as a
data line and may be discarded by the printer.

Examples:
To print one label, type:
!P1
To print 100 labels, type:
!P100
Some commands assume a default value if a parameter is omitted. The command to
print one label may be given as:
!P

Note that the command characters are case sensitive. For example Y24 changes the dispensing
feed while y24 sets a value for the label width. The printer will ignore commands that do not exist,
for example if the wrong case is used.

Note: All commands must be terminated by the end-of-line character (normally CR). The end-of-
line character will not be shown in the examples in this manual.
7
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.1 The Pr i nt Ar ea
2.1.1 Conf i gur abl e Coor di nat e Syst em
The configurable coordinate system offers a more powerful and exact way of positioning fields than
the deprecated coordinate system.
Spec i f y Coor di nat e Syst em
Specify the coordinate system unit by setting label parameter y22. Setting y22 implies that origin of
coordinates is reset to (0, 0) and the x-axis is reset to positive left, regardless of the previous
coordinate unit value. This is to enforce explicit setting of the coordinate mapping (see y23 below)
to be able to use a custom mapping.
!y22 <n>
Argument Description
0 mm coordinate system (default)
1 dot coordinate system
2 1/100 inch coordinate system
Spec i f y Ax i s Di r ec t i on and Or i gi n of Coor di nat es

8
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




Specify the x-axis direction and origin of coordinates position by setting label parameter y23. This
parameter takes the x and y direction as required arguments while origin positioning is optional.
!y23 <n> [x y]
Argument Description
0 X axis is positive towards center wall, Y axis positive towards print
direction (default)
1 X axis is positive from center wall, Y axis positive towards print
direction
2 X axis is positive towards center wall, Y axis positive in print direction
3 X axis is positive from center wall, Y axis positive in print direction
x x coordinate of origin (default 0)
y y coordinate of origin (default 0)

Note: the lower case y signifies a volatile parameter that will be reset to its defaults by the next !C
or printer restart.

In order to define a new origin of coordinates, both x and y have to be specified. X and y place the
origin of coordinates in the coordinate units specified with the first argument. If no position is
specified, (0, 0) is assumed.
9
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.1.2 Legac y Coor di nat e Syst em
Note: This coordinate system is deprecated in favor of the configurable coordinate system, see
section 2.1.1.
All items that are to be printed on a label must be defined with their position on the label. The
coordinate system is shown below:

The position of a field on the label is given as its baseline and position.
The baseline is the coordinate of the bottom of the field. For fields with up vector N or S, the
baseline is the Y coordinate; for fields with up vector E or W it is the X coordinate. For text fields
the baseline is at the base of non-descending characters, so that descending characters (for
example 'j', 'g', and 'y') will extend below the baseline. 'Above' and 'below' always refer to the up
vector of the field, and may thus be different physical directions.
The position parameter determines the position of the field in the direction perpendicular to the up
vector, sideways. It may be given as the position of the left end, the right end, or the center of the
field.
Note: All coordinates are given in 0,1 millimeter. The same applies for the length of the bars in a
code, and the height and width of a black box.
10
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.2 Fi el d Synt ax
This is a generic description of layout fields; see detailed description of field types for full syntax.
Please note that some arguments vary with field type.
2.2.1 Conf i gur abl e Coor di nat e Syst em
Syntax !F <t> <r> <x> <y> <i> <h> <w>

Argument Description
<t> Type, T =bitmap text, S =scalable font, B =box/line, C =
barcode/matrix code, G =graphics, A =text box, E =circle/ellipse
<r> Rotation in degrees, any integer in the range 0-359. 0 corresponds to
N and 90 corresponds to E. Specifying the rotation as an integer
means that the position is given as x and y instead of baseline and
position. Note that some fields only handle the rotations 0, 90, 180
and 270.
<x> X coordinate, given in the selected coordinate system and resolution
relative to an origin of coordinates that may have been specified
using y23.
<y> Y coordinate, given in the selected coordinate system and resolution
relative to an origin of coordinates that may have been specified
using y23.
<i> Insertion point type, see section 2.3 Field Insertion Points.
<h> Height, 0..<n>in current coordinate units.
Note: In text fields points is the only valid unit.
<w> Width, 0..<n>in current coordinate units.
Note: In text fields points is the only valid unit.

Example:
!F S 0 150 100 DL 14 14 94021 "TEXT TO BE PRINTED"

11
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.2.2 Legac y Coor di nat e Syst em
Syntax !F <t> <o> <b> <p> <a> <h> <w>

Argument Description
<t> Type, T =bitmap text, S =scalable font, B =box/line, C =
barcode/matrix code, G =graphics, A =text box, E =circle/ellipse
<o> Orientation, N =North, E =East, S =South, W =West
<b> Baseline, 0..<n>
<p> Position, 0..<n>
<a> Alignment, L =Left, C =Center, R =Right
<h> Height, 0..<n>
<w> Width, 0..<n>

Example:
!F S N 100 150 L 14 14 94021 "TEXT TO BE PRINTED"

12
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.3 Fi el d I nser t i on Poi nt s
Field insertion points provides better control of the layout than what is possible using the three
baseline alignments left, center and right. There are 24 insertion points represented by a two or
three character upper case identifier. There are 5 points that denote the vertical position and 3
points that denote the horizontal position of a field. These 15 field insertion points are denoted by
two-character identifiers composed of a concatenation of the respective vertical and horizontal
symbol.
Vertical Position
T Top
A Ascending
C Center
D Descending
B Bottom
Horizontal Position
L Left
C Center
R Right

Note: Field insertion points are rotation dependent. Top refers to the top of the data, or in the case
of text, to the top of the characters. If the text is rotated upside down, top is facing down.
Ascending and descending are represented by the part of the text that extends above or below a
certain line. For text fields this is font specific and for barcode fields it depends on the location of
any barcode interpretation string. If an A or D insertion point is specified for a field other than text
or barcode fields, it is interpreted as T or B instead.
To place fields in a non rotation dependent manner, there are 9 more insertion points. They are
called frame insertion points and are used to place a field relative to the print direction. Frame
insertion points are made up by three characters where the first character F indicates that it is a
frame point and the two following points are made up of a vertical and horizontal component as
described above.

13
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands





There are no ascending or descending insertion points in a frame and therefore it only has three
vertical points. Also note that the graphics fields above does not show any A or D points as they do
not apply to this type of field.
The true center point of any field always overlaps with the true center point for its frame making it
redundant.
Barcode fields that have interpretation turned on can use the A and D verticals for positioning. If
the interpretation is shown below the barcode (!Y42 1) the BL point will be the bottom left point of
the interpretation while the DL point will be the bottom left point of the bars. In this case AL is the
same as TL.
If the interpretation is displayed above the code (!Y42 2), the AL point is the upper left point of the
bars while the TR point is the upper left point of the interpretation. In this case DL is the same as
BL. The picture below shows two north oriented barcodes with interpretation below (left) and above
(right) the barcode.

14
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.4 Bui l di ng a Label Layout
The label layout defines the position and other attributes, such as size, font and barcode
symbology, of each item to be printed. When the print command is issued, the resulting print
picture is printed. The print format can be changed at any time.
The text to be printed can be fixed or variable. Fixed text is a part of the layout and does not
change until the layout is changed. Variable text can be entered for each printout, without changing
the layout.
When a label layout with fixed data has been loaded in the printer, the variable data (text that
changes for each printout) is sent, followed by the print command to print one or more labels.
The !F command defines a layout field. A layout field is one of the following:
one or more lines of text
a barcode or matrix code
a line, box or frame
a text box
a circle or ellipse
graphics
When an !F command is received, the printer adds the new field to the label layout. A label layout
is built by defining all fields to be printed. A text, barcode, matrix code or graphics field may include
fixed or variable text, or both.
The shoe example:
!C
!Y24 60
!Y35 10
!Y42 1
!F S N 100 100 L 14 14 94030 "TESTLABEL"
!F S N 200 100 L 10 10 94021 "PRICE: 65.00"
!F S N 250 100 L 10 10 94021 "SIZE: 42"
!F C N 450 100 L 150 2 41 "65.00"
!F B N 120 90 L 80 240
!P

When the layout above is sent to the printer, the result will be a 5 x 4 cm label with a black box at
the top, the size and price of the shoe, and a barcode at the bottom.

See section Print Example at the end of this document for further explanation of this example.
15
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.5 Def i ni ng a Tex t Fi el d
There are two different types of text fields: scalable and bitmap fields. Bitmap text fields are
deprecated and are therefore not recommended for new designs but are kept in this manual for
backward compatibility (see Appendix G: Bitmap Text field for further information).
Scalable text fields can be rotated 1 to 359 degrees. Bitmap text can only be rotated 90, 180 and
270 degrees.
2.5.1 Sc al abl e Tex t Fi el d
The benefit of using scalable fonts is the possibility to use the highest possible resolution for the
letters, independent of the defined size. This is possible since the fonts appearance is calculated
at run time.
Syntax I !F T <r> <x> <y> <i> <h> <s> <f> [wa] <text>
or
!F T <u> <b> <p> <a> <h> <s> <f> [wa] <text>

Syntax II !F S <r> <x> <y> <i> <h> <w> <f> [s] <text>
or
!F S <u> <b> <p> <a> <h> <w> <f> [s] <text>

Syntax III !F S <r> <x> <y> <i> <h> <w> <n> [s] <text>
or
!F S <u> <b> <p> <a> <h> <w> <n> [s] <text>
Note: Parameters enclosed in <>are required and parameters enclosed in [] are optional.
The parameters have the following meanings:
<r> Rotation in degrees, any integer in the range 0-359. 0 corresponds to N and 90 corresponds to
E. Specifying the rotation as an integer means that the position is given as x and y instead of
baseline and position.
<x> X coordinate, given in the selected coordinate system and resolution relative to an origin of
coordinates that may have been specified using y23
<y> Y coordinate, given in the selected coordinate system and resolution relative to an origin of
coordinates that may have been specified using y23
<i> Insertion point type. The alignment relative to the position according to the description in
section 2.3 Field Insertion Points.
<u> Defines the direction of printing as the up direction of the printed characters. One upper-case
character (N, E, S, or W).
<b> The baseline of the field, in coordinate system units (default 0,1mm).
<p> The position, in coordinate system units (default 0,1mm).
<a> The alignment relative to the fields baseline. One upper-case character.
L =left end of the baseline aligned at p.
R =right end of the baseline aligned at p.
C =the fields baseline is centered around p.
<h> The font height, in points (there are 72 points on an inch).
16
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




<w> The font width in points (see above). To get normal character width, set parameter w to the
same value as parameter h.
<f> The font number. See tables below.
<n> The font name as it appears in the printers file system or on a connected Compact Flash card,
for example: "ARIAL". Note that the font needs to be located in a fonts directory.
<s> Inter-character spacing in 0,1 points. (Optional in syntax II and III)
<wa> Width adjustment, in percent. Valid values are 50 (%) to 200 (%).
To get normal character width, set parameter wa to 100.
This parameter is only used in syntax I. (Optional)
<text> Specifies the text to be printed. The text must be enclosed in double quotes (").

Labelpoint uses Monotype Imagings Universal Font Scaling Technologyto generate scalable
font characters. Fonts are stored in either Agfa MicroType format or TrueType format.
There are ten fonts included in the printer. The printer also emulates a number of italic font styles
for sans serif fonts.
PCL typeface name PCL typeface number
Univers Medium
1
94021
Univers Italic (emulated)
1
94022
Univers Bold
1
94023
Univers Bold Italic (emulated)
1
94024
Univers Condensed Medium
2
94029
Univers Condensed Italic (emulated)
2
94039
Univers Condensed Bold
2
94030
Univers Condensed Bold Italic (emulated)
2
94040
CG Times
1
92500
CG Times Italic
1
92501
CG Times Bold
1
92504
CG Times Bold Italic
1
92505
Letter Gothic Bold
2
93779
Letter Gothic Bold Italic (emulated)
2
93780
Coronet (script)
2
90249


1
Latin 1, 2, 5, 6, Greek and Cyrillic characters available
2
Latin 1, 2, 5 and 6 characters available
17
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




For faster printouts from MS-Windows systems, the Arial fonts and the Times New Roman fonts
are also emulated.
PCL typeface name PCL typeface number
Arial (emulated) 24459
Arial Italic (emulated) 24460
Arial Bold (emulated) 24461
Arial Bold Italic (emulated) 24462
Times New Roman (emulated) 24455
Times New Roman Italic (emulated) 24456
Times New Roman Bold (emulated) 24457
Times New Roman Bold Italic (emulated) 24458

18
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.5.2 The Tex t t o be Pr i nt ed
The text parameter can contain both fixed text and references to variable information that changes
after each print cycle.
Fi x ed Tex t
Fixed text is entered with the keyboard with some exceptions.
The characters %, and \ are used for commands. In order to print these characters, they must
therefore be entered twice.
To specify characters not available from the keyboard, use either a national character escape
sequence \x or a Unicode escape sequence \u.
Examples:
To print , type the sequence \xc5 (for code page 1252)
To print the Euro symbol , type the sequence \u20ac.
Var i abl e I nf or mat i on
A variable text reference has the form %<n>V, where n is the number of the variable.
Count er s
A counter reference has the form %<n>C where n is the number of the counter.
Dat e and Ti me
Date and time can be retrieved from the internal real-time clock. The date and time format is
programmed by combining the codes below:
%H Expands to the hour count (one or two digits) (24-hour clock).
%h Expands to the hour count (one or two digits) (12-hour clock).
%M Expands to the minute count (two digits).
%S Expands to the seconds count (two digits).
%J Expands to "AM" or "PM" depending on the hours.
%j Expands to "a.m." or "p.m." depending on the hours.
%Y Expands to the year (two digits).
%y Expands to the year (four digits).
%Xy Expands to the year (one digit).
%N Expands to the month (two digits).
%D Expands to the day of the month (two digits).
%K J ulian date (three digits).
%W Week of the year (two digits).
%XA Month (one character, A to L).
%XD Month, three characters, Swedish.
19
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands





%XG Month, three characters, English.
%XH Month, three characters, Italian.
%XU Month, all characters, user defined.
%Xd Month, all character, Swedish.
%Xg Month, all characters, English.
%XW Weekday (one digit).
%xG Weekday, three characters, English.
%xD Weekday, three characters, Swedish.
%xH Weekday, three characters, Italian.
%xg Weekday, all characters, English.
%xd Weekday, all characters, Swedish.
%xh Weekday, all characters, Italian
%xU Weekday, all characters, user defined.

The date symbols can be defined with an offset for best-before dates. The offset value is inserted
between the % character and the date symbol. The offset value can be either in days or in
months:
Best -bef or e Dat e
Todays date in the examples below is assumed to be the 31 of J anuary 2008, if nothing else is
specified.
Input Output
%d10D/%d10N/%d10y 10/02/2008 (ten days best-before date)
%m1y-%m1N 2008-02 (one month best-before date)

The offset value may be a variable. If variable one is 30 and variable two is 12, then the following
example will give the result:
Input Output
%d%1VD/%d%1VN/%d%1Vy 02/03/2008 (30 days best-before date)
%m%2Vy-%m%2VN 2009-01 (12 months best-before date)

20
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




It is possible to use the same best-before date, even if the actual date changes, and only update it
on a monthly basis. This is accomplished by the use of parameter 185, which specifies which day
in a month to update the best-before date. The syntax of the label data does not need to be
changed. See the following example where parameter 185 is set to 15:
Input Output
%d10D/%d10N/%d10y 25/01/2008 (calculated from the 15
th
of J anuary even though
todays date is 31
st
of J anuary)

When todays date reaches the 15
th
of February the output would be 25/02/2008, until 15
th
of
March where it would be 25/03/2008 and so on.
Another feature that can be automated is month truncation. If the calculated best-before date
exceeds a certain day in the calculated month, the resulting best-before date will be estimated to
the first of next month. The truncation day is specified by setting parameter 186. See the following
example where parameter 186 is set to 20:
Input Output
%d10D/%d10N/%d10y 01/02/2008

It is possible to set the behavior of J ulian date for 29
th
of J anuary. This function is enabled with an
XCL command. The days will be counted as if it was not leap year and 29
th
of J anuary will get
J ulian date 366. This is the default behavior but it can be modified with an XCL command.
Examples:
!!system.parameter.julianleapdaychange!1 !/Enable the leapday change behavior.
!!system.parameter.julianleapdayday!366 !/ Specify which day that 29
th
of
February is going to be replaced by.

Note: Earlier versions of Labelpoint did not support best-before dates, week numbers, J ulian date
and week day. Some programs, like Viewpoint, used a similar syntax internally, which was
converted to static text before sent to the printer.
Chec k Di gi t s
Three different checksum types can be inserted in the text field, EAN/UPC, Code39 and UPU. For
usage, see table below:
%Z EAN/UPC checksum. If the characters %Z are inserted in the text, they will be replaced by
a 3:1 weighted modulo-10 check digit.
%zC Code39 checksum. If the characters %zC are inserted in the text, they will be replaced by
weighted modulo-43 check digit, which is calculated on the preceding code39 characters.
%zP UPU checksum. If the characters %zP are inserted in the text, they will be replaced by
specially weighted modulo-11 check digit, which is calculated on the preceding 8 digits. If
this checksum is specified without a sufficient number of preceding digits, a #sign will be
printed instead.
Li ne Br eak s
The text to print may include line breaks (carriage return or line feed characters) which generate a
new field below the previous one. However, a text box field is the best way to define an area on the
label where text can be automatically word wrapped, see section 2.8 Defining a Text Box Field.
21
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




Example:
!F S N 100 100 L 12 12 94021 MARKEM-IMAJE
9, rue Gaspard Monge B. P. 110
26501 Bourg- l s- Val ence CedexFrance

22
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




Rever se Vi deo
Text can be printed in reverse video. This means that the text will be printed in white on a black
background. The black background square will extend half a character at the sides of the text and
to the maximum ascender and descender of the font.
The command to enable/disable reverse video mode is !Y162 <n>, where n is set to 1 to enable
and 0 to disable. To change the size of the background square n can be set to a value between 2
and 999.
Regular text Reverse video

Example:
!C
!F S N 100 100 L 24 24 92500 Normal Video
!Y162 1 // Turn on reverse video mode
!F S N 200 100 L 24 24 92500 Reverse Video
!Y162 200 // Turn on reverse video mode and set background // square to 200%
!F S N 400 100 L 24 24 92500 Expanded Reverse Video
!Y162 0 // Turn off reverse video mode
!P

23
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.6 Def i ni ng a Bar c ode Fi el d
This section describes how to create and select barcodes.
Syntax !F C <r> <x> <y> <i> <h> <w> <s> [d] <text>
or
!F C <u> <b> <p> <a> <h> <w> <s> [d] <text>

The parameters have the following meaning:
<r> Rotation in degrees, any integer in the range 0-359. 0 corresponds to N and 90 corresponds to
E. Specifying the rotation as an integer means that the position is given as x and y instead of
baseline and position.
<x> X coordinate, given in the selected coordinate system and resolution relative to an origin of
coordinates that may have been specified using y23
<y> Y coordinate, given in the selected coordinate system and resolution relative to an origin of
coordinates that may have been specified using y23
<i> Insertion point type. The alignment relative to the position according to the description in
section 2.3 Field Insertion Points.
<u> Defines the direction of printing as the up direction of the printed character. One upper-case
character (N, E, S, or W).
<b> The baseline of the field in current coordinate units.
<p> The position in current coordinate units.
<a> The alignment relative to the position. One upper-case character.
L =left end of the field aligned at p.
R =right end of the field aligned at p.
C =the field is centered around p.
<h> The height of the bars of the code in current coordinate units.
<w> The width expansion of the bars.
<s> The barcode symbology to be used. This parameter is a number according to table 1.
[d] Optional parameter which specifies the maximum allowed displacement in east-west direction
when defining a north or south oriented barcode field. The displacement is specified in current
coordinate system units and controls how far the barcode may be moved if Dot check is
available and it has found print head dots with out of range resistance. See section 6 Dot
Check for further information.
<text> Specifies the text to be printed. See section 2.5 Defining a text field for further information.

To set a global Dot check displacement value, see parameter Y60. This value applies to all
north/south/0/180 barcodes that do not have an explicit value set for this using the optional [d]
parameter. When a global displacement is in effect, it is possible to set a certain fields [d]
parameter to 0 to prevent movement of that particular barcode.
Note: Barcodes can only be printed in 0, 90, 180 or 270 degrees rotation. Other rotations would
decrease the barcode quality and readability.

24
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.6.1 Bar c ode Symbol ogi es
Labelpoint
barcode
number
Barcode symbology Barcode type, information
1
2
3
4
5
6
7
2 of 5 Interleaved 2:1
2 of 5 Interleaved 3:1
2 of 5 Interleaved 5:2
2 of 5 Interleaved 8:3
2 of 5 Interleaved 13:5
2 of 5 Interleaved 11:4
2 of 5 Interleaved 7:3

This is a numeric code with variable length. If required,
insert a check digit with the %Z command. The code
must contain an even number of digits. The printer will
therefore insert a leading 0 if necessary.
If the 2:1 ratio is used, a minimum width expansion of 4 is
required.
11
12
13
14
15
16
17

Code 39 - 2:1
Code 39 - 3:1
Code 39 - 5:2
Code 39 - 8:3
Code 39 - 13:5
Code 39 - 11:4
Code 39 - 7:3
This is an alphanumeric code with variable length. If
required, insert a check digit with the %zC command
(Code39 modulo 43 checksum) or the %Z command
(EAN/UPC modulo 10 checksum).
21
22
23
24
25
26
27
USS Codabar 2:1
USS Codabar 3:1
USS Codabar 5:2
USS Codabar 8:3
USS Codabar 13:5
USS Codabar 11:4
USS Codabar 7:3
This is a numeric code with variable length. The start and
stop characters (A, B, C or D) must be included in the
input data.
31 UPC-A This is a numeric code that requires 11 digits of input
data. The printer appends the check digit.
An EAN/UPC extension field can be appended by adding
2 or 5 digits to the input data.
32 EAN 13 This is a numeric code that requires 12 digits of input
data. The printer appends the check digit.
An EAN/UPC extension field can be appended by adding
2 or 5 digits to the input data.
33 EAN 8 This is a numeric code that requires 7 digits of input data.
The printer appends the check digit.
25
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




34 UPC-E This is a numeric code that requires 6 digits of input data.
The printer appends the check digit.
35 EAN/UPC extension This is a numeric code that requires 2 or 5 digits of input
data.
This code be inserted with either a EAN/UPC extension
barcode field, or by adding 2 or 5 digits to a EAN 13 or
UPC-A barcode field.
36 GTIN14 (EAN 14) GTIN-14 is not a real type of barcode symbology. A
GTIN-14 number may be represented by ITF or GS1-128.
41 Code 128 All 128 ASCII characters plus control characters can be
encoded. The control characters are explained further in -
Code 128 function codes -. Variable length.
43 EAN 128 The same as Code 128, except that the printer inserts a
FNC1 as the first character. This is unique for the EAN
128 code.
(, ) and space characters are filtered in the barcode, but
printed in the human readable text.
51
52
53
54
55
56
57
ITF 14 2:1
ITF 14 3:1
ITF 14 5:2
ITF 14 8:3
ITF 14 13:5
ITF 14 11:4
ITF 14 7:3
This is a numeric code with fixed length. It requires 13
digits of input data. The printer appends the check digit. A
frame is printed around the barcode.
The nominal wide-to-narrow ratio for ITF 14 is 5:2 and the
nominal narrow bar width is 1,016 mm. At 8 dots/mm, the
width expansion for ITF 14 5:2 should then be set to 4.
At 12 dots/mm it should be set to 6. The nominal height is
41,4 mm including the frame.
64 RSS-14
RSS-14 Truncated
This is a numeric code which encodes up to 14 digits of
numerical data. By selecting height expansion values to
appropriate values, RSS-14 and RSS-14 Truncated are
used respectively. See section 2.6.6 RSS for appropriate
values to distinguish between the two codes.
67 RSS Limited This is a numeric code which encodes up to 14 digits of
numerical data. See section 2.6.6 RSS for further
information.
68 RSS Expanded All 128 ASCII characters plus the FNC1 control character
can be encoded. It encodes up to 74 numeric or 41
alphabetic characters. Variable length. See section 2.6.6
RSS for further information. (, ) and space characters are
filtered in the barcode, but printed in the human readable
text.
26
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




71
72
73
74
75
76
77
Code 2 of 5 2:1
Code 2 of 5 3:1
Code 2 of 5 5:2
Code 2 of 5 8:3
Code 2 of 5 13:5
Code 2 of 5 11:4
Code 2 of 5 7:3
This is a numeric code with variable length. Old version
of Interleaved 2 of 5. Only the bars carry information. If
required, insert a check digit with the %Z command.
If the 2:1 ratio is used, a minimum width expansion of 4 is
required.

The "2:1", "3:1", notation in the table defines the width ratio of the wide and narrow bar, in dots.
The width of all bars and spaces can be doubled, tripled and so on, by setting the <width>
parameter in the field command to 2, 3, etc.
Note: Avoid using a width value of 1 when using 2:1 or 3:1 ratios. The resulting bars will be too thin
for most codes.
27
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.6.2 Bar c ode I nt er pr et at i on
The printer will print a human-readable text line if it has been configured to do so. This can be done
individually for each barcode in a label layout by modifying parameter 42 (see section 5.1 Printer
Configuration) between each barcode declaration in the label file. The factory default behavior is to
place the human readable below the code but it can optionally be displayed above the code or
omitted completely. The interpretation setting affects all subsequent barcodes until it is explicitly
changed again.

Example:
!/ Show a barcode without a human readable
!Y42 0
!F C S 50 800 L 100 3 1 %1V
!/ Show a barcode with a human readable string below the code
!Y42 1
!F C S 200 800 L 100 3 33 %1V
!/ Show a barcode with a human readable string above the code
!Y42 2
!F C S 350 800 L 100 3 33 %1V

28
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.6.3 Def i ni ng a 2D Bar c ode Fi el d
A two-dimensional (2D) code is normally a matrix code or a stacked barcode. Labelpoint supports
a number of 2D codes.
Syntax !F C <r> <x> <y> <i> <h> <w> <s> [o] <text>
or
!F C <u> <b> <p> <a> <h> <w> <s> [o] <text>

Note: Parameters enclosed in <>are required and parameters enclosed in [ ] are optional.

The parameters have the following meaning:
<r> Rotation in degrees, any integer in the range 0-359. 0 corresponds to N and 90 corresponds to
E. Specifying the rotation as an integer means that the position is given as x and y instead of
baseline and position.
<x> X coordinate, given in the selected coordinate system and resolution relative to an origin of
coordinates that may have been specified using y23
<y> Y coordinate, given in the selected coordinate system and resolution relative to an origin of
coordinates that may have been specified using y23
<i> Insertion point type. The alignment relative to the position according to the description in section
2.3 Field Insertion Points.
<u> Defines the direction of printing as the "up" direction of the printed character. One upper-case
character (N, E, S, or W).
<b> The baseline of the field in current coordinate units.
<p> The position of the field in current coordinate units.
<a> The alignment relative to the position. One upper-case character.
L =left end of the field aligned at p.
R =right end of the field aligned at p.
C =the field is centered around p.
<h> The height of the bars of the code in 0,1 mm, or height expansion of the pixels, 1 16.
<w> The width of the bars of the code in 0,1 mm, or width expansion of the pixels, 1 16.
<s> The barcode symbology to be used. This parameter is a number according to table 2.
[o] Optional parameter with different function depending on the code symbology:
For Royal Mail 4-State Customer Code and the KIX code:
Width adjustment. See section 2.6.4 2D barcode Symbologies. A value of 50 % to 200 % is
allowed. 100 % is the default and means that the bar width and space widths are the same.
For MaxiCode:
An optional two digit number used to define structured appends, where the first digit specifies
the symbol number, and the second digit specifies the total number of symbols.
<text> Specifies the text to be printed. See section 2.5 Defining a text field.

29
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.6.4 2D Bar c ode Symbol ogi es
61 PDF417 Stacked barcode. Arbitrary binary data, variable length. For further
information, see section 2.6.8 Code PDF417.
81 USD-5 dot code Matrix code. Numeric data, variable length. 5 to 20 digits. The printer
appends the check digit. The USD-5 code always has the same size,
therefore <h>and <w>should be set to 1.
83 LEB code Stacked barcode. Alpha-numeric code, variable length. <w>is the
expansion factor. <w>=1 means a dot width of 0.25 mm. <h>is not
currently used and should be set to the same value as <w>.
91 Royal Mail 4-State
Customer Code
(RM4SCC)
Stacked barcode. The character set includes numeric characters and
upper-case (A-Z) characters. Start, stop and checksum characters are
automatically generated.
The height (<h>) may vary from 4.22 mm to 5.84 mm. <w>is the width,
including both bar and space. 20 - 24 bars per 25.4 mm are allowed. The
bar width may vary from 0.38 mm to 0.63 mm.
Example:
!F C N 100 100 L 50 12 91 1234567
will give a 5 mm high code with 0.60 mm bar width and with 21 bars in
25.4 mm.
92 KIX barcode

The same as Royal Mail 4-State code, except that no start, stop or
checksum characters are generated.
101 QR Code, Model 1 Matrix code. Arbitrary binary data, variable length. For further information,
see section 2.6.9 QR Code. Model 1 is included for backward
compatibility reasons. All new applications should use Model 2.
102 QR Code, Model 2 Matrix code. Arbitrary binary data, variable length. For further information,
see section 2.6.9 QR Code. New version of the QR Code. Should be
used in new applications.
121
122
123
124
MaxiCode mode 2
MaxiCode mode 3
MaxiCode mode 4
MaxiCode mode 5
Matrix code developed by UPS (United Parcel Service) which can encode
about 100 characters of data in an area of 28x27 mm. Modes 2 and 3
are optimized for encoding postal address information. Mode 4 is used for
encoding arbitrary data. Mode 5 employs enhanced error correction.
131 Data matrix Matrix code. Arbitrary binary data. A maximum of 3116 numeric, 2335
alphanumeric characters or 1556 bytes binary data can be coded.
30
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.6.5 Code 128
Code 128 encodes the full ASCII character set, plus four special non-ASCII characters (function
codes) called FNC1, FNC2, FNC3, and FNC4. ASCII control characters and function codes must
be sent to the printer using escape sequences. An escape sequence consists of the characters
"??" followed by a third character.
To print a function code in the barcode send "??1" for FNC1, "??2" for FNC2, and so on. To print
an ASCII control character (ASCII codes below 32
10
) send "??" followed by the alphabetic
character corresponding to the desired control character. Any upper or lower case character in the
ASCII range 40
16
to 7E
16
(64
10
to 127
10
) will be recognized.
Example:
"??J" or "??j" is interpreted as the line feed character.

"??[" or "??{" is interpreted as the ESC character (ASCII 27 =1B
16
). The sequence "???" yields a
single '?' in the code. Escape sequences that do not fit any of the above alternatives are ignored.
The example below shows the commands to define two barcodes. The FNC2 (Message Append)
function character is included in the first code. The data for the second code is terminated with a
carriage return character. (FNC2 instructs the reader to concatenate the present code with the next
code scanned and transmit the data from both codes in one message.)
Example:
!F C S 400 1000 L 100 2 41 "??2Markem-Imaje"
!F C S 200 1000 L 100 2 41 "Printer??M"
31
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.6.6 RSS
The RSS, Reduced Space Symbology, family of symbols is used for space-constrained
applications. Currently supported variations include RSS-14, RSS-14 Truncated, RSS Limited and
RSS Expanded. Accompanying 2D Composite Components are not supported. Note that the
settings for width/height ratio of the RSS barcodes will differ between 200 dpi and 300 dpi layouts.
RSS-14
RSS-14 is a linear symbology that supports omni-directional scanning. It encodes full 14-digit
EAN/UCC Item Identification. RSS-14 is dimensioned as 96X wide by 33X high. X equals "X"
dimension or narrow bar width. The check-digit is added by the printer.
Example:
!F C S 200 1000 L 200 4 64 "1541215000015"
RSS-14 Tr unc at ed
This variant of RSS is identical to RSS-14 but allows truncation of the height to 13X. The normal
RSS-14 symbol has a height of 33X. X equals "X" dimension or narrow bar width. The check-digit
is added by the printer.
Example:
!F C S 200 1000 L 80 4 64 "1541215000015"
RSS Li mi t ed
RSS Limited is a linear symbology that encodes the same data as defined for RSS-14. The
encoding process is though different and limits the values assigned for Indicator digits to 1 or 0.
The result is an RSS code that can be printed very small. RSS Limited is dimensioned as 71X wide
by 10X high. X equals "X" dimension or narrow bar width. X equals "X" dimension or narrow bar
width. The check-digit is added by the printer.
Example:
!F C S 200 1000 L 50 4 67 "1541215000015"
RSS Ex panded
RSS Expanded is a variable length, linear symbology that is encoded differently than RSS-14. This
symbology allows up to 74 numeric or 41 alphabetic characters. The FNC1 EAN/UCC Function
Character is also supported by entering #. Apart from encoding EAN/UCC Item Identification,
RSS Expanded also encodes all EAN/UCC Application Identifier Element Strings. The width
dimension is variable.
Example:
!F C S 200 1000 L 100 4 68 "1045566#17040301"
32
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.6.7 Max i Code
MaxiCode is a two-dimensional symbology, built up by an array of hexagons surrounding a central
recognition pattern (bulls-eye). Reed-Solomon error correction is used to ensure integrity of the
encoded data.
St r uc t ur ed Car r i er Message
The primary message in modes 2 and 3 contains the following formatted data: Ship to Postal
Code, Ship to Country Code ISO 3166 3-digit code, Class of Service.
Example:
!F C S 100 1000 L 1 1 122 "[)>\x1e Message Header
01\x1d96 Transportation Data Format Header
SE41755\x1d Postal Code
752\x1d Country Code
001\x1d Class of Service
1Z12345677\x1d Tracking Number
UPSN\x1d Standard Carrier Alpha Code
1234556\x1d UPS Account Number
089\x1d Julian Day of Collection
1234\x1d Shipment ID Number
1/1\x1d Package n/x
10\x1d Package Weight
Y\x1d Address Validation
GTAVERKSGATAN 6\x1d Ship To Street Address
GTEBORG\x1d Ship To City
N/A\x1e Ship To State
\x04" End of Transmission
Further information can be retrieved from http://www.maxicode.com/maxicode/MaxicodeGuide.html
Modes
Mode 2 and 3: Structured Carrier Message The first 20 code words encodes the Structured
Carrier Message. Use mode 2 when the postal code is numeric and mode 3 when the postal code
is alphanumeric.
Example, a mode 2 and mode 3 MaxiCode:
!F C S 100 1000 L 1 1 121 "[)>\x1e01\x1d9641764\x1d752\x1d001\x1e\x04"
!F C S 400 1000 L 1 1 122 "[)>\x1e01\x1d96SE41764\x1d752\x1d001\x1e\x04"

Mode 4: Standard Symbol The symbol provides 93 6-bit codeword for data encoding.
Example:
!F C S 100 1000 L 1 1 123 "MaxiCode Mode 4"

Mode 5: Enhanced Error Correction The symbol provides 77 6-bit code words for data encoding.
Example:
!F C S 100 1000 L 1 1 124 "MaxiCode Mode 5"

33
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




Esc ape Sequenc es
Non-writable characters can be sent with the standard Labelpoint escape sequence \x<hh>. If
either ASCII 0A hex or ASCII 0D hex is a part of the data stream, use the \0a or \0d style escape
sequence. Otherwise they are treated as line breaks and removed from the data stream.
Dat a enc odi ng
The MaxiCode encodes data in six-bit code words. Therefore, in order to encode the full ASCII set,
shift symbols must be used to switch between different character sets. This means that fewer
symbols can be used to encode the real data. This must be considered so that data is not
truncated.
If the data consist of more than nine consecutive numbers, they are compacted into six code
words. This means that for a mode 4 symbol, a maximum of 138 digits can be encoded.
St r uc t ur ed Append
It is possible to connect several MaxiCode symbols in order to encode larger quantities of data
through the use of structured append. To specify that a symbol is part of a structured append, use
the [o] parameter. The first digit specifies the symbol number, and the second digit specifies the
total number of symbols. Maximum eight symbols can be connected.
Example:
!F C S 100 1000 L 1 1 123 12 "MaxiCode Mode 4 Symbol 1 of 2"

34
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.6.8 Code PDF417
PDF417 is a two-dimensional barcode with built-in security. A PDF417 symbol can contain
arbitrary binary data. The following rules must be followed when entering data for a PDF417 code:
1. Control characters (ASCII 00 - 1F hex and 7F hex) must be sent as escape sequences.
2. The double quote " (ASCII 22 hex) is a terminator for the input data and must be sent as an
escape sequence if it is going to be encoded in the symbol.
3. The back slash \ (ASCII 5C hex) is an escape character and must be sent as an escape
sequence if it is going to be encoded in the symbol.
All other characters can be sent as ordinary data.
Any character can be sent as an escape sequence. An escape sequence consists of the escape
character, followed by a two-digit hexadecimal value. The escape character is \ (ASCII 5C hex).
For example, to encode a CR. (carriage return, ASCII 0D hex) in the code, send the escape
sequence \0D.
The escape character (\) and the double quote (") must be sent as escape sequences if they are
going to be encoded (\5C and \22).
The data to be printed must be enclosed within double quotes ("). The lines of data may be
maximum 256 characters long. A CR. or a CR. LF must be sent to break the lines. (This does not
affect the data in the code, since the line breaks limit the line length.)
To encode the string
Markem-Imaje prints
PDF417
the following command could be sent to the printer:
Example:
!F C N 400 200 L 6 2 61 "Markem-Imaje prints\0DPDF417\0D"

To improve readability when looking at for example program listings, it could also be sent as
follows:
!F C N 400 200 L 6 2 61 "
Markem-Imaje prints\0D
PDF417\0D"
Sec ur i t y Level
PDF417 allows the user to tune the amount of error correction added to the code to suit a specific
application. This is called security level and can be set to a value between 0 and 8. 0 is the lowest
level which provides error detection only, 8 is the highest level. The default in the printer is security
level 4.
The command to set the security level is
!V61 <n>
where <n>is the desired security level.
For example, to set the security level to 6, enter the command
!V61 6
35
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.6.9 QR Code
The QR Code has two main options: correction level and masking pattern. They are set with an
escape sequence in the data string.
Cor r ec t i on Level
The correction level is set with the sequence
\L<x>
where <x>is the desired level:
L High density Level
M Standard Level
Q High Reliability Level
H Ultra High Reliability Level
Mask i ng Pat t er n
The masking pattern is usually automatically selected, but can be set manually. The escape
sequence is
\M<n>
where <n>is the desired masking pattern 0 7 or 8 which means no masking. If omitted, the most
optimal masking pattern is automatically selected.
Ot her Esc ape Sequenc es
For information on how to encode non-printable characters, see section 2.6.8 Code PDF417.
Example:
!F C S 100 1000 L 1 1 102 "\LQ\M3 QR Code High Reliability, Pattern 3"
36
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.7 Def i ni ng a Li ne/Box Fi el d
A line/box field appears as a black area on the label or as a frame window. Use Syntax II to make
diagonal lines or to render straight lines along either x or y. All dimensions are specified in the
current coordinate unit.
Syntax I !F B <r> <x> <y> <i> <h> <w> [b] [c]
or
!F B <u> <b> <p> <a> <h> <w> [b] [c]

Syntax II !F B D <y0> <x0> <lw> <y1> <x1>

<r> Rotation in degrees, any integer in the range 0-359. 0 corresponds to N and 90 corresponds to
E. Specifying the rotation as an integer means that the position is given as x and y instead of
baseline and position.
<x> X coordinate, given in the selected coordinate system and resolution relative to an origin of
coordinates that may have been specified using y23
<y> Y coordinate, given in the selected coordinate system and resolution relative to an origin of
coordinates that may have been specified using y23
<i> Insertion point type. The alignment relative to the position according to the description in section
2.3 Field Insertion Points.
<u> Defines the direction of printing as the "up" direction of the printed character. One upper-case
character (N, E, S, or W). Since there is no inherent up or down in a black box this parameter
is just a convenience which allows lines and boxes to be specified the same way text and
barcode fields are specified.
<b> The baseline of the field.
<p> The position of the field.
<a> The alignment relative to the position. One upper-case character.
L =left end of the field aligned at p.
R =right end of the field aligned at p.
C =the field is centered around p.
<h> The height of the box or width of the line.
<w> The width of the box or length of the line.
[b] The width of the border of a window frame. If this parameter is omitted or set to 0 a filled (solid)
box will be created.
[c] Optional argument specifying the corner rounding radius. Requires that the <b>argument is
specified.
<y0> Start y-coordinate.
<x0> Start x-coordinate.
<lw> Line width.
<y1> End y-coordinate.
<x1> End x-coordinate.
37
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.8 Def i ni ng a Tex t Box Fi el d
Use a text box field to define an area on the label where text is automatically word wrapped.
Syntax !F A <r> <x> <y> <i> <h> <w> <f> <width> [lines] [just]
[cspace] [indent] "text"
or
!F A <u> <b> <p> <a> <h> <w> <f> <width> [lines] [just] [cspace]
[indent] "text"

<r> Rotation in degrees, any integer in the range 0-359. 0 corresponds to N and 90 corresponds to
E. Specifying the rotation as an integer means that the position is given as x and y instead of
baseline and position.
<x> X coordinate, given in the selected coordinate system and resolution relative to an origin of
coordinates that may have been specified using y23
<y> Y coordinate, given in the selected coordinate system and resolution relative to an origin of
coordinates that may have been specified using y23
<i> Insertion point type. The alignment relative to the position according to the description in
section 2.3 Field Insertion Points.
<u> Defines the direction of printing as the up direction of the printed characters. One upper-case
character (N, E, S, or W).
<b> The baseline of the field, in 0,1 mm.
<p> The position, in 0,1 mm.
<a> The alignment relative to the position. One upper-case character.
L =left end of the field aligned at p.
R =right end of the field aligned at p.
C =the field is centered around p.
<h> The font height, in points.
<w> The font width in points. To get normal character width, set parameter w to the same value as
parameter h.
<f> The font number, see tables in section 2.5 Defining a Text Field, or the font name enclosed in
double quotes ().
<width> Maximum total width of the field in current coordinate units.
[lines] Maximum number of lines of text to allow within this box. Default: 1
[just] J ustification. One of L eft, C enter, R ight or J ustified. Default: L
[cspace] Extra character spacing in tenths of points. Default: 0
[indent] Hanging indent (in tenths of points) of the second line and onward. Default: 0
text Specifies the text to be printed. The text must be enclosed in double quotes ("). Hard line
breaks can be added by escaping CR (\x0D) or LF (\x0A) in the data.

38
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands





The following examples assume configurable coordinate system with dot resolution
(!y22 1):

!F A 0 50 250 TL 10 10 94021 750 5 L 0 130 "This text will be automatically
wrapped within the specified text box field."
A non rotated text box field using left justified 10pts Universe Medium (94021)
in a box that is 750 dots wide and allows a maximum of 5 lines of text. No extra
character space should be used. Lines 2 through 5 should be indented 36 dots.

!F A 180 775 250 BL 12 12 "Tahoma" 700 3 R "%1W
%2W"
A south oriented text box field using downloaded "Tahoma" font right justified
in 12pts size. The field is 700 dots wide and allows up to three lines within
the box. Contents of the field is to be formed by concatenating the contents of
variable 1 and 2 with a delimiting line break.

!F A 180 410 250 DC 16 16 23 820 3 C "This text will be automatically wrapped
within the specified text box field."
A south oriented text box field using centered 16pts emulated Swiss 721 Bold.
The field is 820 dots wide, allows up to three lines of text within the box and
is inserted based on the baseline center of the third (last) line of text.
Character spacing should be set to the defaults and no line should be indented.

2.8.1 Tex t Box Fi el d Di mensi ons
The dimensions of the field is specified as maximum width in resolution dependent units (y22) and
maximum height as the maximum number of lines allowed. To specify the height in absolute pixels,
add the suffix px to the height argument.
The height of the box in dots is calculated as (numlines * textheight) +((numlines - 1) * rowspace).
Text height in dots is calculated as dotsperinch * heightinpoints / 72.
2.8.2 Hyphenat i on
If a word is wider than the entire line, it is divided by a hyphen in the last position of the row and
continues on the next line. For better control of the hyphenation, the field data can contain soft
hyphens (\u00AD). If a soft hyphen is found within a word that is too wide, it will be replaced with a
visible hyphen and the word will be divided at the position of the last soft hyphen that allows correct
wrapping.

39
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.9 Def i ni ng a Ci r c l e/El l i pse Fi el d
The same syntax is used for creating a circle and an ellipse field. When specifying different values
for the vertical and horizontal radius an ellipse is created. If the two values are the same a circle is
created.
Syntax !F E <r> <x> <y> <i> <vr> <hr> <sw>
or
!F E <u> <b> <p> <a> <vr> <hr> <sw>

<r> Rotation in degrees, any integer in the range 0-359. 0 corresponds to N and 90 corresponds to
E. Specifying the rotation as an integer means that the position is given as x and y instead of
baseline and position.
<x> X coordinate, given in the selected coordinate system and resolution relative to an origin of
coordinates that may have been specified using y23
<y> Y coordinate, given in the selected coordinate system and resolution relative to an origin of
coordinates that may have been specified using y23
<i> Insertion point type. The alignment relative to the position according to the description in section
2.3 Field Insertion Points.
<u> Defines the direction of printing as the "up" direction of the printed character. One upper-case
character (N, E, S, or W).
<b> The baseline of the field.
<p> The position.
<a> The alignment relative to the position. One upper-case character.
L =left end of the field aligned at p.
R =right end of the field aligned at p.
C =the field is centered around p.
<vr> Vertical radius.
<hr> Horizontal radius.
<sw> Stroke-width of circle or ellipse.

40
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands





41
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.10 Def i ni ng a Gr aphi c s Fi el d
A graphics field is linked to a graphics file. The graphics file may be downloaded after the graphics
field has been defined.
Syntax !F G <r> <x> <y> <i> <h> <w> ["name"]
or
!F G <u> <b> <p> <a> <h> <w> ["name"]

The parameters have the following meaning:
<r> Rotation in degrees, any integer in the range 0-359. 0 corresponds to N and 90 corresponds to
E. Specifying the rotation as an integer means that the position is given as x and y instead of
baseline and position.
<x> X coordinate, given in the selected coordinate system and resolution relative to an origin of
coordinates that may have been specified using y23
<y> Y coordinate, given in the selected coordinate system and resolution relative to an origin of
coordinates that may have been specified using y23
<i> Insertion point type. The alignment relative to the position according to the description in section
2.3 Field Insertion Points.
<u> Defines the direction of printing as the "up" direction of the printed character. One upper-case
character (N, E, S, or W).
<b> The baseline of the field.
<p> The position.
<a> The alignment relative to the position. One upper-case character.
L =left end of the field aligned at p.
R =right end of the field aligned at p.
C =the field is centered around p.
<h> Scales the original graphics in one of the following ways:
- Upscales the height in steps 1 16.
- Upscales or downscales the height in percent if a percent sign is appended to the
value. The scaled result is cached, so the scaling only affects the rendering time of the
first printout.
<w> Scales the original graphics in one of the following ways:
- Upscales the width in steps 1 16.
- Upscales or downscales the width in percent.
[name] The name of the graphics file to be printed. The name, if specified, must be enclosed in double
quotes (") and can also contain variables. If the name is not specified the graphics data will be
supplied inline. See examples below.

42
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




Graphics data does not have to be downloaded to the printer for single printouts. It can instead be
supplied inline within the actual field:
Syntax !F G 0 500 500 CC 1 1
<file data in IntelHex, IntelBin or Raw Binary>
!F

The absence of a file name means that the printer should expect the graphics data to follow
immediately after in the stream. The graphics data is to be formatted in the same way as when
downloading it to the printer with the !L command. The graphics data is automatically purged from
the cache when the next layout is loaded. Inline graphics is the quickest way to print graphics data
on our current firmware. For information on how to download graphics files, see section 10 Printer
File System.
Examples:
!F G 0 500 500 CC 150% 50% "MARKEM-IMAJE"
This command creates a field linked to the graphics file named MARKEM-IMAJE.G.
File name containing variable information.
!F G N 300 500 C 1 1 "FILE%1V"
If variable 1 is 10, then this command creates a field linked to the graphics
file named FILE10.G.

43
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.11 Var i abl e I nf or mat i on i n Tex t and Bar c ode Fi el ds
2.11.1 Changi ng a Si ngl e Var i abl e
The command !W<n> " <data>" allows text to be entered into one specific variable. The string
<data>is assigned to the variable specified by <n>. All other variables remain unchanged. If the
variable does not exist, it will be created.
Data can either be sent on several lines or with hexadecimal encoded line breaks embedded in the
data. Variable data has to be enclosed in double quotes in both cases. The maximum supported
amount of data is 2KB and the maximum length of a single line is 512 bytes.
The default behavior for the printers is to decode the variable data, using the code page or
transformation format that is currently selected when the variable data arrives to the printer.
Legacy firmware used the codepage selected for the associating fields to decode the variable data.
The old behavior can be re-enabled by setting parameter 139 to 0.
Examples:
Sending multi line variable data on several lines
!W1 "This will assign
three lines of data
to variable 1."

Sending multi line variable data on a single line
!W1 "This will also assign\x0d\x0athree lines of data\x0d\x0ato variable 1."

Sending variable data using different codepages
!Y35 10
!W1 This variable will be converted to Unicode using Windows Latin 1
!Y35 99
!W2 This variable will be converted to Unicode using UTF-8
!Y139 0
!W3 This variable will be converted using its associating fields codepage

44
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.11.2 Legac y Var i abl e Management
Lines that are not commands are assumed to be variable information (text). The printer counts the
number of variable text lines received, and each line is assigned to the next variable text. The first
line of text is copied to variable text 1, the next line to text 2, and so on. The printer clears the
variables and resets the count to zero when it receives either the !C or the !R command.
Copies of the last label printed will be printed if the print button is pressed before the next print
command is received. (Clearing the label format or the variable data prevents printing copies.)

Example 1:
!C
!F T N 100 100 L 10 0 94021 "Type: %1V
Serial no. %1C

Date: %D/%N/%y"
!F C N 370 100 L 120 3 1 "%2V"
!F T N 410 100 L 10 0 94023 "PART NO: %2V"
THERMAL PRINTER (BASIC)
123456
!P
THERMAL PRINTER (EXTENDED)
987654
!P

The resulting printout of this example would contain the current date and current value of counter 1
and might look as shown below. Note how the date print is created and the empty line between the
"Type" and "Serial no" lines. Variable 2 is referenced twice, in the barcode and the text below the
code.
First printout: Second printout:








Note: Only the variable information has to be sent for each label once the print format has been
defined.

45
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.11.2 Loc k Var i abl e
The command !r locks the variable input as command lines without a command character (old
variable input method). It is then only possible to input variables with the !W command (see
section 2.11.1 Changing a single variable).

The !C and !R commands (see section 2.12 Clear layout and 2.11.3 Clearing variable
information), re-enables the old variable input method.

Examples:

Layout with locked variables and a !W variable input:
!C
!r
!F S S 40 1000 L 10 10 94021 "Variable 1: %1V"
!W1 "OK"
!P

Printout:
Variable 1: OK

Layout with locked variables and a forbidden variable input:
!C
!r
!F S S 40 1000 L 10 10 94021 "Variable 1: %1V"
NOT OK
!P

Printout:
Variable 1:
Since the line "NOT OK" is ignored.

2.11.3 Cl ear i ng Var i abl e I nf or mat i on
The command !R deletes all the variable texts from memory. The next non-command line will be
copied to variable text 1, and so on. This command is useful to remove any stray information which
may have been assigned to the variable texts. It also clears the print buffer and so prevents
making copies of the last label printed.
46
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.12 Cl ear Layout
The command !C clears the print format and variables. This command is used to delete the current
print format before defining a new layout and whenever it is desirable to reset the printer to a
known idle state.
Note: Send the !C command twice when clearing the printer, since any stray characters preceding
the command character may make the command look like a variable text line.

2.13 Pr i nt Command
The command !P<n> prints <n>copies of the current label layout. If <n>is omitted or is not a
positive number, the default value is 1.
The counters are updated after each label printed. If the time or date is printed, it is updated for
each label. Copies of the last label can be printed by pressing the print button, until the !R or !C
command is received. Such copies are identical to the last label printed and the date/time and up-
down counters are not updated.
47
Pr ogr ammer s Ref er enc e Manual
2. Label Layout Definition Commands




2.14 Tr i gger ed Pr i nt out
2.14.1 Compac t , 2300 and Nova
The triggered printout mode requires parameter Printkey Mode to be set to triggered printout.
When it is set, the print key can be used to trig a new printout, updating counters, time and date.
There are two triggered print modes: limited and unlimited. Which mode to use depends on the
print command. If the Print !P command is used, a label or a batch of labels will be printed as
normal, but an unlimited number of new printouts can be made after this by repeatedly pressing
the print key. By using !p<n>no printout will be made until the print key is pressed and only <n>
printouts are possible. After this a new layout must be loaded, or Print !P can be used to enter the
unlimited triggered print mode. Use service commands External trig count and Get remaining
number of triggered printouts to find out how many triggered printouts that have been made or are
remaining, respectively.
The triggered print mode is useful if the printer is used standalone to generate unique printouts,
without having to be connected to a host after the layout is loaded and/or it is important that only a
specific amount of unique labels are printed, but not all at once.

2.14.2 2000 Ser i es
The triggered printout command, !p<n>, does not start a printout, but allows an optional number of
print and apply cycles by activating the MainTrig and/or the PreTrig input signals. Counters, date
and time are updated after each cycle.

!p<n>
If <n>is non-zero, the number of print and apply cycles are limited to <n>.
If <n>is omitted, the number of print and apply cycles are unlimited.
If <n>is zero, no print and apply cycles are allowed. This can be used for canceling a print and
apply session.

Use the service commands External trig count and Get remaining number of triggered printouts to
find out how many triggered printouts that have been made or are remaining, respectively.
To be able to control how the printer behaves when it receives !P, see parameter Y110.

48
Pr ogr ammer s Ref er enc e Manual
3. Status Request Commands




The status request command is !S<n> where n represents the number of the status request. The
printer responds with a string of 8 digits, followed by a carriage return character. Each digit in the
string is either 0 or 1. The meaning of each digit in the status response is:
0 =Normal value (for error flags) or not available/not executed (for peripherals)
1 =Error value or abnormal condition (for error flags) or connected/executed (for peripherals)
Note: Status request 100 (!S100) differs from the other status requests. !S100 always returns a
string of 32 digits.

3.1 St at us Request 1





Memory error
Too many fields
Not used
Ribbon out (TT models only)
No paper in paper sensor
Printer restarted
Label not removed (LTS)
Paper out
Paper Out
The printer has run out of paper. Operator intervention is necessary, as described below.
Label Not Removed (LTS)
The label has not been removed (the LTS is active). The printer cannot continue to print until the
label has been removed.
Pr i nt er Rest ar t ed
The printer has been restarted since the last status 1 or status 4 requests. This flag is cleared by
the status 1 or status 4 requests.
No Paper i n Label Sensor
There is no paper in the printer or there is a label gap in the label sensor. If there is no possibility of
a label gap in the label sensor when the printer stops after a print cycle, this flag can provide
additional security.
This flag is different from the paper out flag, since paper out is only detected during a paper feed or
print cycle. If the printer is switched off and on, paper out is no longer flagged, even if no paper has
been loaded.
49
Pr ogr ammer s Ref er enc e Manual
3. Status Request Commands




Ri bbon Out
The printer has run out of ribbon. Operator intervention is necessary, as described below.
Too Many Fi el ds
The number of fields in a label layout exceeds the maximum number of fields, which is 512.
Memor y Er r or
The heap (dynamic memory pool) is corrupt. This is a serious error which can not be corrected.
The only solution is to switch off the printer and restart the program.

50
Pr ogr ammer s Ref er enc e Manual
3. Status Request Commands




3. 2 St at us Request 2





Layout outside label
Barcode on failing dot
Dot resistance out of range
Last paper movement type
Not used
Overheated
Print incomplete
Stopped on a label gap
St opped on Label Gap
The last print or paper feed cycle stopped on a label gap, that is, the paper is now synchronized, if
label stock is installed in the printer. If continuous stock is installed this flag will never be set.
Pr i nt I nc ompl et e
The last print cycle was interrupted before printing was complete, either because a label gap
occurred or because the printer has run out of paper. This means that some information may be
missing from the printout.
Over heat ed
The system temperature of the printer is too high to continue normal operation and the printer has
entered a cool down state. This can occur when printing large batches using layouts with a large
amount of blackness and/or the printer is located in an environment with temperature above room
temperature.
If this flag is set, the LED will be flashing with a red light and the internal fan will run at maximum
speed until the temperature has decreased to operational level. Printing will then continue as
normal and no sent information will be lost.
Last Paper Movement Type
The forward paper feed command is executed, that is, a !K command with positive feed length. All
other paper movements will reset the flag (by the print button or on command from the host).
This flag allows the host to detect when the operator has moved the paper by pressing the print
button. It is not safe to issue a reverse paper feed command when the paper is not in a known
position.
51
Pr ogr ammer s Ref er enc e Manual
3. Status Request Commands




Dot r esi st anc e out of r ange
Dot resistance out of range is set if the Dot check has found at least one damaged dot on the
head.
Bar c ode on Fai l i ng Dot
Barcode on failing dot is set if the printer noticed that a barcode was about to be printed on a failing
dot (as reported by the Dot check), tried to move it to good dots but failed to do so, leaving the
code on one or more failing dots.
Layout Out si de Label
This flag can be used to check if any part of the layout is outside the label. See parameter 178 and
179 for further information.

52
Pr ogr ammer s Ref er enc e Manual
3. Status Request Commands




3.3 St at us Request 3





Not used
Label stock
Not used
Print key pressed
Not used
Operating parameters error
Syntax error
Not used
Synt ax Er r or
An invalid 1D/2D code number has been added.
Oper at i ng Par amet er s Er r or
The printer configuration memory is corrupt. Use Service command !V3200 to reset all parameters
to their default state and then download the appropriate configuration file or use the configuration
menu to setup the printer.
Pr i nt k ey Pr essed
The print button is pressed at the moment the status request is issued.
Label St oc k
Label stock is loaded. The printer detects the type of paper installed (labels or continuous).

53
Pr ogr ammer s Ref er enc e Manual
3. Status Request Commands




3.4 St at us Request 4 and 5






Not used
Printer restarted
Not used
Print key pressed
Head lifted
Ribbon out (TT models only)
Label not removed (LTS)
Paper out

Status 4 assembles some of the most commonly needed status flags in one command.
Paper Out
Described above.
Label Not Removed (LTS)
Described above.
Ri bbon Out
Described above.
Head Li f t ed
Print head is lifted. Printing cannot continue until the print head has been restored to print position.
Note: This feature requires optional hardware for Compact models.
Pr i nt k ey Pr essed
Described above.
Pr i nt er Rest ar t ed
Described above.
54
Pr ogr ammer s Ref er enc e Manual
3. Status Request Commands




3.5 St at us Request 7






Not used
Not used
Not used
Not used
No layout
Queue heap error
Print queue error
Queue positions free

Status request 7 is a print queue status register specially designed for 2000 Series.
Queue posi t i ons f r ee
Set to one if it is possible to load a new layout. Set to zero if there already is a queued layout.
Pr i nt queue er r or
A new layout has been added without noticing that the Queue positions free flag is set to zero.
Queue heap er r or
There is not enough queue heap memory left in order to store the present slot load. The last added
slot data will therefore be discarded.
No l ayout
All slots (in both queue one and two) have been printed and applied and the maximum number of
main trigs (signal.parameter.trig.missed) has been reached without any new slot data.

55
Pr ogr ammer s Ref er enc e Manual
3. Status Request Commands




3.6 St at us Request 8





Dot check board installed
Black mark photocell
Cutter installed
I
2
C-board installed
LTS installed
RFID data written
RFID layout valid
RFID hardware installed
RFI D Har dw ar e I nst al l ed
The RFID hardware is available.
RFI D Layout Val i d
The RF tag is initiated.
RFI D Dat a Wr i t t en
The RFID data transfer is successful.
LTS I nst al l ed
LTS is installed.
Note: Only Nova models have this feature.
I
2
C Boar d I nst al l ed
For Compact models, this flag has two different meanings depending on the version of the power
supply board installed.
Power supply board version 1:
The control board for cutter and LTS (label-taken sensor) is installed and has been initialized.
Power supply board version 2:
The I
2
C circuit for cutter, LTS, LED and head lifted is functioning and has been initialized.

For Nova models this flag is normally always set. It indicates that the I
2
C connected board is
working properly. If not, there might be a problem with the I
2
C bus connection, for example
electrical interference.
56
Pr ogr ammer s Ref er enc e Manual
3. Status Request Commands




Cut t er I nst al l ed
1 =The cutter is installed and working. This is verified for each cutting cycle.
0 =The cutter is either not connected or is jammed (cannot get back to home position).
Note: If no I
2
C board is installed, this flag will never be set.
Bl ac k Mar k Phot oc el l
The black mark photocell is installed.
Note: Nova models have a media-positioning sensor (MPS), which contain both gap- and
blackmark sensors. This status flag will be set only if black mark is selected.
Dot Chec k Boar d I nst al l ed
The print-head diagnostics board installed and activated.
Note: Nova models always have this feature as default.

57
Pr ogr ammer s Ref er enc e Manual
3. Status Request Commands




3.7 St at us Request 16
Status request 16 is specially designed for 2000 Series.





Paper low
Error
Warning
Pause
Head lifted
Ribbon end
Ribbon low
Paper out
Paper Low
Described above.
Er r or
A system error has occurred.
War ni ng
One or several warnings are active.
Pause
The system is paused.
Head Li f t ed
The printhead is not in print position.
Ri bbon End
No ribbon.
Ri bbon Low
Running out of ribbon.
Paper Out
No paper.
58
Pr ogr ammer s Ref er enc e Manual
3. Status Request Commands




3.8 St at us Request 17
Status request 17 is specially designed for 2000 Series.





Not used
Not used
Not used
Not used
Not used
Not used
Not used
Offline
Of f l i ne
The system is offline and is not ready for a print and apply cycle.

59
Pr ogr ammer s Ref er enc e Manual
3. Status Request Commands




3.9 St at us Request 100
Status request 100 is specially designed for 2000 Series.
Digit Name Description
0 Overheated The temperature around the power unit is too hot. See status request 2 for
a more detailed description.
1 IO board error One of the PIC processors, on the I/O board, has an erroneous behavior.
2 File system error There is not enough RFS (Remote File System) for rendering the scalable
fonts.
3 Memory error The building of the page, or rendering of a bitmap, failed.
4 Parameter error The machine could not save the parameters. Concerns both the
parameters in the fixed RFS area and the parameters stored in file.
5 No init file The parameter file(s) could not be found in the sys-folder in the RFS
(Remote File System).
6 No air pressure No air pressure.
7 Paper out No paper.
8 Ribbon out No ribbon.
9 Head lifted The printhead is not in print position.
10 Press start Press the Start button in order to reset.
11 No return signal No return sensor signal when expected. The return sensor brings the
applicator arm back to its home position.
12 Arm jammed The arm has not returned to its home position.
13 Arm not home The arm is not in home position when expected.
14 Barcode error The barcode scan failed. The barcode scan did not succeed before the
barcode reader timeout, or a new print and apply cycle was started before
the barcode reader timeout.
15 Label on grid Label on grid when not expected.
16 No label on grid No label on grid when expected.
17 Cover open The ribbon cover is open.
18 Pause The system is paused.
19 Paper low Running out of paper.
20 Ribbon low Running out of ribbon.
21 Barcode warning The barcode scan failed, but the number of no reads before stop is set to
only activate a system warning.
22 ApplyDelay too short The printout is not finished when the apply cycle was supposed to start.
That is, printout finished before the ApplyDelay timeout.
23 Accept date change The date has been updated. This warning has to be acknowledged in order
to update the printed date information.
24 Matchcode error The matchcode function failed. The printed barcode does not match the
scanned barcode.
60
Pr ogr ammer s Ref er enc e Manual
3. Status Request Commands




25 Barcode quality The barcode quality function failed. The printed barcode is of poor quality.
26 Waiting for trig The machine has received the pre trig and is waiting for the main trig.
Information message when sequence two is enabled.
27 Not used
28 Not used
29 Not used
30 Not used
31 Not used
61
Pr ogr ammer s Ref er enc e Manual
4. Service Commands




The service commands provide a number of different utilities. The printer responds with a line of
data to a service command.
The command syntax is !V<i>

Note: Some commands take an additional argument after <i>.
Service command (i) Description
9 [m] Software revision level. If parameter m is:
0 or none =the printer responds with a string of the form 1. 03
1 =Product revision, major, minor and revision. Example: 1. 03. 00
2 =Product revision on all included components
3 =Printcore. Example: 5. 03. 00
4 =Fboot. Example: 6. 03. 00
10 Printer ID
11 Software date. The printer responds with a string of the form
Feb 19 1999 10: 28: 20
12 Label count. The printer responds with the total number of labels printed.
13 Available dynamic RAM, in bytes.
16 PROM number. The printer responds with a string of the form L412- 0.
///Deprecated! Use !V9 instead
17 [m] Total paper movement. The printer responds with the amount of paper it has
printed. If parameter m is omitted, the printer responds with the total paper
movement, in meters. The following information can also be received depending
on the parameter m value:
1 Total paper feed in mm.
2 Total paper feed in inch.
3 Total paper feed in feet.
19 Available default storage file system memory, in bytes.
20 <hh:mm:ss> Set the time in the printer (24-hour clock). The clock is kept running by a battery
when the printer is switched off.
Example: ! V20 14: 30: 00
21 <yy-mm-dd>
or
21 <yyyy-mm-dd>
Set the date in the printer.
Example: ! V21 1999- 02- 22
22 [m] Get date and time. The response is a string in the form
99- 02- 22 14: 30: 00
if parameter m is 0 or omitted, and
1999- 02- 22 14: 30: 00
otherwise.
23 <m> Get name of bitmap font by logical number. The response is the name of font
number <m>. (///Deprecated! Use !V80 instead)
24 <name> Get logo information by name. Quotes must be entered. The string name is the
name of a logo stored in printer file system. The response is a string of four
numbers describing the logo (height, width, orientation and number of bytes per
row).
62
Pr ogr ammer s Ref er enc e Manual
4. Service Commands




25 <m> Get logo information by number. The response is a string of the form:
l ogoname 75 58 0 8, where logoname is the name of the logo and the
numbers are the same as for !V24. For information about other types (macros,
rasterized fonts), see !V48.
26 <name> Get macro content. Displays the contents of a macro. Quotes must be entered.
The string name is the name of a macro stored in printer file system.
31 Get length of the last paper movement. The response is in 0,1 mm.
32 <m> Show contents of counter. 0 or none: Get the current state of all counters. 1-10:
Get the current state of a specific counters:
1 =The current value of the counter
2 =The increment value
3 =The width of the counter
4 =The update interval
5 =The number of labels printed with the current counter setting
6 =Tells if the counter is always to be updated, even when it is not referenced in
a field
7 =The lower range limit
8 =The upper range limit
33 Get number of failing dots received from Dot check. The Dot check functionality is
an extra hardware option for Compact models but default for Nova models.
34 <m> Used in combination with service command 33 to get the position of the failing
dot(s). For instance, if service command 33 returns the value 2 then !V34 1
returns the position of the first failing dot and !V34 2 the position of the second
failing dot.
39 Gets the remaining number of triggered printouts since last !p<n>was received. If
unlimited printouts is active a * is returned. See section 2.14 Triggered printout
for further information.
40 <m> Get the name of bitmap font number, where parameter m is the physical number
of the font, not the logical (mapped) number.
44 Set the sensitivity of the paper sensor. The printer feeds out some paper to
assess the opaqueness of the paper and then sets the sensitivity of the paper
sensor. This command takes an optional argument. If this argument is 1 the
values are automatically saved when the printer is done adjusting.
45 Set default characters spacing for all bitmap fonts.
48 <m> Get information on file number m that resides in the printer file system. The
response is a string of the form t s "file name", where t is the file type, s the file
size and "file name" the name of the file. The file can for example be a macro,
logo or a downloaded font.
61 <s>[r] [c] Set security level for PDF 417. Parameter s is the security level ranging from 0 to
8. Parameter r is number of rows and parameter c is number of columns. If r and
c are omitted (or set to 0), Labelpoint adjusts height and width of the PDF code. If
r is set but c is omitted, then the PDF code will have fixed number of rows, which
means that only the width of the PDF code will grow with increasing number of
characters.
63 Get the printers serial number.
66 Get the printers article number.
63
Pr ogr ammer s Ref er enc e Manual
4. Service Commands




74 <m> Print start signal. If m =1 the printer will send a form-feed character (ASCII 12=
0C16) at the beginning of every print cycle. M =0, disables this function.
This command allows an external controller to monitor the number of print cycles
without polling the printer.
80 <m> Show Agfa MicroType typeface by index <m>. The response is a string in the
form: <typeface number><typeface name>
81 <m> Show TrueType typeface by index <m>. The response is a string in the form:
<typeface number><typeface name>
82 This command checks if the given macro exists in the RFS (Remote File System)
memory.
83 Show PCL typeface by index <m>. The response is a string in the form: <typeface
number><typeface name>
85 This command reloads fonts from the printer.
93 [m] Returns the present value of the different counters for triggered printing. The
counters are stored in the non-volatile printer memory.
0 or none =Returns the default counter value. The default counter is chosen with
the parameter Trig count return value
1 =Returns the total number of trig counts
2 =Returns the total number of successful print and apply cycles
3 =Returns the total number of failed print and apply cycles (the difference
between trig counts and successful print and apply cycles)
99 or <CLEAR>=Clear all counters
The number of successful print & apply cycles (m=2) and the number of failed
print & apply cycles (m=3) are only valid for 2000 Series.
99 Get DHCP (Dynamic Host Configuration Protocol) status:
0 =DHCP is not enabled
1 =DHCP is enabled
100 <a>.<b>.<c>.<d> Set network IP address.
101 Get network IP address. Use service command 108 if DHCP is used.
102 <a>.<b>.<c>.<d> Set network IP mask.
103 Get network IP mask. Use service command 108 if DHCP is used.
104 <host> Set network host name.
105 Get network host name.
106 <m> Set domain name.
107 Get domain name.
108 [m] Get DHCP info received from DHCP server, if any. Valid values for m are 0, 1, 2
and the following information can be received:
0 IP address
1 IP mask
2 Gateway
64
Pr ogr ammer s Ref er enc e Manual
4. Service Commands




109 Get MAC address.
110 <a>.<b>.<c>.<d> Set network default gateway.
111 Get network default gateway. Use service command 108 if DHCP is used.
114 Get serial number of RF tag (transponder).
115 Set login script.
116 Get login script.
117 Get active port. Responds with the currently active port. Valid responses are
COM1, COM2 and TCP23.
120 Get the name of the current printer model (for example MP Nova6 TT).
121 Set user month name. Example: ! V121 3 " Mar s" .
122 0 or none =Get all month names
1-12 =Get the name of a specific month
123 Set user weekday name. Example: ! V123 1 " Monday"
124 0 or none =Get all weekday names
1-7 =Get the name of a specific weekday
125 <hh:mm> Switch date offset is the time when the date shall be updated. Concerns date and
best-before date in the layout.
126 <hh:mm> Get the switch date offset. If no switch date offset is set the string 00:00 is
returned.
127 <n>
<hour>:<minute>
<"string">
Add shift code:
n =Shift code number, 1-24
hour =Shift code hour, 00-23
minute =Shift code minute, 00-59
"string" =The shift code string
128 0 or none =Delete all shift codes
1-24 =Delete the n shift code
129 0 or none =Get a list with all shift codes
1-24 =Get the n shift code
130 Emulate the 2000 Series start button.
131 <n>
<matchcode>
Set the matchcode string. This command is only valid for 2000 Series equipped
with a barcode reader. The matchcode function has to be enabled for the barcode
reader.
If matchcode is enabled, then the printed barcode is compared with the
information received from the barcode reader. If the two string differs the machine
will stop and signal: "Matchcode Error".
1 =The matchcode to match
99 =Reset matchcode
matchcode =The matchcode string, omitted if n=99.
132 Emulate the 2000 Series pause button.
133 2000 Series barcode quality index will return the quality index of the last seen
barcode if a barcode reader that supports a quality index is used (this feature is
not supported by all barcode readers), and the barcode quality parameter Y1037
is set.
65
Pr ogr ammer s Ref er enc e Manual
4. Service Commands




4.1 Spec i al Ser vi c e Commands
The following service commands are silent commands and will not respond with CR.
Service command (i) Description
3194 [m] Delete either named macros, graphics or rasterized fonts from the printer file
system.
m =0 Delete all files
m =2 Delete graphic files
m =3 Delete macro files
m =6 Delete font cache index or legacy rasterized fonts
m =99 Format the printers file system
3196 Restart. The printer is restarted from the power-up state. This command can be
used to restart as an alternative to switching the printer off and on manually.
3200 Reset all configuration parameters to their default state.
3201 Disconnect port. Only valid for RTELNET. Shuts down the network connection.
3206 <string> The string translation command renders the % sentences in a string to the
corresponding ASCII string. The returned rendered % sentences is identical with
the printed layout strings.
35183 Enter user mode. This command sets default access levels for configuration
parameters if service command 38153 has been used.
38153 Enter setup mode. This command enables modifying those printer configuration
parameters that are protected against accidental modification. Reset to user
mode access level with service command 35183.
66
Pr ogr ammer s Ref er enc e Manual
4. Service Commands




4.2 Ex pr essi on Engi ne Ser vi c e Commands
Service command (i) Description
5000 [<a>] <b><c>
or
5000 <a><b>
Set function:
a function number 0-32767. If function number is omitted, the function
will be added after the previous added function. Use !V5001 to get a list of the
functions with line numbers.
b Variable number or name. A variable number or name can be entered
with or without surrounding double quotes characters (ASCII 34).
c Function. Must be surrounded with double quotes characters
(ASCII 34) if it contains spaces.
Delete function(s):
a Function number. If the function number is omitted, all functions
will be cleared.
b The general clear service command string: <CLEAR>
5001 <a> Get function.
a function number from 0 to the last used function.
5002 Check functions. Checks all functions, from the first declared function until the last
one. The result from a function operation will be returned. Used counters will not
be modified by this operation.
One of the following error codes is returned if an error is detected:
E00:Syntax Error Impossible to parse a line of code.
E01:Run-time Error An error detected at run-time by the EE.
E02:Function does not exist The referred function does not exist.
E03:Variable <number/name>does not exist The variable <number/name>
does not exist.
E04:Variable <number/name>is empty The variable <number/name>is empty
E05:Incorrect variable contents The variable contents is not in the correct
format
Note: This service command is intended to be use for test during the Expression
Engine function declaration.
5003 Refresh. Runs all declared Expression Engine functions. All date and time
references are updated.
5004 Trig. Run all declared Expression Engine functions. All date, time and counter
references are updated.
67
Pr ogr ammer s Ref er enc e Manual
4. Service Commands





Examples:
!V5000 1 20 %1C Specify function number 1, the result shall be
stored in variable no 20

!V5000 20 %date() Specify next function, the result shall be stored
in variable no 20. This function will be assigned
line number 2.

!V5000 1 Pluto %GoofyV Copy the variable Goofy contents to variable
Pluto

!V5000 10 <CLEAR> Clear function number 10

!V5000 <CLEAR> Clear all declared functions

!V5001 1 Get formula for function number 1
1 100 %1C

!V5001 Get a list with all declared functions
1 100 %1C
2 101 %2C
3 102 %3C
10 150 %date()
11 151 %date.weekday(%150V)
<END>

!V5002 Check all functions. Return value of format:
function number, variable number/name, result
1 100 000005
2 101 E00:Syntax Error
<END>
68
Pr ogr ammer s Ref er enc e Manual
5. Printer Settings




5.1 Pr i nt er Conf i gur at i on
The printer settings can be set on command from the host computer. The initial settings used at
the power-up are stored in non-volatile memory. Some settings can be changed during operation,
while others always retain their power-up value. Using the commands described below can access
all parameters, but most of the common settings are available via the configuration menu,
accessible through the COM ports, Telnet port or the built-in web server in the printer. See section
7 Configuration Menu.

Get current value: !X<i>

The printer responds with the current value of the parameter <i>, followed by a carriage return
character.

Set value: !Y<i> <n>

The parameter <i>is set to <n>, which must be a decimal number. Not all parameters can be set,
see the table below.

Make changes permanent: !Z

The current settings are written into the non-volatile memory so that they will still be in effect when
the printer has been switched off.

Note: All parameters that do not have the
4
suffix must be made permanent with the !Z command.
The printer must then be switched off and back on (or restarted by command) before the change
becomes active.
69
Pr ogr ammer s Ref er enc e Manual
5. Printer Settings





Parameter (i) Explanation
2
4
<n> Print speed (mm/s).
3
4
<n> Barcode speed (mm/s). Can be set to a value lower or equal to the normal print speed in
order to get a higher print quality for matrix codes and vertical (ladder) barcodes.
4
4
<n> Blank feed speed (mm/s). Can be set to a value higher than the normal print speed.
5
3,4
<n> The print head type is detected during startup.
6
5
Number of dots per mm on the print head. The value should be 8 dots/mm for 203 dpi
heads, or 12 dots/mm for 300 dpi heads.
7
3,4
<n> Motor steps per mm. This parameter defaults to 24 for Compact and Nova models. Valid
values for n are any positive numbers.
Note: Modify this parameter with caution. An incorrect value will give a distorted printout
and cause labels to stop at the wrong position.
8
3,4
<n> Print head width, in number of dots.
9
4
<n> Dot mode. This parameter determines print behavior when two print fields overlap. Valid
values for n are {0, 1}and they are interpreted as follows:
0 =black on black prints white, XOR (default)
1 =black on black prints black, OR
16 <n> Force DT. Only used by TT printer models to be able to use the printer in DT mode, that
is, without ribbon sensing. Valid values for n are {0, 1}and they are interpreted as
follows:
0 =normal mode (default)
1 =forced DT mode
18 The media position sensor (MPS) sensitivity.
0 =Low
1 =Normal
2 =High
3 =Extra high
20 <n> Threshold level for MPS. Valid values for n are {10, 20, , 250}.
21 <n> Current level for MPS. Valid values for n are {0, 1, , 15}. Default is 5.
23 <n> Max paper feed length, in 0,1 mm. Valid values for n are {0, , 9000}. Default is 3000.
24 <n> Dispensing feed, in 0,1 mm. This is the distance the paper is fed after the next label has
reached the print area (for label stock) or after printing is complete (for continuous stock).
It can be set to position the paper for tear-off after printing, or so that pre-cut labels are
properly dispensed. Valid values for n are {0, , 520}.
25
4
<n> Baud rate for COM2. Valid values for n are {300, 600, 1 200, 2 400, 4 800, 9 600, 19 200,
38 400, 57 600, 115 200}. Default is 9 600 baud.

3
Protected parameter. Must be unlocked with the !V38153 command first.
4
The printer has to be restarted for the new value to take effect.
5
Read-only parameter
70
Pr ogr ammer s Ref er enc e Manual
5. Printer Settings




26
4
<n> Parity check for COM2. Valid values for n are {0, 1, , 4}and they are interpreted as
follows:
0 =no parity (default)
1 =zero parity (space)
2 =odd parity
3 =even parity
4 =one parity (mark)
27
4
<n> Number of data bits per character for COM2. Valid values for n are {7, 8}. Default is 8
bits.
28
4
<n> Number of stop bits for COM2. Valid values for n are {1, 2}. Default is 1 bit.
29
4
<n> Input buffer size for COM2 in bytes. The input buffer is used to store incoming data when
data arrives faster than it can be processed. Its size is usually not important since
handshaking between the printer and the host ensures that data is not sent faster than
the printer can handle. Valid values for n are {500, 501, , 10000}. Default is 2000 bytes.
30
4
<n> Baud rate for COM1. Valid values for n are {300, 600, 1 200, 2 400, 4 800, 9 600, 19 200,
38 400, 57 600, 115 200}. Default is 9 600 baud.
31
4
<n> Parity check for COM1. Valid values for n are {0, 1, , 4}and they are interpreted as
follows:
0 =no parity (default)
1 =zero parity (space)
2 =odd parity
3 =even parity
4 =one parity (mark)
32
4
<n> Number of data bits per character for COM1. Valid values for n are ={7, 8}. Default is 8
bits.
33
4
<n> Number of stop bits for COM1. Valid values for n are {1, 2}. Default is 1 bit.
34
4
<n> Input buffer size for COM1, in bytes. The input buffer is used to store incoming data when
data arrives faster than it can be processed. Its size is usually not important since
handshaking between the printer and the host ensures that data is not sent faster than
the printer can handle. Valid values for n are {500, 501, , 10000}. Default is 2000 bytes.
71
Pr ogr ammer s Ref er enc e Manual
5. Printer Settings




35 <n> Character set, supported code pages. See Appendix E for tables of different code pages.
The left column is the old numbering system. The right column is the new numbering
system that corresponds to the standard code page numbers.
A code page may be set individually for each text field. This means that one field can be
using a Cyrillic code page, while another field is using a Latin 1 code page. Note that the
8 bit Unicode transformation format (UTF-8) can be used instead by setting this
parameter to 99.
1 850 CP 850, MS-DOS Latin 1
2 Swedish/Finnish (7-bit code page)
3 German (7-bit code page)
4 UK (7-bit code page)
5 French (7-bit code page)
6 Norwegian / Danish (7-bit code page)
7 Spanish (7-bit code page)
8 Italian (7-bit code page)
9 861 CP 861, MS-DOS Icelandic
10 1252 CP 1252, Windows Latin 1 (ANSI)
11 CP HP Roman-8
12 852 CP 852, MS-DOS Latin 2
13 1250 CP 1250, Windows Latin 2 (Central Europe)
14 855 CP 855, MS-DOS Cyrillic
15 1251 CP 1251, Windows Cyrillic (Slavic)
16 1253 CP 1253, Windows Greek
17 1254 CP 1254, Windows Latin 5 (Turkish)
18 1257 CP 1257, Windows Latin 6 (Baltic Rim)
21 8591 ISO 8859-1 (subset of CP 1252)
22 8592 ISO 8859-2
99 UTF-8
36 <n> Decimal ASCII code of the command character. Valid values for n are all decimal ASCII
code numbers. Default is 33 (!).
39 <n> LTS enable. Normally, when a LTS is installed, the printer will check that the label has
been removed between printouts. This parameter can be used to disable that check but
still keep the LTS installed. Valid values for n are {0,1}and they are interpreted as
follows:
0 =LTS disabled
1 =LTS enabled (default)
40 <n> Minimum length of paper to be fed during a print cycle, in 0,1 mm. With label stock paper,
sensing is disabled until the specified amount of paper has been fed. Valid values for n
are all positive values. Default is 0.
42 <n> Printing of barcode interpretation. Can be turned on or off for each barcode defined. Valid
values for n are {0, 1,2}and they are interpreted as follows:
0 =barcode interpretation not printed
1 =barcode interpretation printed below code (default)
2 =barcode interpretation printed above code
72
Pr ogr ammer s Ref er enc e Manual
5. Printer Settings




44 <n> Alternate end-of-line (EOL) character. This parameter must be set before CR as end-of-
line can be disabled. See parameter 45. Valid values for n are all decimal ASCII values.
45
6
<n> Disable CR as end-of-line. Only valid when an alternate end-of-line characters is
enabled. See parameter 44. Valid values for n are {0,1}and they are interpreted as
follows:
0 =CR enabled (default)
1 =CR disabled
46
3
<n> Paper strobe time, in s. The amount of blackness from a given strobe time depends on
paper type used. For most applications, however, the recommended value is 510s for
Compact models and 350s for Nova models.
50 <n> Silent mode. This parameter controls the printers reply behavior concerning file transfers
and silent service commands. Valid values are {0,1, 2}and they are interpreted as
follows:
0 =printer will respond using ack/nak for each line during file transfers
1 =printer will not respond during file transfers (default)
2 =printer will neither respond during file transfers nor when service commands with no
reply data are invoked
54 Set ribbon low limit. Valid values are 30-70 meters.
55
5
Get type of applicator.
0 =None
3 =Blow/Wipe/Tamp L/Tamp S
60 Set barcode displacement. Set a global value for the distance in dots the printer is
allowed to move a barcode to the west or east, if it is about to be rendered on a dot that
the Dot check has determined to be failing. Since the movement is in either direction,
only positive values are accepted.
Note: to set values in dots differs from most other settings that accept values in mm/10.
66 <n> Enable application. When Application Center is used, this parameter must be set for the
application to start. Valid values for n are {0, 1}where 0 is disable and 1 enable. Default
is disabled.
67 <n> Printkey mode. This parameter is used to disable or change the functionality of the
printkey. Normally, a copy of last printout is made. This can be disabled to make sure
that no copy can be made of a unique printout, that is a ticket of some kind. It is also
possible to trig a new printout, which corresponds to sending the command !P. This can
also be accomplished when using a LTS. See parameter 93 for further information. Valid
values for n are {0, 1, 2}and they are interpreted as follows:
0 =Copy of last printout (default)
1 =Printkey disabled
2 =Triggered print
68 <n> Horizontal print position adjustment, in 0,1 mm. Shifts the print picture east (positive
values) or west (negative values). Valid values for n are all integer values. Default is 0.
69 <n> Vertical print position adjustment, in 0,1 mm. Shifts the print picture north (positive
values) or south (negative values). Valid values for n are all integer values. Default is 0.

6
RAM parameter. Not stored in non-volatile memory.
73
Pr ogr ammer s Ref er enc e Manual
5. Printer Settings




72 <n>
...
79 <n>
Font mapping of bitmap fonts. Maps a physical font number (the ordinal number of the
bitmap font in memory) to a logical font number used when printing.
The physical font number is the parameter number minus 70. For example, ! Y75 3
maps physical font 5 (the 19-dot font) to logical font number 3. The physical font 1 is
always logical font 1.
Physical font Font name
(1 7x9-dot bold)
2 hv18r
3 15-dot bold
4 9-dot
5 19-dot bold x 18
6 hc42c
7 g19 x 12
This option was used in MkII printers to emulate different font sets in Mk1 printers.
///Bitmap fonts are deprecated, but kept for backward compatibility!
89 <n> Allow command character anywhere on the line. Valid values for n are {0, 1}and they are
interpreted as follows:
0 =Command character must be first on the line (default)
1 =Command character can be anywhere on the line
92 <n> Stacked printers mode (daisy chaining). Used when sending commands to a specific
printer in a daisy chain. This requires the receiving COM port to be set to Printer mode
and the transferring COM port to Stacked printer mode. See parameter 150 and 152.
Valid values for n are {0, 1, , 65535}where n is the printer to be referenced.
See section Communication modes for further information.
93 <n> LTS auto repeat. If enabled, a new copy will be printed when current label is removed,
that is, the LTS will have the same functionality as the default behavior of the print key. It
is also possible to print a new printout when the label is removed, that is, the LTS will
have the same functionality as when sending the command !P. Valid values for n are {0,
1, 2}and they are interpreted as follows:
0 =auto repeat disabled (default)
1 =auto repeat enabled (copy of previous printout)
2 =auto repeat enabled (new printout)
Note that parameter 39 must be enabled for the LTS to work at all.
100 <n> Reverse paper feed, in 0,1 mm. When set, the printer reverse feeds the paper the
specified distance before printing. This is used for layouts starting at the very start of the
label, when parameter 24 is set to position the paper for tear-off. Valid values for n are all
positive numbers. Default is 0.
101 <n>
...
109 <n>
Set the inter-character space for bitmap font number. Each bitmap font has an individual
inter-character spacing that may be changed in order to compress or expand the text.
///Bitmap fonts are deprecated, but kept for backward compatibility!
74
Pr ogr ammer s Ref er enc e Manual
5. Printer Settings




110 <n> Sets the print behavior for 2000 Series.
0 =!P is treated like !p1; the printer will become trig enabled and accept a single trig
before going offline.
1 =!P starts a printout
2 =the double queue with pre rendering is activated. Using this setting in combination
with sequence 2 and software pre trig (!Y1084 1) makes the printer treat !P like a pre trig
signal.
111 <n> Force heap graphics makes the printer transfer all downloaded graphics to its memory
heap instead of storing it in the file system. This can improve printing speed for printers
that are used in legacy integration systems that can not be updated to use the new
graphics features.
0 =disabled, the printer will store the downloaded graphics in the file system
1 =enabled, the downloaded graphics will be transferred into the heap
132<n> Enable mapping of barcode information. Normally barcode information is not mapped
since it is not considered to be readable text but rather binary information. Valid values
for n are {0,1}and they are interpreted as follows:
0 =barcode mapping disabled (default)
1 =barcode mapping enabled
133 The number of labels to be missing before the printer stops and signals paper out. The
value range is 0 to 10 but the total length cannot exceed the maximum feed. Default is 0.
134
4
<n> Enable recover page. If a printout is interrupted by media end or ribbon end and then
media or ribbon is replaced, a copy of the last printout can be printed in order to make
sure that the whole previous printout is printed. Valid values for n are {0, 1}and they are
interpreted as follows:
0 =recover page disabled
1 =recover page enabled (default)
136 <n> PDF code security level. Valid values for n are {0, 1, , 8}. Default is 4. This can also be
set with the service command !V61.
137 <n> PDF417 max number of columns. Valid values for n are all positive numbers. Default is 0,
which is interpreted as no limit. This can also be set with the service command !V61.
138 <n> PDF417 max number of rows. Valid values for n are all positive numbers. Default is 0,
which is interpreted as no limit. This can also be set with the service command !V61.
139 The setting decode variables on reception controls when the printer should convert
incoming variable data from a given codepage to Unicode. The default value 1 means
that variables are decoded using the codepage in which they are being transferred, while
0 is a behavior where variable data is not decoded until they are being tied to a field in
the layout, in which case the fields codepage is being used for the conversion.
0 =decode variable data using the codepage of its parent field(s)
1 =decode variable data on reception using the currently selected codepage at that time
(default)
145
4
<n> Timeout value for Telnet connections, in seconds. Valid values for n are
{0, 1, , 7200}. Default is 0, which is interpreted as no timeout.
146 <n> Line spacing, in percent of total font height. This parameter sets the distance between
the lines in a text field containing a CR. Valid values for n are {0, 1, , 999}, where 0 is
the default value and interpreted by the printer as 100%.
75
Pr ogr ammer s Ref er enc e Manual
5. Printer Settings




147 <n> The label taken sensor (LTS) delay is some extra time after the sensor has been
activated, until the printer signals the new sensor value. The extra delay can be used in
order to ease the label tear-off. Valid values for n are {0, 1, , 10000}where 0 is the
default value.
150
4
<n> Communication mode for COM1. Valid values for n are {0, 1, 2}and they are interpreted
as follows:
0 =Print mode (Labelpoint, default)
1 =Terminal server mode
2 =Terminal client mode
3 =RF-ID mode
4 =Stacked printers mode (daisy chaining)
151
4
<n> TCP port for COM1. Valid when communication mode is set to terminal server mode.
See parameter 150.
152
4
<n> Communication mode for COM2. Valid values for n are {0, 1, 2}and they are interpreted
as follows:
0 =Print mode (Labelpoint, default)
1 =Terminal server mode
2 =Terminal client mode
3 =RF-ID mode
4 =Stacked printers mode (daisy chaining)
153
4
<n> TCP port for COM2. Valid when communication mode is set to terminal server mode.
See parameter 152.
156 <n> Flow control for COM1. Valid values for n are {0, 1, , 4}and they are interpreted as
follows:
0 =both rts/cts and xon/xoff (default)
1 =rts/cts
2 =xon/xoff
3 =none
4 =disabled
157 <n> Flow control for COM2. Valid values for n are {0, 1, , 4}and they are interpreted as
follows:
0 =both rts/cts and xon/xoff (default)
1 =rts/cts
2 =xon/xoff
3 =none
4 =disabled
162
6
<n> Reverse video mode for text fields. Valid values for n are {0, 1}and they are interpreted
as follows:
0 =reverse video mode off
1 =reverse video mode on
76
Pr ogr ammer s Ref er enc e Manual
5. Printer Settings




167 <n> Media position sensor (MPS). The MPS can operate in three different modes, which may
be changed depending on how and where label gaps are positioned. The different modes
are realized by selecting the inner, outer or black mark sensor.
Compact: Valid values for n are {0, 1, 2, 3}
Nova: Valid values for n are {0, 1, 2, 3}
2000 Series: Valid value for n is {0}
2300: Valid values for n are {0, 2}
The values are interpreted as follows:
0 =outer gap sensor (default)
1 =inner gap sensor
2 =black mark sensor
3 =inverted black mark sensor
168
4
<n> Historic control mode. When enabled, historic strobes will be calculated during printout.
Valid values for n are {0, 1}and they are interpreted as follows:
0 =historic control off
1 =historic control on (default)
Note: This option is not available for older Compact models with the old CPU board (the
ones without USB port)
Note: Historic control is always enabled for 2000 Series, because its printhead has built-
in historic compensation.
170 <n> Sensor detect. This parameter is only used by Compact models to decide when and if an
automatic detection of current media position sensor (MPS) should be made. Valid
values for n are {0, 1, 2}and they are interpreted as follows:
0 =Auto detect sensor at startup (default when upgrading firmware)
1 =Auto detect sensor at auto adjust (default in future releases)
2 =Manual
If the manual mode is selected then parameter 167 is used to select sensor type.
174 <n> Print density is a percentage of the nominal strobe value. The amount of blackness from
a given strobe time depends on paper type used. See also parameter 175. Valid values
for n are {50, 55, , 150}. Default is 100.
175 <n> Historic compensation. When printing at high speed, problems may arise with "bleeding"
characters or diffuse edges. This effect is caused by the print head dots, which do not
have time to cool down, and can be reduced by increase Historic compensation. The
amount of heat (strobe time) will then be adjusted at each step, thereby improving print
quality. See also parameter 174. Valid values for n are {20, 25, , 150}. Default is 100.
176 <n> The strobe boost parameter is enabled in order to give the print head some extra power,
needed by certain resin thermal transfer ribbons. The strobe boost parameter shall be
used with caution, adjustment of the two 2000 Series strobe parameters 174 and 175 are
usually enough in order to get a perfect printout. Valid values for n are {0, 1}and they are
interpreted as follows:
0 =strobe boost disabled
1 =strobe boost enabled
178 <n> Maximum label width, in 0,1 mm. This parameter is used in combination with status
register 2 (bit 7, layout outside label) to check if a layout is outside the label (default) or, if
this parameter is set, outside the user defined width. This feature is useful to verify that a
printout is within a certain area of the label. Valid values for n are {0, 1, , 1040}.
Default is 0.
Note: Parameter 179 must also be specified in order to activate the check.
77
Pr ogr ammer s Ref er enc e Manual
5. Printer Settings




179 <n> Maximum label height, in 0,1 mm. This parameter is used in combination with status
register 2 (bit 7, layout outside label) to check if a layout is outside the label (default) or, if
this parameter is set, outside the user defined height. This feature is useful to verify that
a printout is within a certain area of the label. Valid values for n are {0, 1, , 65535}.
Default is 0.
Note: Parameter 178 must also be specified in order to activate the check.
180
5
<n> RAW data port number. A user defined port number can be specified to be able to send
RAW TCP data to the printer. Valid values for n are {1024, 1025, , 65535}. Default is
9100.
183 <n> Sets the default return value for the service command External trig count. Valid values for
n are {0, 1, 2}and they are interpreted as follows:
0 =number of trig counts
1 =number of successful print and apply cycles
2 =number of failed print and apply cycles
184 <n> If the triggered print end value is set to a value >0 and "!p" (unlimited triggered print) is
used, then triggered printing is disabled when the triggered print end value is equal with
the number of valid print and apply cycles (see service command External trig count).
Both the total number of successful print & apply cycles and the triggered print end value
are stored and remains after the printer has been restarted.
If this parameter is set to 0, then triggered printing will have a normal (old) behavior.
Valid values for n are all positive integers. Default value is 0.
Note: Only valid for 2000 Series.
It is not possible to use unlimited number of printouts ("!p"), if the triggered print end
value is set and is >=the total number of successful print and apply cycles.
185 <n> Best-before date update day. Specifies what day in the month to update the best-before
date. Valid values for n are {0, 1, , 31}and specifies what day in the month to do the
update. Default is 0, which will update the best-before date every day. It is not
recommended to use a value of n >28 for obvious reasons. See Best-before date for
further information.
186 <n> Best-before date truncation day. Specifies what day in the month to truncate the best-
before date to the first of next month. Valid values for n are {0, 1, , 31}and specifies
what day in the month to truncate the date. Default is 0, which means no truncation. See
Best-before date for further information.
187 MkII emulation mode. This parameter has been added in order to keep the backward
compatibility with the MkII printers. The goal is to generate a printout, which is identical
with the one from a MkII printer. Functions affected by this parameter is, for example:
- The ITF14 barcode
- Expansion of the barcode text
- Alignment of the barcode text
- Clipping of west- and east oriented fields
Valid values for n are {0, 1, 2}and they are interpreted as follows:
0 =normal mode
1 =MkII mode
190 Rotated rendering in degrees.

78
Pr ogr ammer s Ref er enc e Manual
5. Printer Settings




Note: Settings are read from memory at power-up. For settings to become permanent, that is
effective after the printer has been switched off, use the !Z command after a change.

Consider the following example where the following sequence will set 12 mm dispensing feed
length, Windows Latin 1 character set, 19200 baud and make these settings permanent:

Note: The printer must be restarted for the baud rate change to become valid. The other
parameters are changed immediately

Example:
!Y24 120
!Y35 1252
!Y30 19200
!Z

79
Pr ogr ammer s Ref er enc e Manual
6. Dot Check




The purpose of the Dot check functionality is to continuously scan through the print head to find out
if any dots are failing. The scanning process is active as soon as the printer becomes idle. Use
service command 33 to find out if any failing dots are found and use service command 34 to find
out at what position the failing dots were found.
6.1 Bar c ode Di spl ac ement
Failing dots may be seen in printouts as thin white stripes. It is important to keep track of the failing
dots, since the white stripes can coincide with the black fields of north- and south oriented barcode
fields and therefore making them unreadable. To avoid unreadable barcodes due to failing dots
Labelpoint supplies a possibility to move the north- and south oriented barcode fields in east- and
west directions until the white stripes coincide with the white parts of the barcode, if possible. The
more failing dots the less chance to succeed.
The barcode displacement functionality is activated by using the optional parameter when
specifying a barcode field in the layout. The optional parameter specifies the maximum allowed
east-west displacement of the barcode, in the current coordinate unit. In the following example a
EAN13 barcode is defined with a maximum displacement of +/-3mm. The default coordinate unit
mm/10 is assumed.
Example:
!F C N 300 250 L 100 2 32 30 "123456789012"

See section 2.6 Defining a Barcode Field for further information about the barcode field syntax.
To set a global displacement value for the Dot check function, see parameter 60. Note that if a
global value is set and the optional Dot check parameter is set in the field, the fields displacement
value overrides the global setting.
Note: The Dot check functionality requires extra hardware for Compact models but is mounted as
default on Nova and 2000 series.
80
Pr ogr ammer s Ref er enc e Manual
7. Configuration Menu




An easy-to-use configuration menu can be used to access most of the common settings. There are
three ways to access it, a text version can be accessed through the serial or network port and a
HTML version can be accessed through the built-in web server.
7.1 HTML Ver si on
Before accessing the web server in the printer, all network information in the printer must be set.
The web server listens on port 80, which is default for all HTTP traffic. To access it from a
computer connected to the same network as the printer, start a common web browser and enter
the printers IP address in the address bar of the browser. A configuration menu with most of the
common parameters will be shown.

Note: The first time apply is pressed a prompt for password appears. The default password is
empty so just press OK to make changes permanent. To set a password use the functionality in
the Miscellaneous menu or use service command 3209.
7.2 Tex t Ver si on
This menu is accessible via the COM ports by using a simple terminal program (for example
Hyperterminal). It is also possible to access the menu by connecting to the Telnet port, but this
requires that all network information in the printer is set. When connected, simply type !A to
access the menu. A configuration menu with most of the common parameters will be shown.
7.3 ASCI I User I nt er f ac e
7.3.1 I nt r oduc t i on
The Markem-Imaje thermal printers has an internal VT100 configuration menu for printer
parameters and settings. VT100 is a video terminal standard developed by Digital Equipment
Corporation (DEC) in the late 70:s. The terminal standard uses the ASCII character set and escape
control sequences in order to communicate with a host over a serial line. Many terminal emulators
and communication programs supports the VT100 terminal standard, for example: Tera Term and
Microsoft HyperTerminal.
7.3.2 Command Keys
Function Key(s) Description
Enter menu Enter Enter the selected menu.
Next item Down arrow key or Enter Move the cursor to the next menu item.
Previous item Up arrow key Move the cursor to the previous menu item
Next setting Right arrow key Move to the next setting for a menu item.
Previous setting Left arrow key Move to the previous setting for a menu item.
Execute
command
Enter
A dialog box, with a Yes / No question appears. Only available
for dialog commands (marked with "...").
81
Pr ogr ammer s Ref er enc e Manual
7. Configuration Menu




Yes y or Y Answer on a dialog box.
No n or N Answer on a dialog box.
Previous menu Esc
Leave present menu and enter the previous one. The VT100
menu system is closed if the root menu is selected when the
Esc key is pressed.
Previous menu
and save
Ctrl+O
Leave present menu and enter the previous one, changed
items will be stored. The VT100 menu system is closed if the
root menu is selected when Ctrl+O is pressed.
Previous menu
without save
Ctrl+C
Leave present menu and enter the previous one, changed
items will not be stored. The VT100 menu system is closed if
the root menu is selected when Ctrl+C is pressed.
Save and exit Ctrl+S Save settings an exit the VT100 menu system.
Exit Ctrl+X Exit the VT100 menu system.


82
Pr ogr ammer s Ref er enc e Manual
8. Document Commands




The document commands are a set of commands to control how the document is printed. In order
to support multiple hosts and to optimize the printing process, Labelpoint II has two document
commands. They are used to encapsulate print jobs, that is, a number of label print-outs.
The Compact printer may be equipped with a cutter. The cutter is automatically detected and
normally no manual commands are needed, but for some situations there are commands to further
control the cutter.
8.1 Doc ument St ar t
!D D S
8.2 Doc ument End
!D D E
The document commands enables Labelpoint to optimize the print process. If, for example,
automatic reverse feed is used, Labelpoint only reverse feeds the first layout in the print job. This
can save a lot of time when printing large batches.
Note: The dispensing feed and reverse feed must be set before the document start command is
sent.

Example

!Y24 60 // dispensing feed
!Y100 60 // reverse feed
!D D S // document start
!C // clear layout
!F T N 100 100 L 15 0 92501 %1V print-out
!R // clear variables
First
!P // print
!R
Second
!P
!R
Third
!P
!D D E // document end
83
Pr ogr ammer s Ref er enc e Manual
8. Document Commands




8.3 Cut t er Mode
When the printer is switched on, the cutter operates in automatic mode, that is, after each print-out
a cut is executed. The automatic mode can be turned off by the command:
!D T M
To turn automatic cutting on again, send the command:
!D T A
Note: Cutter mode is not available for 2000 Series.
8.4 Cut t i ng Command
To execute a cut when in manual cutting mode, send the command:
!D T T
(For backwards compatibility with MkII printers, the old cut command, !T, can be used.)
Note: Cutting command is not available for 2000 Series.
8.5 Label -t ak en Sensor (LTS)
When the optional LTS is installed it is active by default, that is, after each print-out the printer
waits for the label to be taken before it continues with the next print-out. The LTS can be turned off
by the command:
!D L 0
To turn the LTS on again, send the command:
!D L 1
Note: Label-taken sensor is not available for 2000 Series.


84
Pr ogr ammer s Ref er enc e Manual
9. Printer Connection




The printer can be connected either as a local printer or as a network printer.
9.1 Loc al Pr i nt er
When connected locally (with a serial or a parallel cable), the printer can be operated either
through a Windows printer driver or directly.
When operated directly, there is a tool, MP Communication API (ComAPI) available from Markem-
Imaje to make the communication with the printer more straightforward. It contains high-level calls
such as SendLayout(), SendVariable() and PrintLabel().
9.2 Net w or k Pr i nt er
To be able to use the printer in a network an IP address must be specified. This can be done with
the internal configuration menu or by using service commands. When an IP address is set it is
possible to use different protocols by connecting to the corresponding logical port. The following
protocols are supported:

TELNET port 23
FTP port 21
HTTP port 80
LPD port 515 (queue name: mp)
RAW TCP default port 9100 (user defined)

85
Pr ogr ammer s Ref er enc e Manual
10. Printer File System




This section describes how to store macros, graphics and fonts in the printer file system.
10.1 Conf i gur abl e St or age Pat h
Every printer has approximately 450kB of usable RAM file system (RFS) and 2MB of Flash
memory. In addition to this it is possible to connect a Compact Flash reader that can carry two CF
cards up to 2GB each. Data that is downloaded to the printer, without having a specific destination,
is stored in the printer's RFS. This may cause problems due to lack of storage space in situations
where external integration systems send large amounts of data to the printer.
The solution is to set a default storage path. In every Labelpoint command that initiates a file
download the sender specifies the name of the downloaded file. Usually this is nothing more than
the name, indicating that the file should be stored in the default storage path. Historically the
default storage path has been the RFS and nothing but the RFS, but that has changed in recent
firmware.
Parameter !Y1094 controls the default storage path and makes it possible to direct downloaded
data to a specific path. The table below lists the different storage locations with their corresponding
paths.
!Y1094 <n> Storage Path
0 RFS /
1 Flash /dev/flash0/
2 Compact Flash Slot 0 /dev/cf0/
3 Compact Flash Slot 1 /dev/cf1/

Note: Changing the storage path automatically affects the available storage space that is reported
by service command 19 and the web server's system info page.

86
Pr ogr ammer s Ref er enc e Manual
10. Printer File System




10.2 Mac r os
Commands and variable texts sent to the printer can be stored in the printer's file system and
retrieved on command. Such a sequence of data is called a macro and is equivalent to the same
commands received from the computer. Macros provide a convenient shorthand for long command
sequences, for example complex label layouts.
Macros can be loaded, deleted, and executed on command.
10.2.1 Loadi ng a Mac r o
The command to load a macro is:
!L M " <name>"
where <name>is the name to be assigned to the macro. The name can be any sequence of
printable characters (except the " character), up to 24 characters, and must be enclosed in double
quotes. If a macro with the same name already exists in the internal memory it will be deleted and
the new macro loaded in its place. Case is not significant in macro names.
The macro load command should be followed by the macro text. Loading is terminated by the
terminate command:
!L
The !L command will terminate the macro load. If no macro is being loaded this command is
ignored.
10.2.2 Del et i ng a Mac r o
To delete a macro, send the macro load command followed by the terminate command:
!L M <name>
!L

10.2.3 Ex ec ut i ng a Mac r o
The command for executing a macro is
!M " <name>"
where <name>is the name of the macro to be executed. If the macro <name>does not exist, this
command is ignored.
Any command can be included in a macro, except the macro execute command (nested macros
are not allowed).
10.2.4 Aut o Mac r o
If a macro with the name AUTO or auto is present in the file system, it will be executed when the
printer is switched on.
87
Pr ogr ammer s Ref er enc e Manual
10. Printer File System




10.3 Gr aphi c s
Graphics can be loaded into the printers file system. The procedure is similar to that for loading
macros. Graphics data can be transmitted in either Intel Hex, Intel Bin or raw binary format. For
further information about Intel Hex, see Appendix A.
The graphics consists of the graphics header and graphics information. For a description of the
graphics header, see Appendix B.
10.3.1 Loadi ng a Gr aphi c s Fi l e
The command for loading a graphics file is:
!L G <name> [t]
<name>is the name to be assigned to the graphics file, up to 255 characters. This command is
followed by the graphics data, including the header, in Intel Hex format.
[t] can be either H or F. If omitted, F is assumed:
H =The graphics data is transferred directly into the printers heap instead of being stored to the
file system. This is more efficient, but requires that graphics are downloaded again if the printer is
restarted.
F =The graphics data is stored in a .G file in the printers file system.
The loading is terminated by the command:
!L
10.3.2 Del et i ng a Gr aphi c s Fi l e
To delete a graphics file, send the graphics load command followed by the terminate command:
!L G <name>
!L

88
Pr ogr ammer s Ref er enc e Manual
10. Printer File System




10.4 Font s
Both TrueType and PCL fonts can be sent to the printer. They are stored in the printer file system
and can be used in text fields on demand. Since font files usually are larger than a typical macro or
graphics file, it is important to select an appropriate storage location.
It is important to make sure that you have licenses for the fonts you want to use.
10.4.1 Dow nl oadi ng a Font Fi l e
The command to download a font file is:
!L F " [optional path to storage/]< font name >.<extension>" [font size in bytes]
This command is followed by the font file's contents in any of the IntelHex, IntelBin or raw binary
encodings.
The possible storage locations are:
Path Location Maximum file size
/dev/cf0/fonts Compact Flash memory in slot 0 Depends the capacity on the inserted CF card
/dev/cf1/fonts Compact Flash memory in slot 1 Depends the capacity on the inserted CF card
/dev/flash0/fonts The printer's internal Flash memory Approximately 2MB
/fonts The printer's RAM file system 450kB

Extension Font type
ttf TrueType
fnt PCL

The downloading is terminated by the command:
!L
If no download is in progress this command is ignored. If a font size has been specified in the
download command, the printer will verify that the received number of decoded bytes matches the
specified number. If this is not the case, the font file will be deleted by the printer. Specifying 0 or
omitting the size value causes the printer to skip this test. This might be necessary when a
translator is translating a different font format and do not know how many bytes that are to be
transferred when the download starts.
Restarting the printer after downloading a font is not necessary. The printer automatically reloads
it's internal font indexes if a font has been successfully downloaded when the terminate command
arrives.
Note: It is possible to download fonts to the printer using FTP, but that requires the printer to be
restarted to be able to use the new fonts.
89
Pr ogr ammer s Ref er enc e Manual
10. Printer File System




10.4.2 Del et i ng a Font Fi l e
To delete a font file, send the font download command followed by the terminate command:
!L F " [optional path to storage/]< font name >.<extension>"
!L

Example:
Download a font to the first Compact Flash card
!L F "/dev/cf0/fonts/ARIAL.TTF" 367112
:intel hex encoded font data goes here
!L

Use the font in a text field
!F 0 450 200 CC 18 18 "ARIAL" "This is a font sample using The font Arial"

Delete the font from the printer
!L F "/dev/cf0/fonts/ARIAL.TTF"
!L

90
Pr ogr ammer s Ref er enc e Manual
11. Miscellaneous Commands




11.1 Count er s
There are ten counters available for consecutive numbering. They are numbered 1, 2, ..., 10. Each
counter is completely and independently programmable. The capacity is 9 digits (up to 999 999
999). Any of the counters may be printed as text or barcode, or both, and more than one counter
may be printed on the same label.
11.1.1 I ni t i al i zi ng Count er s
The command to initialize a counter is:
!N<counter number> <init value> [increment value] [width] [update interval] [always
update] [lower range limit] [upper range limit]

Argument Description
<counter number> The number by which this counter is referenced (1 - 10).
<init value> Initial count value. Default=0.
[increment value] Increment value (negative for counting down) to be added to the count when updating
the counter. Default=1.
[width] Width, that is, number of digits to be printed (1 - 9). Leading zeros are added if the
count value has less than <width>digits. If the count value has more than <width>
digits the excess digits are discarded. If <width>=0 the value of the counter is printed
without leading zeroes, up to 9 digits. Default=0.
[update interval] Update interval, that is, the number of labels to print before the counter is updated.
Default=1.
[always update] Tells if the counter is always to be updated after a printout, even when it was not
referenced in a field. Default=0.
0 =The counter is only updated if it was referenced in a printed field
1 =The counter is always updated.
[lower range limit] The counter range functionality is a feature that enables the User to set a range for
each counter. This is the lower range limit. Default=0. Has to be a non-negative value,
otherwise the command will not be accepted.
[upper range limit] The counter range functionality is a feature that enables the User to set a range for
each counter. This is the upper range limit. Default=0. Has to be a non-negative value,
otherwise the command will not be accepted.

Defining a counter only defines its initial state. All counters retain their value when the printer is
switched off and will continue where they left off when the printer is again switched on and printing
resumed.

91
Pr ogr ammer s Ref er enc e Manual
11. Miscellaneous Commands




Example:
The example below defines counter no. 1 to count 4 digits, starting at 500 and increment by 30
every two labels printed:
!N1 500 30 4 2
The count cycle will be: 0500, 0500, 0530, 0530, ..., 9950, 9950, 9980, 9980, 0010, 0010, 0040,
and so on.

The example below defines counter no. 2 to start at 10 and increment by 1 for each label printed.
All other arguments will be set to their default values. All significant digits are printed:
!N2 10
The count cycle will be: 10, 11, 12, 13, 14, ..., 999999999, 0, 1, 2, and so on.

The example below sets a counter range between 500 and 1000, for counter no. 3. Note that both
the <init value>and the <lower range limit>has to be set to the same value (500 in this example):
!N3 500 1 3 1 0 500 1000

11.1.2 Ret r i evi ng I nf or mat i on About Count er s
Use the service command !V32, in order to retrieve information about a counter.
11.1.3 Pr i nt out
A counter reference in a field has the form %<n>C where n is the number of the counter.
Example:

An example label layout, with a reference to counter number five:
!C
!Y35 10
!F S S 40 1000 L 10 10 94021 "Count value for counter no 5: %5C"
!P

Printout:
Count value for counter no 5: 000160
92
Pr ogr ammer s Ref er enc e Manual
11. Miscellaneous Commands




11.2 Paper Feed
There are two types of paper feed:
Automatic reverse feed before print-out
Paper feed on command.
11.2.1 Aut omat i c Rever se Feed
Sometimes, especially for small labels, there is a need to print on the entire label, even on the part
that is already feed out to position the label for tear-off. The label may then be retracted before
printout. The parameter !Y100 <n> will cause the printer to retract the paper <n>tenths of mm
before each print-out. This parameter is usually sent along with the layout.
11.2.2 Paper Feed on Command
The command !K <n> feeds out n / 10 mm of paper. The paper is fed backwards (into the printer)
if <n>is negative. This command common, since the automatic reverse feed parameter was
introduced. It can be used when printing a batch of labels. Only the first label needs to be
retracted, and after the last label has been printed, the paper is fed out for tear-off position. The
maximum paper feed allowed is 30 mm (n =300).
Examples:
!K 100 feeds out 10 mm of paper.
!K 50 retracts the paper 5 mm.

Note: The negative feed must not exceed the amount of paper fed out outside the print head.
Excessive negative paper feed may cause the printer to lose the paper so that it cannot feed the
paper.
93
Pr ogr ammer s Ref er enc e Manual
11. Miscellaneous Commands




11.3 I nf or mat i on Tag
Information tag command, !I T <n>, where n is a positive integer, 0 - 65535.
The printer responds with an information tag acknowledge, !I A <n>, where n is identical with the
number sent in the preceding !I T <n> command.
The information tag command is useful in order to make sure that the two connected units (control
device and printer) are synchronized.

Example:
!C
!Y35 10
!F S S 50 940 L 15 15 92500 "Layout 1"
!P
!I T 1
!C
!Y35 10
!F S S 50 940 L 15 15 92500 "Layout 2"
!P
!I T 2

The machine will reply:
!I A 1
after the first layout has been printed and:
!I A 2
after the second layout has been printed.
94
Pr ogr ammer s Ref er enc e Manual
11. Miscellaneous Commands




11.4 St r i ng Tr ansl at i on
The string translation feature substitutes one character string for another. This allows simple
command conversion.

!J "<source string>" "<target string>"

Argument Description
<source string> The original string to be translated
<target string> The string to be substituted for the source string

Non-printable characters are not allowed, the function is therefore only partly compatible with the
MkII printers which allowed all ASCII characters for !J .
Several translations can be added.
Note: String translations are not stored in non-volatile memory, they have to be added every time
the printer is restarted!

Examples:
Add a print string translation:
!J "print" "!P"
This makes the printer convert all "print" sentences in the input data stream to the !P (print
command). The !P command can of course also be added as normal.

Clear all string translations:
!J

Clear a single string translation:
!J "<source string>" ""
95
Pr ogr ammer s Ref er enc e Manual
11. Miscellaneous Commands




11.5 Shi f t Codes
Shift codes is a feature that enables the user to mark products with a user defined text to indicate
during which time span the product has been produced. There is room for up to 24 individual shift
codes. Each shift code consists of a shift code number (1-24), a start time (hh:mm) and a user
defined string (maximum 15 Unicode char). The user can add shifts, delete individual shifts, delete
all shifts or view the shifts currently stored in the shift list by using different service commands:
!V127 - Add shift code
!V128 - Delete shift code
!V129 - Get shift code

To include the current shift code string in a field, type the escape sequence %SC in the layout
field.
If there is not any defined code for the current shift the printed string is empty.
The shifts are sorted by start time in the shift list.
Unicode characters are entered using the escape sequence '\u' followed by a four digit (16 bit)
hexadecimal number.

Note: Shift codes are not stored in nonvolatile memory, they have to be added every time the
printer is restarted!
96
Pr ogr ammer s Ref er enc e Manual
11. Miscellaneous Commands





Examples:

Add three different shifts:
!V127 1 06:00 "Shift 1"
!V127 2 14:00 "Shift 2"
!V127 3 22:00 "Shift 3"

Delete shift code number 2:
!V128 2

Delete all shift codes:
!V128

Retrieve a list with all added shift codes:
!V129
01 06:00 Shift 1
02 14:00 Shift 2
03 22:00 Shift 3

An example label layout. The command %SC is used in order to add present shift
code to a field:
!C
!F S S 40 1000 L 10 10 94021 "Present shift: %SC"

Printout, if present time is 06:00-13:59:
Present shift: Shift 1

Printout, if present time is 14:00-21:59:
Present shift: Shift 2

Printout, if present time is 22:00-05:59:
Present shift: Shift 3

97
Pr ogr ammer s Ref er enc e Manual
11. Miscellaneous Commands




11.6 Mat c h Code
The match code functionality is used in combination with a barcode reader to verify the printed
barcode. The printer compares the printed barcode with the character string received from the
barcode reader. If the string differs, the machine stops and signals error. To enable this feature,
match code must be enabled for the barcode reader. This can this can be done via the ASCII user
interface or the web server.
The service command !V131 - set matchcode, is used in order to enter the text to compare with.
Both static text and variables can be used as long as it is the exact same string as the one entered
for the barcode to print.
The match code string is volatile and needs to be entered upon restart or if the content in the
barcode changes.
Note: Only valid for 2000 Series equipped with a barcode reader.

Example:

Mach code with static text:
!C
!V131 1 "123456"
!Y42 1
!F C S 140 880 L 152 10 2 "123456"

Match code with a variable:
!C
!V131 1 "%1V"
!Y42 1
!F C S 140 880 L 152 10 2 "%1V"
!W1 "123456"

Reset the matchcode string:
!V131 99

98
Pr ogr ammer s Ref er enc e Manual
11. Miscellaneous Commands




11.7 Sw i t c h Dat e Of f set
The switch date offset is a feature that enables the user to set a time of day when the internal clock
changes date. This will not affect the time displayed to the user since the internal time of the printer
is corrected with the same offset before the time is presented on screen or printed on a label. The
following is list of operations for the switch date offset:
!V125 - Set the switch date offset
!V126 - Get the switch date offset

Example:

Set a switch date offset. In this example the internal clock will change date at
03:00 instead of midnight:
!V125 03:00

Display the current switch date offset (hh:mm).
!V126
03:00

99
Pr ogr ammer s Ref er enc e Manual
12. Flow Control




The Markem-Imaje printer supports both software flow control, XON-XOFF, and hardware flow
control, RTS-CTS. When the input buffer becomes 75 % full, an XOFF character is sent out and
the RTS signal is taken to the inactive state. When the input buffer becomes less than 25 % full, an
XON character is sent out and RTS is set active.
When the printer runs out of paper, processing continues until a print command is received. The
printer will refuse to print before new paper has been loaded. If a print command is received while
the printer is out of paper the RTS signal is made inactive and processing is suspended. If the host
continues to send data, despite the inactive RTS signal, the printer sends out an XOFF character
when the input buffer becomes 75 % full. If the host ignores both the RTS signal and the XOFF the
input buffer will eventually overflow, and data will be lost.
When new paper has been loaded, the printer continues to process input data where it left off.
12.1 Tr ue Tw o-w ay Communi c at i on
If true two-way communication with the printer is possible, the host can send the status request
commands described above. The status request should be sent before each print command to
verify that there is paper in the printer, and again after the print command. The printer responds to
the last status request when the print cycle is complete, and it shows the status after the print
cycle.
The status request can also be used as a means of synchronizing with the printer, since the status
request command is stored in the input buffer with other commands and data. By sending a status
request at regular intervals (smaller than the size of the input buffer), and waiting for the response
before proceeding, the host can avoid sending more data than can be accommodated in the input
buffer.
If it is not possible to receive status information from the printer it is preferable that the host
computer obey RTS or XON/XOFF flow control, or both. Small amounts of data can be sent
without flow control, but if the printer cannot suspend the data flow from the host it may not be able
to preserve all the data it receives when it runs of paper.
12.2 ENQ - ACK/NAK
The printer responds to the ENQ character (ASCII 05) with either ACK (ASCII 06) or NAK (ASCII
15H =21). NAK is sent if the printer has any active errors, ACK otherwise.
100
Pr ogr ammer s Ref er enc e Manual
Appendix A: Compressed Graphics




Compressed graphics can either be sent to the printer's remote file system (RFS) or directly to the
heap. In the case of RFS storage, it will be unpacked to the heap when requested by a graphics
field. In the case of a heap transfer, it is immediately unpacked upon reception on the selected
communications port.
The compressed data is indicated with an addition to the graphics stream header. The old header
was 10 bytes long and if there is compressed data, it is instead 12 bytes. The next to the last byte
indicates what compression algorithm that has been used. Where applicable, the last byte carries
the repetition header that has been used.

Since the receiver does not know what specific compression algorithm has been used, the header
data must always be transferred uncompressed with values reflecting the properties of the
uncompressed data. This is so that the receiver can use the Image Byte Width and Height in
dots values to pre-allocate a sufficiently large graphics buffer before starting to decode the packed
bits.
101
Pr ogr ammer s Ref er enc e Manual
Appendix A: Compressed Graphics




The example below shows a rather large barcode graphic that has been compressed with row
folding RLE to less than 2% of its uncompressed size. Also note that this is intended to be
transferred as three Intel Hex lines. One header line, one graphics data line and one data
terminator line. The line breaks have been added only for increased readability in this case.

!L G "gfxname_N"
:0C0000000C00E000C0010000380000000F
:5E000000DB5A0883098303890389038303830383038309890389038903830389038309830383038
30389038909830383038903830983038903890383038303890983038909830383038303890389098
303830383038903830983038903890383050033
:00000001FF
!L

Suppor t ed Al gor i t hms
The printer understands the following RLE algorithms:
0 Row folded PackBits algorithm
This is a row folding variant of the well known PackBits algorithm where bit runs are encoded in
bytes where the most significant bit, if set, signifies that it is a run of black dots and the remaining 7
bits contain the number of dots in the run.
The row folding is carried out by adding two bytes before each encoded line where the first byte
signifies the number of times the encoded line is repeated and the second byte encodes the size in
bytes of the encoding. Repeat counts that exceed 255 lines are encoded as multiple repetitions.
This algorithm can not handle data that requires encodings wider than 255 bytes.
Trailing white space is discarded for each line, meaning that white lines are encoded with 0 bytes
of encoded data.

1 PackBits algorithm
When dealing with data that has few line repetitions it might be beneficial to use this algorithm that
doesn't have the 2 byte overhead per encoded line. Apart from this difference the actual bit
packing is the same as in algorithm 0.

2 Byte level encoding with repetition header
While the first two algorithms work at bit level, this algorithm works on byte level. This is beneficial
when dealing with heavily dithered data such as grayscale images that have been converted to 1-
bit using for example the Floyd-Steinberg dithering algorithm.
Repetitions of four bytes or more are encoded using a certain repetition byte that is then encoded
in the graphics header to tell the decoder what to treat as a repetition. The best result is achieved
when there is an unused byte value in the data but if this is not the case, the encoder should pick
the value with the lowest use frequency.
102
Pr ogr ammer s Ref er enc e Manual
Appendix A: Compressed Graphics




The encoding algorithm will do the following:
- Determine the repeat count (1 to "infinity") of the current byte. If it is 1 (no repetition) and it
is not the repeat header byte, write it out as is. If it is the repeat header byte, write it out
followed by a repeat count of 0 (0x00).
- If the repeat count is 2 and it is not the repeat header byte write it out twice. If it is the
repeat header byte, write it out followed by a repeat count of 1 (0x01).
- If the repeat count is 3 and it is not the repeat header byte write it out three times. If it is the
repeat header byte, write it out followed by a repeat count of 2 (0x02).
- If the repeat count is 4 or more write out every chunk of 256 bytes as the repetition header
followed by 255 (0xFF). If the remainder is 4 or more encode it as repetition byte followed
by remainder - 1. If it is 1 to 3 encode it as per the rules above.
- Start over from the beginning while there is more data to encode.

3 not implemented

4 DataMax RLE2
This algorithm is a mix of the previously described ones. It works at bit level, but makes a better job
when it comes to handling long bit runs and slightly dithered data. It works as follows:
Black bits:
If the remaining run length is 1 to 63 bits encode it in a single byte as 0x80 +run length. If the run
length is 64 bits or more:
- Calculate the corresponding number of longs as numlongs =(bits / 32).
- Encode 0x60 +0x1F and subtract 31 from the number of longs while the number of longs is
greater than or equal to 31.
- Encode the remaining number of longs as 0x60 plus the number of longs.

White bits:
If the bit count is 8 or less white bits:
If the previous bit run contained 8 or less black bits:
- Shift up the black bit count three steps (multiply by 8) and add the number of white bits.
- Encode it as 0xB7 +the result from the previous operation.
If the previous bit run contained more than 8 black bits:
- Encode the bit count as is
103
Pr ogr ammer s Ref er enc e Manual
Appendix A: Compressed Graphics




If the bit count is 9 or more:
If the run length is 64 bits or more
- Calculate the corresponding number of longs as numlongs =(bits / 32).
- Encode 0x40 +0x1F and subtract 31 from the number of longs while the number of longs is
greater than or equal to 31.
- Encode the remaining number of longs as 0x40 plus the number of longs.
If the remaining run length is 1 to 63 bits encode it in a single byte as is.

5 Inverted Datamax RLE2
This encoding is implemented for legacy reasons and should not be used for new implementations.

104
Pr ogr ammer s Ref er enc e Manual
Appendix B: IntelHex Records




I nt el Hex Fi l e For mat
Binary data, for example logos and program code, can be sent to the Markem-Imaje thermal printer
in Intel hex format. This is an ASCII data format widely used for transferring binary data between
computers and to PROM programming devices. There is also a binary mode available of Intel hex
format. See Appendix C for further information.
Dat a For mat
Intel hex data consists of lines of ASCII hex characters. Each line starts with colon (:) and ends
with a checksum, followed by a carriage return character.
Each byte of data is transmitted as two hex characters (0 ... 9, A ... F) with the high-order character
transmitted first.
The record format is: :ll aaaa tt dd dd ... dd xx (Spaces are shown for clarity only), where:
: Record start character
ll Number of data bytes in the record
aaaa 16-bit load address
tt Record type number
dd Data characters, 2 characters per byte of data
xx 8-bit checksum, defined so that ll+aa+aa+tt+dd+dd+...+dd+xx =0

The record type number defines the type of record. The following record types are used in the
printer:
Segment record sets the segment value of the load address.
ll 02
aaaa 0000 (not used)
tt 02
data Segment load address (4 hex digits)

Data Record
ll Number of data bytes (max 20 =32 decimal)
aaaa Load address
tt 00
dd Binary data, 2 characters per byte

End record must be the last record in a transfer.
ll 00
aaaa 0000 (not used)
tt 01
105
Pr ogr ammer s Ref er enc e Manual
Appendix B: IntelHex Records




Since the address field is not used by the printer the end record always has the form :00000001ff
Label poi nt Load Gr aphi c s Command
When using the Labelpoint load graphics command, !L G ..., the segment record is not needed,
since Labelpoint decides where to store the graphics file.
Gr aphi c s For mat
Graphics are stored as bit-mapped graphics, where a bit set to 1 represents a black dot on the
paper. The actual bit-map is preceded by a table, which specifies the height and width of the logo.
offset contents
0,1 0A,00
2,3 Height of the pattern in dots
4,5 Width of the pattern in dots
6,7 00,00
8,9 Row length, the number of bytes stored for each row of bit-mapped data
10 ... The bit-mapped graphic data

The bit-mapped data is stored 8 bits per byte with the specified number of bytes per row. Thus the
total number of bytes required for the bitmap will be equal to the row length times the height of the
pattern.
The figure below shows how each bit in the bit map corresponds to a dot on the paper.
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
paper f eed di r ect i on
1 2 byt e
bi t
r ow 0
1
2
3
4
106
Pr ogr ammer s Ref er enc e Manual
Appendix C: Intel Binary Records




I nt el Bi nar y Fi l e For mat
The Intel binary records were designed to improve download speed of graphics data to the
printers.
A Markem-Imaje binary record (line) has the following structure:
; L AA D... C
The record is ended with <CR>or <CR/LF>.

Each upper case character represents one data byte.
L number of data bytes in the record (can be up to 128)
AA load address (offset)
D... up to 128 data bytes
C two's complement of the sum of the length, address, and data bytes

L, A, D, and C are binary data. However, data bytes below 20 hex must be transformed to non-
control characters by shift control characters so that the resulting data is always between 20 hex
and FF hex except for the control characters below.

SI sets control character mode. The following bytes will be masked to 5 bits. SI remains in
effect up to the end of the record.
SO clears control character mode
DLE toggles the control character mode, for one byte only.

Intel binary records do not have transfer type descriptors, type is always data. There is no start,
end or segment records.

Cont r ol Char ac t er s
SO 0E(hex)
SI 0F(hex)
DLE 10(hex)

Li mi t at i ons
MkII series does not support long lines of data, max number of characters per line should not
exceed 80.
107
Pr ogr ammer s Ref er enc e Manual
Appendix D: Raw Binary Records




Raw Bi nar y Fi l e For mat
The Raw binary records were designed to improve download speed of graphics data to the
printers.
To specify to the printer that the following data is binary, start the line with =
To tell the printer how much data that is about to be transferred, send the byte count as a 16 bit
value with the most significant byte first <msb><lsb>. After these three control bytes, the binary
data is sent as is directly to the printer.

Example:
To send the binary sequence <0><1><2><3><4><5><6><7><8><9> to the printer, we
send the following command:
=<0><10><0><1><2><3><4><5><6><7><8><9>

Note: there is no <CR><LF> following this command since the header already has told the printer
how much data to expect.
Also note that the 16 bit length header restricts the amount of data that can be transferred to 65535
bytes in a single command. Nothing prevents the user from sending multiple commands though.
108
Pr ogr ammer s Ref er enc e Manual
Appendix E: Code Pages




Markem-Imaje products support the code pages below. Note that the 8 bit Unicode transformation
format (UTF-8) can be used instead by setting parameter 35 to 99.
Code Page 850, MS-DOS Lat i n 1
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 @ P ` p -
1 ! 1 A Q a q
2 " 2 B R b r
3 # 3 C S c s
4 $ 4 D T d t
5 % 5 E U e u
6 & 6 F V f v
7 ' 7 G W g w
8 ( 8 H X h x
9 ) 9 I Y i y
A * : J Z j z
B + ; K [ k {
C , < L \ l |
D - = M ] m }
E . > N ^ n ~
F / ? O _ o

Sw edi sh/Fi nni sh Char ac t er Set (7-bi t )
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 P p _ _
1 ! 1 A Q a q _
2 " 2 B R b r _
3 # 3 C S c s _
4 $ 4 D T d t
5 % 5 E U e u
6 & 6 F V f v
7 ' 7 G W g w
8 ( 8 H X h x
9 ) 9 I Y i y
A * : J Z j z
B + ; K k
C , < L l
D - = M m
E . > N n
F / ? O _ o
109
Pr ogr ammer s Ref er enc e Manual
Appendix E: Code Pages




Ger man Char ac t er Set (7-bi t )
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 @ P ` p _ _
1 ! 1 A Q a q _
2 " 2 B R b r _
3 # 3 C S c s _
4 $ 4 D T d t
5 % 5 E U e u
6 & 6 F V f v
7 ' 7 G W g w
8 ( 8 H X h x
9 ) 9 I Y i y
A * : J Z j z
B + ; K k
C , < L l
D - = M m
E . > N ^ n
F / ? O _ o

UK Char ac t er Set (7-bi t )
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 @ P ` p _ _
1 ! 1 A Q a q _
2 " 2 B R b r _
3 3 C S c s _
4 $ 4 D T d t
5 % 5 E U e u
6 & 6 F V f v
7 ' 7 G W g w
8 ( 8 H X h x
9 ) 9 I Y i y
A * : J Z j z
B + ; K [ k {
C , < L \ l |
D - = M ] m }
E . > N ^ n ~
F / ? O _ o

110
Pr ogr ammer s Ref er enc e Manual
Appendix E: Code Pages




Fr enc h Char ac t er Set (7-bi t )
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 P ` p _ _
1 ! 1 A Q a q _
2 " 2 B R b r _
3 3 C S c s _
4 $ 4 D T d t
5 % 5 E U e u
6 & 6 F V f v
7 ' 7 G W g w
8 ( 8 H X h x
9 ) 9 I Y i y
A * : J Z j z
B + ; K k
C , < L l
D - = M m
E . > N ^ n ~
F / ? O _ o

Nor w egi an/Dani sh Char ac t er Set (7-bi t )

0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 @ P ` p _ _
1 ! 1 A Q a q _
2 " 2 B R b r _
3 # 3 C S c s _
4 $ 4 D T d t
5 % 5 E U e u
6 & 6 F V f v
7 ' 7 G W g w
8 ( 8 H X h x
9 ) 9 I Y i y
A * : J Z j z
B + ; K k
C , < L l
D - = M m
E . > N ^ n ~
F / ? O _ o
111
Pr ogr ammer s Ref er enc e Manual
Appendix E: Code Pages




Spani sh Char ac t er Set (7-bi t )
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 @ P ` p _ _
1 ! 1 A Q a q _
2 " 2 B R b r _
3 # 3 C S c s _
4 $ 4 D T d t
5 % 5 E U e u
6 & 6 F V f v
7 ' 7 G W g w
8 ( 8 H X h x
9 ) 9 I Y i y
A * : J Z j z
B + ; K ! k {
C , < L l
D - = M ? m }
E . > N ^ n ~
F / ? O _ o

I t al i an Char ac t er Set (7-bi t )
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 @ P p _ _
1 ! 1 A Q a q _
2 " 2 B R b r _
3 3 C S c s _
4 $ 4 D T d t
5 % 5 E U e u
6 & 6 F V f v
7 ' 7 G W g w
8 ( 8 H X h x
9 ) 9 I Y i y
A * : J Z j z
B + ; K k
C , < L l
D - = M m
E . > N ^ n
F / ? O _ o

112
Pr ogr ammer s Ref er enc e Manual
Appendix E: Code Pages




Code Page 861, MS-DOS I c el andi c
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 @ P ` p
1 ! 1 A Q a q
2 " 2 B R b r
3 # 3 C S c s
4 $ 4 D T d t
5 % 5 E U e u
6 & 6 F V f v
7 ' 7 G W g w
8 ( 8 H X h x
9 ) 9 I Y i y
A * : J Z j z
B + ; K [ k {
C , < L \ l |


D - = M ] m }


E . > N ^ n ~
F / ? O _ o

113
Pr ogr ammer s Ref er enc e Manual
Appendix E: Code Pages




Code Page 1252, Wi ndow s Lat i n 1 (ANSI )
In Labelpoint, this code page was previously called DEC Multi-national which means ISO 8859-1.
ANSI-1252 is superset of ISO 8859-1 with characters between 80 and 9F added.
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 @ P ` p
1 ! 1 A Q a q
2 " 2 B R b r
3 # 3 C S c s
4 $ 4 D T d t
5 % 5 E U e u
6 & 6 F V f v
7 ' 7 G W g w
8 ( 8 H X h x
9 ) 9 I Y i y
A * : J Z j z
B + ; K [ k {
C , < L \ l |
D - = M ] m } -
E . > N ^ n ~
F / ? O _ o

Code Page HP Roman-8
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 @ P ` p
1 ! 1 A Q a q
2 " 2 B R b r
3 # 3 C S c s
4 $ 4 D T d t
5 % 5 E U e u
6 & 6 F V f v
7 ' 7 G W g w
8 ( 8 H X h x
9 ) 9 I Y i y `
A * : J Z j z
B + ; K [ k {
C , < L \ l |
D - = M ] m }
E . > N ^ n ~
F / ? O _ o

114
Pr ogr ammer s Ref er enc e Manual
Appendix E: Code Pages




Code Page 852, MS-DOS Lat i n 2 (Cent r al Eur ope)
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 @ P ` p -
1 ! 1 A Q a q
2 " 2 B R b r
3 # 3 C S c s
4 $ 4 D T d t
5 % 5 E U e u
6 & 6 F V f v
7 ' 7 G W g w
8 ( 8 H X h x
9 ) 9 I Y i y
A * : J Z j z
B + ; K [ k {
C , < L \ l |
D - = M ] m }
E . > N ^ n ~
F / ? O _ o

Code Page 1250, Wi ndow s Lat i n 2 (Cent r al Eur ope)
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 @ P ` p
1 ! 1 A Q a q
2 " 2 B R b r
3 # 3 C S c s
4 $ 4 D T d t
5 % 5 E U e u
6 & 6 F V f v
7 ' 7 G W g w
8 ( 8 H X h x
9 ) 9 I Y i y
A * : J Z j z
B + ; K [ k {
C , < L \ l |
D - = M ] m } -
E . > N ^ n ~
F / ? O _ o

115
Pr ogr ammer s Ref er enc e Manual
Appendix E: Code Pages




Code Page 855, MS-DOS Cyr i l l i c
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 @ P ` p -
1 ! 1 A Q a q
2 " 2 B R b r
3 # 3 C S c s
4 $ 4 D T d t
5 % 5 E U e u x
6 & 6 F V f v X
7 ' 7 G W g w
8 ( 8 H X h x
9 ) 9 I Y i y
A * : J Z j z
B + ; K [ k {
C , < L \ l |
D - = M ] m }
E . > N ^ n ~
F / ? O _ o

Code Page 1251, Wi ndow s Cyr i l l i c (Sl avi c )
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 @ P ` p
1 ! 1 A Q a q
2 " 2 B R b r
3 # 3 C S c s
4 $ 4 D T d t
5 % 5 E U e u
6 & 6 F V f v
7 ' 7 G W g w
8 ( 8 H X h x
9 ) 9 I Y i y
A * : J Z j z
B + ; K [ k {
C , < L \ l |
D - = M ] m } -
E . > N ^ n ~
F / ? O _ o

116
Pr ogr ammer s Ref er enc e Manual
Appendix E: Code Pages




Code Page 1253, Wi ndow s Gr eek
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 @ P ` p

1 ! 1 A Q a q

2 " 2 B R b r

3 # 3 C S c s

4 $ 4 D T d t

5 % 5 E U e u

6 & 6 F V f v

7 ' 7 G W g w

8 ( 8 H X h x

9 ) 9 I Y i y

A * : J Z j z

B + ; K [ k {

C , < L \ l |

D - = M ] m }
-
E . > N ^ n ~

F / ? O _ o


Code Page 1254, Wi ndow s Lat i n 5 (Tur k i sh)
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 @ P ` p

1 ! 1 A Q a q

2 " 2 B R b r

3 # 3 C S c s

4 $ 4 D T d t

5 % 5 E U e u

6 & 6 F V f v

7 ' 7 G W g w

8 ( 8 H X h x

9 ) 9 I Y i y

A * : J Z j z

B + ; K [ k {

C , < L \ l |

D - = M ] m }
-
E . > N ^ n ~

F / ? O _ o


117
Pr ogr ammer s Ref er enc e Manual
Appendix E: Code Pages




Code Page 1257, Wi ndow s Lat i n 6 (Bal t i c Ri m)
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 @ P ` p

1 ! 1 A Q a q

2 " 2 B R b r

3 # 3 C S c s

4 $ 4 D T d t

5 % 5 E U e u

6 & 6 F V f v

7 ' 7 G W g w

8 ( 8 H X h x

9 ) 9 I Y i y

A * : J Z j z

B + ; K [ k {

C , < L \ l |

D - = M ] m }
-
E . > N ^ n ~

F / ? O _ o


Code Page I SO 8859-2
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 @ P ` p

1 ! 1 A Q a q

2 " 2 B R b r

3 # 3 C S c s

4 $ 4 D T d t

5 % 5 E U e u

6 & 6 F V f v

7 ' 7 G W g w

8 ( 8 H X h x

9 ) 9 I Y i y

A * : J Z j z

B + ; K [ k {

C , < L \ l |

D - = M ] m }
-
E . > N ^ n ~

F / ? O _ o

118
Pr ogr ammer s Ref er enc e Manual
Appendix F, Quick Reference Guide




Command Summar y
!A ASCII user interface
!C Clear label layout
!D Document command
!F Label layout field (text, barcode or matrix code, line/box, text box,
circle/ellipse or graphics)
!I Information
!J String translation
!K Paper feed
!L Load file (for example macro, logo)
!M Execute macro
!N Set counter
!O Silent print and apply cycle
!p Triggered printout
!P Print
!r Lock variable
!R Clear variable information
!S Status request
!V Service command
!W Change a single variable
!X Get printer configuration parameter
!Y Set printer configuration parameter
!Z Make settings permanent

119
Pr ogr ammer s Ref er enc e Manual
Appendix F, Quick Reference Guide




St at us Request s
See section 3 Status Request Commands.
120
Pr ogr ammer s Ref er enc e Manual
Appendix F, Quick Reference Guide




Ser vi c e Commands
!V9 Software revision level
!V10 Printer ID
!V11 Software date
!V12 Label count
!V13 Available dynamic RAM (bytes)
!V15 Total paper feed (mm)
!V16 PROM number
!V17 Total paper feed
!V19 Free file system size (bytes)
!V20 Set time (Ex: !V20 14:30:00)
!V21 Set date (Ex: !V21 94-02-17)
!V22 Get date and time
!V23 Get bitmap font name by logical number
!V24 Get logo information by name
!V25 Get logo information by number
!V26 Get macro content
!V31 Get length of last paper movement
!V32 Show contents of counter
!V33 Number of failing dots (Dot check)
!V34 Position of failing dot
!V39 Get remaining number of triggered printouts
!V40 Get bitmap font name by physical font number
!V44 Automatically adjust sensitivity of paper sensor
!V45 Set default character spacing for bitmap fonts
!V48 Get filename
!V61 Set security level for PDF417
!V63 Get serial number
!V66 Get article number
!V74 Form-feed character at the beginning of every print cycle
!V80 Show Agfa MicroType typeface by index <m>
!V81 Show TrueType typeface by index <m>
!V82 Macro installed
!V83 Show PCL typeface by index <m>
!V85 Reload fonts from disk
!V93 Get number of triggered printouts
121
Pr ogr ammer s Ref er enc e Manual
Appendix F, Quick Reference Guide




!V99 Get DHCP status
!V100 Set network IP address
!V101 Get network IP address
!V102 Set network IP mask
!V103 Get network IP mask
!V104 Set network host name
!V105 Get network host name
!V106 Set domain name
!V107 Get domain name
!V108 Get DHCP info (IP address, IP mask, gateway)
!V109 Get MAC address
!V110 Set network default gateway
!V111 Get network default gateway
!V114 Get RF tag serial no
!V115 Set terminal client login script
!V116 Get terminal client login script
!V117 Get active communications port
!V120 Get printer model
!V121 Set user month name
!V122 Get user month name
!V123 Set user weekday name
!V124 Get user weekday name
!V125 Set the switch date offset
!V126 Get the switch date offset
!V127 Add shift code
!V128 Delete shift code
!V129 Get shift code
!V130 Emulate Start button
!V131 Set matchcode
!V132 Emulate Pause button
!V133 Get barcode quality index
122
Pr ogr ammer s Ref er enc e Manual
Appendix F, Quick Reference Guide





!V3194 Delete files
!V3196 Restart
!V3200 Reset parameter values
!V3201 Disconnect port
!V3206 String format
!V35183 Enter user mode
!V38153 Enter setup mode
123
Pr ogr ammer s Ref er enc e Manual
Appendix F, Quick Reference Guide




Pr i nt er Conf i gur at i on Par amet er s
!Y2 Print speed (mm/s)
!Y3 Barcode speed (mm/s)
!Y4 Blank feed speed (mm/s)
!Y5 Print head type
!Y6 Dots per mm
!Y7 Motor steps per mm (24)
!Y8 Dots on head
!Y9 Dot mode (0 = XOR, 1= OR)
!Y16 Force DT (off, on)
!Y18 MPS sensitivity
!Y20 Threshold level for photo sensor (<n>=2, ...,12)
!Y21 Current level to photo sensor
!Y23 Max. paper feed (0,1 mm/s)
!Y24 Dispensing feed (0,1 mm/s)
!Y25 COM2 Baud rate
!Y26 COM2 Parity
!Y27 COM2 word length
!Y28 COM2 Stop bits
!Y29 COM2 Input buffer size
!Y30 COM1 Baud rate
!Y31 COM1 Parity
!Y32 COM1 word length
!Y33 COM1 Stop bits
!Y34 COM1 Input buffer size
!Y35 Character set
!Y36 Command character
!Y39 LTS disable
!Y40 Min. Paper feed
!Y42 Barcode interpretation
!Y44 Alternate end-of-line (EOL) character
!Y45 Disable CR
!Y46 Print head strobe time
!Y50 Silent mode (disable, enable)
!Y54 Ribbon low limit
!Y55 Get type of applicator
124
Pr ogr ammer s Ref er enc e Manual
Appendix F, Quick Reference Guide




!Y60 Default maximum barcode displacement
!Y66 Enable application (disable, enable)
!Y67 Printkey mode (normal, disabled, triggered)
!Y68 Horizontal print position adjustment
!Y69 Vertical print position adjustment
!Y72 - 79 Map physical font to logical number
!Y89 Allow command character anywhere on the line
!Y92 Stacked printers mode (daisy chaining)
!Y93 LTS auto repeat (disable, enable copy, enable new)
!Y100 Automatic reverse paper feed before printing
!Y101 - 109 Set inter-character spacing for logical font
!Y110 Print behavior
!Y111 Force heap graphics
!Y132 Enable barcode mapping
!Y133 Missing labels allowed
!Y134 Enable recover page
!Y136 PDF417 security level
!Y137 PDF417 max columns
!Y138 PDF417 max rows
!139 Decode variables on reception
!Y145 Telnet keep alive (s)
!Y146 Line spacing
!Y147 LTS delay
!Y150 COM1 Communication mode
!Y151 COM1 TCP port
!Y152 COM2 Communication mode
!Y153 COM2 TCP port
!Y156 COM1 flow control
!Y157 COM2 flow control
!Y162 Reverse video
!Y167 MPS type (gap outer, gap inner, black mark, inverted black mark)
!Y168 Historic control (on, off)
!Y170 Sensor detect (startup, adjust, manual)
!Y174 Print density
!Y175 Historic compensation
!Y176 Strobe boost (disable, enable)
!Y178 Max label width
125
Pr ogr ammer s Ref er enc e Manual
Appendix F, Quick Reference Guide




!Y179 Max label height
!Y180 Raw data port number
!Y183 Trig count return value
!Y184 Triggered print end value
!Y185 Best-before date update day
!Y186 Best-before date truncation day
!Y187 Mk2 emulation mode
!Y190 Rotated rendering

126
Pr ogr ammer s Ref er enc e Manual
Appendix F, Quick Reference Guide




Bar c ode Symbol ogi es
1 7 2 of 5 Interleaved ratios 2:1, 3:1, 5:2, 8:3, 13:5, 11:4, 7:3
11 - 17 Code 39 ratios 2:1, 3:1, 5:2, 8:3, 13:5, 11:4, 7:3
21 - 27 USS Codabar ratios 2:1, 3:1, 5:2, 8:3, 13:5, 11:4, 7:3
31 UPC-A
32 EAN 13
33 EAN 8
34 UPC-E
35 EAN/UPC extension code (2 or 5 digits)
36 GTIN14 (EAN 14)
41 Code 128
43 EAN 128
51 - 57 ITF 14 ratios 2:1, 3:1, 5:2, 8:3, 13:5, 11:4, 7:3
61 PDF 417
64 RSS-14, RSS-14 Truncated
67 RSS Limited
68 RSS Expanded
71 - 77 Code 2 of 5 ratios 2:1, 3:1, 5:2, 8:3, 13:5, 11:4, 7:3
81 USD-5 dot code
83 LEB code
91 Royal Mail 4-State Customer Code
92 KIX barcode
101 QR code model 1
102 QR code model 2

127
Pr ogr ammer s Ref er enc e Manual
Appendix G: Bitmap Textfield




Bitmap text fields are deprecated. This section is kept for backward compatibility reasons. Use
scalable fonts instead.

Syntax !F T <u> <b> <p> <a> <h> <w> <f> <text>

Note: Parameters enclosed in <>are required and parameters enclosed in [] are optional.

The parameters have the following meanings:
<u> Defines the direction of printing as the up direction of the printed characters. One upper-case
character (N, E, S, or W).
<b> The baseline of the field, in 0,1 mm.
<p> The position, in 0,1 mm
<a> The alignment relative to the position. One upper-case character.
L =left end of the field aligned at p.
R =right end of the field aligned at p.
C =the field is centered around p.
<h> The height expansion of the characters, 1 16.
<w> The width expansion of the characters, 1 16.
<f> The logical number of the font to be used for printing, 1 7.
<text> Specifies the text to be printed. The text must be enclosed in double quotes (").

Bitmap font name Bitmap font number
7x9-dot bold 1
hv18r 2
15-dot bold 3
9-dot 4
19-dot bold x 18 5
hc42c 6
g19 x 12 7

128
Pr ogr ammer s Ref er enc e Manual
Index




2
2 of 5 Interleaved................. See - Barcodes -
B
Barcode Displacement............................... 80
Barcode Field....................................... 24, 29
Barcode Interpretation................................ 28
Barcode Symbologies .......................... 25, 30
Barcodes
2 of 5 Interleaved ...........................................25
Code 128..................................................26, 31
Code 39..........................................................25
EAN 128.........................................................26
EAN 13...........................................................25
EAN 8.............................................................25
ITF 14.............................................................26
LEB code........................................................30
MaxiCode.......................................................33
PDF417....................................................30, 35
QR Code........................................................36
Royal Mail 4-state customer code..................30
RSS................................................................32
UPC-E ............................................................26
USD-5 dot code..............................................30
USS Codabar.................................................25
Baseline...................................................... 10
Baud rate.............................................. 70, 71
C
Character set.............................................. 72
French..........................................................111
German........................................................110
Italian............................................................112
Norwegian/Danish........................................111
Spanish........................................................112
Swedish/Finnish...........................................109
UK ................................................................110
Circle/Ellipse Field...................................... 40
Clearing the Layout.................................... 47
Clearing variable info............See - Variables -
Code 128............................. See - Barcodes -
Code 39............................... See - Barcodes -
Configurable Storage Path......................... 86
Counters............................................... 19, 91
D
Date
Get date......................................................... 62
Set date ......................................................... 62
Date Offset................................................. 99
Date symbols........................................ 19, 21
Defining a Field.......................................... 11
Barcode Field................................................. 24
Circle/Ellipse Field......................................... 40
Graphics Field................................................ 42
Line/Box Field................................................ 37
Text Box Field................................................ 38
Text Field....................................................... 16
E
EAN 128.............................. See - Barcodes -
EAN 13................................ See - Barcodes -
EAN 8.................................. See - Barcodes -
ENQ-ACK/NAK......................................... 100
F
Field Syntax................................................ 11
File System
Configurable Storage Path............................ 86
Fonts.............................................................. 89
Graphics ........................................................ 88
Macros........................................................... 87
Fonts .................................................... 74, 89
Delete Fonts .................................................. 90
Load Fonts..................................................... 89
G
Graphics..................................................... 88
Delete Graphicd............................................. 88
Load Graphics ............................................... 88
Graphics Field............................................ 42
Graphics Format....................................... 106
I
Information Tag.......................................... 94
Insertion Points........................................... 13
Intel Binary Format................................... 107
Intel Hex Format....................................... 105
ITF 14.................................. See - Barcodes -
129
Pr ogr ammer s Ref er enc e Manual
Index




L
Label Layout............................................... 15
Line/Box field.............................................. 37
Logos.......................................................... 88
M
Macros........................................................ 87
Auto macro.....................................................87
Delete a Macro...............................................87
Execute a Macro............................................87
Load a Macro.................................................87
Match Code................................................ 98
O
Out of paper ...... See - Status request 1 or 4 -
P
Paper feed.................................................. 74
Paper Feed................................................. 93
Paper type.................................................. 73
PDF417............................... See - Barcodes -
Position....................................................... 10
Print area...................................................... 8
Print Area
Configurable Coordinate System.....................8
Left Oriented Coordinate System...................10
Print Commands......................................... 47
Printer Configuration.................................. 69
R
Raw Binary Format................................... 108
RTS/CTS.................................................. 100
S
Service Commands.............................. 66, 67
Shift Codes................................................. 96
Status request 1......................................... 49
Status request 3......................................... 53
String Translation....................................... 95
T
Text Box Field............................................ 38
Text field..................................................... 16
Time
Get time......................................................... 62
Set time.......................................................... 62
Time symbols ....................................... 19, 21
Triggered Printout....................................... 48
U
UPC-A........................................................ 25
UPC-E ................................. See - Barcodes -
USD-5 dot code........................See Barcodes
USS Codabar ...................... See - Barcodes -
V
Variables .............................................. 19, 44
Changing a Single Variable........................... 44
Clearing variable information......................... 46
Lock Variable................................................. 46
X
XON/XOFF ............................................... 100

130
Revi si on

49/51

12/ 2003
05/ 2005
11/ 2006
03/ 2007
05/ 2008

Revi si ons t o t hi s manual


Revision index


Dat e publ i shed Revi si on i ndex doc ument at i on Sof t w ar e i ndex
12/2009 G
























Photographs and drawings are not binding in detail. This document was originally written
in English. The English text of this document shall alone be authentic and shall prevail in
the event of a dispute. Markem-Imaje reserves the right to modify the specifications of its
products without prior notice. Any reproduction, even partial, of this document is
prohibited. Translation of the original manual: the original manual (in English) is available
on the CD-Rom supplied with the printer.

2009 Markem-Imaje All Rights Reserved. English version.

You might also like