Page 1
Forms Printer 248x/249x Technical Reference October 2000 www.lexmark.com...
Page 2
Lexmark International, Inc., Department F95/035-3, 740 New Circle Road N.W., Lexington, Kentucky 40511-1876, U.S.A. Lexmark may use or distribute any of the information you sup- ply in any way it believes appropriate without incurring any obligation to you.
The information in this manual enables you to fully use the capabilities of dot-matrix impact printing. This book applies to the Lexmark Forms Printer 2400 Series dot-matrix family of printers. Differences that occur between printer models are noted.
Print Speeds Your printer supports the following burst print speeds in characters per second (cps). Mode Fast Draft • 10 cpi • 12 cpi Draft • 10 cpi • 12 cpi Near Letter Quality - Gothic, Courier • 10 cpi •...
Humidity range Vibration Although this desktop printer is portable and durable, do not operate or place the printer in vibration-prone areas. For best results, operate the printer on a level surface. Clearances Printer operation produces natural convection, or airflow. To allow sufficient airflow, make sure there is 50.8 mm (2 in.) of space around all exposed surfaces.
Alternating Current Line Voltage Power Your printer uses one of the following alternating current (ac) line voltage power values. Note: Input voltage value varies with the country where the printer was pur- chased. • 90-137 V ac, 50/60 Hz •...
Paper Specifications 2480/2490 (Narrow Carriage Models) Cut Forms Paper Dimensions Single Maximum 297 mm (11.7 in.) See Note Maximum Hole to Hole See Note Minimum 76 mm (3.0 in.) Minimum Hole to Hole Note: When the optional Auto Sheet Feeder or Tractor 2 Feeder is installed, the max- imum width of a cut form is 215 mm (8.5 in.) for manual loading.
2481/2491 (Wide Carriage Models) Cut Forms Paper Dimensions Single Maximum 420 mm (16.5 in.) Maximum Hole to Hole Minimum 76 mm (3.0 in.) Minimum Hole to Hole Maximum 559 mm (22.0 in.) Minimum 76 mm (3.0 in.) Maximum 90 g/m (24 lb.) Minimum 60 g/m...
Page 16
Paper Size Narrow carriage (2480/2490) Automatic Feed Mode (single-part form) Length 139.7 mm (5.5 in.) minimum 355.6 mm (14.0 in.) maximum Width 105 mm (4.13 in.) minimum 215.9 mm (8.5 inch) maximum Tractor Feeder (continuous forms) Length 76 mm (3.0 in.) minimum maximum Width...
For replacement ribbon, order ribbon number 11A3540. Length: Width: Fabric: High yield re-inking ribbon is available for the 2400 series printer. It has a life expectancy of approximately 8 million characters in 10 cpi draft mode. For replacement ribbon, order ribbon number 11A3550. Length:...
Examples in this manual have been formatted to be processed by a simple BASIC program. The BASIC program reads an input file and writes data to an output file. Printer commands may be entered into the input file in a hexadecimal format and enclosed with opening and closing delimiters.
Set Initial Conditions (SIC) Command The SIC command sets the printer to the default values that were set at the factory or to user-defined defaults. SIC Command Format Use the following format: Format ESC [ Decimal Ln is the number of parameters plus 2. Hn is 0.
Page 22
The value for init can be: Initial Values Section 2: Set Initial Conditions (SIC) Command Description Initializes printer to user-defined settings. The download font remains unchanged. If parameters are specified, they over- write the default settings.
Page 23
Use the following parameters (parms) with SIC commands that use the printer ID of C5 and C6: Printer 2480 2481 2490 2491 Parm Description Selection Emulation 0=No Change 1=PPDS 2=Epson Panel Disable 0=No Change (see Note 1) 1=Panel Disabled 2=Panel Enabled...
Page 24
Parm Description Notes (cont.): 2 If Parm 3 has no value (macro has not been supplied), the printer default macro is used to store the change. When init=04H or 05H is specified, parm3 is ignored. When init=00H, 01H, FEH, FFh are specified, parm3 value is used as Macro No.
Page 25
Parm Description Selection Code Page 0=No Change 1=437 2=850 3=860 4=863 5=865 6=437G 7=813 8=851 9=853T 10=857 11=869 12=920 13=1053 14=861 15=1004 16=858 Form Length 0=No Change 1=1 to 176 Lines Lines Per Inch 0=No Change Left Margin 0=No Change 1=0 Inch 2=1 Inch 3=2 Inches...
Page 26
Parm Description Auto LF Slash Zero Character Set Print Direction 0=No Change Sheet Feeder Lock FF Enable (2480 only) TOF Read Tractor Tear Off Section 2: Set Initial Conditions (SIC) Command Selection 0=No Change 1=On 2=Off 0=No Change 1=Slashed Zero 2=Normal Zero 0=No Change 1=Set 1...
Commands This section provides a detailed description of IBM emulation mode commands you can use with your printer. Control Codes Control codes are one-character printer commands that are used to: • Manage the printing of a job. • Control the movement of the cursor, which changes the current print position.
Escape Sequences An escape sequence (two or more characters of information) lets you change the way the printer is currently printing. Like a control code, it gives you control over the printed output. The escape sequence begins with the character ESC (decimal 027, hexadecimal 1B).
63, the right margin of each printed page begins at column 63. The margin remains constant until a right margin command with a different value resets the margin, or the printer is reset. In this section, command parameters are indicated by a lowercase n. Usage Notes explain how to compute this parameter.
Select Code Page ( name of command ) (A short description of the command follows) This command placed before the first character changes the active code page. (The printer command format follows with the decimal and hexadecimal values). Format Decimal Usage Notes The digits 4 0 0 0 (decimal), 04 00 00 00 (hexadecimal) are constants.
Format ESC 6 Decimal See pag e217 for more information. Select Code Page Use this printer command to change the active code page. Format ESC [ Decimal Usage Notes The digits 4 0 0 0 (decimal), 04 00 00 00 (hexadecimal) are constants.
Use the code page tables for the decimal or the hexadecimal digit (see “Code Pages” on page 187). • Locate the character on the code page table. • Use the decimal or hexadecimal digit for that character in the printer com- mand format. Usage Notes To print less than 256 characters: •...
To download fonts, download must be enabled in the Setup menu. Format ESC = Decimal Usage Notes count low/count high The number of bytes of data being downloaded starting with the printer id byte. A 1-byte number identifying the printer. Printer 2480 Plus 2481 Plus 2490 Plus...
3 For the hexadecimal digits for Hf Lf, look across the row to the sixth through ninth columns (depending on the typestyle you want to print). 4 Substitute these digits for Hf Lf in the printer command syntax. • The size parameters (Hs, Ls and Sm) are valid when the pitch and font typestyle variables (Hf and Lf) are not valid and the size modifier parame- ter (Sm) is 1 (decimal) or 01 (hexadecimal).
Usage Note • This command cancels any print combinations that conflict with ESC I. • The following table shows valid values for n for the 248x and 249x print- ers: Section 3: IBM Emulation Mode Printer Commands ESC : ESC I...
Page 41
Draft - Download Fast DP (12 cpi) - Download NLQ - Download ALT NLQ II - Download Section 3: IBM Emulation Mode Printer Commands 249x Print Mode Normal (Draft) 10 cpi Normal (Draft) 12 cpi Normal (Draft) 17 cpi Normal (LQ) 10 cpi -...
Select Print Type Style This command is used for varying the type style of the character and the number of line spacing. Use this printer command for: • Single-high character • Double-high character • Single-wide character • Double-wide character •...
Page 43
Stop Shadow Print (249x only) No Change Single Double No Change Single Double No Change Single Double Unchanged Single Double Section 3: IBM Emulation Mode Printer Commands Selection Height Line Space No Change No Change No Change Single Single Single Single Double Double...
Double-strike print results in a darker print because the printhead strikes the character twice. To begin double-strike print: Format Decimal To end double-strike print: Format Decimal Section 3: IBM Emulation Mode Printer Commands ESC E ESC F ESC G ESC H...
ESC S Decimal To end subscript: Format ESC T Decimal Set Print Direction This command sets the printer to print either unidirectionally or bidirectionally. Format ESC U Decimal Usage Note The value of n can be any of the following: Decimal...
For 249x printers only. This command selects several forms of overscore, underscore, and strikethrough. Format Decimal To select loc: Decimal Section 3: IBM Emulation Mode Printer Commands ESC W Direction Cancels double-wide printing mode Sets double-wide printing mode. ESC [ loc type...
Continuous Overscore This command prints a line above spaces and characters. To begin Continuous Overscore: Format Decimal To end Continuous Overscore: Format Decimal Cancel Single ESC - ESC - ESC _ ESC _ Section 3: IBM Emulation Mode Printer Commands Double...
For 2490 printers, the value of n can be any of the following: Decimal 1 to 63 64 to 127 128 to 191 192 to 254 Section 3: IBM Emulation Mode Printer Commands ESC [ 64 01 No Change 01 to 3F Fast Draft...
Each vertical dot column can have 8 rows of dots. To print bit image graphics, the printer uses either the first 8 (248x) or 20 (249x) wires of the printhead to map the eight bits of data. The following table shows how the print wires are...
• mode is the vertical wire count and the horizontal density in dots per inch. Select mode from the following table. Mode Section 3: IBM Emulation Mode Printer Commands Binary Value 14, 15 16, 17 If dots 1 and 0 print, wire 18 is also used.
— Divide the number of bytes you want to print by 256. — The result is Hn. — The remainder is Ln. • data is the bit-mapped graphics information. Horizontal Density data data data Section 3: IBM Emulation Mode Printer Commands Wires...
— Divide the number of bytes you want to print by 256. — The result is Hn. — The remainder is Ln. • data is the bit-mapped graphics information. Section 3: IBM Emulation Mode Printer Commands ESC Y data data data...
Horizontal Movement Set Horizontal Tabulation Stops This command sets up to 28 tabulation stops to be used with the printer command HT, Horizontal Tabulation. Format ESC D Decimal Usage Notes n1...n28 is used to set the tabulator stop positions. •...
To move more than 256 increments: • Divide the number of increments you want to move by 256. — The result is Hn. — The remainder is Ln. Section 3: IBM Emulation Mode Printer Commands ESC X ESC d increment 100 Ln...
ESC J Decimal Usage Notes • n is a value from 0 to 255 (decimal) or 0 to FF (hex). • n must be a multiple of 3 to advance exactly n/216 inch. Begin Section 3: IBM Emulation Mode Printer Commands...
Usage Notes • Use ESC B to set the tabulation stops and to advance paper to the next ver- tical tabulation stop (VT) to activate them. Section 3: IBM Emulation Mode Printer Commands ESC [ m4 (Hex) ESC B tab settings n1...n64...
10.3 lpi. Format ESC 1 Decimal Activate Line Spacing for Text This command activates the line spacing designated by the Set Line Spacing for Text (ESC A) printer command. Format ESC 2 Decimal Section 3: IBM Emulation Mode Printer Commands...
Set Line Spacing for Text This command sets line spacing in n/72 inch increments. To activate the line spacing, use the printer command Activate Line Spacing for Text (ESC 2). Format Decimal Usage Note The value for n must be between 1 and 85.
When the command is sent, the current vertical position becomes the new top of form. • If the printer command Set Skip Perforation (ESC N) is active, or if "skip over perforation" is On in the printer setup, this printer command deacti- vates it.
When the command is sent, the current vertical position becomes the new top of form. • If the printer command Set Skip Perforation (ESC N) is active, or if "skip over perforation" is On in the printer setup, this printer command deacti- vates it.
Printer Control Deselect Printer When this command is sent, the printer ignores all data except DC1 . Format ESC Q Decimal The following values of n are valid: Model 2480 2481 2490 2491 Setup Barcode Parameter This command sets the barcode parameters to the printer.
Page 62
1=1/360 in. and for 9 wire printers the unit is 1=1/240 in. The variables v1 and v2 control the bar length. The minimum value of v1, v2 is 288 dec (24 wire) and 270 (9 wire). Section 3: IBM Emulation Mode Printer Commands Barcode Type <reserved>...
ESC [ Decimal Usage Notes • The printer must receive the ESC [ f command prior to the ESC [ p com- mand. • The barcode prints after the printer receives the LF line feed command. Command length is denoted by n1 and n2. The following values are valid for...
Page 64
Automatic Check Digit Generation Flag On n1 (low byte) 1 to 255 1 to 255 2 to 255 Section 3: IBM Emulation Mode Printer Commands n2(high byte) 01 to FF 01 to FF 02 to FF Barcode Type EAN-13 EAN-8...
Double continuous line d2=5 Single broken line d2=6 Double broken line 1B 49 n Printable Code Area Expansion (248x only) n=1 Allows non-printable codes to be used for user-defined characters. n=0 Cancels n=1 selection. Section 4: Epson Emulation Mode Printer Commands...
Page 66
Name ESC R 27 82 n Section 4: Epson Emulation Mode Printer Commands Description 1B 52 n Select an International Character Set n=0 USA n=1 France n=2 Germany n=3 U.K. n=4 Denmark 1 n=5 Sweden n=6 Italy n=7 Spain 1...
Page 67
ESC t 27 116 n 1B 74 n ESC x 27 120 n 1B 78 n Section 4: Epson Emulation Mode Printer Commands Description 248x: Select Near-Letter- Quality Font Selects the font to be used in NLQ mode. n=0 Courier...
Page 68
Name ESC (t 27 40 116 3 0 d Section 4: Epson Emulation Mode Printer Commands Description 1B 28 74 3 0 d Assign Character Tables Parameter range Function Assigns the d character table to the d table according to the following...
27 112 n 1B 70 n Proportional Spacing Mode n=0 End n=1 Begin 27 83 n 1B 53 n Begin Superscript or Subscript n=0 Superscript n=1 Subrscript 27 84 1B 54 End Superscript or Subscript Section 4: Epson Emulation Mode Printer Commands...
Page 70
Name ESC a ESC w The following table lists the n parameters for the ESC ! command. Section 4: Epson Emulation Mode Printer Commands Description 27 97 n 1B 61 n Select Justification n=0 prints the line of characters against the left margin.
Prints dual density bit images at 120 dpi horizontally and 72 dpi vertically. 1B 5A Ln Hn Quadruple Density Bit Image Graphics data Prints high density bit images at 240 dpi horizontally and 72 dpi vertically. Section 4: Epson Emulation Mode Printer Commands...
Page 72
249x Graphic Modes include 0, 1, 2, 3, 4 and 6 from the 248x table above and the following additional values of n in the ESC * command: Section 4: Epson Emulation Mode Printer Commands Description 1B 2A n Ln...
1B 51 n Set Right Margin Sets the right margin in character positions at the current pitch. Offsets the print position by the relative distance from the current position. Offset=(n1 + (n2 x 256))/120 (inch). Section 4: Epson Emulation Mode Printer Commands...
249x printer. 1B 6A n Reverse Relative Move Base Line Feeds the paper by n/216 inches in the reverse direction on 248x printer; n/180 inches in the reverse direction on 249x printer. 1B 62 m Set Vertical Tabs in Channel n1...n8 00...
1B 42 0 n1, Set Vertical Tab Stops n2...n16 00 Sets up to 16 tab stops. The sequence ends with 0. Form Feed Advances the paper to the top of the next page. Section 4: Epson Emulation Mode Printer Commands...
Section 4: Epson Emulation Mode Printer Commands Description Beeper Sounds the printer beeper for approximately 1 second. Select Printer (XON) The host sends this command to signal the printer to begin printing data. Null (XOFF) Cancel Data Clears data received since the last buffer terminator.
Page 77
Copy Normal Characters from ROM to RAM Select Left-to-Right Printing Set MSBs to Zero Sets the MSBs of all data sent to the printer to 0. Set MSBs to One Sets the MSBs of all data sent to the printer to 1.
1B 21 31 Select Block Graphics Character 1B 21 31 Select Line Character Set 1B 21 n Select an International Character Set Dec Hex Section 5: OKI Microline Emulation Mode Printer Commands Section Character Set USA 2 British Danish Dutch French Fr.
Page 80
Name ESC [ T 27 91 84 L Section 5: OKI Microline Emulation Mode Printer Commands 1B 5B 54 L 0 0 H Description Print from Code Page If printing less than 256 characters: = # characters to be printed...
1B 5A Cancel Porportional Spacing 27 78 n 1B 4E n Select Intercharacter Spacing Adds additional spacing to the right of each character. Valid values for n must be between 0 and 11. Section 5: OKI Microline Emulation Mode Printer Commands...
1B 24 Copy ROM Character Set to RAM Character Set Copies a complete set of the characters resident in the printer to the area of its memory reserved for custom characters. 1B 25 41 m Down Line Load Ascender Characters n1...n11...
Page 84
2 Select the corresponding n2 value. 3 Locate the word size (7 or 8-bit graphics). 4 Select the corresponding n2 value. Section 5: OKI Microline Emulation Mode Printer Commands Description 03 03 Stored graphics data in one dot column buffer Determines the graphics setting.
If the value for the left margin is less than 3 digits, use zeros for the first digit(s). Maximum margin value is 899 (2480 printer model) or 999 (2481 printer model). Units are set at 1/120". 1B 25 52 n1...
Page 86
ESC HT 27 9 13 ESC % B 27 37 66 n1 n2 n3 n4 Section 5: OKI Microline Emulation Mode Printer Commands Description 1B 03 x1 y1 Set Horizontal Tabs by Dot Columns z1 w1...x16 Sets tab stops for up to 16 positions. The character...
Page 87
27 45 1B 2D ESC = 27 61 1B 3D Section 5: OKI Microline Emulation Mode Printer Commands Description Set Multiple Print Positions Moves the print position to the right or left, as an absolute or relative print position. pN=0 to 127...
ESC 8 27 56 ESC % 9 27 37 57 n 1B 25 39 n Section 5: OKI Microline Emulation Mode Printer Commands Description 1B 47 H Set Page Length in Inches Sets the page length in increments of 1/2" x the...
For example, the command DC4 32 32 32 5 32 12 32 32 20 32 32 32 32...32 63 causes the printer to skip 3 lines, enters a tab stop at 5, skips 1 line, enters a tab stop at 12, skips 2 lines, enters a tab stop at 20, and then skips however many lines remain on the page.
Page 90
Name ESC V 27 86 Section 5: OKI Microline Emulation Mode Printer Commands Description 1B 56 Eject Page...
Parallel Interface Use Lexmark parallel cable 1329605 (3 m or 10 ft.) or 1427498 (6.1 m or 20 ft.). The parallel cable must be IEEE 1284-compliant and must support two-way...
The printer and the computer synchronize data transfer with the interface signals STROBE*, ACKNLG*, and BUSY. When the computer is ready to send a byte of data to the printer, the computer puts the byte of data on the data lines. Then the computer sends a STROBE* (low) pulse to the printer.
ERROR* INIT* SLCTIN* GROUND GROUND GROUND GROUND GROUND GROUND GROUND GROUND Shield Lexmark compliant cables are supported up to 20 feet. Printer STROBE DATA 0 DATA 1 DATA 2 DATA 3 DATA 4 DATA 5 DATA 6 DATA 7 ACKNLG*...
Page 94
The ACKNLG* pulse tells the computer that the data from the previous STROBE* pulse has been read. An ACKNLG* pulse is also generated when the printer is turned on, or at the completion of the printer initialization by an INIT* requested from the computer.
If data is in the USB buffer, the USB FIFO is not reset. The printer sets the ERROR* line low if the printer detects an error or out-of-paper condition. A critical error condition exists when both ERROR* and PE are low.
You may want to use the serial interface when you need to use a cable more than 6 m (20 ft.) in length, share the printer using a printer sharing device, if you need to connect the printer to a computer that does not have a parallel port, or to a computer that does not have an available parallel port.
This line is set high after the serial interface finishes its POR sequence. However, if you select DTR pacing handshake protocol, this line is used to indicate to the host whether or not the printer is ready to receive any more data.
The maximum total capacitance of the cable and the connector should be less than 2500 pF, or it will delay the signal transition by more than Following is a diagram of the serial cable (Lexmark part number 1038693 (15.24 m or 50 ft.)).
Voltage Level Range The maximum voltage level range for control lines or data lines is from ± 25 positive V dc to ± 25 negative V dc. Lexmark Null Modem Serial Cable 1038693 (15.24 m or 50 ft.) Shield 25 (F)
Page 100
• 19200 bps Start and Stop Bits The printer receives data with 1 start bit and either 1 or 2 stop bits. The printer always sends 1 start and 2 stop bits. Parity There are four possible parity settings: Even, Odd, No, and Ignore.
The buffer can only hold 128 bytes of data after the printer signals that it is busy. If the host sends more than this amount, the data is lost and a buffer overrun error occurs.
Page 102
The DTR signal becomes active (high) when initialization is complete, telling the computer that the printer is ready to receive data. DTR drops (low) to tell the computer that the printer buffer is full or the printer is busy and data transmission should stop. If the computer con- tinues to send data after the printer lowers the DTR signal, data could be lost.
Because all data transmissions require CTS, it must be detected prior to the XON/XOFF protocol initiating. Once CTS is detected, after POR, the printer transmits an XON command. It is not necessary for the host to detect this initial XON command prior to transmitting data to the printer.
Page 104
Select the printer icon. Select Open. Select Settings. The Printer - Settings screen appears. Select the serial port to which you want to attach the printer. The Serial Port - Settings screen appears. Select the settings you want to use.
The 9-wire printers can print downloaded draft characters in NLQ mode. Downloaded characters print at the same speed as standard characters. You design the characters for Draft and the printer adds the additional dots to each character when printing in NLQ mode.
Page 106
Vertical Lines The following drawing shows how the printer adds dots to a vertical line. The solid dots must be specified in the font. Hollow dots are generated by the printer. Diagonal Lines These drawings show how the printer adds dots to diagonal lines.
Page 107
Intersections of Vertical and Horizontal Lines The drawing on the left shows how the printer adds the vertical dots to a vertical line that intersects a horizontal line. The character design must specify all dots in the horizontal line. The printer removes adjacent dots from horizontal lines when printing in Draft, which is illustrated in the drawing on the right.
Page 108
The printer considers the point of intersection as a two-dot vertical line. Diagonal Intersecting Vertical Line The ’M’ shows how the printer adds dots when a diagonal line meets the end of a vertical line. Rows Section 7: Downloading Characters and Fonts...
When a diagonal line intersects a vertical line at a point other than the end of the vertical line, you should specify a horizontal dot at the intersection to improve character appearance. This ensures that the character is acceptable in Draft. Designing Fast Draft Characters The character matrix for Fast Draft characters is 10-dots wide and 9-dots high.
Page 110
Initializing the Download Area Use the following command to initialize the download areas to the resident fonts: <x 1B3D - download command prefix 0000 - byte count when zero causes initialization of > Downloading a Draft/NLQ Character Set The sequence to download characters for Draft/NLQ and Fast Draft is shown below: Syntax: Decimal:...
Page 111
Part Two: Specifying the Download Data Attribute byte 1 specifies the character type and additional information. Bit Values if the character is an ascender (a character using only the upper 8 wires of the print head). if the character is a descender, a character using only the lower 8 wires of the print head (for...
Page 112
11 will be treated as 11. These bytes are unique to each character, and must be specified for each download character. The printer prints one byte at a time. Each wire in the printhead has a corresponding bit in each byte, depending on whether the character is an ascender or a descender.
Page 114
The following example loads data for the copyright symbol into the printer. The data remains in the download storage area until you: • Set the power switch to Off. • Overlay the data with download character data. • Download area is initialized.
Page 115
Downloading an NLQ II Character Set The 248x printers can download two sets of NLQ II characters. The first set is initialized to a Courier-like font, and the second to a Courier italic-like font. Since there are two download areas, you must use a Select Print Mode, ESC I, before downloading to select between the two download areas.
Page 116
Part Two: Specifying the Download Data Each font character is made up of 48 bytes of data. There are 2 bytes of attribute data and 46 bytes of character data. This field of 48 bytes must be repeated for each character. The following text describes the specifications of the attribute bytes and the character data.
Page 117
Attribute byte 2 is not used when specifying NLQ II. Set it to zero. Functions • Defines the column data for each character from left to right. Printable Data • Column 24 is always blank; therefore, only 23 columns can (Columns 1 to 23) be defined.
This byte also tells if another lookup table follows this one and identifies the quality of the font. If the default font has a non-zero code page ID, that code page ID becomes the active code page when the printer is switched Section 7: Downloading Characters and Fonts...
Page 121
on. For Letter Quality fonts, the font descriptor byte also identifies the pitch of the font. If multiple lookup tables have the same combinations of pitch and quality, only the first one is accessible. Font Descriptor Byte Bit 7 1 = This is the default font. 1 = Another lookup table follows.
Page 122
10 cpi LQ 12 cpi LQ 10 cpi ELQ 12 cpi ELQ Proportional characters in the 249x are based on a 7-unit width system where 1 unit is equal to 1/60 inch. Because 1 dot-column equals 1/360 inch, 1 unit is equal to 6 dot-columns.
Page 123
Count Count is the number of bytes of data being downloaded starting with the font ID byte. The count is a 2-byte value downloaded as the low byte followed by the high byte. Font ID Byte The font ID byte is a 1-byte number that identifies the font.
To write over any existing download data, send the printer command ESC = 0 0. Sending ESC = 0 0 clears the existing download data and copies the resident lookup tables to the download area.
Note: The lookup tables copied using the ESC = 0 0 command point to the res- ident fonts with the current code page. After receiving an ESC = 0 0 com- mand, the download area appears empty. Any valid download com- mand activates the download access.
Page 126
This example shows the design for the ampersand character (ASCII 38) from the All Characters chart. This character design does not have any occurrences where extra dots can be added, resulting in a column being identical to its predecessor. For instance, column 4, row 4, could be turned on because it would automatically be turned off during printing, but other bits in column 4 are different from column 3, which means no compression can occur.
Page 127
Creating the Character Data Each dot column is sent to the printer as three bytes of data. To get the values of this data, convert the binary values to hexadecimal values. First byte of data (most significant byte) Second byte of data...
Page 128
108510 0F01C0 000E30 000000 > Downloading the Font Descriptor Byte Send the following descriptor byte information to the printer: <x 1B3D - download command prefix 0400 - byte count (low byte first) - x0004, 4 - font ID for 249x printers...
Page 129
+ x8011 = x8167 (offset + character lookup table address start) The address for the new lookup table entry for ASCII character 38 is x8167. Downloading the Lookup Table Data Send the following lookup table information to the printer: <x 1B3D...
Printing the Character To print the ampersand symbol, send the following command sequence: <x 1B49 - ESC,I - select print mode - draft, 10 cpi 1B5B64 - ESC,[,@ - select print quality 0100 - byte count (low byte first) - x0001, 1 - print quality = Fast Draft 1B5E - print one character command...
Page 131
This example shows the design for the two-sixteenth note character (ASCII 14) from the All Characters Chart. Because the design of this character does not contain any consecutive columns that are identical, no compression can take place. 1 2 3 4 5 6 7 8 9 Byte 1 00 00 00 07 08 11 22 44 BB Byte 2...
Page 132
Creating the Character Data Each dot-column is sent to the printer as three bytes of data. To get the values of this data, convert the binary values to hexadecimal values. First byte of data (most significant byte) Second byte of data...
Page 133
Downloading the Character Data You can start the character data at any unused memory address greater than xA413. This example uses xB000. <x 1B3D - download command prefix 1E00 - byte count (low byte first) - x001E, 30 - font ID for 249x printers 00B0 - start address (low byte first) - xB000 0000A0...
Page 134
+ x8011 = x8626 (offset + character 0 lookup table address) The address for the new lookup table entry for ASCII character 173 is x8626. Downloading the Lookup Table Data Use the following example to send the lookup table information to the printer: <x 1B3D 0C00...
Printing the Character To print the two-sixteenth note character at 12 cpi download draft, send the following sequence: <x 1B49 1B5E > Designing Proportionally Spaced Characters Proportional characters in the 249x are based on a 7-unit width system described in “Design Considerations” on page 121. Typical proportional character widths are: •...
Page 136
The following grid shows a 7 unit trademark symbol. Only 41 columns are shown because column 42 must be blank. Solid dots indicate downloaded and printed dots. Hollow dots indicate consecutive dots that may be added back to the design to take advantage of the compression algorithm. 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 Byte 1 3C 20 20 20 20 20 20 31 20 20 20 20 20 20 3C 00 00 20 20 20 3F 30 10 06 04 02 01 00 00 00 01 02 04 06 10 30 3F 20 20 20 00...
Page 137
Creating the Character Data Each dot-column is sent to the printer as three bytes of data. To get the values of this data, convert the binary values to hexadecimal values. First byte of data (most significant byte) Second byte of data...
Page 138
Downloading the Character Data You can start the character data at any unused memory address greater than xA413. This example uses xA414. <x 1B3D 5D00 14A4 3C0000 200000 200400 3FFC00 200400 200000 3C0000 000000 000400 200400 3FFC00 300400 100400 060400 040400 020000 010000...
Page 139
+ x9213 = x9828 (offset + character 0 lookup table address) The address for the new lookup table entry for ASCII character 173 is x9828. Downloading the Lookup Table Data Send the following lookup table example to the printer: <x 1B3D download command prefix - lookup table...
Page 140
Printing the Character To print the trademark character, send the following sequence: <x 1B49 1B5E > Section 7: Downloading Characters and Fonts ESC, I - select print mode Letter Quality, proportional space print one character command print character xAD, ASCII character 173...
Designing Enhanced Letter Quality Characters When designing monospaced Enhanced Letter Quality characters, you can use horizontal consecutive dots. To design a character, start with a 35 dot wide by 24 dot high grid. Although the character matrix for an ELQ character is 36 dots wide, the last column must be blank.
Page 142
Creating the Character Data Each dot-column is sent to the printer as three bytes of data. To get the value for the first byte of data, convert the binary values of the bottom eight print wires to hexadecimal. The most significant bit of each byte is the top dot. The least significant bit of each byte is the bottom dot.
Page 143
Downloading the Character Data You can start the character data at any unused memory address greater than xA413. This example uses xA414. <x 1B3D download command prefix - character data 3C00 byte count (low byte first) - x003C, 60 font ID for 249x printers 14A4 start address (low byte first) - xA414 000010...
Page 144
Downloading the Font Descriptor Byte Send the following descriptor byte information to the printer: <x 1B3D 0400 > For more information about the Font Descriptor Byte, see page 121. Creating the Lookup Table Data Before creating lookup table data, make note of the following memory addresses.
Page 145
Downloading the Lookup Table Data Send the following lookup table information to the printer: <x 1B3D download command prefix - lookup table data 0C00 byte count (low byte first) - x000C, 12 font ID for 249x printers 348E start address in Lookup Table (low byte...
Page 146
Section 7: Downloading Characters and Fonts...
You can print barcodes on your printer in both IBM and Epson emulation modes. In the 248x printer’s Data Options setup menu, the barcode option must be set to ENABLE to reserve 1K of the receive buffer for barcode processing. If the option is not set to ENABLE, barcode printing is not possible.
Page 148
UPC-A and EAN-13 barcodes use a flag character for number system encoding and country code. Your printer provides the capability of printing the human readable form of this flag character either in the vertical center along the left side of the barcode, or under the barcode with the other human readable characters.
Page 149
k is the barcode type. Barcode Type k value EAN-13 178, xB2 EAN-8 179, xB3 Code 39 180, xB4 Interleaved 2of5 182, xB6 UPC-A 183, xB7 POSTNET 185, xB9 Code 128 186, xBA m is the module width. Module is a term defining the smallest unit of measurement within a barcode. The module width, m, is used to determine both bar and space widths.
Page 150
An example of Code 39, with m = 0 and m = 1, follows: m = 0 (the human readable character is printed) m = 1 (the human readable character is not printed) s is the space width adjustment factor. This parameter affects only space modules.
Page 151
248x 249x Notes: • If you try to use values less than the minimum values, the printer ignores your values and uses the minimum values. • The vertical pitch for 248x printers is 1/72 inch. The vertical pitch for 249x printers is 1/180 inch.
N (quotient of N divided by 256). n2 is normally 0. The printer may not print the barcode if N does not match the number of characters required for the barcode type. After sending the data transfer command and the barcode data, sufficient vertical movement is required to move past the length of the bars.
Data is the actual data to be transferred into the barcode symbology. The data for the barcode data transfer command is a string of ASCII characters immediately following the n1, n2 count bytes. The string "APPLE" is transferred in the example below: <x 1B5B70 - barcode data transfer command prefix...
Page 154
The European Article Numbering (EAN) barcode is the European version of the all-numeric, fixed length UPC symbology. k value: m value: s value: minimum v1, v2 values: c parameter: n1 value (b0 = 0): n1 value (b0 = 1): n2 value: data character set: Character ’0’...
Page 155
Examples: Valid EAN-13 command: <x B5B66 - barcode setup command prefix 0600 - setup data length (low byte first) - - barcode type = EAN-13 - module width = default - space width adjustment = default 4003 - height (low byte first) - x0340 = - control byte: check digit from 1B5B70 - barcode data transfer command...
Page 156
4003 1B5B70 0D00 >0584454824159 ... Since the b0 bit of the c parameter has a value of 01 (check digit by printer), there must be 12 data characters (x0C), not 13 (x0D), specified in the Data Transfer. EAN-8 k value:...
Page 157
data character set: Character ’0’ ’1’ ’2’ ’3’ ’4’ ’5’ ’6’ ’7’ ’8’ ’9’ Examples: Valid EAN-8 command: <x 1B5B66 - barcode setup command prefix 0600 - setup data length (low byte first) - x0006, 6 - barcode type = EAN-8 - module width = default - space width adjustment = default 4003...
Page 158
Since the b0 bit of the c parameter has a value of 01 (check digit by printer), there must be 7 data characters (x07) specified in the Data Transfer Command. Invalid EAN-8 command: >x 1B5B66 0600 4003 1B5B70 0700 >058C454 ...
Page 159
CODE 39 This barcode symbology uses both alphabetic and numeric characters. The printer will add a start/stop character, ’*’, to the barcode and human readable character automatically. k value: 180, xB4 m value: 0 to 4, x00 to x04 s value:...
Page 161
Examples: Valid Code 39 command: <x 1B5B66 - barcode setup command prefix 0600 - setup data length (low byte first) - x0006, - barcode type = Code 39 - module width = 4 = 0.038 inches on 248x, 0.026 inches on 249x - space width adjustment = 3 = 0.0125 inches on 248x, 0.0083 inches on 249x 0303...
Page 162
Invalid Code 39 command: <x 1B5B66 0600 4003 1B5B70 0300 >CaT ... The lowercase ’a’ is not a valid data character for Code 39. Section 8: Barcodes - barcode setup command prefix - setup data length (low byte first) - x0006, 6 - barcode type = Code 39 - module width = default...
Page 163
Interleaved 2of5 is used to express all-numeric messages. Two bytes of data are encoded to form one barcode character. If the check digit generation flag is on (b0 = 1), the printer will add a ’0’ to the data string automatically. k value:...
Page 164
1003 1B5B70 0400 >2359 ... Since the b0 bit of the c parameter has a value of 01 (check digit by printer), note the 0 character added to the barcode above. Section 8: Barcodes - barcode setup command prefix - setup data length (low byte first) -...
Page 167
Since the b0 bit of the c parameter has a value of 01 (check digit by printer), there must be 11 data characters (x0B) specified in the Data Transfer Command. Invalid UPC-A command: <x 1B5B66 - barcode setup command prefix...
Page 168
POSTNET This all-numeric symbology is used to express U.S. Postal Service ZIP codes. k value: m value: s value: minimum v1, v2 values: c parameter: n1 value (b0=0): n1 value (b0=1): n2 value: data character set: Character ’0’ ’1’ ’2’ ’3’...
Page 169
Examples: Valid POSTNET command: <x 1B5B66 - barcode setup command prefix 0600 - setup data length (low byte first) - - barcode type = POSTNET - module width = default - space width adjustment = default 0000 - height (low byte first) - 0 - control byte: no functions selected 1B5B70 - barcode data transfer command prefix...
Page 170
Since the v1, v2 values for the bar length are ignored for POSTNET, 00 00 is an acceptable bar length specification. Invalid POSTNET command: <x 1B5B66 0600 0000 1B5B70 0A00 >40511-876 ... The ’-’ (dash) is an invalid character for POSTNET. Section 8: Barcodes - barcode setup command prefix - setup data length (low byte first) -...
Page 171
They may be included in the barcode data to shift to one of the two alternative character sets. If the check digit generation flag is on (b0 = 1), the printer adds a 0 to the data string automatically.
Page 172
data character sets: Function START A START B START C The character and corresponding hex code for each of these character sets are shown on the following pages. Section 8: Barcodes...
Page 173
data character set A: Character Code Character Space ’!’ ’ ” ’ ’#’ ’$’ ’%’ ’&’ ’ ‘ ’ ’(’ ’)’ ’*’ ’+’ ’,’ ’-’ ’.’ ’/’ ’0’ ’1’ ’2’ ’3’ ’4’ ’5’ ’6’ ’7’ ’8’ ’9’ ’:’ ’;’ ’<’ ’=’...
Page 174
data character set B: Character FNC 3 FNC 2 Shift CodeC FNC 4 CodeA FNC 1 Section 8: Barcodes Code Character Code Character Space ’!’ ’ ” ’ ’#’ ’$’ ’%’ ’&’ ’ ‘ ’ ’(’ ’)’ ’*’ ’+’ ’,’ ’-’...
Page 175
data character set C: Character Code Character ’00’ x3030 ’32’ ’01’ x3031 ’33’ ’02’ x3032 ’34’ ’03’ x3033 ’35’ ’04’ x3034 ’36’ ’05’ x3035 ’37’ ’06’ x3036 ’38’ ’07’ x3037 ’39’ ’08’ x3038 ’40’ ’09’ x3039 ’41’ ’10’ x3130 ’42’ ’11’...
Barcode printing is always performed unidirectionally (left-to-right). • The desired barcode will not print if the barcode print area exceeds the right margin of the printer. • The desired barcode will not print if the barcode print area exceeds the bot- tom of the page or bottom margin.
Page 180
• The desired barcode may not print if invalid characters are specified in the data transfer command. Example: <x 1B5B66 0600 0E01 1B5B70 0500 >012a5 ... Since the desired barcode is POSTNET (B9), the letter ’a’ is not a valid character.
Page 181
• The desired barcode may not print if the number of characters specified by n1, n2 does not match the required number for the desired barcode type. Example: <x 1B5B66 - barcode setup command prefix 0600 - setup data length (low byte first) - x0006, 6 - barcode type = EAN-13 - module width = default...
Page 182
• When the m parameter is set to 1 (m = 1), the printer does not print the human readable character. Example: <x 1B5B66 0600 3804 > Although the c parameter has a value of x00, which tells the printer to print the human readable character, the m parameter has a value of x01, which causes the b1 bit value of the c parameter to be ignored.
Page 183
• Completing the barcode setup and data transfer commands is not enough to print the desired barcode. Before the barcode can be printed, the printer must receive sufficient vertical movement commands (line feed, vertical tab, form feed, etc.) to move down past the length of the barcode (and human readable character, if applicable).
Page 184
Example: <x 1B5B66 0600 5000 1B5B70 0400 30 33 39 32 0D0A0A0A0A0A0A > • Barcode data and other print data (for example, text data) are controlled independently. It is necessary to provide sufficient horizontal space for the barcode when mixing barcodes with other data, otherwise, the text and barcode data will overlap, as shown in the following example: Example: <x1B5B66 0600 B4 00 00 3804 00>...
Page 185
In this example, sufficient horizontal space is inserted to eliminate overlap: Example: <x1B5B66 0600 B4 00 00 3804 00> Barcode Print Sample: <x1B5B70 0300> 395 Text Printing <x0A0A0A0A0A> Barcode Print Sample: Text Printing Section 8: Barcodes...
Printing a Code Page To print all 256 characters of a code page, use one of the following commands with the program that follows. Replace the first line of the program with the appropriate command for the code page you want to print. Code Page 437G 853T...
Set Font Global, ESC [I You can vary the font and pitch type style within a file with this command. It can also be used to change the code page. Syntax: Decimal: Hex: ESC [I changes the font, pitch, and code page. It uses the following best-fit algorithm: Requested font, pitch, and code page.
Page 207
248x Font Global IDs (FGIDs) Decimal, Hex and Byte Decimal Pitch Font Style Normal (Double Wide) Emphasized Italic Emph./Italic Normal Emphasized Italic Emph./Italic Normal Emphasized Italic Emph./Italic Normal Emphasized Italic Emph./Italic 17.1 Normal Emphasized Italic Emph./Italic Normal Emphasized Italic Emph./Italic Decimal Byte Decimal (Hf times...
Page 208
248x Font Global IDs (FGIDs) Decimal, Hex and Byte Decimal Pitch (Double Wide) 17.1 Section 9: Code Pages Decimal (Hf times Font Style Hex (Hf Lf) 256 plus Lf) Courier (cont.) Normal x00AB Emphasized x00B8 Italic x00AC Emph./Italic x00B9 Gothic Normal x00F1 Emphasized...
Page 209
249x Font Global IDs (FGIDs) Decimal, Hex and Byte Decimal Pitch Font Style Normal (Double Wide) Emphasized Italic Emph./Italic Normal Emphasized Italic Emph./Italic Normal Emphasized Italic Emph./Italic Normal Emphasized Italic Emph./Italic 17.1 Normal Emphasized Italic Emph./Italic Normal Emphasized Italic Emph./Italic Decimal Byte Decimal (Hf times...
Page 210
249x Font Global IDs (FGIDs) Decimal, Hex and Byte Decimal Pitch 17.1 Section 9: Code Pages Decimal (Hf times Font Style Hex (Hf Lf) 256 plus Lf) Courier (cont.) Normal x011E Emphasized Italic Emph./Italic Normal x00AB Emphasized x00B8 Italic x00AC Emph./Italic x00B9 Prestige...
Page 211
249x Font Global IDs (FGIDs) Decimal, Hex and Byte Decimal Pitch Font Style Normal Emphasized Italic Normal Emphasized Italic Normal (Double Wide) Emphasized Italic Emph./DS Normal Emphasized Italic Emph./DS Normal Emphasized Italic Emph./DS Normal Emphasized Italic Emph./DS 17.1 Normal Emphasized Italic Emph./DS Normal...
Page 212
249x Font Global IDs (FGIDs) Decimal, Hex and Byte Decimal Pitch sizehigh (Hs): The binary number that is the more significant byte of the 2-byte font size. sizelow (Ls): The binary number that is the less significant byte of the 2-byte font size.
Page 213
Decimal Code Page 437G 853T 1053 1004 Set Print Quality, ESC [d This command sets the print quality for draft or letter quality print: Syntax: Decimal: Hex: • 1 and 0 (decimal) and 01 and 00 (hexadecimal) are constants. • The value of n is a single digit that can be any one of the following digits: Set Print Quality Selections Print Quality...
Page 214
Set Print Quality Selections Print Quality Enhanced Letter Quality Default Font Example Select Fast Draft: Syntax: Decimal: Hex: Interaction of Set Font Global and Set Print Quality Every font has an LQ version and a Draft version. Set Font Global changes the font and pitch within the current quality.
Character Sets 1 and 2 The printer’s interpretation of code pages is based on whether character set 1 or character set 2 is selected. Character set 1 is the factory default character set and is printed if you do not specify otherwise. Character set 2 has foreign language characters and fewer control words.
A set of 256 graphic designs (characters) associated with unique code values from 0 through 255, x00 to xFF. control code. Tells the printer to perform a function, such as changing line space. cpi. See characters-per-inch. cpl. See characters-per-line.
Page 220
LQ. Letter quality. NLQ. Near letter quality. mm. Millimeter. parallel interface. A type of connection that links a printer to a computer, by which all 8 bits of a character are sent at the same time. print quality. Refers to the actual...
OKI Microline mode Code 128 barcode Code 39 barcode code pages character sets printing 188–196 supported computer to printer communication control flag for barcode custom characters, OKI Microline mode data character sets data flow control RS-232C data frames serial...
Page 222
OKI Microline mode IBM AT compatible serial port IBM emulation mode escape sequences set print quality IBM emulation mode printer commands command structure control codes download a character set graphics print mode horizontal movement line control...
Page 223
1/8 inch set line spacing to 7/72 inch lookup table data for downloading miscellaneous commands, OKI Microline mode noise emission value OKI Microline mode printer commands character set character size and spacing character style custom characters graphics print modes...
Page 224
IBM emulation mode select character set 1 select character set 2 serial adapter option 96–?? printer connections RS-232C cable communication parameters connecting data frame considerations errors start and stop bits using a 9-pin compatible...
October, 2000 You may use this form to communicate your comments about this publication, with the under- standing that Lexmark may use or distribute whatever information you supply in any way it believes appropriate without incurring any obligation to you.
Page 226
Please Do Not Staple BUSINESS REPLY FIRST CLASS MAIL PERMIT NO. 2659 POSTAGE WILL BE PAID BY ADDRESSEE Lexmark International Inc. Depar tment F95, Building 035- 3 740 NEW CIRCLE ROAD NW LEXINGTON KY 40511-9 9 5 4 | | |...
Need help?
Do you have a question about the FORMS 249X and is the answer not in the manual?
Questions and answers