Fingerprint Developer's Guide (old)
Page 3
Version Number 002 001 Date 7/2009 7/2008 Description of this document. Intermec Fingerprint Developer's Guide iii Document Change Record This page records changes to this document was originally located in this document. Content in : • the Fingerprint Programmer's Reference Manual (P/N 937-005-001). • the Intermec Fingerprint 8.00 Tutorial (P/N 1-960608-00). Initial release of Change Updated document for new printer models and new symbologies.
Version Number 002 001 Date 7/2009 7/2008 Description of this document. Intermec Fingerprint Developer's Guide iii Document Change Record This page records changes to this document was originally located in this document. Content in : • the Fingerprint Programmer's Reference Manual (P/N 937-005-001). • the Intermec Fingerprint 8.00 Tutorial (P/N 1-960608-00). Initial release of Change Updated document for new printer models and new symbologies.
Fingerprint Developer's Guide (old)
Page 5
... 12 Sending Command Strings in Immediate Mode 12 About Programming Mode 13 Using Line Numbers 14 Programming Without Line Numbers 14 Sending Programs to the Printer 15 Commands for Editing Code 15 Using Conditional Instructions 16 Using an IF...THEN...[ELSE] Instruction 16 Using an IF...THEN...[ELSE]...END IF Instruction... About Branching 17 Branching to Subroutines 17 Instructions for Conditional Branching 18 Unconditional Branching Using a GOTO Statement 21 Branching to an Error-Handling Subroutine 21 Intermec Fingerprint Developer's Guide v
... 12 Sending Command Strings in Immediate Mode 12 About Programming Mode 13 Using Line Numbers 14 Programming Without Line Numbers 14 Sending Programs to the Printer 15 Commands for Editing Code 15 Using Conditional Instructions 16 Using an IF...THEN...[ELSE] Instruction 16 Using an IF...THEN...[ELSE]...END IF Instruction... About Branching 17 Branching to Subroutines 17 Instructions for Conditional Branching 18 Unconditional Branching Using a GOTO Statement 21 Branching to an Error-Handling Subroutine 21 Intermec Fingerprint Developer's Guide v
Fingerprint Developer's Guide (old)
Page 6
... 30 Renaming a Program 30 Saving in CompactFlash Memory Cards 30 Creating a Startup Program 30 3 Managing Files 33 Using Directories in the Printer File System 34 Using Path Shortcuts 34 About File Types 35 Commands for Listing Files 35 Listing a File With the FILELIST Program 35...37 Using the TRANSFER KERMIT Statement 37 Using the ZMODEM Protocol 37 Using a TRANSFER STATUS Statement 37 Commands for Transferring Files Between Printers 38 Checking Transferred Files With CHECKSUM 38 Commands for Working With Arrays 38 Specifying Array Dimensions Using DIM 39 Sorting Arrays 39 ...
... 30 Renaming a Program 30 Saving in CompactFlash Memory Cards 30 Creating a Startup Program 30 3 Managing Files 33 Using Directories in the Printer File System 34 Using Path Shortcuts 34 About File Types 35 Commands for Listing Files 35 Listing a File With the FILELIST Program 35...37 Using the TRANSFER KERMIT Statement 37 Using the ZMODEM Protocol 37 Using a TRANSFER STATUS Statement 37 Commands for Transferring Files Between Printers 38 Checking Transferred Files With CHECKSUM 38 Commands for Working With Arrays 38 Specifying Array Dimensions Using DIM 39 Sorting Arrays 39 ...
Fingerprint Developer's Guide (old)
Page 7
... the Last Field Read With LOC 51 Determining File Length With LOF 51 Input From the Printer Keypad 51 Controlling Communication 52 Using BUSY or READY Statements 52 Using an ON LINE | OFF LINE Statement 53 Controlling... Printer Response with VERBON | VERBOFF 53 Managing Background Communication 53 Background Communication Example 54 Retrieving Buffer Status With... to a Sequential File With PRINT 61 Printing Characters by ASCII Values With PRINTONE 61 Intermec Fingerprint Developer's Guide vii
... the Last Field Read With LOC 51 Determining File Length With LOF 51 Input From the Printer Keypad 51 Controlling Communication 52 Using BUSY or READY Statements 52 Using an ON LINE | OFF LINE Statement 53 Controlling... Printer Response with VERBON | VERBOFF 53 Managing Background Communication 53 Background Communication Example 54 Retrieving Buffer Status With... to a Sequential File With PRINT 61 Printing Characters by ASCII Values With PRINTONE 61 Intermec Fingerprint Developer's Guide vii
Fingerprint Developer's Guide (old)
Page 8
... a CLOSE Statement 64 Finding the Last Field Read and Determining File Length With LOC and LOF 64 Output to Communication Channels 64 Output to the Printer Display 65 5 Managing Fonts, Bar Codes, and Images 67 Managing Fonts 68 About Font Types 69 Selecting Fonts 69 Controlling Font Direction, Size, Slant, and... White Printing With NORIMAGE or INVIMAGE 83 Specifying Text for Printing With PRTXT 84 Defining Borders With PRBOX 84 Summary for Text Fields 84 viii Intermec Fingerprint Developer's Guide
... a CLOSE Statement 64 Finding the Last Field Read and Determining File Length With LOC and LOF 64 Output to Communication Channels 64 Output to the Printer Display 65 5 Managing Fonts, Bar Codes, and Images 67 Managing Fonts 68 About Font Types 69 Selecting Fonts 69 Controlling Font Direction, Size, Slant, and... White Printing With NORIMAGE or INVIMAGE 83 Specifying Text for Printing With PRTXT 84 Defining Borders With PRBOX 84 Summary for Text Fields 84 viii Intermec Fingerprint Developer's Guide
Fingerprint Developer's Guide (old)
Page 9
... Handling Errors With ERRHAND.PRG 101 Renumbering Lines When Merging Files 101 Merging Programs 101 Using the Print Key 102 7 Controlling the Printer 103 Using Fingerprint to Control the Printer 104 Controlling Media Feed 104 Adjusting Media Feed Distance With TESTFEED 104 Feeding Media With FORMFEED 104 Overriding Start and Stop Adjust... Repeating the Last Printing Operation With PRINTFEED 106 Enabling Manual Printing With PRINT KEY ON 107 Checking the Transfer Ribbon and Printhead With SYSVAR 107 Intermec Fingerprint Developer's Guide ix
... Handling Errors With ERRHAND.PRG 101 Renumbering Lines When Merging Files 101 Merging Programs 101 Using the Print Key 102 7 Controlling the Printer 103 Using Fingerprint to Control the Printer 104 Controlling Media Feed 104 Adjusting Media Feed Distance With TESTFEED 104 Feeding Media With FORMFEED 104 Overriding Start and Stop Adjust... Repeating the Last Printing Operation With PRINTFEED 106 Enabling Manual Printing With PRINT KEY ON 107 Checking the Transfer Ribbon and Printhead With SYSVAR 107 Intermec Fingerprint Developer's Guide ix
Fingerprint Developer's Guide (old)
Page 10
... FUNCTEST or FUNCTEST 109 Reprinting Labels After Interruptions 109 About Batch Printing 109 Using the Printer Keypad 111 Branching to Subroutines With KEY...ON and ON KEY...GOSUB 111 Defining Audio...Mode 114 Using the Printer Display 114 Printing Text to the Display on PF/PM/PX-Series Printers 114 Controlling the Display Cursor on PF/PM/PX-Series Printers 115 Customizing the ...Hardware and Firmware Versions 122 Checking Immediate Mode and STDIO Status 123 Rebooting the Printer 123 About Printer Memory 124 Permanent Memory 124 Temporary Memory 124 Using Memory Cards 125 Other ...
... FUNCTEST or FUNCTEST 109 Reprinting Labels After Interruptions 109 About Batch Printing 109 Using the Printer Keypad 111 Branching to Subroutines With KEY...ON and ON KEY...GOSUB 111 Defining Audio...Mode 114 Using the Printer Display 114 Printing Text to the Display on PF/PM/PX-Series Printers 114 Controlling the Display Cursor on PF/PM/PX-Series Printers 115 Customizing the ...Hardware and Firmware Versions 122 Checking Immediate Mode and STDIO Status 123 Rebooting the Printer 123 About Printer Memory 124 Permanent Memory 124 Temporary Memory 124 Using Memory Cards 125 Other ...
Fingerprint Developer's Guide (old)
Page 11
... the ERRHAND.PRG Utility Program 134 Modifying ERRHAND Variables and Subroutines 134 Complete Listing of ERRHAND.PRG 135 Standard Error Codes 138 A Printer Keypad Layouts 139 PF2i, PF4i, PF4ci 140 PM4i 142 PX4i and PX6i Standard Keypad, PA30 144 PX4i, PX6i Alphanumeric Keypad 146 About ID Numbers and ASCII Values 146 PD42... PB32 151 B Character Sets and Keywords 153 Introduction to Character Sets 154 About the UTF-8 Character Set 155 Example 156 Reserved Keywords and Symbols 157 Intermec Fingerprint Developer's Guide xi
... the ERRHAND.PRG Utility Program 134 Modifying ERRHAND Variables and Subroutines 134 Complete Listing of ERRHAND.PRG 135 Standard Error Codes 138 A Printer Keypad Layouts 139 PF2i, PF4i, PF4ci 140 PM4i 142 PX4i and PX6i Standard Keypad, PA30 144 PX4i, PX6i Alphanumeric Keypad 146 About ID Numbers and ASCII Values 146 PD42... PB32 151 B Character Sets and Keywords 153 Introduction to Character Sets 154 About the UTF-8 Character Set 155 Example 156 Reserved Keywords and Symbols 157 Intermec Fingerprint Developer's Guide xi
Fingerprint Developer's Guide (old)
Page 14
... person who is responsible for free. Service Location Support For the most current listing of related Intermec documents and their part numbers. Related Documents This table contains a list of service locations, click...Intermec Fingerprint programming language. Document Title Intermec Fingerprint Command Reference Manual Intermec Direct Protocol Programmer's Reference Manual Part Number 937-005-xxx 1-960597-xx The Intermec web site at www.intermec.com contains our documents (as IP address. You need to be familiar with operating, maintaining, and troubleshooting your Intermec printer...
... person who is responsible for free. Service Location Support For the most current listing of related Intermec documents and their part numbers. Related Documents This table contains a list of service locations, click...Intermec Fingerprint programming language. Document Title Intermec Fingerprint Command Reference Manual Intermec Direct Protocol Programmer's Reference Manual Part Number 937-005-xxx 1-960597-xx The Intermec web site at www.intermec.com contains our documents (as IP address. You need to be familiar with operating, maintaining, and troubleshooting your Intermec printer...
Fingerprint Developer's Guide (old)
Page 17
1 Introduction to Fingerprint This chapter introduces Intermec Fingerprint and includes these topics: • What Is Fingerprint? • Which Printers Support Fingerprint? • Learning the Structure of Fingerprint Commands • Fingerprint Operating Modes • Sending Fingerprint Commands to the Printer Intermec Fingerprint Developer's Guide 1
1 Introduction to Fingerprint This chapter introduces Intermec Fingerprint and includes these topics: • What Is Fingerprint? • Which Printers Support Fingerprint? • Learning the Structure of Fingerprint Commands • Fingerprint Operating Modes • Sending Fingerprint Commands to the Printer Intermec Fingerprint Developer's Guide 1
Fingerprint Developer's Guide (old)
Page 18
...is a programming language you locate the product want to the printer from a memory card, or sent to download. For more information, see the Fingerprint Command Reference Manual. Intermec Printer PA30 Print Engine PF2i, PF4i, PM4i, PX4i, PX6i PD41, PD42 PB21, PB31, PB22, PB32..., PB50, PB51 Supports Fingerprint Version 8.x.x 8.x.x 10.x.x 11.x.x To locate the latest Fingerprint firmware for your Intermec printer. A Fingerprint program can consist ...
...is a programming language you locate the product want to the printer from a memory card, or sent to download. For more information, see the Fingerprint Command Reference Manual. Intermec Printer PA30 Print Engine PF2i, PF4i, PM4i, PX4i, PX6i PD41, PD42 PB21, PB31, PB22, PB32..., PB50, PB51 Supports Fingerprint Version 8.x.x 8.x.x 10.x.x 11.x.x To locate the latest Fingerprint firmware for your Intermec printer. A Fingerprint program can consist ...
Fingerprint Developer's Guide (old)
Page 19
..., loaded, listed, or merged with a display and keyboard. • a serial connection to an Intermec printer, you can then be in printer memory, where "Globe.1" is a numeric value indicating the x- Sending Fingerprint Commands to the Printer To send Fingerprint commands to the printer. • a communications program, such as needed. Specifies the print direction, where 3 indicates that...
..., loaded, listed, or merged with a display and keyboard. • a serial connection to an Intermec printer, you can then be in printer memory, where "Globe.1" is a numeric value indicating the x- Sending Fingerprint Commands to the Printer To send Fingerprint commands to the printer. • a communications program, such as needed. Specifies the print direction, where 3 indicates that...
Fingerprint Developer's Guide (old)
Page 20
... your desktop PC. Continue with HyperTerminal 1 Connect the printer to the printer. 5 In HyperTerminal, type the following text: SETUP WRITE "uart1:" 6 Press Enter. SETUP WRITE Command Results: This screen shows some of the default settings. 4 Intermec Fingerprint Developer's Guide Chapter 1 - To connect to the printer with the next step to send a SETUP WRITE command...
... your desktop PC. Continue with HyperTerminal 1 Connect the printer to the printer. 5 In HyperTerminal, type the following text: SETUP WRITE "uart1:" 6 Press Enter. SETUP WRITE Command Results: This screen shows some of the default settings. 4 Intermec Fingerprint Developer's Guide Chapter 1 - To connect to the printer with the next step to send a SETUP WRITE command...
Fingerprint Developer's Guide (old)
Page 21
2 Understanding Fingerprint Syntax This chapter explains the basics of Fingerprint command syntax and includes these sections: • Learning Fingerprint Syntax • About Devices • About Immediate Mode • About Programming Mode • Sending Programs to the Printer • Commands for Editing Code • Using Conditional Instructions • About Branching • About Loops • Structuring Your Program • Executing the Program • Breaking Program Execution • Breaking Program Execution Intermec Fingerprint Developer's Guide 5
2 Understanding Fingerprint Syntax This chapter explains the basics of Fingerprint command syntax and includes these sections: • Learning Fingerprint Syntax • About Devices • About Immediate Mode • About Programming Mode • Sending Programs to the Printer • Commands for Editing Code • Using Conditional Instructions • About Branching • About Loops • Structuring Your Program • Executing the Program • Breaking Program Execution • Breaking Program Execution Intermec Fingerprint Developer's Guide 5
Fingerprint Developer's Guide (old)
Page 22
... generally indicate the action to be changed, or other related information. Branches unconditionally to be taken, the printer setting to a specified line. A statement is not required. 6 Intermec Fingerprint Developer's Guide A line in a Fingerprint program may contain up parameters for storing an image in ...indicates that the following data ("HELLO") is a required part of the keyword, as YYMMDD). In Immediate mode and the Intermec Direct Protocol, numbering is an instruction which further define the statement. It consists of PRTXT). In some examples. Indicates ...
... generally indicate the action to be changed, or other related information. Branches unconditionally to be taken, the printer setting to a specified line. A statement is not required. 6 Intermec Fingerprint Developer's Guide A line in a Fingerprint program may contain up parameters for storing an image in ...indicates that the following data ("HELLO") is a required part of the keyword, as YYMMDD). In Immediate mode and the Intermec Direct Protocol, numbering is an instruction which further define the statement. It consists of PRTXT). In some examples. Indicates ...
Fingerprint Developer's Guide (old)
Page 23
...rest of a keyword combined with number 10 and increment line numbers up by parentheses. A function can restrict the printer to enter the line numbers manually, start with values, flags, and/or operators enclosed by 10s (10, ...value of the insertion point +1... After typing the line number, use a space character to separate it easier to the printer. Chapter 2 - About Functions A function is not possible to separate the keyword from other instructions. A function consists...transmitted to insert additional lines (for ASCII code 65. Intermec Fingerprint Developer's Guide 7
...rest of a keyword combined with number 10 and increment line numbers up by parentheses. A function can restrict the printer to enter the line numbers manually, start with values, flags, and/or operators enclosed by 10s (10, ...value of the insertion point +1... After typing the line number, use a space character to separate it easier to the printer. Chapter 2 - About Functions A function is not possible to separate the keyword from other instructions. A function consists...transmitted to insert additional lines (for ASCII code 65. Intermec Fingerprint Developer's Guide 7
Fingerprint Developer's Guide (old)
Page 27
... the printer memory, and operator interfaces such as the printer display and keyboard. Communication Devices Name Refers To Can Be OPENed For console: Printer display and...: USB communication port Input/Output finisher: Printer finisher interface Input/Output Memory Devices Name /rom /c tmp: Refers To Printer firmware (Kernel) plus read-only memory card...lock: Refers To Electronic key. The next table lists available device names. Main printer memory. Also called "c:" or "ram:" Printer temporary memory. Understanding Fingerprint Syntax Examples of Logical Operator OR A B F F...
... the printer memory, and operator interfaces such as the printer display and keyboard. Communication Devices Name Refers To Can Be OPENed For console: Printer display and...: USB communication port Input/Output finisher: Printer finisher interface Input/Output Memory Devices Name /rom /c tmp: Refers To Printer firmware (Kernel) plus read-only memory card...lock: Refers To Electronic key. The next table lists available device names. Main printer memory. Also called "c:" or "ram:" Printer temporary memory. Understanding Fingerprint Syntax Examples of Logical Operator OR A B F F...
Fingerprint Developer's Guide (old)
Page 28
...and saved as an Immediate Mode command. Some devices must be lowercase characters only and enclosed by numbers instead of label printers. • Send commands that you will never need to print labels that can be saved after execution. Sending Command ...Strings in Immediate Mode You can be used in a single line: 12 Intermec Fingerprint Developer's Guide Most commands can be issued in other types of names: 0 = "console:" 1 = "uart1:" 2 = "uart2:" 3 = "uart3:" 4 = "centronics:" 5 = "net1...
...and saved as an Immediate Mode command. Some devices must be lowercase characters only and enclosed by numbers instead of label printers. • Send commands that you will never need to print labels that can be saved after execution. Sending Command ...Strings in Immediate Mode You can be used in a single line: 12 Intermec Fingerprint Developer's Guide Most commands can be issued in other types of names: 0 = "console:" 1 = "uart1:" 2 = "uart2:" 3 = "uart3:" 4 = "centronics:" 5 = "net1...
Fingerprint Developer's Guide (old)
Page 29
...to create programs consisting of one or more flexibility than Immediate Mode provides, use the Intermec Direct Protocol, since it allows variable input data to make up automatically when the printer is entered on page 36. Branching and loops can be created in ascending line ...number order when a RUN statement is switched on , the printer returns either manually entered as you disable Immediate Mode by sending an IMMEDIATE OFF command. For more information, see the Intermec Direct Protocol Programmer's Reference Manual. Not all Fingerprint commands can be abbreviated...
...to create programs consisting of one or more flexibility than Immediate Mode provides, use the Intermec Direct Protocol, since it allows variable input data to make up automatically when the printer is entered on page 36. Branching and loops can be created in ascending line ...number order when a RUN statement is switched on , the printer returns either manually entered as you disable Immediate Mode by sending an IMMEDIATE OFF command. For more information, see the Intermec Direct Protocol Programmer's Reference Manual. Not all Fingerprint commands can be abbreviated...
Fingerprint Developer's Guide (old)
Page 30
... write program lines. Chapter 2 - The next example shows a short program with a line label, which is listed. This orders the printer to understand. Finish the program by line without the colon). The lines will generally have line numbers in the next section. To make...start with any keywords reserved by a colon (:). If you next send the LIST command, Fingerprint automatically adds the line numbers: 14 Intermec Fingerprint Developer's Guide For more complex programs, programming without manually entering line numbers, send the IMMEDIATE OFF command first. The next ...
... write program lines. Chapter 2 - The next example shows a short program with a line label, which is listed. This orders the printer to understand. Finish the program by line without the colon). The lines will generally have line numbers in the next section. To make...start with any keywords reserved by a colon (:). If you next send the LIST command, Fingerprint automatically adds the line numbers: 14 Intermec Fingerprint Developer's Guide For more complex programs, programming without manually entering line numbers, send the IMMEDIATE OFF command first. The next ...