CognitiveTPG A760 User Manual

Page 119

Advertising
background image

A760 User Guide: Programming Supplement

Chapter 4: Programming commands

119

Revision F January 2010

Loading the exception table

The exception table begins at word 20 in NVRAM. Each
entry takes five words. There is room for eight exceptions
with a sumcheck written in the last word. An application
can load local exceptions into the printer using the write

NVRAM command:

0x1B 0x73 n1 n2 k

which writes the two byte word n1:n2 to word k in
NVRAM.

Exception table entry format

Each exception table entry consists of five words. The first
two words contain the first eight characters of the transit
number by packing the low order nibble of the numeric
transit number characters. For Canadian checks, eliminate
the dash and store the eight numerics.
The next three words are used as six individual bytes to
tell the firmware how to interpret the MICR characters that
fall to the right of the rightmost transit symbol. Each of the
six bytes is positional and consists of two parts: character
type and number.
The three high order bits of each byte mark the character
type. The characters can be marked in three ways: check
serial # character, account # character, or “skip this
character or symbol.”

The five low order bits of each byte contain the number of
characters of that type to extract. Most exceptions will not
need to use all six bytes; in that case clear the unused bytes
to zero.

Bits within byte

7 6

5 4

3 2 1 0

Check serial #

0 0

1 n

n n

n

n

character string

Account #

0 1

0 n

n n

n

n

character string

Character string

1 0

0 n

n n

n

n

to ignore

Example 1

t123456780t12349876543210o

1234 is the check serial #

9876543210 is the account #

To load the second table entry, which starts at word 25, the
transit number 123456780 would be stored in the first two
words of its table entry using this string of commands:

0x1B 0x73 0x12 0x34 25

0x1B 0x73 0x56 0x78 26

After the right transit symbol are immediately the four
characters of the check serial #, followed immediately by
the ten characters of the account number. These would be
bitwise encoded as:

0 0 1 0 0 1 0 0 (check #, four characters)

and

0 1 0 0 1 0 1 0 (account #, 10 characters)

then stored in the other three words of the table entry
using:

0x1B 0x73 0x24 0x4A 27

0x1B 0x73 0x00 0x00 28

0x1B 0x73 0x00 0x00 29

Example 2

t22137–632t001 6042202o927540

2754 is the check serial #

6042202 is the account #

To load the third table entry, which starts at word 30, the
transit number 2137–632 would be stored in the first two
words of its table entry using this string of commands:

0x1B 0x73 0x22 0x13 30

0x1B 0x73 0x76 0x32 31

After the right transit symbol are four characters to skip,
a seven digit account number, two characters to skip, and
finally a four digit check serial #. The final character to
skip need not be encoded. These would be bitwise encoded
as:

1 0 0 0 0 1 0 0 (skip four characters)

0 1 0 0 0 1 1 1 (account #, seven characters)

1 0 0 0 0 0 1 0 (skip two characters)

0 0 1 0 0 1 0 0 (check #, four characters)

then stored in the other three words of the table entry
using:

0x1B 0x73 0x84 0x47 32

0x1B 0x73 0x82 0x24 33

0x1B 0x73 0x00 0x00 34.

Advertising