User guide
A795 User Guide: Programming Supplement
Chapter 4: Programming commands
49
Set relative print position
ASCII ESC \ n1 n2
Hexadecimal 1B 5C n1 n2
Decimal 27 92 n1 n2
Value of n:
To move the relative starting position right of the current
position:
n = Number of dots to be moved right of the
current position
n1 = Remainder after dividing n by 256
n2 = Integer after dividing n by 256
The values for n1 and n2 are two bytes in low byte, high
byte word orientation.
To move the relative starting position left of the current
position:
n = Number of dots to be moved left of the
current position
n1 = Remainder after dividing (65,536-n) by 256
n2 = Integer after dividing (65,536-n) by 256
The values for n1 and n2 are two bytes in low byte, high
byte word orientation.
Moves the print starting position the specified number of
dots either right (up to the right margin) or left (up to the
left margin) of the current position. The print starting
position is reset to the first column after each line.
Formulas
To move to the left:
Determine the value of n by multiplying the number of
columns to move left of the current position by 10
(standard) or 8 (compressed) pitch. The example shows
how to set the relative position two columns in standard
pitch (10 dots per column) to the left of the current
position.
2 x 10 = 20 dots (two columns to be moved left
of the current position)
65,536-20 = 65516
65,516/256 = 255, remainder of 236
n1 = 236, n2 = 255
To move to the right:
Determine the value of n by multiplying the number
of columns to move right of the current position by
10 (standard) or 8 (compressed) pitch. The example
shows how to set the relative position two columns in
standard pitch (10 dots per column) to the right of the
current position.
2 x 10 = 20 dots (two columns to be moved left
of the current position)
20/256 = 0, remainder of 20
n1 = 20, n2 = 0
Related information
If the set horizontal and vertical minimum motion units
command (1d 50) is used to change the horizontal and
vertical minimum motion unit, the parameters of this
command (set relative print position) will be interpreted
accordingly. For more information, see the description of
the set horizontal and vertical minimum motion units
command (1D 50) in this document.
Compatibility information (A795 receipt vs. A793
receipt)
There is a difference in the normal behavior of this
command in A793 emulation mode as compared to the
original A793. The difference exists when the command is
used to move to the left. The A793 processes the whole
print string prior to putting it in the buffer for the print
head. This method of processing allows the A793 to
backup in the print string and replace characters and their
associated attributes when a “Set relative print position”
command instructs the printer to move the print position to
the left.
In order to improve the speed of printing, the A795 moves
the data into a buffer for the printhead when it receives it.
When the “Set relative print position” command contains a
move to the left, this causes the new data to overstrike the
previous data. This behavior can be used to an
application’s advantage to provide the ability to create
compound characters on the receipt station.
This command also functions differently in the A793
emulation when used in graphics:
n x 2 = Number of dots to be moved from the beginning
of the line when this command is followed by a
graphic command.