131
www.markem-imaje.com 9, rue Gaspard Monge B.P. 110 26501 Bourg-lès-Valence Cedex France Tél. : +33 (0) 4 75 75 55 00 Fax : +33 (0) 4 75 82 98 10 the team to trust labelpoint 540340-G programmer’s reference manual C M J CM MJ CJ CMJ N 540340-G.ai 24/11/2009 15:48:57 540340-G.ai 24/11/2009 15:48:57

02 - Labelpoint Programmer's Reference Manual

Embed Size (px)

DESCRIPTION

Labelpoint Programmer's Reference

Citation preview

Page 1: 02 - Labelpoint Programmer's Reference Manual

www.markem-imaje.com

9, rue Gaspard Monge B.P. 11026501 Bourg-lès-Valence CedexFranceTél. : +33 (0) 4 75 75 55 00Fax : +33 (0) 4 75 82 98 10

the team to trustthe team to trust labelpoint

540340-G

programmer’s reference manual

C

M

J

CM

MJ

CJ

CMJ

N

540340-G.ai 24/11/2009 15:48:57540340-G.ai 24/11/2009 15:48:57

Page 2: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 3: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 4: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 5: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 6: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 1. The Labelpoint Command Language

1.1 Introduction 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 Labelpoint Features 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

Page 7: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 1. The Labelpoint Command Language

1.3 The Labelpoint 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 1310 = 0D16). 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 3310 = 2116) , 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

Page 8: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.1 The Print Area

2.1.1 Configurable Coordinate System The configurable coordinate system offers a more powerful and exact way of positioning fields than the deprecated coordinate system.

Specify Coordinate System 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

Specify Axis Direction and Origin of Coordinates

8

Page 9: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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 it’s 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

Page 10: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.1.2 Legacy Coordinate System 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

Page 11: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.2 Field Syntax 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 Configurable Coordinate System

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

Page 12: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.2.2 Legacy Coordinate System

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

Page 13: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.3 Field Insertion Points 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

Page 14: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 15: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.4 Building 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

Page 16: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.5 Defining a Text Field 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 Scalable Text Field 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 font’s 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 field’s 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 field’s baseline is centered around p.

<h> The font height, in points (there are 72 points on an inch).

16

Page 17: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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 printer’s 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 Imaging’s Universal Font Scaling Technology® to 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

Page 18: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 19: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.5.2 The Text to be Printed The text parameter can contain both fixed text and references to variable information that changes after each print cycle.

Fixed Text 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.

Variable Information A variable text reference has the form %<n>V, where n is the number of the variable.

Counters A counter reference has the form %<n>C where n is the number of the counter.

Date and Time 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 Julian date (three digits).

%W Week of the year (two digits).

%XA Month (one character, ‘A’ to ‘L’).

%XD Month, three characters, Swedish.

19

Page 20: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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-before Date Today’s date in the examples below is assumed to be the 31 of January 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

Page 21: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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 15th of January even though today’s date is 31st of January)

When today’s date reaches the 15th of February the output would be 25/02/2008, until 15th 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 Julian date for 29th of January. This function is enabled with an XCL command. The days will be counted as if it was not leap year and 29th of January will get Julian 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 29th of February is going to be replaced by.

Note: Earlier versions of Labelpoint did not support best-before dates, week numbers, Julian date and week day. Some programs, like Viewpoint, used a similar syntax internally, which was converted to static text before sent to the printer.

Check Digits 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.

Line Breaks 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

Page 22: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

Example: !F S N 100 100 L 12 12 94021 “MARKEM-IMAJE 9, rue Gaspard Monge B.P. 11026501 Bourg-lès-Valence CedexFrance”

22

Page 23: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

Reverse Video 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

Page 24: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.6 Defining a Barcode Field 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 field’s [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

Page 25: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.6.1 Barcode Symbologies

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

Page 26: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 27: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 28: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.6.2 Barcode Interpretation 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

Page 29: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.6.3 Defining a 2D Barcode Field 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

Page 30: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.6.4 2D Barcode Symbologies

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

Page 31: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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 3210) send "??" followed by the alphabetic character corresponding to the desired control character. Any upper or lower case character in the ASCII range 4016 to 7E16 (6410 to 12710) will be recognized.

