Printing barcodes with HP82162A
#1

Hi,

Could someone help me on how to print my programs for HP41 in barcodes using the HP 82162A printer?
Is there a way to print (list) directly from the calculator?
Best regards,
Artur

#2

The easiest way is to use the printer/plotter module.

If you do not have the module itself you can buy a module emulator and use the ROM image from TOS.

Alternatively you may want to check old PPC journals on the MoHPC CDROM. I believe there is a program there that does what you want.

**vp

#3

http://www.rskey.org/gene/calcmuseum/41bc.htm

Five different programs with various requirements.

Enjoy!

#4

I'll try the programs in the link. As I don't have the plot module (any for sale/trade?), I'll try the dangerous synthetic programming ...

Thank to all of you again!
Artur

#5

Do these programs also work for the non-IL version of the thermal printer, the 82143?

Andreas

#6

Sorry...only the 82162 printer. Won't work with the original printer.

Gene

#7

Is there a fundamental reason, i.e. does the 82143 lack features that the IL has and that are essential for the barcodes?

#8

AFAIK, HP-82143A doesn't have the ability to directly print bar codes (no #80..#8F sequence in 8-bit mode or ESC * z sequence in ASCII mode as on the HP-82162A printer). They can eventually be printed using column mode on HP-82143A with the aid of appropriate program.

#9

Not even with column mode, because the print buffer is only forty-someodd bytes long, and because you can't control the vertical spacing of printed lines, so you can't get suitable bar widths lengthwise.

#10

Hi, Gene and other guys,

I have reformated the program listing and saw some problems:
-lines 183,187,209 - are they empty?
-lines 184,188,217, 259 show X="0?" - is that correct?

Best regards,
Artur

ps: my reformated program listing, for better printing (copy and paste):

<table BORDER=1 style="page-break-before:always;" width="90%"><tr VALIGN=TOP>
<td width="50%"><pre>
Lin Instruction
01 LBL &quot;BCD&quot;
02 CF 10
03 LBL 04
04 CF 12
05 ACA
06 PRX
07 ADV
08 CLRG
09 ABS
10 INT
11 X = 0?
12 SIGN
13 13
14 X &gt; Y?
15 X <> Y
16 STO 06
17 12
18 +
19 PSIZE
20 1
21 -
22 1 E3
23 /
24 STO 03
25 SF 25
26 SAVEP
27 FIX 0
28 CF 29
29 RCLPTA
30 2
31 -
32 STO 05
33 LASTX
34 +
35 ACX
36 FLSIZE
37 X <> Y
38 &quot; BYTES&quot;
39 ACA
40 ADV
41 RCL 06
42 /
43 INT
44 LASTX
45 FRC
46 X NE 0?
47 SIGN
48 +
49 &quot;=&quot;
50 ACA
51 ACX
52 &quot; ROWS&quot;
53 ACA
54 ADV
55 ADV
56 SF 12
57 RDN
58 CLA
59 32
60 XTOA
</pre>
</td>
<td><pre>
61 RDN
62 190
63 XTOA
64 RDN
65 0
66 XTOA
67 XTOA
68 XTOA
69 RDN
70 256
71 /
72 XTOA
73 LASTX
74 *
75 LASTX
76 MOD
77 XTOA
<FONT face=Tahoma size=2>
Note: Stop here, press GTO . ., and scan in
the barcode for the small program for RCL M.
Clear the END created just after the XTOA step
above, and then delete the steps of the new small
program except for the next line, RCL M.
</font>
78 RCL M
79 XEQ 06
80 STO 06
81 SF 08
82 1
83 STO 01
84 XEQ 08
85 CLA
86 192
87 XTOA
88 RDN
89 0
90 XTOA
91 RDN
92 47
93 XTOA
94 RDN
95 3
96 STO 04
97 STO 05
98 XEQ 11
99 FS?C 09
100 XEQ 05
101 RCL 06
102 BEEP
103 PWRDN
104 LBL 06
105 CLA
106 11
107 XTOA
108 RDN
109 224
110 XTOA
111 RDN
112 1
113 XTOA
114 RDN
</PRE></TD></TR></TABLE>

