Lexmark X925 Forms and Bar Code Card Technical Reference Guide - Page 166

The existing Bar Code Technical Reference manual version 3.2, and the HP BarDIMM - user manual

Page 166 highlights

• GS: hex 1D, decimal 29 • Comma: hex 2C, decimal 44 1 MaxiCode Typeface Call method The existing Bar Code Technical Reference manual version 3.2, and the HP BarDIMM Technical Reference manual from version 3.0 onward are in conflict over how the separator works, and how Mode 2 and Mode 3 is specified. A structured append is covered in the MaxiCode AIM specification, which allows up to eight MaxiCode symbols to be chained together as one. However, there are no bar code readers that can decode such a combined bar code series. The SuchyMIPS BCE supports structured appends, and so does HP BDP. That is, they can parse the structured append (described in the following paragraph), but they do not fully implement it. A structured append consists of 4 bytes: • A number 1 through 8 that labels each individual MaxiCode in the structured append • A separator character, either a comma or a GS (which is ASCII 29) • A number 1 through 8 that represents the maximum number of MaxiCode symbols in the structured append • Another separator character For example, the only valid MaxiCode that is supported should be a single symbol, specified as: 1,1,01234567...... where 1,1, represents the Structured Append; and 01234567.... represents the rest of the MaxiCode data structure. The HP spec BarDIMM specification version 3.0 and later is consistent with this PCL datastream calling sequence: (s24800T1,1,x,01234567..... where x is either a 2 or 3, corresponding to MaxiCode Mode 2 or Mode 3 Mode 2 encodes numeric-only data, and Mode 3 allows a reduced amount of alphanumeric data. Note that the Mode of the MaxiCode is specified within the input data, after the typeface command 24800T. If the 2 extra bytes (Mode number 2 or 3, plus a separator) are included in the input data, then the BCE will throw an error. Users should add additional parsing that examines input data: • Byte 5 for either a "2" or a "3" • Byte 6 for a separator character If they are found, then remove them, and pass the 4 structured append bytes and the rest of the input data to the BCE. This method will still allow existing HP-coded datastreams to work on HP BDP, while allowing the Forms and Bar Code Card to work correctly, as well. Deviations 163

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170

Deviations
163
GS: hex 1D, decimal 29
Comma: hex 2C, decimal 44
1
MaxiCode Typeface Call method
The existing Bar Code Technical Reference manual version 3.2, and the HP BarDIMM
Technical Reference manual from version 3.0 onward are in conflict over how the separator
works, and how Mode 2 and Mode 3 is specified.
A structured append is covered in the MaxiCode AIM specification, which allows up to eight
MaxiCode symbols to be chained together as one. However, there are no bar code readers
that can decode such a combined bar code series.
The SuchyMIPS BCE supports structured appends, and so does HP BDP. That is, they can
parse the structured append (described in the following paragraph), but they do not fully
implement it.
A structured append consists of 4 bytes:
A number 1 through 8 that labels each individual MaxiCode in the structured append
A separator character, either a comma or a GS (which is ASCII 29)
A number 1 through 8 that represents the maximum number of MaxiCode symbols in the
structured append
Another separator character
For example, the only valid MaxiCode that is supported should be a single symbol, specified
as:
1,1,01234567
......
where
1,1,
represents the Structured Append; and
01234567
....
represents the rest of the MaxiCode data structure.
The HP spec BarDIMM specification version 3.0 and later is consistent with this PCL
datastream calling sequence:
<Esc>(s24800T1,1,x,01234567
…..
where x is either a 2 or 3, corresponding to
MaxiCode Mode 2 or Mode 3
Mode 2 encodes numeric-only data, and Mode 3 allows a reduced amount of alphanumeric
data.
Note that the Mode of the MaxiCode is specified within the input data, after the typeface
command
24800T
. If the 2 extra bytes (Mode number 2 or 3, plus a separator) are included in
the input data, then the BCE will throw an error.
Users should add additional parsing that examines input data:
Byte 5 for either a "2" or a "3"
Byte 6 for a separator character
If they are found, then remove them, and pass the 4 structured append bytes and the rest of
the input data to the BCE. This method will still allow existing HP-coded datastreams to work
on HP BDP, while allowing the Forms and Bar Code Card to work correctly, as well.