Example: "??J" or "??j" is interpreted as the line feed character.

"??[" or "??" is interpreted as the ESC character (ASCII 27 = 1B16). 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

Page 32: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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 Truncated 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 Limited 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 Expanded 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

Page 33: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.6.7 MaxiCode MaxiCode is a two-dimensional symbology, built up by an array of hexagons surrounding a central recognition pattern (bull’s-eye). Reed-Solomon error correction is used to ensure integrity of the encoded data.

Structured Carrier 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 GÖTAVERKSGATAN 6\x1d Ship To Street Address GÖTEBORG\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

Page 34: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

Escape Sequences 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.

Data encoding 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.

Structured 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

Page 35: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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"

Security 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

Page 36: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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.

Correction 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

Masking Pattern 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.

Other Escape Sequences 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

Page 37: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.7 Defining a Line/Box Field 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

Page 38: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.8 Defining a Text Box Field 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] Justification. 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

Page 39: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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 Text Box Field Dimensions 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 Hyphenation 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

Page 40: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.9 Defining a Circle/Ellipse Field 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

Page 41: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

41

Page 42: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.10 Defining a Graphics Field 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

Page 43: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 44: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.11 Variable Information in Text and Barcode Fields

2.11.1 Changing a Single Variable 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 field’s codepage”

44

Page 45: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.11.2 Legacy Variable 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

Page 46: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.11.2 Lock Variable 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 Clearing Variable Information 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

Page 47: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.12 Clear 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 Print 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

Page 48: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 2. Label Layout Definition Commands

2.14 Triggered Printout

2.14.1 Compact, 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 Series 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

Page 49: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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 Status 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.

Printer Restarted 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 in 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

Page 50: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 3. Status Request Commands

Ribbon Out The printer has run out of ribbon. Operator intervention is necessary, as described below.

Too Many Fields The number of fields in a label layout exceeds the maximum number of fields, which is 512.

Memory Error 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

Page 51: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 3. Status Request Commands

3. 2 Status 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

Stopped 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.

Print Incomplete 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.

Overheated 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

Page 52: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 3. Status Request Commands

Dot resistance out of range Dot resistance out of range is set if the Dot check has found at least one damaged dot on the head.

Barcode on Failing 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 Outside 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

Page 53: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 3. Status Request Commands

3.3 Status Request 3

Not used Label stock Not used Print key pressed Not used Operating parameters error Syntax error Not used

Syntax Error An invalid 1D/2D code number has been added.

Operating Parameters Error 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.

Print key Pressed The print button is pressed at the moment the status request is issued.

Label Stock Label stock is loaded. The printer detects the type of paper installed (labels or continuous).

53

Page 54: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 3. Status Request Commands

3.4 Status 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.

Ribbon Out Described above.

Head Lifted 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.

Print key Pressed Described above.

Printer Restarted Described above.

54

Page 55: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 3. Status Request Commands

3.5 Status 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 positions free Set to one if it is possible to load a new layout. Set to zero if there already is a queued layout.

Print queue error A new layout has been added without noticing that the Queue positions free flag is set to zero.

Queue heap error 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 layout 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

Page 56: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 3. Status Request Commands

3.6 Status Request 8

Dot check board installed Black mark photocell Cutter installed I2C-board installed LTS installed RFID data written RFID layout valid RFID hardware installed

RFID Hardware Installed The RFID hardware is available.

RFID Layout Valid The RF tag is initiated.

RFID Data Written The RFID data transfer is successful.

LTS Installed LTS is installed.

Note: Only Nova models have this feature.

I2C Board Installed 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 I2C 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 I2C connected board is working properly. If not, there might be a problem with the I2C bus connection, for example electrical interference.

56

Page 57: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 3. Status Request Commands

Cutter Installed 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 I2C board is installed, this flag will never be set.

