8. Custom Characters And Graphics ............................................. 201
8.1Custom-designed Character Example ............................ 201
8.2PCX Graphics Example .................................................. 211
iv
Programming Manual1. Introduction
1.Introduction
This manual presents the commands that are used with the SATO RISC
Printers to produce labels with logos, bar codes and alphanumeric data.
All of the RISC commands use the same syntax. Some commands reference a physical point on the label using horizontal and vertical dot reference numbers. The allowable range for these references is dependent
upon the particular printer to accomodate different print widths and resolutions. These differences are noted in tables under the commands
affected.
H
Introduction
H
Command Codes
H
Command Codes Quick Reference
H
Command Codes Specifications
H
Interface Specification
H
Troubleshooting
H
Custom Protocol Command Codes
H
Custom Characters And Graphics
SATO RISC Printers7
1. IntroductionProgramming Manual
1.1The SATO RISC Programming Language
A programming language for a printer is a familiar concept to most programmers.Itisagroup of commands that are designedto use the internal
intelligence of the printer. The commands, which are referred to as RISC
Command Codes, contain non-printable ASCII characters (such as
<STX>, <ETX>, <ESC>) and printable characters. These commands
mustbe assembled into anorganizedblockofcode to besent as one data
stream to the printer, which in turn interprets the command codes and
generates the desired label output. The programmer is free to use any
programming language available to send the desired data to the SATO
RISC printer.
The command codes used by the SATO RISC Printers are based upon
“Escape” (1B hexadecimal) sequences. Typically there are four types of
command sequences:
<ESC>{Command}
These commands generally tell the printer to perform a specific action,
like “clear the memory.”
<ESC>{Command} {Data}
Commands with this format tell the printer to perform a specific action
which is dependent upon the following data, like “print X labels”, where
the value for X is contained in the data.
<ESC>{Command} {Parameter}
These commands set the operational parameters of the printer, like “set
Some commands can contain both Parameter and Data elements, such
as “print a Code 39 symbol containing the data.”
1.3Selecting Protocol Control Codes
Protocol codes are the special control characters that prepare the printer
to receiveinstructions. Forexample, the <ESC> character tells theprinter
that a command code will follow and the <ENQ> character asks for the
printer status.
There are two pre-defined different sets of Protocol Control codes to
choose from. Each setis made up of six special characters. The Standard
Protocol Control codes are non-printable characters, and the Non-Standard Protocol Control codes are printable characters. The Non-Standard
set may be useful on host computers using protocol converters or in an
application where non-printable ASCII characterscannotbe sent from the
host. This manual uses the Standard Protocol Control codes for all of the
examples. Alternately,the user maydefine and download a set of custom
Protocol Control Codes.
8SATO RISC Printers
Programming Manual1. Introduction
The Protocol Control codes are selected by a DIP switch DSW2-7 (Refer
to the Operation Manual,).
Control
Character
STX02 Hex7B Hex = {Start of Data
ETX03 Hex7D Hex = }End of Data
ESC1B Hex5E Hex = ^Command Code to follow
NULL7E Hex7E Hex = ~Cutter Command
ENQ05 Hex40 Hex = @Get printer status, Bi-Com
CAN18 Hex21 Hex = !Cancel print job, Bi-Com
Standard
DSW2-7
OFF
NonStandard
DSW2-7 ON
Description
mode
mode
1.4Using Basic
It may be useful to test your printer using a BASIC program on a PC. You
may also write your actual production programs in BASIC. Whatever the
reason, if you will be working in BASIC, some of the following hints may
help you get started:
1. Set the WIDTH of the output device to 255 characters to avoid auto-
matically sending <CR> and <LF> characters after every line. The
command string should be continuous and uninterrupted by <CR>
and/or <LF> commands. The examples given in this manual are printed on separate lines because they will not fit on one line and do not
contain any <CR> and/or <LF> characters. If these characters are
needed, they are explicitly noted by the inclusion of <CR> and <LF>
notations.
2. If you are using the printer’s RS232 interface, it is necessary to set the
COM port on the PC such that the CTS and DSR signals will be ignored. Send your OPEN “COM” statement in the following way: OPEN
“COM1:9600,E,8,1,CS,DS” AS #1
3. This sets the RS232 communication parameters of the host PC’s
COM1 port for 9600 baud, Even parity, 8 Data bits, 1 Stop bit and directing the port to ignore the CTS and DSR control signals.
SATO RISC Printers9
1. IntroductionProgramming Manual
4. You may want to minimize keystrokes and program size by assigning
the <ESC> character to a string variable since this character is used
quite often.
The following two examples in BASIC show a typical example using these
hints. Both of these examples use the Standard Protocol codes.
1.5Printing with the Parallel Port
10E$=CHR$(27)Sets the “E$” string as an
<ESC> character
20WIDTH “LPT1:”,255Sets the width of the output to
255 characters
30LPRINT E$;"A";Sends an “<ESC>A” command
code to the LPT1 parallel port
40LPRINT E$;"H400";E$;"V100";E$;"XL1SATO";Sends thedata “SATO” to be to
be placed 400 dots horizontally
and 100 dots vertically on the
label and printed in the “XL”
font.
50LPRINT E$;"Q1";Instructs the printer to print one
label.
60LPRINT E$; “Z”;Tells the printer that the last
command has been sent. The
printer can now create and print
the job.
10SATO RISC Printers
Programming Manual1. Introduction
1.6Printing with the RS232 Port
10E$=CHR$(27)Sets the “E$” string as an
<ESC> character.
20OPEN “COM1:9600,N,8,1,CS,DS”AS #1;Opens the COM1 port for out-
put and sets the parameters as
9600 baud, No parity, 8 Data
bits, 1 Stop bit and instructs the
porttoignoretheCTSand DSR
control signals.
30PRINT #1,CHR$ (2);Sends an <STX> (ASCII Code
a decimal “2”) to the printer
instructing i t to prepare to
receive a message.
50PRINT #1,E$;"A";Sends an “<ESC>A” command
codetoPrint Port #1openedby
statement 20 above.
60PRINT #1, E$;"H400",E$;"V100";E$;"XL1SATO"; Sends the data “SATO” to be
placed 400 dots horizontally
and 100 dots vertically on the
label and printed in the “XL”
autosmoothed font.
50PRINT #1, E$;"Q1";Instructs the printer to print a
quantity of one label.
60PRINT #1, E$; “Z”;Tells the printer that the last
command has been sent. The
printer can now create and print
the job.
70PRINT #1,CHR$ (3);Sends an <ETX> (ASCII Code
decimal“3”) totheprintertelling
it that this is the end of the message.
SATO RISC Printers11
1. IntroductionProgramming Manual
1.7The Print Area
The maximum print area for the various RISC printers are listed in the
table on the next pages. Most of your label applications will not require
tags/labels that fill the entire print area, therefore it is important to understand how to work with labels that do not use the entire print area. The
goal is to help you avoid printing where no label exists, which may lead to
print head damage, not to mention frustration when you cannot see the
printed output..
Max print widthMax print width
Label
50 x 75mm
OEM right-hand and
desktop printer
Max print length
Label feed direction
Base reference point
OEM left-hand
printer
Label
50 x 75mm
The diagram above illustrates the maximum print area and a sample
50mm wide by 75mm long label placed within this area. As can be seen,
your label will be oriented against the inside left edge of the printer as
viewed from the front of the printer.The base reference point is located at
theH1, V1 position of theprint area in the normal print orientation (no rotation)
12SATO RISC Printers
Programming Manual1. Introduction
Print Area for CL Printers.
CL 408CL 412CL 608 (VA)CL 612 (VA)
Resolution203 dpi
8 dot/mm
Max print
width
832 dots
4.1 in.
104 mm
Max label
width
Standard
print length
5.0 in.
128 mm
1424 dots
7.0 in.
178 mm
Expanded
print length
using
2848 dots
14.0 in.
356 mm
<ESC>AX
Expanded print length with memory card
128 Kb1257 dots
6.2 in.
157 mm
512 Kb5038 dots
24.8 in.
629 mm
305 dpi
12 dot/mm
1248 dots
4.1 in.
104 mm
5.0 in.
128 mm
2136 dots
7.0 in.
178 mm
4272 dots
14.0 in.
356 mm
838 dots
2.7 in.
69 mm
3359 dots
10.9 in.
278 mm
203 dpi
8 dot/mm
1216 dots
6.0 in.
152 mm
7.0 in.
178 mm
1424 dots
7.0 in.
178 mm
2848 dots
14.0 in.
356 mm
860 dots
4.2 in.
107 mm
3447 dots
16.9 in.
430 mm
305 dpi
12 dot/mm
1984 dots
6.5 in.
165 mm
7.0 in.
178 mm
2136 dots
7.0 in.
178 mm
4272 dots
14.0 in.
356 mm
1
528 dots
1.7 in.
44 mm
2113 dots
6.9 in.
176 mm
1Mb
2Mb
9999 dots
49.2 in.
1249 mm
9999 dots
49.2 in.
1249 mm
2
6720 dos
22.0 in.
560 mm
9999 dots
32.8 in.
833 mm
2
6896 dots
33.9 in.
862 mm
9999 dots
49.2 in.
1249 mm
2
4227 dots
13.6 in.
352 mm
8455 dots
27.7 in.
704 mm
2
1.) When a memory card is used to expand the print length, the card capacity is
used instead, not in addition to, the internal memory.
2.) Limited by the digits in the command field.
SATO RISC Printers13
1. IntroductionProgramming Manual
Print Area for S-Type Printers
M8485SM4890SM8460SM8459S
Resolution203 dpi
8 dot/mm
Max print
width
1024 dots
5.0 in.
128 mm
Max label
width
Standard
print length
5.2 in.
134 mm
1424 dots
7.0 in.
178 mm
Expanded
print length
using
2848 dots
14.0 in.
356 mm
<ESC>AX
Expanded print length with memory card
128 Kb1022 dots
5.0 in.
127 mm
512 Kb4094 dots
20.1 in.
511 mm
305 dpi
12 dot/mm
1344 dots
4.4 in.
112 mm
5.2 in.
134 mm
2136 dots
7.0 in.
178 mm
4272 dots
14.0 in.
356 mm
778 dots
2.5 in.
64 mm
3119 dots
10.1 in.
259 mm
203 dpi
8 dot/mm
1216 dots
6.0 in.
152 mm
6.4 in.
165 mm
1424 dots
7.0 in.
178 mm
2848 dots
14.0 in.
356 mm
860 dots
4.2 in.
107 mm
3447 dots
16.9 in.
430 mm
203 dpi
8 dot/mm
896 dots
4.4 in.
112 mm
5.2 in.
134 mm
1424 dots
7.0 in.
178 mm
2848 dots
14.0 in.
356 mm
1
1186 dots
5.7 in.
146 mm
4678 dots
23.0 in.
584 mm
1Mb
2Mb
8190 dots
40.3 in.
1023 mm
9999 dots
49.2 in.
1249 mm
2
6240 dos
20.4 in.
520 mm
9999 dots
32.8 in.
833 mm
2
6896 dots
33.9 in.
862 mm
9999 dots
49.2 in.
1249 mm
2
9360 dots
46.0 in.
1170 mm
9999 dots
49.2 in.
1249 mm
2
2
1.) When a memory card is used to expand the print length, the card capacity is
used instead, not in addition to, the internal memory.
2.) Limited by the digits in the command field.
14SATO RISC Printers
Programming Manual1. Introduction
PrintAreaforXLandRVprinters
XL 400XL410M8400RV
Resolution203 dpi
8 dot/mm
Max print
width
800 dots
3.9 in.
100 mm
Max label
width
Standard
print length
4.0 in.
102 mm
1920 dots
9.4 in.
240 mm
Expanded
print length
using
<ESC>AX
Expanded print length with memory card
128 Kb1168 dots
6.2 in.
146 mm
512 Kb4768 dots
24.8 in.
596 mm
305 dpi
12 dot/mm
1200 dots
3.9 in.
100 mm
4.0 in.
102 mm
1920 dots
9.4 in.
240 mm
743 dots
6.2 in.
62 mm
2977 dots
24.8 in.
248 mm
203 dpi
8 dot/mm
832 dots
4.1 in.
104 mm
5.0 in.
128 mm
1424 dots
7.0 in.
178 mm
2848 dots
14.0 in.
356 mm
1
1257 dots
6.2 in.
157 mm
5038 dots
24.8 in.
629 mm
1Mb
2Mb
9360 dots
49.2 in.
1170 mm
9999 dots
49.2 in.
1249 mm
2
2
5956 dos
49.2 in.
496 mm
9999 dots
32.8 in.
833 mm
2
9999 dots
49.2 in.
1249 mm
9999 dots
49.2 in.
1249 mm
2
2
1.) When a memory card is used to expand the print length, the card capacity is
used instead, not in addition to, the internal memory.
2.) Limited by the digits in the command field.
SATO RISC Printers15
1. IntroductionProgramming Manual
There are two methods available to make sure your printed output will
appear correctly on your label. They are as follows:
1.8First Method: Using Base Reference Point
Send the Base Reference Point command as part of your data to the
printer to set a new base reference point for your label. Calculate the distance (in dots) from the normal base reference point to the closest edge
of the label. Issue the Base Reference Point command <ESC>A3 after
the Start command in your data stream.
Input:<ESC>A
<ESC>A3HnnnnV0001. . . . . .
nnnn:New horizontal Base Reference Point
Formulannnn = (Max print width[mm] - Label width [mm]) x Print head
density [dots/mm]
ExampleCL612 printer with 50mm wide label
Max. print width: 165mm
Print head density:12 dots/mm
nnnn = (165mm - 50mm) x 12 dots/mm
nnnn= 1380 dots
For the above escape sequence this results in
<ESC>A3H1380V0001
Note:
1. This operation resets the reference point for all the following
data in the non-volatile RAM
2. The <ESC>A3 Base Reference Point command can also shift the
reference point in the negative direction, towards the outside
edge of the label.
3. This calculation is not necessary for OEM left-hand printers.
1.9Second Method: Using Horizontal Offset Position
Use the normal base reference point from the print area and use the horizontal position for each field to properly locate it on the label. Calculate
the distance (in dots) from the normal base reference point to the closest
edge of the label.
Each <ESC>H command would have the value “nnnn" (see above example) added to it to correctly position each field.
>ESC>H position + nnnn
For CL612: <ESC>H position +1380
Note:This calculation is not necessary for OEM left-hand
printers.
16SATO RISC Printers
Programming Manual1. Introduction
On the following 2pages, the methods aboveare described witha sample
tag/label output. These samples reflect how the printed information would
appear on a 128mm wide label. If you want to test any of the sample tag/
label outputs and are using tags/labels less than 128mm in width, we suggest that you add the Base Reference Point command to the data stream
in order for the images to print on your tags/labels.
Warning You must be careful not to print off the tag/label sur-
faceas thetag/label providesa heat sink for the print
head elements. Doing so will cause irreparable damage to the head. This damage is not covered under
the print head warranty. The addition of the base reference point command to the sample data stream
may help to adjust the print for your tags/labels. See
the following two examples or refer to the base reference point command description.
For example, the following illustrates a sample data stream for a CL612
printer and the resulting label assuming a 70mm wide label:
CL612CL612
Label
100mm
If you are using a 70mm wide tag/label, the entire image may not appear
on your tag/label. By adding the following Base Reference Point command to the second line of the data stream, the base reference point will
be changed, causing the image to be shifted over toward the inside of the
printer where it can be printed on the narrower label.
Label
70mm
SATO RISC Printers17
1. IntroductionProgramming Manual
Example for first Method, using base reference point
The image is moved horizontally to the right 95mm (1140 dots) so that it
canbeprintedona70mmwidelabel.
For more information, see the Base Reference Point command description.
SATO RISC Printers19
1. IntroductionProgramming Manual
This page is intentionally left blank.
20SATO RISC Printers
Programming Manual2. Command Codes
2.Command Codes
This section contains all the RISC printer Command Codes. The commands must be sent to the printer in an organized fashion in order for the
label(s) to print.
The objective of thischapter is to explain the different commands and provide examples of their usage, as well as to provide a detailed reference
for programming the printers.
Each command begins on a separate page with its own heading. A uniform layoutis used to help you find keyinformation about each command.
Foreach Command Code in this section, there will bea sample data input
stream to the printer and the expected print output. By studying the examples, you can learn how to use the particular command within a whole
block of printer code. Pay particular attention to the “Special Note” with
each command to learn other important information.
The subject commands are highlighted in bold letters in the Reference
Sheets. There are two parts of most, but not all, commands. The first is
the command character which immediately follows the <ESC> code.Itis
always an upper case alpha or a special character (such as an “&” or a
“%”). It is never a lower case alpha character. If the command requires
additional variable information, it is represented by a group of lower case
alpha characters immediately following the command character. For
example, if an aaaabb is listed following the basic command, the printer
will look for six characters immediately following the command. The first
four would represent the value of aaaa andthenexttwothevalueofbb.
The maximum number of characters defined in a parameter is represented by the number of characters shownin the command structure. For
example,a command followed by an aaaa canhaveuptofourcharacters.
In general, commands with only one parameter following the command
can be entered without the leading zeroes. However, certain commands
require the exact number of matching characters. A command with two
parameterslistedfollowingthe commandcodewithout acomma delimiter,
such as aaaabbbb require the exact number of digits to be entered. If the
value of aaaa is“800”and the value ofbbbb is “300”, then theparameters
must be entered as “08000300”. It is recommended that you make it a
practice to always enter leading zeros to prevent any mistakes.
Note:These examples assume the use of the Standard Protocol
CommandCodes anda parallelinterface. The labels forall
printers will be similar, but, because of different resolutions and print widths may be larger or scaled differently.
SATO RISC Printers21
2. Command CodesProgramming Manual
Bar Codes
Command Structure:
1:3 narrow/widebar ratio <ESC>Babbcccd
2:5 narrow/wideratio <ESC>BDabbcccd
1:2 narrow/widebar ratio <ESC>Dabbcccda:Bar Code Symbol
bb:Number of dots (01-12) for narrow bar and narrow spa-
ce
ccc:Bar height in dots (001-600)
d:UCC 128 only. Not used for other bar code types
0 No human readable text
1 Human readable at top
2 Human readable at bottom
Example:<ESC>BD103200
Placement:Immediately preceding data to be encoded
Default:None
22SATO RISC Printers
Programming Manual2. Command Codes
Function:
To print bar code images on a label. With this command, there are 13
standard bar code symbologies available to be printed and three two
dimensional symbols. Each of the bar codes are unique, and it is important to know the differences.
1. UPC and EAN bar codes are not affected by the different types of
narrow to wide ratios. Instead, the <ESC>D command adds
descender bars to these codes where needed to meet UPC specifications. The <ESC>BD command puts decender bars and
human readable text below the symbol.
2. The Code 128, UCC 128, MSI, and Code 93 bar codes are not
affected by the narrow to wide ratios.
3. The Codabar, Co de 39, Industrial 2 of 5, and Matrix 2 of 5 bar
codes are affected by the Character Pitch command. This command must be placed before the Bar Code command.
4. Because of their unique characteristics, two-dimensional symbols are covered separately.
5. For U CC128, the FNC1 code is automatically inserted and the
Mod 10 and Mod 103 check digits are automatically calculated.
6. For the MSI bar code, the check digit is not automatically calculated.
26SATO RISC Printers
Programming Manual2. Command Codes
Bar Codes, Expansion
Command Structure:
<ESC>BWaabbbaa:Expansion factor by which the width of all bars and spa-
ces will be increased (01-12)
bbb:Bar height by dot (004-600 dots)
Example:<ESC>BW02100
Placement:Immediately follows the <ESC>BT command and pre-
cedes data to be encoded.
Default:None
Function:
Thiscommand works together with the <ESC>BT command tospecify
an expansion factor and the bar code height for the particular symbol
being printed.
1. Thiscommand mustbe preceded by theVariableRatioBar Codes
<ESC>BT command.
2. The following bar codes will be affected by the Character Pitch
command: Codabar, Code 39, Interleaved 2 of 5, Matrix 2 of 5.
SATO RISC Printers27
2. Command CodesProgramming Manual
Bar Codes, Variable Ratio
Command Structure
<ESC>BTabbccddeea:Bar Code Symbol
0: Codabar
1: Code 39
2: Interleaved 2 of 5
5: Industrial 2 of 5
6: Matrix 2 of 5
bb:Narrow space in dots (01-99)
cc:Wide space in dots (01-99)
dd:Narrow bar in dots (01-99)
ee:Wide bar in dots (01-99)
Example:<ESC>BT101030103
Placement:Following print position commands and preceding
<ESC>BW
Default:Current setting
Function:
To print a bar code with a ratio other than those specified through the
standard bar code commands (B,BD, and D). This is done through individual control of each of the bar code elements (bars, spaces) as
shown above. Remember that this command only applies to the five
bar code types shown.
1. This command must be immediately followed by the <ESC>BW
Bar Code Expansion command.
2. You may use only one variable ratio bar code per label.
3. If the data specified in this command is incorrect, the command
is ignored and the ratio used will be based on the previous setting.
SATO RISC Printers29
2. Command CodesProgramming Manual
Base Reference Point
Command Structure:
<ESC>A3H-aaaaVbbbb
-:This character is optional. When present, it specifies
that the horizontal offset is in the negative direction. If
it is left out the offset direction is positive.
aaaa:Horizontal Print Offset (see Note 5 for field range)
bbbb:Vertical Print Offset (see Note 5 for field range)
Example:<ESC>A3H100V0050
Placement:Preceding all images that are based on the new base
reference point
Default:Current V and H offset setting in the printer configurati-
on
Function:
Toestablisha new basereferencepoint for thecurrentlabel.The base
reference point is the top left corner or “origin” from where all print position commands are based.
This command may be very helpful when using labels less than four
inches wide to place images on the printable label surface. It may also
be used to move images past preprinted fields on a label.
Input:
<ESC>A<ESC>L0202
<ESC>H0100<ESC>V0025<ESC>XMNORMAL REFERENCE POINT
<ESC>A3H0300V0075
<ESC>H0100<ESC>V0050<ESC>XMNEW REFERENCE POINT
<ESC>Q1<ESC>Z
Output:
30SATO RISC Printers
Programming Manual2. Command Codes
Note:
1. Useof this command will setthe Vertical/Horizontal Offsetsetting
of the printer configuration until a new Base Reference Point
command is issued or the setting is changed from the operator
panel.
2. This command may be used more than once in a print job.
3. An alternative to using this command is to make change s to your
current Horizontal and Vertical Print Position commands.
Example:
Let’s say the current base reference point is H=1, V=1 and you
wish to move all the fields on your label downward vertically by
150 dots. You could either (1) add the Base Reference Point command or (2) change all the vertical position commands by an
additional 150 dots.
4. For a more detailed example of the Base Reference Point command, see “Print Area” in this section.
5. The allowable field ranges for this command are:
CL 408CL 412CL 608 (VA)CL 612 (VA)
Horizontal
aaaa
Vertical
bbbb
-0832 to 0832 -1248 to 1248 -1216 to 1216 -1984 to 1984
0001 to 1424 0001 to 2136 0001 to 1424 0001 to 2136
M8485SM8490SM8460SM8459S
Horizontal
aaaa
Vertical
bbbb
-1248 to 1248 -1344 to 1344 -1216 to 1216 -0896 to 0896
0001 to 1424 0001 to 2136 0001 to 1424 0001 to 2136
XL 400XL 410M8400RV
Horizontal
aaaa
Vertical
bbbb
-0800 to 0800 -1200 to 1200 -0832 to 0832
0001 to 1920 0001 to 1920 0001 to 1920
SATO RISC Printers31
2. Command CodesProgramming Manual
Characters, Custom-Designed
Command Structure:
Store Command<ESC>Tabcc
Recall command<ESC>Kab90cca:Matrix size
1: 16x16 matrix
2: 24x24 matrix
b:Specifies the character encoding method for the data
cc:Memory location to store/recall the character. Valid
memory locations are 21 to 52 (countingin Hex) or “!”
to “R” in Binary
{data}Data to describe the character
Example:<ESC>T1H3F
<ESC>K1H903F
Placement:The Store command is typically sent in its own data st-
reamtothe printer,betweentheStart/Stopcommands.
The Recall command is sent in a secondary data st-
ream to print the character,and follows any necessary
position or size commands.
Default:None
Function:
To allow for the creation, storage, and printing of custom characters,
such as special fonts or logos. Up to 50 individual characters may be
stored in the custom character volatile memory.
1. When printing the custom character using the Recall command,
the character is affected by the following commands:
2. Character Expansion
3. Character Pitch
4. Line Feed
5. Rotate, Fixed Base Reference Point
6. Rotate, Moving Base Reference Point
7. The characters are stored in volatile memory and must be
reloaded if the printer power is lost.
8. Do not use ASCII <CR> or <LF> characters (carriage returnor line
feed)as linedelimiters withinthe graphic data or the actual image
will not be printed as specified.
SATO RISC Printers33
2. Command CodesProgramming Manual
Character Expansion
Command Structure:
<ESC>Laabb
aa:Multiple to expand horizontally (01-12)
bb:Multiple to expand vertically (01-12)
Example:<ESC>L0305
Placement:Preceding the data to be expanded
Default:<ESC>L0101
Function:
Toexpand characters independentlyin boththe horizontal and vertical
directions. The command allows you to enlarge the base size of each
font (except the vector font) up to 12 times in either direction. Expanded characters are typically used for added emphasis or for long distance readability.
1. This command will expand the following fonts: Fonts U, S, M, XU,
XS, XM, OA & OB and fonts WB, WL, X B and XL.
2. This command will also affect the following commands:
Character Pitch
Characters, Custom-Designed
3. The Character Expansion value is in effect for the current print
job until a new expansion command is specified.
4. The Line and Box command, if used within the data stream, may
return all subsequentext to the default expansion of 1x1. Therefore, either send the Character Expansion command before all
printed data, or send Line and Box commands last, preceding the
<ESC>Q Quantity command.
SATO RISC Printers35
2. Command CodesProgramming Manual
Character, Fixed Spacing
Command Structure:
<ESC>PR
Example:See Above
Placement:Preceding the data
Default:The default is Proportional Spacing.
Function:
To reset proportional spacing and place the printer to fixed spacing.
1. This command only works with the proportionally spaced fonts
XU, XM, XS, XL and XB.
2. Once this command is sent in the data stream, it is in effect until
the end of the print job or a reset command is sent.
36SATO RISC Printers
Programming Manual2. Command Codes
Character Pitch
Command Structure:
<ESC>Paaaa:Number of dots between characters (00-99)
Example:<ESC>P03
Placement:Preceding the text to be printed
Default:<ESC>P02
Funktion:
To designate the amount of spacing (in dots) between characters.
This command provides a means of altering character spacing for label constraints or to enhance readability.
1. This command is affected by the <ESC>L Character Expansion
command . The character pitch is a ctually the product of the current horizontal expansion multiple and the designated pitch
value.
Example:
<ESC>L0304
<ESC>P03
Pitch=(03)x(03)=9dots
2. To avoidconfusion, you may want to include the <ESC>L Character Expansion command and this command together in your program.
3. This command affects fonts U, S, M , XU, XS, XM, OA & OB , fonts
WB, WL, XB and XL, and the vector font.
4. Character Pitch will always revert to the default value unless it is
specified before each new font command in the data stream.
5. This command also affects Codabar, Code 39 and Industri al 2 of
5 bar codes.
38SATO RISC Printers
Programming Manual2. Command Codes
Character, Proportional S pacing
Command Structure:
Reset to proportional spacing<ESC>PS (default)
Set to fixed spacing<ESC>PR
Example:See above
Placement:Preceding the data to be proportional spaced
Default:<ESC>PS
Function:
To specify the printing of proportional or fixed spacing for proportionally spaced fonts.
<ESC>*aa:specifies which part of the memory has to be cleared.
If the “a” parameter is not included with this command
and the printer is in the multi-buffer mode, this command clears all print jobs in the printer memory, including the current print job.
If “a” is included with this command, it specifies the internal memory section to be cleared
T To clear the custom character memory
& To clear the form overlay memory
X To clear all internal memory
Example:<ESC>*
<ESC>*X
Placement:This command should be sent to the printer as an inde-
pendent data stream.
Default:None
Function:
To clear individual memory or buffer areas of the printer.
Input:
<ESC>A
<ESC>*
<ESC>Z
Output:
There is no printer output as a result of this command. The current
print job in the buffer will be terminated and all other print jobs in the
buffer cleared.
Note:
1. Seememory card functions forcommand variationsused to clear
data from the memory card.
2. It is not necessary to clear the printer’s memory between each
print job.
3. The primary purpose of this command is to clear all print jobs in
the multi-buffer mode. The “a” parameter can be used in either
the multi-buffer or single job mode to clear specific parts of the
memory.
4. When the “a” parameter is used, the section of memory specified
will not be cleared until the label is printed.
40SATO RISC Printers
Programming Manual2. Command Codes
Continuous Forms Printing
No Command Structure
The printer locates the end of an adhesive label by sensing the
backing between labels or through the use of an eye-mark (black rectangle on the reverse side of the backing). It locates the end of a tag
from a notch, eye-mark, or a hole between tags. Both sensors should
be disabled when printing continuous forms by placing the Label Sensor Selection switch (DSW3-3) in the ON position. See Operation Manual: Printer Configuration for instructions on configuring the printer
using the front panel DIP switch array.
If you will be using continuous labels or tags, the printer must be told
to stop feeding in another manner. The length is determined by the position of the last printed image on the label or tag. The printer will stop
feeding when this last field is finished printing. The length may be
increased with printed spaces (20 hexadecimal) if necessary. There is
no command code to control label length.
SATO RISC Printers41
2. Command CodesProgramming Manual
Copy Image Area
Command Structure:
<ESC>WDHaaaaVbbbbXccccYddddaaaa:Horizontal position of the top left corner of the area to
be copied
bbbb:Vertical position of the top left corner of the area to be
copied
cccc:Horizontal length of the image area to be copied
dddd:Vertical length of the image area to be copied
Example:<ESC>WDH0100V0050X0600Y0400
Placement:Anywhere within the data stream, after specifying the
location of the duplicate image.
Default:None
Function:
Tocopy an image from one location to another on the same label. This
may be useful for duplicating individual fields or entire sections of the
label with only one command.
1. Usethe Print Positioncommands (V and H) to locate the new area
for the duplicate image.
2. Position of the new target area must not be inside the original
image.
3. If you use the Rotate command, V,H,X and Y axis will be reversed.
4. If the reference area of the target image exceeds the print area, it
will not be printed.
5. The allowable field ranges for this command are:
CL 408CL 412CL 608 (VA)CL 612 (VA)
Horizontal
aaaa
Vertical
bbbb
Horizontal
aaaa
Vertical
bbbb
0 to 08320 to 12480 to 12160 to 1984
0001 to 1424 0001 to 2136 0001 to 1424 0001 to 2136
M8485SM8490SM8460SM8459S
0 to 12480 to 13440 to 12160 to 0896
0001 to 1424 0001 to 2136 0001 to 1424 0001 to 2136
XL 400XL 410M8400RV
Horizontal
aaaa
Vertical
bbbb
0 to 08000 to 12000 to 0832
0001 to 1920 0001 to 1920 0001 to 1920
SATO RISC Printers43
2. Command CodesProgramming Manual
Cutter Command
Command Structure:
<ESC><NUL>aaaaaa:Number of labels to print between each cut (01-9999)
Example:<ESC><NUL>0002
Placement:Following the Print Quantity command <ESC>Q
Default:<ESC><NUL>0001 (if cutter enabled)
Function:
To control the cutting of labels when using a SATO cutter unit with the
printer printer. This command allows the cutting of a multi-part tag or
label at a specified interval within a print job.
Thisset of commandswill print 6 labels (3 x 2) with two labels between
each cut.
Note:
1. You must have the optional printer Cutter to use this function.
Contact your SATO representative for more information.
2. To use this command, the printer configuration must have the
cutter option enabled.
3. If the cutter option has been enabled in the printer configuration
and the cut value (aa = 00), the cutter is inactive.
The <NUL> represents the ASCII 00 Hex character.
4. When using the Cutter command, the total number of labels
printed is the product of the cut value and the print quantity. For
example, if the cut value is 2, and the print quantity is 20, then 20
sets of two labels will be printed.
44SATO RISC Printers
Programming Manual2. Command Codes
FontsU,S,M,OA,OB,XU,XS&XM
Command Structure:
Font XU<ESC>XU
Font U<ESC>U
Font XS<ESC>XS
Font S<ESC>S
Font XM<ESC>XM
Font M<ESC>M
Font OA<ESC>OA
Font OB<ESC>OB
Example:See above
Placement:Preceding the data to be printed
Default:None
Function:
To print text images on a label. These are eight of the built-in fonts
available on the printer. All matrices include descenders.
Dot Matrix for Non-Proportional Fonts
U5W x 9H dot matrix
S8W x 15H dot matrix
M13W x 20H dot matrix
OA15W x 22H dot matrix
OB20W x 24H dot matrix
Dot Matrix for Proportional Fonts
XU5W x 9H dot matrix
XS17W x 17H dot matrix
XM24W x 24H dot matrix
1. Characters may be enlarged through the use of the Character
Expansion command.
2. Character spacing may be altered through the use of the Character Pitch command. The default is 2 dots between characters. It
is recommended to use a spacing of 5 dots for OCR-A and 1 dot
for OCR-B.
3. You may also create custom characters or fonts. See the <ESC>T
Custom-Designed Characters command.
4. A font must be defined for each field to be printed. There is no
default font.
5. Fonts U, S, M, OA and OB are identical to fonts U, S, M, OA and
OB on the SATO M-8400 printer.
6. The proportionally spaced fonts XU, XS, XM, XL and XA can be
printed with fixed spacing using the <ESC>PS Proportional
Space command.
7. The matrices of the OA and OB fonts are scaled so that they will
remain a constant size according to the OCR-A and OCR-B s pecifications when printed on different resolution printers.
8 dot /mm203 dpi12 dot/mm305 dpi
OA-Font15 dots W x 22 dots H22 dots W x 33 dots H
OB-Font20 dots W x 24 dots H30 dots W x 36 dots H
46SATO RISC Printers
Programming Manual2. Command Codes
Font, Vector
Command Structure:
Specify Vector Font <ESC>$a,b,c,d
Data for Vector Font <ESC>$=(data)a:Font spa cing
A Helvetica Bold (proportional spacing)
B Helvetica Bold (fixed spacing)
0 Standard
1 Standard open (outlined)
2 Gray (mesh) pattern 1
3 Gray (mesh) pattern 2
4 Gray (mesh) pattern 3
5 Standard open, shadow 1
6 Standard open, shadow 2
7 Standard mirror image
8 Italic
9 Italic open, shadow
Example:<ESC>$A,100,200,0<ESC>$=123456
Placement:Immediately preceding data to be printed.
Default:None
Function:
To specify printing of the unique SATO vector font. The vector font allows large characters to be printed with smooth, round edges. Each
character is made of a number of vectors (or lines), and will require
slightly more printer compiling time.
Input:
<ESC>A
<ESC>H0100<ESC>V0100<ESC>$A,100,100,0<ESC>$=SATO
<ESC>H0100<ESC>V0200<ESC>$=VECTOR FONT
<ESC>$A,200,300,8<ESC>H0100<ESC>V0350<ESC>$=M-8400RV
<ESC>Q1<ESC>Z
SATO RISC Printers47
2. Command CodesProgramming Manual
Output:
Note:
1. If the font size designation is out of the specified range, a default
valueof50isused.
2. The Pitch command can be used with Vector fonts.
3. The font width and height values include asenders, desenders
and other space.
ascenders
64 %
Äg
4. A font must be defined for each field to be printed. There is no
default font.
48SATO RISC Printers
}
descenders
Programming Manual2. Command Codes
Fonts WB, WL , XB & XL
Command Structure:
Font WB<ESC>WBa
Font XB<ESC>XBa
Font WL<ESC>WLa
Font XL<ESC>XLaa:0 Disables auto-smoothing of font
1 Enables auto-smoothing of font (see Note
below)
Example:<ESC>WB1123456
Placement:Preceding the data to be printed
Default:None
Function:
To print text images on a label. These are the four auto-smoothing
fonts available on the printer.
Dot Matrix for Non-Proportional Fonts
WB18W x 30H dot matrix
WL28W x 52H dot matrix
Dot Matrix for Proportional Fonts
XB48W x 48H dot matrix
XL48W x 48H dot matrix
1. Auto-smoothing (when enabled) is only effective if the character
expansion rate is at least (3) times in each direction.
2. Characters may be enlarged throughthe use of the <ESC>L Character Expansion command.
3. Character spacing may be altered throughthe use of the <ESC>A
Character Pitch command.
4. A font must be defined for each field to be printed. There is no
default font.
5. The proportionally spaced fonts XU, XS, XM, XL and XB can be
printed with fixed spacing using the <ESC>PR Proportional
Space command.
50SATO RISC Printers
Programming Manual2. Command Codes
Form Feed
Command Structure:
<ESC>A(space)
<ESC>Z
Example:See above
Placement:Separate data stream sent to printer
Default:None
Function:
To feed a blank tag or label, which is the equivalent of a “form feed”
Input:
<ESC>A(space)
<ESC>Z
Output:
Blank label or tag
SATO RISC Printers51
2. Command CodesProgramming Manual
Form Overlay, Recall
Command Structure:
<ESC>/
Example:See above
Placement:Must be preceded by all other data and placed just be-
fore the Print Quantity command (<ESC>Q)
Default:None
Function:
To recall the label image from the form overlay memory for printing.
This command recalls a stored image from the overlay memory. Additional or different data can be printed with the recalled image.
Input:
<ESC>A
<ESC>H0001<ESC>V0125
<ESC>STHIS IS THE STORED IMAGE WITH A BARCODE
<ESC>H0001<ESC>V0165<ESC>B103100*12345*
<ESC>&<E SC>Z
<ESC>A<ESC>H0001<ESC>V0050
<ESC>STHIS IS RECALLING AND ADDING TO THE STORED
IMAGE<ESC>/
<ESC>Q1<ESC>Z
Output:
Note:The overlay is stored using the <ESC>& Form Overlay
Store command.
52SATO RISC Printers
Programming Manual2. Command Codes
Form Overlay, Store
Command Structure:
<ESC>&
Example:See above
Placement:Must be preceded by all other data and placed just be-
fore the Stop command (<ESC>Z)
Default:None
Function:
To store a label image in the volatile form overlay memory. Only one
label image may be stored in this memory area at a time.
Input:
<ESC>A
<ESC>H0001<ESC>V0125
<ESC>STHIS IS THE STORED IMAGE WITH A BARCODE
<ESC>H0001<ESC>V0165<ESC>B103100*12345*
<ESC>&
<ESC>Z
Output:
There is no output from this command. It stores the label image in the
overlay buffer.
Note:
1. Remember that this storage is volatile. Therefore, if the printer
loses power, the overlay must be sent again.
2. The overlay is recalled using the <ESC>/ Form Overlay Recall
command.
3. Form overlays do not have to be recompiled each time they are
called to be printed and therefore may result in much faster print
output.
SATO RISC Printers53
2. Command CodesProgramming Manual
Graphics, Custom
Command Structure:
<ESC>Gabbbccc(data)a:Specifies format of data stream to follow
B Binary format
H Hexadecimal format
bbb:Number of horizontal 8 x 8 blocks (001-248)
ccc:Number of vertical 8 x 8 blocks (001-267)
(data):Hex data to describe the graphic image
Example:<ESC>GH006006
Placement:May be placed anywhere within the data stream after
the necessary position commands.
Default:None
Function:
To create and print custom graphics (logos, pictures, etc.) on a label.
The graphic image may be printed along with other printed data to enhance label appearance or eliminate the need for preprinted label
stock. Using a dot-addressable matrix, design the graphic image in 8
dot by 8 dot blocks, then send it in a binary format to the printer.
C00003C00003 C00003C00003 C00003C00003
C00003C00003 C00001800003 C00000000003
C00000000003 FFFFFFFFFFFF FFFFFFFFFFFF
<ESC>H0300<ESC>V0100<ESC>XSPLEASE PLACE YOUR DISK
<ESC>H0300<ESC>V0150<ESC>XSIN A SAFE PLACE
<ESC>Q1<ESC>Z
Output:
Note:
1. Do not use ASCII <CR> or <LF> characters (carriage returnor line
feed)as linedelimiters withinthe graphic data or the actual image
will not be printed as specified.
2. A custom graphic can be enlarged by the <ESC>L Character
Expansion command.
3. Use an optional Memory Card to expand the print length.
4. To store graphic images in an optional memory card, see the
Memory Card Functions section.
5. The binary format reduces the transmission time by 50%.
SATO RISC Printers55
2. Command CodesProgramming Manual
Graphics, PCX
Command Structure:
<ESC>GPaaaaa,(data)
aaaaa:Number of bytes to be downloaded
Example:<ESC>GP32000, ... data...
Placement:Anywhere within the job data stream
Default:None
Function:
To allow the creation and printing of graphic images using a PCX file
format.
1. The maximum number of bytes that can be downloaded is 32K
(compressed). The number specified by this command includes
the PCX header information. The maximum size of the uncompressed PCX file is 64K. If the uncompressed file exceeds 64K,
the graphic will not print.
2. Only black and white PCX files can be downloaded.
3. The image created by this command cannot be rotated.
4. The file size specified by this command is the DOS file size in
bytes.
56SATO RISC Printers
Programming Manual2. Command Codes
Job ID Store
Command Structure:
<ESC>IDaaaa:JobIDassigned(01to99)
Example:<ESC>ID09
Placement:Immediately following the <ESC>A in the job data
stream.
Default:None
Function:
To add an identification number to a job.The status of the job can then
be determined using the ENQ command in the Bi-Com status mode
(See Interface Specifications for more information).
Input:
<ESC>A
<ESC>ID02
...Job...
<ESC>Z
Output:
There is no printer output as a result of this command.
Note:
1. Works only in Bi-Com mode. The Job ID number must be stored
before Bi-Com status mode can be used.
2. If more than one ID number is sent in a single job, the last number
transmitted will be used, i.e.
<ESC>A
<ESC>ID01
..........
<ESC>ID02
.........
SATO RISC Printers57
2. Command CodesProgramming Manual
Journal Print
Command Structure:
<ESC>J
Example:See above
Placement:Immediately following <ESC>A
Default:None
Function:
To print text in a line by line format on a label. By specifying this command, you automatically select Font XS with a Character Expansion
of 2x2. You also establish a base reference point of H2,V2. The character pitch is 2 dots and the line gap is 16 dots. Simply issue an ASCII
<CR> at the end of each text line.
Input:
<ESC>A
<ESC>J WITH THE JOURNAL FEATURE
YOU CAN PRINT TEXT WITHOUT
USING ANY FONT COMMANDS
OR POSITION COMMANDS
<ESC>Q1<ESC>Z
Output:
Note:
1. Journal mode assumes a maximum label width . Otherwise, you
may print where there is no label and damage your print head.
2. It is effective only for the current print job.
58SATO RISC Printers
Programming Manual2. Command Codes
Lines and Boxes
Command Structure:
Line: <ESC>FWaabcccc
aa:Width of horizontal line in dots (01-99)
b:Line orientation
H Horizontal line
VVerticalLine
cccc:Length of line in dots (see Note for max length)
Box: <ESC>FWaabbVccccHdddd
aa:Width of horizontal side in dots (01-99)
bb:Width of vertical side in dots (01-99)
cccc:Length of vertical side in dots (see Note 2 for max
length)
dddd:Length of horizontal side in dots (see Note 2 for max
length)
Example:<ESC>FW02H0200
Placement:Following the necessary positioning commands
Default:None
Function:
To print horizontal lines, vertical lines, and boxes as images on the label.
1. It is recommended that all lines and boxes be specified in the normal p rint direction.
2. The maximum allowable lengths are as follows:
CL 408CL 412CL 608 (VA)CL 612 (VA)
Horizontal
aaaa
Vertical
bbbb
Horizontal
aaaa
Vertical
bbbb
0 to 08320 to 12480 to 12160 to 1984
0001 to 1424 0001 to 2136 0001 to 1424 0001 to 2136
M8485SM8490SM8460SM8459S
0 to 12480 to 13440 to 12160 to 0896
0001 to 1424 0001 to 2136 0001 to 1424 0001 to 2136
XL 400XL 410M8400RV
Horizontal
aaaa
Vertical
bbbb
0 to 08000 to 12000 to 0832
0001 to 1920 0001 to 1920 0001 to 1920
60SATO RISC Printers
Programming Manual2. Command Codes
Line Feed
Command Structure:
<ESC>Eaaaaaa:Number of dots (001-999) between the bottom of the
characters on one line to the top of the characters on
the next line
Example:<ESC>E010
Placement:Preceding the text that will use the line feed function
Default:None
Function:
To print multiple lines of the same character size without specifying a
new print position for each line. Withthe Line Feed command, specify
the number of dots you want between each line. Then, send an ASCII
<CR> at the end of each line of text. The printer automatically identifies the size of the last character, moves down the number of dots specified, and begins printing the next line.
Input:
<ESC>A
<ESC>E010<ESC>H0050<ESC>V0050<ESC>L0202<ESC>S
THIS IS THE 1ST LINE
THIS IS THE 2ND LINE
THIS IS THE 3RD LINE
<ESC>Q1<ESC>Z
Output:
SATO RISC Printers61
2. Command CodesProgramming Manual
Note:
1. This command can be used for text as well as for bar codes.
2. It is effective only for the current data stream.
3. When printing lines or boxes in the same data stream with the
Line Feed command, the Lines and Boxes command should be
specified la st, preceding <ESC>Q Quantity command.
4. This command is invalid only if the value specified is zero.
5. The rotation command can be used with this command.
6. Following this command with a <CR> character will allow you to
print with auto line feed. I n this case, the print position will be
determined from the value specified in the command and the H
value set in the printer. However, if you specify several H values
after this command, the print position will be determined by the
H value last specified. You must redefine the font to be used after
each H command.
62SATO RISC Printers
Programming Manual2. Command Codes
Mirror Image
(From Firmware Version1E2050, 1E3002 for 6xxVA)
Command Structure:
<ESC>RMaaaa, bbbbaaaa:Horizontal position of the top left corner of the image
area to be mirrored 0008 ~ 9999 dot.
bbbb:Vertical position of the top left corner of the image area
to be mirrored 0008 ~ 9999 dot.
Example:<ESC>RM0150, 0050
Function/Placement:
This command allows you to print a data as mirrored, not only whole
or part of data.
If you specify the image area with horizontal <H> and vertical <V> position, both specified before <RM> command are valid for start position.
A data with <RM> command parameter over the printable area is not
mirrored as treated as a command error. Also, a print job with <RM>
command without print date is treated as a command error.
<RM> command can be used without command parameters for horizontal and vertical position. In this case, data placed before this command are mirrored.
This command can be used with <%>command, while donotuse with
<R> command regardless of its effect.
Note:
1. This command can not be used with commands requiring re.editing print image, like sequential numbering, RTC, Copy image or
so. Also, it can not be used with commands for data st orage, like
graphic, format, etc.
2. This command should not be used with bar codes to avoid the
scanning problem caused by refractive index through the glass
or the window.
3. Do not specify this command multiple times in a job.
1. If the number of data digits does not match those listed, the command i s ignored.
2. Only numeric data will be accepted.
SATO RISC Printers73
2. Command CodesProgramming Manual
Print Darkness
Command Structure:
<ESC>#Eaa:Print darkness value
(see Note for allowable setting)
Example:<ESC>#E2
Placement:Must be placed immediately after <ESC>A and imme-
diatelybefore <ESC>Zin its own separate data stream
Default:See Note
Function:
To specify a new print darkness setting. This command allows software control of the darkness setting for unique media and ribbon combinations.
Input:
<ESC>A
<ESC>#E2
<ESC>Z
Output:
There is no printer output for this command.
Note:
1. This be comes the new setting in the printer configuration for all
subsequent print jobs, unless changed. The setting is stored in
non-volatile memory and is not affected by cycling power.
2. This command will overwrite the Display Setup.
3. The allowable Print Darkness settings are as follows:
1. AX is effective until AR is sent to reset the printer to its standard
print length, or until the printer is repowered.
2. It may be included in an independent data stream to specify the
size of the maximum print area.
SATO RISC Printers75
2. Command CodesProgramming Manual
Print Position
Command Structure:
HorizontalPosition<ESC>Haaa
Vertical Position<ESC>Vbbbaaaa:Number of dots horizontally from the base reference
point (1 to maximum)
bbbb:Number of dots vertically from the base reference point
(1 to maximum)
Example:<ESC>H0020<ESC>V0150
Placement:Preceding any printed field description of lines/boxes,
fonts, bar codes or graphics.
Default:<ESC>H0001
<ESC>V0001
Function:
The Horizontal and Vertical commands specify the top left corner of a
field or label, using the current base reference point as an origin. They
also establish a reference point for subsequent fields until the next horizontal and/or vertical print position command is issued.
1. The print position of a field is affected by both the Rotate
(<ESC>R and <ESC>A3) commands.
2. For print lengths greater than 14 inches an optional Memory Card
must be used.
3. If any part of an image is placed past the maximum number of
dots for standard length and or the capacity of the memory card,
that part of the image will be lost.
4. If any part of an image is placed past maximum allowable dots
across the label, that part of the image will be lost.
5. If you attempt to print where there is no paper, you may damage
the print head.
6. For these commands, the leading zeroes do not have to be
entered. The command V1 is equivalent to V0001.
SATO RISC Printers77
2. Command CodesProgramming Manual
Print Quantity
Command Structure:
<ESC>Qaaaaaaaaaaaa:Total number of labels to print (1-999999)
Example:<ESC>Q500
Placement:Just preceding <ESC>Z, unless <ESC>NUL exists,
then preceding that. This command must be present in
every print job.
Default:None
Function:
To specify the total number of labels to print for a given print job.
Three labels containing the data “M-8400RV” will be printed.
Note:
1. To pause during a print job, you must press the LINE key on the
Operator Panel.
2. To cancel a print job, you must turn off the printer, or you may
sendthe <CAN>code ifusing the Bi-Com mode. Multi-Bufferjobs
can be cleared with the <ESC>* Clear Print Job(s) and Memory
command.
3. When used with the <ESC>F Sequential Numbering command ,
the Print Quantity value should be equal to the total number of
labels to be printed.
4. If you do not specify a Print Quantity, the printer will not print a
label.
5. For this command, leading zeroes do not have to be entered. The
command Q1 is equivalent to Q000001.
78SATO RISC Printers
Programming Manual2. Command Codes
Print Speed
Command Structure:
<ESC>CSaa:Designates the speed selection
See Note for allowable settings
Example:<ESC>CS6
Placement:Must be placed immediately after <ESC>A and imme-
diatelybefore <ESC>Zin its own separate data stream
Default:As previously set in the printer configuration
Function:
To specify a unique print speed through software for a particular label.
Thisallows flexibilityin finding the best performance andqualityfor the
particular label format, media, and ribbon. All subsequent labels will
print at this speed unless the speed is changed with this command or
through the Operator Panel.
Input:
<ESC>A
<ESC>CS5
<ESC>Z
Output:
There is no printer output for this command. It sets the print speed of
the printer.
Note:
1. This be comes the new setting in the printer configuration for all
subsequent print jobs, unless changed. The setting is stored in
non-volatile memory and is not affected by cycling the power.
2. This command will overwrite the Display Settings.
3. The allowable Print Speed settings are as follows:
PrinteraSpeed
CL 408
CL 412
CL 608 (VA)
CL 612 (VA)
M8490S
M8460S
1
2
3
4
5
4
6
8
2ips,50mm/s
3ips,75mm/s
4 ips, 100 mm/*s
5 ips, 125 mm/s
6 ips, 150 mm/s
4 ips, 100 mm/s
6 ips, 150 mm/s*
8 ips, 200 mm/s
SATO RISC Printers79
2. Command CodesProgramming Manual
M8459S2
M8485S4
M8400RV1
XL 4104
XL 4005
*=default
3
4
5
6
8
10
2
3
4
5
5
6
6
7
8
2ips,50mm/s
3ips,75mm/s
4 ips, 100 mm/s*
5 ips, 125 mm/s
4 ips, 100 mm/s
6 ips, 150 mm/s*
8 ips, 200 mm/s
10 ips, 250 mm/s
2ips,50mm/s
4 ips, 100 mm/s
6 ips, 150 mm/s*
8 ips, 200 mm/s
10 ips, 250 mm/s
4 ips, 100 mm/s
5 ips, 125 mm/s*
6 ips, 150 mm/s
5 ips, 125 mm/s
6 ips, 150 mm/s*
7 ips, 175 mm/s
8 ips, 200 mm/s
80SATO RISC Printers
Programming Manual2. Command Codes
Repeat Label
Command Structure:
<ESC>C
Example:See above
Placement:Must be placed immediately after <ESC>A and imme-
diatelybefore <ESC>Zin its own separate data stream
Default:None
Function:
To print duplicate of the last label printed
Input:
<ESC>A
<ESC>C
<ESC>Z
Output:
A duplicate of the previous label will be printed.
Note:This command will have no effect if the power to the
printer was cycled off and back on since printing the previous label.
SATO RISC Printers81
2. Command CodesProgramming Manual
Replace Data (Partial Edit)
Command Structure:
<ESC>0 (<ESC>zero)
Example:See above
Placement:Must follow <ESC>A and precede all other print data
Default:None
Function:
To replace a specified area of the previous label with new data. This
command will cause the previous label toprint along with any changes
specified within the current data stream.
1. Specify the exact same parameters for the image to be replaced
as were specified in the original data stream, including rotation,
expansion, pitch, etc. This will ensure that the new data will
exactly replace the old image. If the replacement data contains
82SATO RISC Printers
Programming Manual2. Command Codes
fewer characters than the old data, then the characters not
replaced will still be printed.
2. This command will not function if the power has been cycled off
and back on since the last label was printed.
3. Proportional Pitch text cannot be used with this command.
SATO RISC Printers83
2. Command CodesProgramming Manual
Reverse Image
Command Structure:
<ESC>(aaaa,bbbb
a:Horizontal length in dots of reverse image area
b:Vertical height in dots of reverse image area.
See Note 6 for field ranges
Example:<ESC>(100,50
Placement:Thiscommandmustbeprecededbyallotherdataandbe
placed just before <ESC>Q
Default:None
Function:
Toreverseanimageareafromblacktowhiteandviceversa.Usethe
Print Position commands (<ESC>H and <ESC>V) to locate thetop left
corner of the reverse image area.
1. A reverse image area is affected by the rotate commands. Therefore, always assume the printer is in the normal print orientation
when designing and sending the Reverse Image command...
84SATO RISC Printers
Programming Manual2. Command Codes
2. If using reverse images with the form overlay, place this command before the Form Overlay command in the data stream.
3. If the Rotate commands are used with this command, the V and
H parameters are reversed.
4. If the height and width to be reversed contain other than alphanumeric data, the area is not printed.
5. If the values specified exceed the maximum ranges, the reverse
image is not created.
6. The maximum allowable settings are:
CL 408CL 412CL 608 (VA)CL 612 (VA)
Horizontal
aaaa
Vertical
bbbb
Horizontal
aaaa
Vertical
bbbb
-0832 to 0832 -1248 to 1248 -1216 to 1216 -1984 to 1984
0001 to 1424 0001 to 2136 0001 to 1424 0001 to 2136
M8485SM8490SM8460SM8459S
-1248 to 1248 -1344 to 1344 -1216 to 1216 -0896 to 0896
0001 to 1424 0001 to 2136 0001 to 1424 0001 to 2136
XL 400XL 410M8400RV
Horizontal
aaaa
Vertical
bbbb
-0800 to 0800 -1200 to 1200 -0832 to 0832
0001 to 1920 0001 to 1920 0001 to 1920
7. TheReverseImage is notworkingin combination withSequential
Numbering.
SATO RISC Printers85
2. Command CodesProgramming Manual
Rotate, Fixed Base Reference Point
Command Structure:
<ESC>%aa:0 Sets print to normal direction
1Sets print to 90°CCW
2 Sets print to 180° rotated (upside down)
3Sets print to 270° CCW
Example:<ESC>%3
Placement:Preceding any printed data to be rotated
Default:<ESC>%0
Function:
To rotate the print direction in 90° increments without changing the location of the base reference point. The diagram below illustrates the
use of the <ESC>% Rotate command. Note that the entire print area
is shown, but your label will probably not be as large as the entire area.
Input:
<ESC>A
<ESC>%0<ESC>H0200<ESC>V0100<ESC>MNORMAL DIRECTION
<ESC>%1<ESC>H0200<ESC>V0300<ESC>MONE
<ESC>%2<ESC>H0200<ESC>V0400<ESC>MTWO
<ESC>%3<ESC H0200<ESC>V0500<ESC>MTHREE
<ESC>Q1<ESC>Z
2. The specified values are valid until another Rotate (<ESC>%)
command is received.
3. Receipt of a Stop Print (<ESC>Z) command will reset the setting
to the default value.
SATO RISC Printers87
2. Command CodesProgramming Manual
Rotate, Moving Base Reference Point
Command Structure:
Normal Direction:<ESC>N
Rotated Direction:<ESC>R
Example:See above
Placement:Preceding any printed data to be rotated
Default:<ESC>N
Function:
The <ESC>R command rotates the printing of all subsequent images
in a print job by 90° counterclockwise each time it is used. It also moves the base reference point to a different corner of the print area.
The <ESC>N command returns to the original base reference point
and returns printing to the normal orientation.
Input:
<ESC>A
<ESC>N<ESC>H0100<ESC>V0010<ESC>MNORMAL DIRECTION
<ESC>R<ESC>H0100<ESC>V0100<ESC>MONE
<ESC>R<ESC>H0100<ESC>V0100<ESC>MTWO
<ESC>R<ESC>H0100<ESC>V0100<ESC>MTHREE
<ESC>R<ESC>H0100<ESC>V0100<ESC>MFOUR
<ESC>Q1<ESC>Z
88SATO RISC Printers
Programming Manual2. Command Codes
Output:
Note:
1. Do not combine this command and the <ESC>% rotate command
inthesamedatastream.
2. A custom graphic is not affected by this command. Therefore,
always design and locate your graphic image to print in the
appropriate orientation.
3. The specified values are valid until another Rotate (<ESC>R)
command is received.
4. Receipt of a Stop Print (<ESC>Z) command will reset the setting
to the default value.
SATO RISC Printers89
2. Command CodesProgramming Manual
Sequential Numbering
Command Structure:
<ESC>Faaaabcccc,dd,ee
aaaa:Number of times to repeat the same data (0001-9999)
b:Plus or minus symbol (+ for increments; - for decre-
ments)
cccc.Value of step for sequence (0001-9999)
,dd:Number ofdigitsfor sequential numbering (01-99).The
first incrementing character position starts after the positions exempted from sequential numbering as specified in ee.
If these digits are left out, the default is 8.
,ee:Number of digits free from sequential numbering (00-
99) starting with the right most position. If these digits
are left out, the default is 0.
Example:<ESC>F001-001,04,03
In this example, the right most (least significant) three
digits would not decrement and the next four would decrement.
Placement:Preceding the starting value to be incremented or de-
cremented.
Default:None
Function:
To allow the ability to print sequential fields (text, bar codes) where all
incrementing is done within the printer. Up to eight different sequential
fields can be specified per label. Sequencing is effective for up to 99digit numeric data within each field.
Input:
<ESC>A<ESC>H0100<ESC>V0050<ESC>MSERIAL NUMBER
<ESC>H0100<ESC>V0100<ESC>F001+001,04,03
<ESC>L0202<ESC>MABC0001B25
<ESC>Q2<ESC>Z
90SATO RISC Printers
Programming Manual2. Command Codes
Output:
Note:
1. The value specified for Print Quantity should be equal to the number o f different sequential values desired multiplied by the number of repeats specified.
Example:
To print 2 sets each of the numbers 1001-1025 on separate labels,
we need 50 total labels. The commands would be as follows:
<ESC>A
<ESC>H0100<ESC>V0100<ESC>F002+001<ESC>XM1001
<ESC>Q50
<ESC>Z
2. It is necessary to specify the print position for each sequential
field on a label.
3. Up to eight different sequential fields can be specified per label.
4. This command ignores alpha characters in the sequential number field.
5. This command can not be used with the following commands:
Copy Image,
Reverse Image,
Line Feed.
SATO RISC Printers91
2. Command CodesProgramming Manual
Start/Stop Label
Command Structure:
Start Command:<ESC>A
Stop Command:<ESC>Z
Example:See above
Placement:<ESC>A must precede data
<ESC>Z must follow data
Default:None
Function:
For all print jobs, the Start command must precede the data, and the
Stop command must follow. The print job will not run properly if these
are not in place.
There is not output for these commands they are not accompanied by
other label printing commands. However, these commands must precede and follow each print job sent to the printer.
92SATO RISC Printers
Programming Manual2. Command Codes
Calendar Option Commands
The following commands in this section require the Calendar option.
(SEG No. 4449 Real Time Clock)
SATO RISC Printers93
2. Command CodesProgramming Manual
Calendar Increment
Command Structure:
<ESC>WPabbba:YYears
M Months
DDays
h Hours
bbb:Numeric data: Years (0-9), Months (00-99),
Days (000-999), Hours (000-999),
Example:<ESC>WPM03
Placement:Anywhere within the data stream
Default:None
Function:
To add a value to the printer’s current date and/or time, which may
then be printed on the label. This command does not change the printer’s internal clock setting.
Input:
<ESC>A
<ESC>H0010<ESC>V0100<ESC>XB1Current Date is:
<ESC>XB1<ESC>WADD/MM/YYY*Y*/JJJ*/ww
<ESC>WPM06
<ESC>H0010<ESC>V0200<ESC>XB1Expiration Date is:
<ESC>XB1<ESC>WA/DD/MM/YYY*Y*/ww
<ESC>Q1<ESC>Z
*
*
Output:
*
*
*
*
*
*
*
*
*Note: From Firmware 1E2050, 1E3002 for CL6xxVA
94SATO RISC Printers
Programming Manual2. Command Codes
Note:
1. This command requires the Calendar Option. See your SATO representative for more details
2. Once the year increments past “99” it will wrap back to “00”.
3. This command can only be used once per data stream.
4. The printer’s internal clock may be set through the Calendar Set
command.
5. If a print quantity of more than one label per job is used, the same
time and date will be on each label of the entire print job.
*ww Week: 01 ~ 54
Example:<ESC>XB1<ESC>WADD/MM/YYYY/WW
Placement:Anywhere within the data stream .
Default:None
Function:
To specify the printing of a date and/or time field from the printer’s internal clock. This may be used to date/time stamp your labels.
Do not use for numeric barcode)
Input:
<ESC>A
<ESC>H0010<ESC>V0100<ESC>XB1The current date is:
<ESC>XB1<ESC>WADD/MM/YYY*Y*/WW
<ESC>H0010<ESC>V0200<ESC>XB1The current time is:
<ESC>XB1<ESC>WAhh:mm:ss
<ESC>H0010<ESC>V0300<ESC>XB1The current time is:
<ESC>XB1<ESC>WAHH*:mm:ss*:TT
<ESC>Q1<ESC>Z
* = from firmware version 1E2050, 1E3002 for CL6xxVA
*
*
*
96SATO RISC Printers
Programming Manual2. Command Codes
Output:
*
*
*
*
*
Note:
1. This function requires the Calendar Option. See your SATO representative for details.
2. The date and time elem ents may be placed in any order for printing.
3. Use a slash (/) to separate date elements and a colon (:) to separate time elements.
4. The font for the date/time elements must be specified before this
command.
5. The printer’s internal clock may be set through the Calendar Set
command.
6. This command can be used up to six times per job.
7. The Copy or Reverse Image commands cannot be used with this
command.
8. Up to 16 characters can be used with this command.
*
*
SATO RISC Printers97
2. Command CodesProgramming Manual
Calendar Set
Command Structure:
<ESC>WTaabbccddee
aaYear (01-99)
bbMonth (01-12)
ccDay (01-31)
ddHour (00-23)
eeMinute (00-59)
Example:<ESC>WT9101311200
Placement:This command must be sent in an independent data
stream.
Default:None
Function:
To set the time and date of the printer’s internal clock.
Input:
<ESC>A
<ESC>WT9312251300
<ESC>Z
Output:
There is no printer output for this command. It sets the current date to
December 25, 1993 and the current time to 1:00 PM in the printer.
Note:This command requires the Calendar Option. See your
SATO representative for details.
98SATO RISC Printers
Programming Manual2. Command Codes
Memory Card Option Comm ands
These commands require the Me mory Card Option.
Note:Before a Memory Card can be used for the first time, it
must be initialized using the <ESC>BJF command. If it is
not initialized, the printer will not recognize the card and
respond as if no card was installed.
SATO RISC Printers99
2. Command CodesProgramming Manual
Memory Card Function
Clear Card Memory
Command Structure:
<ESC>*a,bba:Memory card section to be cleared
G To clear SATO graphic files from memory card
P To clear PCX graphic files
F To clear formats from the memory card
O To clear TrueTypefonts
bb:Memory Card storage area to be cleared
01 to 99 for Graphics, PCX or Formats
00 to 09 for TrueType fonts
Example:<ESC>*G,01
Placement:Thiscommandshouldbesentto the printerimmediately
following the <ESC>CC Slot Select command.
Default:None
Function:
To clear individual memory areas in the Memory Card.
Input:
<ESC>A
<ESC>CC1<ESC>*O,09
<ESC>Z
Output:
There is no printer output as a result of this command.
Note:
1. To clear everything in the memory card, use the <ESC>BJF Memory Card Initialize command.
2. This command is ignored if there is no data to be cleared.
3. This command is ignored if a memory card is not installed in the
printer.
100SATO RISC Printers
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.