<BR>
<table BORDER =1 style="page-break-before:always;" width="90%"><tr VALIGN=TOP>
<td width="50%"><pre>
115 105
116 XTOA
117 RDN
118 11
119 XTOA
120 RDN
121 224
122 XTOA
123 RDN
124 176
125 XTOA
126 RDN
<FONT face=Tahoma size=2>
Note: Stop here, press GTO . ., and scan in
the barcode for the small program for RCL M.
Clear the END created just after the RDN step
above, and then delete the steps of the new small
program except for the next line, RCL M.
</font>
127 RCL M
<FONT face=Tahoma size=2>
Note: Stop here, press GTO . ., and scan in
the barcode for the small program for X <> c.
Clear the END created just after the RCL M step
above, and then delete the steps of the new small
program except for the next line, X <> c.
</font>
128 X <> c
129 X <> Y
130 X <> 00
131 X <> Y
<FONT face=Tahoma size=2>
Note: Stop here, press GTO . ., and scan in
the barcode for the small program for X <> c.
Clear the END created just after the X <> Y step
above, and then delete the steps of the new small
program except for the next line, X <> c.
</font>
132 X <> c
133 X <> Y
134 CLST
135 +
136 RTN
137 GTO 04
138 LBL 15
139 ISG 03
140 GTO 02
141 XEQ 05
142 LBL 08
143 RCL 03
144 FRC
145 12
146 +
147 STO 03
148 16
149 RCL 01
150 1
151 -
152 *
153 STO 11
154 LBL 02
</pre>
</td>
<td><pre>
155 DSE 05
156 GTO 02
157 RTN
158 LBL 02
159 DSE 04
160 GTO 11
161 7
162 STO 04
163 GETX
<FONT face=Tahoma size=2>
Note: Stop here, press GTO . ., and scan in
the barcode for the small program for STO M.
Clear the END created just after the GETX step
above, and then delete the steps of the new small
program except for the next line, STO M.
</font>
164 STO M
165 LBL 11
166 SF 09
167 ALENG
168 RCL 04
169 X NE Y?
170 0
171 X = Y?
172 ATOX
173 ENTER
174 STO IND 03
175 ST+ 09
176 DSE 01
177 GTO 15
178 143
179 -
180 X <= 0?
181 97
182 64
<b>183</b>
184 X <="0?"
185 34
186 32
<b>187</b>
188 X <="0?"
189 3
190 STO 01
191 STO 07
192 GTO 15
193 LBL 05
194 CF 09
195 RCL 08
196 16
197 MOD
198 LASTX
199 FS? 10
</PRE></TD></TR></TABLE>

<BR>
<table BORDER =1 style="page-break-before:always;" width="90%"><tr VALIGN=TOP>
<td width="50%"><pre>
200 ST+ X
201 +
202 ST+ 09
203 STO 10
204 ISG 08
205 DEG
206 RCL 07
207 RCL 01
208 DSE X
<b>209</b>
210 RCL 11
211 +
212 STO 11
213 RCL 09
214 +
215 255
216 MOD
217 X="0?"
218 LASTX
219 STO 09
220 ASTO 02
221 RCL 03
222 INT
223 8999
224 +
225 1 E3
226 /
227 STO 00
228 LBL 12
229 RCL 08
230 ACX
231 ADV
232 ADV
233 ADV
234 PWRDN
235 PWRUP
236 AUTOIO
237 SF 17
238 CLX
239 ACCOL
240 118
241 RCL 03
242 INT
243 +
244 CLA
</pre>
</td>
<td><pre>
245 27
246 XTOA
247 RDN
248 49
249 XTOA
250 RDN
251 XTOA
252 OUTA
253 RCL 00
254 LBL 13
255 RCL IND X
256 CLA
257 XTOA
258 SF 25
259 X="0?"
260 ACCOL
261 X NE 0?
262 OUTA
263 RDN
264 INSTAT
265 FS? 03
266 GTO 14
267 RDN
268 ISG X
269 GTO 13
270 ADV
271 ADV
272 ADV
273 ADV
274 ADV
275 ADV
276 CLA
277 ARCL 02
278 RTN
279 LBL 14
280 PWRDN
281 "PAPER"
282 BEEP
283 BEEP
284 PROMPT
285 RCL 00
286 GTO 12
287 END
</PRE>
</td></tr>
</table>
<hr>
That's it. Hope it's useful!<br>
Reformated by Artur - 2005.
</body></html>

#11

Yes, buffer size might be a big problem. I haven't been thinking about that because in my implementation of Helios printer the buffer size is 224 bytes :-)

#12

Best way to know the correct listing is to pull out your trusty PPC Journal collection:

"The program presented below is basically the program presented by Winfried Maschke of West Germany in the V9N4P44 PPC Journal (May/June/July 1982)."

What? You don't have physical copies of the PPC Journal?

Then surely you have the PDF copies from Jake Schwartz? If not, why not? :-) No collector should be without them.

