The Museum of HP Calculators

HP Forum Archive 15

[ Return to Index | Top of Index ]

Printing barcodes with HP82162A
Message #1 Posted by Artur - Brasil on 23 July 2005, 9:12 p.m.

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

      
Re: Printing barcodes with HP82162A
Message #2 Posted by Vassilis Prevelakis on 23 July 2005, 9:31 p.m.,
in response to message #1 by Artur - Brasil

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

            
Program listings online here
Message #3 Posted by Gene on 23 July 2005, 10:22 p.m.,
in response to message #2 by Vassilis Prevelakis

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

Five different programs with various requirements.

Enjoy!

                  
Thanks!
Message #4 Posted by Artur - Brasil on 23 July 2005, 11:02 p.m.,
in response to message #3 by Gene

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

                        
and the 82143?
Message #5 Posted by marais on 24 July 2005, 4:01 a.m.,
in response to message #4 by Artur - Brasil

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

Andreas

                              
No, only the HP-IL version...Re: and the 82143?
Message #6 Posted by Gene on 24 July 2005, 7:25 a.m.,
in response to message #5 by marais

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

Gene

                                    
Re: No, only the HP-IL version...Re: and the 82143?
Message #7 Posted by marais on 24 July 2005, 7:35 a.m.,
in response to message #6 by Gene

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

                                          
Re: No, only the HP-IL version...Re: and the 82143?
Message #8 Posted by HrastProgrammer on 24 July 2005, 12:31 p.m.,
in response to message #7 by marais

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.

                                                
Re: No, only the HP-IL version...Re: and the 82143?
Message #9 Posted by Eric Smith on 24 July 2005, 2:39 p.m.,
in response to message #8 by HrastProgrammer

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.

                                                      
Re: No, only the HP-IL version...Re: and the 82143?
Message #10 Posted by HrastProgrammer on 25 July 2005, 1:16 a.m.,
in response to message #9 by Eric Smith

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 :-)

                                                            
Re: No, only the HP-IL version...Re: and the 82143?
Message #11 Posted by Eric Smith on 25 July 2005, 6:13 p.m.,
in response to message #10 by HrastProgrammer

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

                        
Problems!
Message #12 Posted by Artur - Brasil on 24 July 2005, 7:27 p.m.,
in response to message #4 by Artur - Brasil

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>

                              
Re: Problems solved!
Message #13 Posted by Gene on 25 July 2005, 8:05 a.m.,
in response to message #12 by Artur - Brasil

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

                                    
Problems solved! Many Thanks
Message #14 Posted by Artur - Brasil on 25 July 2005, 8:32 a.m.,
in response to message #13 by Gene

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

                                    
The fixed listing
Message #15 Posted by Artur - Brasil on 25 July 2005, 8:51 a.m.,
in response to message #13 by Gene

<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>


[ Return to Index | Top of Index ]

Go back to the main exhibit hall