Black Mark Photocell 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 Check Board Installed The print-head diagnostics board installed and activated.

Note: Nova models always have this feature as default.

57

Page 58: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 3. Status Request Commands

3.7 Status 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.

Error A system error has occurred.

Warning One or several warnings are active.

Pause The system is paused.

Head Lifted The printhead is not in print position.

Ribbon End No ribbon.

Ribbon Low Running out of ribbon.

Paper Out No paper.

58

Page 59: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 3. Status Request Commands

3.8 Status 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

Offline The system is offline and is not ready for a print and apply cycle.

59

Page 60: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 3. Status Request Commands

3.9 Status 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

Page 61: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 62: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 63: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 4. Service Commands

25 <m> Get logo information by number. The response is a string of the form: “logoname” 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 printer’s serial number.

66 Get the printer’s article number.

63

Page 64: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 65: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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 "Mars".

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

Page 66: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 4. Service Commands

4.1 Special Service 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 printer’s 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

Page 67: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 4. Service Commands

4.2 Expression Engine Service 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

Page 68: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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” “%’Goofy’V” 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

Page 69: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 5. Printer Settings

5.1 Printer Configuration 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

Page 70: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 5. Printer Settings

Parameter (i) Explanation

24 <n> Print speed (mm/s).

34 <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.

44 <n> Blank feed speed (mm/s). Can be set to a value higher than the normal print speed.

53,4 <n> The print head type is detected during startup.

65 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.

73,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.

83,4 <n> Print head width, in number of dots.

94 <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.

254 <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

Page 71: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 5. Printer Settings

264 <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)

274 <n> Number of data bits per character for COM2. Valid values for n are 7, 8. Default is 8 bits.

284 <n> Number of stop bits for COM2. Valid values for n are 1, 2. Default is 1 bit.

294 <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.

304 <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.

314 <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)

324 <n> Number of data bits per character for COM1. Valid values for n are = 7, 8. Default is 8 bits.

334 <n> Number of stop bits for COM1. Valid values for n are 1, 2. Default is 1 bit.

344 <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

Page 72: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 73: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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.

456 <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

463 <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 510µs for Compact models and 350µs for Nova models.

50 <n> Silent mode. This parameter controls the printer’s 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.

555 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

Page 74: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 75: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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.

1344 <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 field’s codepage is being used for the conversion.

0 = decode variable data using the codepage of it’s parent field(s)

1 = decode variable data on reception using the currently selected codepage at that time (default)

1454 <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

Page 76: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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.

1504 <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)

1514 <n> TCP port for COM1. Valid when communication mode is set to terminal server mode. See parameter 150.

1524 <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)

1534 <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

1626 <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

Page 77: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

1684 <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

Page 78: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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.

1805 <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

Page 79: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 80: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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 Barcode Displacement 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 field’s 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

Page 81: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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 Version 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 printer’s 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 Text Version 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 ASCII User Interface

7.3.1 Introduction 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

Page 82: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 83: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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 Document Start !D D S

8.2 Document 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

Page 84: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 8. Document Commands

8.3 Cutter 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 Cutting 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-taken 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

Page 85: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 9. Printer Connection

The printer can be connected either as a local printer or as a network printer.

9.1 Local Printer 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 Network Printer 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

Page 86: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 10. Printer File System

This section describes how to store macros, graphics and fonts in the printer file system.

10.1 Configurable Storage Path 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

Page 87: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 10. Printer File System

10.2 Macros 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 Loading a Macro 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 Deleting a Macro To delete a macro, send the macro load command followed by the terminate command:

!L M “<name>“ !L

10.2.3 Executing a Macro 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 Auto Macro 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

Page 88: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 10. Printer File System

10.3 Graphics Graphics can be loaded into the printer’s 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 Loading a Graphics File 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 Deleting a Graphics File To delete a graphics file, send the graphics load command followed by the terminate command:

!L G “<name>“ !L

88

Page 89: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 10. Printer File System

10.4 Fonts 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 Downloading a Font File 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