1) Ignore the " " marks around the 0 in the X=0? lines. They are just normal x=0? lines. The HTML was giving me trouble with them for some reason.

2) Lines 183 and 187 and 209 should all be a - (minus).

Not sure why the formatting is off, but this agrees with the listing on page 44 of V9N4.

Gene

#13

Thanks again, Genre!
I'll try and verify if I have the PPC Journal in HPMuseum DVD.
I'll also correct the reformated page I've listed and if you would like, put it in place of yours in your site.
Best regards!
Artur

#14

<br>
<table BORDER=1 style="page-break-before:always;" width="90%"><tr VALIGN=TOP>
<td width="50%"><pre>
Lin Instruction
01 LBL &quot;BCD&quot;
02 CF 10
03 LBL 04
04 CF 12
05 ACA
06 PRX
07 ADV
08 CLRG
09 ABS
10 INT
11 X = 0?
12 SIGN
13 13
14 X &gt; Y?
15 X <> Y
16 STO 06
17 12
18 +
19 PSIZE
20 1
21 -
22 1 E3
23 /
24 STO 03
25 SF 25
26 SAVEP
27 FIX 0
28 CF 29
29 RCLPTA
30 2
31 -
32 STO 05
33 LASTX
34 +
35 ACX
36 FLSIZE
37 X <> Y
38 &quot; BYTES&quot;
39 ACA
40 ADV
41 RCL 06
42 /
43 INT
44 LASTX
45 FRC
46 X NE 0?
47 SIGN
48 +
49 &quot;=&quot;
50 ACA
51 ACX
52 &quot; ROWS&quot;
53 ACA
54 ADV
55 ADV
56 SF 12
57 RDN
58 CLA
59 32
60 XTOA
</pre>
</td>
<td><pre>
61 RDN
62 190
63 XTOA
64 RDN
65 0
66 XTOA
67 XTOA
68 XTOA
69 RDN
70 256
71 /
72 XTOA
73 LASTX
74 *
75 LASTX
76 MOD
77 XTOA
<FONT face=Tahoma size=2>
Note: Stop here, press GTO . ., and scan in
the barcode for the small program for RCL M.
Clear the END created just after the XTOA step
above, and then delete the steps of the new small
program except for the next line, RCL M.
</font>
78 RCL M
79 XEQ 06
80 STO 06
81 SF 08
82 1
83 STO 01
84 XEQ 08
85 CLA
86 192
87 XTOA
88 RDN
89 0
90 XTOA
91 RDN
92 47
93 XTOA
94 RDN
95 3
96 STO 04
97 STO 05
98 XEQ 11
99 FS?C 09
100 XEQ 05
101 RCL 06
102 BEEP
103 PWRDN
104 LBL 06
105 CLA
106 11
107 XTOA
108 RDN
109 224
110 XTOA
111 RDN
112 1
113 XTOA
114 RDN
</PRE></TD></TR></TABLE>
<BR>
<table BORDER =1 style="page-break-before:always;" width="90%"><tr VALIGN=TOP>
<td width="50%"><pre>
115 105
116 XTOA
117 RDN
118 11
119 XTOA
120 RDN
121 224
122 XTOA
123 RDN
124 176
125 XTOA
126 RDN
<FONT face=Tahoma size=2>
Note: Stop here, press GTO . ., and scan in
the barcode for the small program for RCL M.
Clear the END created just after the RDN step
above, and then delete the steps of the new small
program except for the next line, RCL M.
</font>
127 RCL M
<FONT face=Tahoma size=2>
Note: Stop here, press GTO . ., and scan in
the barcode for the small program for X <> c.
Clear the END created just after the RCL M step
above, and then delete the steps of the new small
program except for the next line, X <> c.
</font>
128 X <> c
129 X <> Y
130 X <> 00
131 X <> Y
<FONT face=Tahoma size=2>
Note: Stop here, press GTO . ., and scan in
the barcode for the small program for X <> c.
Clear the END created just after the X <> Y step
above, and then delete the steps of the new small
program except for the next line, X <> c.
</font>
132 X <> c
133 X <> Y
134 CLST
135 +
136 RTN
137 GTO 04
138 LBL 15
139 ISG 03
140 GTO 02
141 XEQ 05
142 LBL 08
143 RCL 03
144 FRC
145 12
146 +
147 STO 03
148 16
149 RCL 01
150 1
151 -
152 *
153 STO 11
154 LBL 02
</pre>
</td>
<td><pre>
155 DSE 05
156 GTO 02
157 RTN
158 LBL 02
159 DSE 04
160 GTO 11
161 7
162 STO 04
163 GETX
<FONT face=Tahoma size=2>
Note: Stop here, press GTO . ., and scan in
the barcode for the small program for STO M.
Clear the END created just after the GETX step
above, and then delete the steps of the new small
program except for the next line, STO M.
</font>
164 STO M
165 LBL 11
166 SF 09
167 ALENG
168 RCL 04
169 X NE Y?
170 0
171 X = Y?
172 ATOX
173 ENTER
174 STO IND 03
175 ST+ 09
176 DSE 01
177 GTO 15
178 143
179 -
180 X <= 0?
181 97
182 64
183 -
184 X <= 0?
185 34
186 32
187 -
188 X <= 0?
189 3
190 STO 01
191 STO 07
192 GTO 15
193 LBL 05
194 CF 09
195 RCL 08
196 16
197 MOD
198 LASTX
199 FS? 10
</PRE></TD></TR></TABLE>
<BR>
<table BORDER =1 style="page-break-before:always;" width="90%"><tr VALIGN=TOP>
<td width="50%"><pre>
200 ST+ X
201 +
202 ST+ 09
203 STO 10
204 ISG 08
205 DEG
206 RCL 07
207 RCL 01
208 DSE X
209 -
210 RCL 11
211 +
212 STO 11
213 RCL 09
214 +
215 255
216 MOD
217 X = 0?
218 LASTX
219 STO 09
220 ASTO 02
221 RCL 03
222 INT
223 8999
224 +
225 1 E3
226 /
227 STO 00
228 LBL 12
229 RCL 08
230 ACX
231 ADV
232 ADV
233 ADV
234 PWRDN
235 PWRUP
236 AUTOIO
237 SF 17
238 CLX
239 ACCOL
240 118
241 RCL 03
242 INT
243 +
244 CLA
</pre>
</td>
<td><pre>
245 27
246 XTOA
247 RDN
248 49
249 XTOA
250 RDN
251 XTOA
252 OUTA
253 RCL 00
254 LBL 13
255 RCL IND X
256 CLA
257 XTOA
258 SF 25
259 X = 0?
260 ACCOL
261 X NE 0?
262 OUTA
263 RDN
264 INSTAT
265 FS? 03
266 GTO 14
267 RDN
268 ISG X
269 GTO 13
270 ADV
271 ADV
272 ADV
273 ADV
274 ADV
275 ADV
276 CLA
277 ARCL 02
278 RTN
279 LBL 14
280 PWRDN
281 "PAPER"
282 BEEP
283 BEEP
284 PROMPT
285 RCL 00
286 GTO 12
287 END
</PRE>
</td></tr>
</table>

