Page 2
Technical Support Fax: (704) 644.1661 E-Mail: satosales@satoamerica.com techsupport@satoamerica.com www.satoamerica.com Copyright 2008 SATO America, Inc. All rights reserved WARNING THE EQUIPMENT REFERENCED IN THIS DOCUMENT COMPLIES WITH THE REQUIREMENTS IN PART 15 OF FCC RULES FOR A CLASS B COMPUTING DEVICE. OPERATION OF THIS EQUIPMENT IN A...
Bar code Commands... 5-2 Two-dimensional bar codes... 5-5 Printer Language Change Commands Setting the Printer to SBPL Language ... 6-2 Setting the Printer to PCL Language... 6-2 SATO Contacts SATO Group of Companies ... 7-2 SATO D512 PCL PROGRAMMING MANUAL PN: 9001180B...
Page 4
PN: 9001180B SATO D512 PCL PROGRAMMING MANUAL...
Printer Job Language (PJL) Enter Language Command. See “ENTER LANGUAGE Command” in Printer Job Language section for more information. See “Printer Job Language” in the Printer Job Language section for the syntax and use of PJL. An example of a well-structured PJL prologue would be the following:...
Distance between the top and bottom edge of the physical page and the printable area in portrait, or distance between the left and right edge of the physical page and the printable area in landscape SATO D512 PCL Programming Manual Page 1-3...
A symbol set defines which characters are available for a font and the code point for each of these characters. Your printer supports 16 resident symbol sets. The table beginning on page 1-5 shows the symbol sets available for each font in PCL emulation. Not all fonts support all symbol sets.
Page 9
Bold Roman Pillar Regular Roman Pillar Italic Roman Pillar Bold Roman Pillar Bold Italic OCR-A OCR-B Indicates Typeface supports the specified Symbol Set. Indicates Typeface does not support the specified Symbol Set. SATO D512 PCL Programming Manual D512 Page 1-5...
PCL commands are multibyte strings (also known as “escape sequences”) that begin with the Escape control code ( , ¬, decimal 27, or hexadecimal 1B). The printer that the characters that follow are to be interpreted as part of a command and are not control codes or data to be printed. Page 1-6...
A command parameter sets the value for a command. This value stays constant until either a different value resets the command or a command resets the printer to the default values. For example, after the printer receives a command that selects a right margin beginning at column 63, the right margin of each printed page begins at column 63.
Page 12
Move to horizontal cursor position, column six Move six columns to the right of the current position Move six columns to the left of the current position Select 10 characters per inch Select Courier typeface (s4099T (s3B (s4099T SATO D512 PCL Programming Manual...
Unit 1: PCL Emulation PCL EMULATION COMMANDS See the following tables for a listing of the commands grouped by function. To determine which commands your printer supports, see “Table 3-1: PCL Emulation Commands” in the PCL Support section. PCL E...
Page 14
Note: This setting resets margins, the number of printable lines per page, and the cursor position. Print Direction Rotates the coordinate system counter-clockwise in 90° increments with respect to the current orientation. Note: Margins are not rotated or cleared. SATO D512 PCL Programming Manual *p#X) *p#Y) *c#A) *c#B)
Page 15
& # = number of 1/48 inch increments (Valid to 4 decimal places) Default = 8 SATO D512 PCL Programming Manual Function / Result Character Text Path Direction Vertically rotates text for use in vertical writing, such as printing Japanese text.
Page 16
• This command is sent at the beginning of a page in a print job and prior to any printable data. • When the command is sent, the current page is closed and printed. • Unsupported values are ignored. Text Scale Mode This command is parsed and ignored. SATO D512 PCL Programming Manual...
Page 17
Half Line-Feed Moves the cursor down 1/2 line (1/2 of the current VMI). Set Line Termination Controls how the printer responds to the Carriage Return (CR), Line Feed (LF), and Form Feed (FF) control codes. Push / Pop Cursor Position Sets up a cursor position stack for storing and recalling various cursor positions.
Page 18
Identifies the physical traits of a character and the composition of the font symbols. Note: You can only use this command to select fonts currently available in the printer. It cannot alter the appearance of the available fonts. SATO D512 PCL Programming Manual...
Page 19
Fixed Fixed - double Floating Floating - double &d@ SATO D512 PCL Programming Manual Function / Result Select Stroke Weight Selects a font with a particular thickness. Note: This command will not alter the stroke weight of an available font.
Page 20
Function / Result Symbol Set ID Code Sets the symbol set identification for the symbol set downloaded. Define Symbol Set Contains the data for the user-defined symbol sets. Symbol Set Control Manages user-defined symbol sets. SATO D512 PCL Programming Manual...
Page 21
Delete all macros Delete all temporary macros Delete current macro ID Make last ID temporary Make last ID permanent SATO D512 PCL Programming Manual Function / Result Set Font ID Sets the identification number for the font being downloaded. Load Font Header Downloads soft font header information.
Page 22
Logical Operation This command is parsed and ignored. Pixel Placement This command is parsed and ignored. Select Current Pattern Selects pattern used when printing text and raster images. Note: Cross-Hatch Patterns are not supported. SATO D512 PCL Programming Manual...
Page 23
(1 Decipoint = 1/720 inch) Default = 0, valid to 4 decimal places *c#B # = Number of PCL Units (0 - 32767) Default = 0 SATO D512 PCL Programming Manual Function / Result User-Defined Pattern Downloads binary pattern data. Set Pattern Reference Point Sets the pattern reference point to the current cursor position for user- defined patterns.
Page 24
Note: This command is also used to set the user-defined pattern ID. Cross-Hatch Patterns are not supported Fill Rectangular Area Fills a rectangular area defined by Horizontal and Vertical Rectangle Sizes with the selected pattern. Note: Cross-Hatch Patterns are not supported. SATO D512 PCL Programming Manual...
Page 25
TIFF double-word (32 bit) 1008 Adaptive compression (includes TIFF word and TIFF double-word) *b#W[data] # = Number of Data Bytes SATO D512 PCL Programming Manual Function / Result Raster Resolution Only 300 dpi is supported. All other values are parsed Note: and ignored.
Page 26
End Raster Graphics (Version C) Same as Version B, but: • Resets the compression mode to uncoded. • Sets the left graphics margin to 0. Raster Width (Destination) Sets the width of the destination raster. SATO D512 PCL Programming Manual...
Page 27
Byte 22,23 - Y res for Y plane 0x012C (300) or 0x0258 (600) Byte 24,25 - Y plane intensity levels 0x02 (1 bit/plane) or 0x04 (2 bits/plane) SATO D512 PCL Programming Manual Function / Result Raster Height (Destination) Sets the height of the destination raster.
Page 28
Set Status Readback Location Type Sets the status location type to the specified value. The 5 value for Cartridge may be specified, but since your printer does not support font cards or cartridges, the command is ignored. The 7 value for User-installable flash is only valid when flash memory is installed.
Page 29
Use Current GL/2 Pen Position Table 1-18: Miscellaneous Commands Command / Parameters &s#C SATO D512 PCL Programming Manual Function / Result Picture Frame Horizontal Size (in Decipoints) Specifies the horizontal dimension of the picture frame used when printing a GL/2 plot.
Page 30
Unit 1: PCL Emulation Table 1-18: Miscellaneous Commands (continued) Command / Parameters *o#M(b) & #M(b) Page 1-26 Function / Result Print Quality This command is parsed and ignored. Paper Type This command is parsed and ignored. SATO D512 PCL Programming Manual...
PCL emulation and cannot be used with software without a unique printer driver written explicitly for GL/2. Table 1-19: Configuration Group Escape Sequence Table 1-20: Vector Group Escape Sequence SATO D512 PCL Programming Manual Function Support GL/2: Comment GL/2: Default Values GL/2: Initialize...
Page 32
7 supported GL/2: Select Alternate Font Not supported GL/2: Scalable or Bitmap Fonts Not supported GL/2: Define Standard Font GL/2: Absolute Character Size Not supported GL/2: Character Slant Not supported GL/2: Relative Character Size Not supported SATO D512 PCL Programming Manual...
Page 33
Table 1-22: Character Group (continued) Escape Sequence Table 1-23: Line and Fill Attributes Group Escape Sequence Table 1-24: Miscellaneous Group Command / Parameter SATO D512 PCL Programming Manual Function Support GL/2: Select Standard Font GL/2: Transparent Data Not supported Function...
These parameters are in effect until you overwrite them with a different command or there is a printer reset. To ensure that the printed image appears in the expected area, set width and height parameters.
Page 35
*b8W '80 00 00 00 00 00 00 01'x *b8W 'FF FF FF FF FF FF FF FF'x SATO D512 PCL Programming Manual |Move the cursor to 1" x 1" (1 in. from top margin and 1 in. from left edge...
Page 36
*b2W '07FF'x Page 1-32 |Move cursor to 1" x 2" |Set compression to Run-Length |Start raster graphics at current position |Run-Length: 8x'FF'x |1x'80'x, 6x'00'x, 1x'01'x |1x'80'x, 6x'00'x, 1x'01'x |... |1x'80'x, 6x'00'x, 1x'01'x |8x'FF'x |End graphics SATO D512 PCL Programming Manual...
Page 37
*b2W 'F9FF'x *b6W '0080 FB00 0001'x *b9W '078000000000000001'x … *b6W '0080 FB00 0001'x *b2W 'F9FF'x SATO D512 PCL Programming Manual |Move cursor to 1" x 3" |Set compression to TIFF |Start Raster Graphics at current position | TIFF: 8x'FF'x |1:'80'x, 6x'00'x, 1: '01'x or |8: '8000000000000001'x |…...
Page 38
|Move cursor to 1" x 4" |Set compression to Delta Row |Start raster graphics at current position |Num Offset |'111 00000'b=8 at 0: 'FFFFFFFFFFFFFFFF'x |8 at 0: '8000000000000001'x |No bytes change |No bytes change |8 at 0: '8FFFFFFFFFFFFFF'x |End graphics SATO D512 PCL Programming Manual...
Page 39
*b5M *b29W '03 0009'x 'E0FFFFFFFFFFFFFFFF'x |Delta Row: 8 at 0: '01 0006'x '0080 FB00 0001'x '05 0035'x 'F9FF 'x SATO D512 PCL Programming Manual CountH,CountL Data Data sizeH,L Uncoded raster scan data Data sizeH,L Size of Run-length encoded data (high,low)
Page 40
The number 999 does not conflict with other compression types, so it is used to represent zlib compression. See “Raster Compression Mode” in this section for more information. Page 1-36 SATO D512 PCL Programming Manual...
Page 41
Since Group 4 images do not use line endings, the width of the image must be specified using the Raster Width command ( The compressed image data is sent to the printer using the Transfer Raster Data command ( using the Transfer Raster Data command is 32K bytes. Images larger than 32K bytes must be broken up and sent using multiple commands.
|Make Macro ID 1 permanent |Print the header From: |Set the macro ID to 1 and call the macro |Print the letter |Print the closing |Set the macro ID to 1 and call the macro SATO D512 PCL Programming Manual...
Unit 2: Printer Job Language PRINTER JOB LANGUAGE Your printer supports complete Printer Job Language (PJL) commands, including certain commands that cause the printer to enter PCL emulation. To determine which commands your printer supports, see Section, “PCL Support.” PJL COMMAND NOTATION The syntax for each supported PJL command is listed in this chapter.
• When the printer receives this command, it is ignored. • The spaces, and horizontal tabs. • The COMMENT command is terminated by the line feed character (<LF>). SATO D512 PCL Programming Manual parameter can be any combination of printable characters, words of the next @PJL must be uppercase;...
• The JOB command should only be used in conjunction with the EOJ command. • After receiving a JOB command, the printer does not process a UEL command as a PJL job boundary until it receives the corresponding EOJ. Instead, UELs occurring within a JOB/EOJ pair are processed...
Page 47
1 of the print job and its range is from 1 to 2,147,483,647. Omission of the END parameter causes the printer to print all pages to the end of the job. SATO D512 PCL Programming Manual has been printed.
80 characters, spaces, or tabs. The NAME string may be different from the NAME string specified in the JOB command. The must be enclosed in double quotes. Page 2-6 job name SATO D512 PCL Programming Manual...
Unit 2: Printer Job Language ENVIRONMENT COMMANDS AND VARIABLES This section describes the printer environment variables and the PJL commands used to modify or query the variables. The following commands modify the environment variables, and are described in this section: •...
Unit 2: Printer Job Language DEFAULT Command This command modifies the default setting for the specified environment variable and stores the setting in the printer NVRAM. The new setting is activated with the occurrence of the next PJL reset condition. Syntax: @PJL DEFAULT [command modifier:value] variable=value[<CR>]<LF>...
Use the SET command to modify any currently defined environment variable that cannot be set using the desired printer language. For example, use the PJL SET command to set Page Protect, which cannot be set within a printer language such as PCL emulation.
NVRAM. Therefore, any variables modified by the PJL SET command are returned to their default value after execution of the PJL RESET command. Syntax: @PJL RESET[<CR>]<LF> To determine which variables your printer supports, see “Table 1: PJL Variables” in this section. Table 2-2: PJL Variables Variable Function COPIES...
Page 53
PTSIZE Default point size (proportional spaced fonts) SYMSET Symbol set for the default font SATO D512 PCL Programming Manual Selections 0–17 I, S Internal font source Permanent download fonts 0.08 to 100 (in increments of 0.01) Note: If an invalid pitch is requested, the printer selects the closest pitch.
The supported variables are listed in “Table 2-2: PJL Variables” on page 2-10. This printer returns a ? for inquiries of an unsupported variable, or inquiries of a variable associated with an option that is not installed. Page 2-12...
Unit 2: Printer Job Language ECHO Command The ECHO command instructs the printer to return the specified words after the command is parsed. This command provides a method of capturing the status information returned by a specific print job. Syntax: @PJL ECHO [words][<CR>]<LF>...
MEMORY=2097152<CR><LF> <FF> Page 2-14 Description Returns the model name or the model number stored in the printer NVRAM. Returns the printer configuration, including paper sources, paper sizes, and installed options. Returns the printer available memory. Returns the printer page count.
The supported variables are listed in “Table 2-2: PJL Variables” on page 2-10. This printer returns a ? for inquiries of an unsupported variable, or inquiries of a variable associated with an option that is not installed. SATO D512 PCL Programming Manual...
Disables unsolicited status for page changes. 5 to 300 in Enables timed unsolicited status. The printer automatically seconds sends status at a specified time interval. Disables timed unsolicited status. SATO D512 PCL Programming Manual parameter. ustatus variable=value...
Unit 2: Printer Job Language USTATUSOFF Command This command turns off unsolicited status. Unsolicited status may also be turned off by using the USTATUS command on each variable. Syntax: @PJL USTATUSOFF[<CR>]<LF> SATO D512 PCL Programming Manual Page 2-17...
DISPLAY=display string (in double quotes) ONLINE=online status Table 2-5: PJL Information Messages Printer State Ready Ready Not Ready Page 2-18 Status Code Display String 10001 Ready 10001 RDYMSG 10002 Not Ready SATO D512 PCL Programming Manual Online Status TRUE TRUE FALSE...
Page 61
1PCL SUPPORT SATO D512 PCL Programming Manual Page 3-1...
Table 3-1 lists PCL emulation commands and identifies printers that support them. For detailed information about PCL emulation commands and how to select them, see “PCL Emulation” on page 1-2. The section, “GL/2 Commands” on page 1-27 identifies printer support for the GL/2 commands. Table 3-1: PCL Emulation Commands...
Page 63
Primary Font Symbol Set Select Primary Download Font (by Font ID) Select Default Primary Font (f#W[data] Define Symbol Set (s#B Primary Font Stroke Weight (s#H Primary Font Pitch SATO D512 PCL Programming Manual Printer Model Page D512 1-16 1-12 1-10 1-12 1-12...
PRINTER JOB LANGUAGE SUPPORT The following tables list PJL commands and identify printers that support them. For detailed information about PJL commands, see Section 2, the Printer Job Language section, in this manual. All commands may not have a full description.
Selects the Codabar symbology with a bar height of 0.5 inch. Because the p and h parameters are not specified, their values default to: Do not print text Not applicable because of #p parameter value SATO D512 PCL Programming Manual...
Page 77
For bar code symbologies, the default value of the #H text font parameter is CBA = 000 (automatically sized Roman Pillar bold). Does not include checksum character. Checksum character is always printed if human-readable text is specified. SATO D512 PCL Programming Manual Default Parameters 74.4 74.4 74.4...
Page 78
Checksum character is always printed if human-readable text is specified. URSOR POSITIONING Cursor positioning is set as follows when printing with the Sato Bar Code Option: • From the current cursor position, bar code printing begins at the bottom left corner of the left bar.
Unit 5: Bar Code Commands TWO-DIMENSIONAL BAR CODES PCL 5 C OMMANDS TO Sato provides two methods to print MaxiCode bar codes. The final method uses two Sato unique commands &x#W and &y#W. & ESCRIPTOR This escape sequence is used to describe not only what bar code to print, but also all of the parameter settings required to build the bar code.
Page 80
An optional secondary message follow the class of service for modes 2 and 3. For modes 4, 5, and 6 the message follows the number-of-labels field. Page 5-6 SATO D512 PCL Programming Manual...
Page 81
Example of MaxiCode commands using typeface selection: (s24800T RS01GS961Z00004951GSUPSNGS06X610GS159GS1234567GS 1/1GS10GSYGS634 ALPHA DRGSGSPITTBURGHGSPARS Where: =escape character decimal 27, hexadecimal 1B RS=record separator decimal 30, hexadecimal 1E GS=group separator decimal 29, hexadecimal 1D SATO D512 PCL Programming Manual OMMAND YPEFACE ELECTION &p105X1,1,3,152382802,840,001,[) ETHOD Page 5-7...
Page 82
UNCTIONAL ARAMETERS FOR The #p parameter specifies the level of error correction to use: 0–8. In relation to the fields of the Sato Bar Code Descriptor for PDF417, the following correspondences exist when using this technique: ECC Level Examples of PDF 417 commands: (s0p24850TABCDEFG Encodes the string “ABCDEFG”...
Unit 6: PRINTER LANGUAGE CHANGE COMMANDS SETTING THE PRINTER TO SBPL LANGUAGE This chapter discusses setting the printer to the SBPL language, and setting the printer to PCL language. Command to set SBPL Language The SBPL command sets the printer to SBPL mode and causes all subsequent data to be processed as SBPL data.
Page 85
Unit 6: PRINTER LANGUAGE CHANGE COMMANDS <ESC>RN <ESC>Z SATO D512 PCL Programming Manual Page 6-3...
Page 86
Unit 6: PRINTER LANGUAGE CHANGE COMMANDS This page intentionally left blank. Page 6-4 SATO D512 PCL Programming Manual...
Fax: 61-3-8814-5335 SATO NEW ZEALAND LTD. 30 Apollo Drive, Mairangi Bay, Auckland , New Zealand Phone: 64-9-477-2222 Fax: 64-9-477-2228 • Extensive contact information of worldwide SATO operations can be found on the Internet at www.satoworldwide.com American Region SATO INTERNATIONAL AMERICA, INC.