Page 90: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 10. Printer File System

10.4.2 Deleting a Font File 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

Page 91: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 11. Miscellaneous Commands

11.1 Counters 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 Initializing Counters 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

Page 92: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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 Retrieving Information About Counters Use the service command !V32, in order to retrieve information about a counter.

11.1.3 Printout 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

Page 93: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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 Automatic Reverse 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

Page 94: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 11. Miscellaneous Commands

11.3 Information 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

Page 95: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 11. Miscellaneous Commands

11.4 String Translation 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

Page 96: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 11. Miscellaneous Commands

11.5 Shift 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

Page 97: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 98: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 11. Miscellaneous Commands

11.6 Match 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

Page 99: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual 11. Miscellaneous Commands

11.7 Switch Date Offset 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

Page 100: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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 True Two-way Communication 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

Page 101: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 102: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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 :5E000000DB5A088309830389038903830383038303830989038903890383038903830983038303830389038909830383038903830983038903890383038303890983038909830383038303890389098303830383038903830983038903890383050033 :00000001FF !L

Supported Algorithms 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

Page 103: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 104: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 105: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual Appendix B: IntelHex Records

Intel Hex File Format 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.

Data Format 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

Page 106: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual Appendix B: IntelHex Records

Since the address field is not used by the printer the end record always has the form :00000001ff

Labelpoint Load Graphics 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.

Graphics Format 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 feed direction

1 2byte

bit

row 0

1

2

3

4

106

Page 107: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual Appendix C: Intel Binary Records

Intel Binary File Format 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.

Control Characters SO 0E(hex)

SI 0F(hex)

DLE 10(hex)

Limitations MkII series does not support long lines of data, max number of characters per line should not exceed 80.

107

Page 108: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual Appendix D: Raw Binary Records

Raw Binary File Format 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

Page 109: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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 Latin 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 Å ƒ » ¤ ´

Swedish/Finnish Character Set (7-bit) 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

Page 110: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual Appendix E: Code Pages

German Character Set (7-bit) 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 Character Set (7-bit) 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

Page 111: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual Appendix E: Code Pages

French Character Set (7-bit) 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 Å

Norwegian/Danish Character Set (7-bit)

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

Page 112: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual Appendix E: Code Pages

Spanish Character Set (7-bit) 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 Å

Italian Character Set (7-bit) 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

Page 113: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual Appendix E: Code Pages

Code Page 861, MS-DOS Icelandic 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

Page 114: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual Appendix E: Code Pages

Code Page 1252, Windows Latin 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

Page 115: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual Appendix E: Code Pages

Code Page 852, MS-DOS Latin 2 (Central Europe) 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, Windows Latin 2 (Central Europe) 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

Page 116: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual Appendix E: Code Pages

Code Page 855, MS-DOS Cyrillic 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, Windows Cyrillic (Slavic) 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

Page 117: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual Appendix E: Code Pages

Code Page 1253, Windows Greek 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, Windows Latin 5 (Turkish) 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

Page 118: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual Appendix E: Code Pages

Code Page 1257, Windows Latin 6 (Baltic Rim) 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 ISO 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

Page 119: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual Appendix F, Quick Reference Guide

Command Summary !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

Page 120: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual Appendix F, Quick Reference Guide

Status Requests See section 3 Status Request Commands.

120

Page 121: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual Appendix F, Quick Reference Guide

Service 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

Page 122: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 123: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 124: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual Appendix F, Quick Reference Guide

Printer Configuration Parameters !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

Page 125: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 126: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 127: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference Manual Appendix F, Quick Reference Guide

Barcode Symbologies 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

Page 128: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 129: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 130: 02 - Labelpoint Programmer's Reference Manual

Programmer’s Reference 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

Page 131: 02 - Labelpoint Programmer's Reference Manual

Revision

49/51

12/ 200305/ 200511/ 200603/ 200705/ 2008

Revisions to this manual Revision index

Date published Revision index documentation Software index 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.