#15

I suppose I could make the buffer size configurable in Nonpareil, but thus far I've tried to keep things as close to identical to the real hardware as possible. There may be 41 programs that depend on the behavior of the 82143A buffer, and generate incorrect output if the simulated printer has a larger buffer.

Eric



Possibly Related Threads…
Thread Author Replies Views Last Post
  Printing the HP Prime manual BobVA 3 1,735 10-25-2013, 09:53 PM
Last Post: BobVA
  3D printing custom molds Han 3 1,630 08-02-2013, 03:26 AM
Last Post: Bruce Larrabee
  Printing HP 9825 data Norman Pillsbury 3 1,510 06-01-2013, 10:08 PM
Last Post: David Ramsey
  PPC Rom Barcodes John Abbott (S. Africa) 7 2,206 05-11-2013, 09:05 AM
Last Post: John Abbott (S. Africa)
  Does IR printing not work on your converted WP34s? Then read on... Harald 3 1,601 04-04-2013, 05:46 PM
Last Post: Harald
  WP34s IR Printing Update? Thomas Chrapkiewicz 2 1,220 02-24-2013, 01:53 PM
Last Post: Marcus von Cube, Germany
  is there a printing error in the HP 50G Quick Starrt Guide? Al 12 3,041 11-23-2012, 07:07 PM
Last Post: Al
  WP 34S Printing Harald 15 3,839 04-28-2012, 08:54 PM
Last Post: Les Wright
  WP 34S: IR printing - update Marcus von Cube, Germany 79 14,832 04-25-2012, 11:24 AM
Last Post: Walter B
  HP41 barcodes: this one called my attention Luiz C. Vieira (Brazil) 6 1,961 04-08-2012, 04:04 AM
Last Post: Raymond Wiker

Forum Jump: