Back to main page | Email me at: Gene!
To minimize the sythetic programming required to enter some text lines of alpha characters in his program (in this case, I eliminated the need for them), I changed Daniel's program to use XTOA's instead. This added some program bytes, but is much easier to key in this way.
Note: Each row of bar code takes over two minutes to generate and print. Each page takes over 30 minutes at 14 rows per page. Note: Make sure the HP-41's batteries are fresh and the thinkjet's batteries are too (and that it is hooked up to its AC adaptor).
Requirements:
1) This program requires the HP-IL Module, the HP-IL 2225B thinkjet
printer, the HP-41 Plotter Module, and the HP-IL Development Module.
2) The program also requires two input/output buffers to be created in
the HP-41's memory. The Plotter module uses 26 free registers to create
an I/O buffer and the HP-IL Development Module uses up to 28 registers
as an I/O buffer. These registers will remain "used" until you clear
them by turning the HP-41 off, removing the respective module, then
turning the HP-41 back on again.
The program below can print out bar code of programs that are up to about 1200 bytes in length.
Instructions: Make sure SIZE is at least 008. Put the name of the program into the alpha register that you want to print bar code for and XEQ "PCB". Fairly easy.
Line Instruction 01 LBL "PBC" 02 AUTOIO 03 ASTO 00 04 FS 25 05 PINIT 06 193 07 BSIZEX 08 AIPT 09 CLA 10 15 11 XTOA 12 ASTO 01 13 CLA 14 240 15 XTOA 16 ASTO 02 17 CLA 18 255 19 XTOA 20 ASTO 03 21 CF 29 22 FIX 0 23 1.15 24 STO 04 25 LBL 15 26 CLA 27 27 28 XTOA 29 38 30 XTOA 31 107 32 XTOA 33 49 34 XTOA 35 83 36 ->" " 37 ACA 38 " " 39 ARCL 00 40 127 41 XTOA 42 27 43 XTOA 44 38 45 XTOA 46 107 47 XTOA 48 48 49 XTOA 50 83 51 XTOA 52 ACA 53 0.013 54 STO 07 55 LBL 16 56 PRBUF 57 "R" 58 ARCL 04 59 ->", L" 60 ACA 61 RCL 00 62 RCL 04 63 BCP 64 STO 04 65 RCL Z 66 ACX 67 45 68 ACCHR 69 RDN 70 FRC 71 1 E3 72 * 73 ACX 74 ASIZE? 75 DSE X 76 LASTX 77 / 78 SIGN 79 7 80 PT= 81 RCL 02 82 X-BUF 83 X-BUF 84 SF 08 85 55 86 ACCHR 87 32 88 ACCHR 89 66 90 ACCHR 91 LBL 01 92 LASTX 93 A-XX 94 ACX 95 X <> FLAG (* Note: don't key in the spaces *) 96 7 97 STO 05 98 8 99 STO 06 100 LBL 02 101 FC? 08 102 GTO 04 103 FS? IND 05 104 GTO 03 105 RCL 02 106 X-BUF 107 SF 08 108 GTO 06 109 LBL 03 110 RCL 03 111 X-BUF 112 CF 08 113 GTO 06 114 LBL 04 115 RCL 01 116 X-BUF 117 FS? IND 05 118 GTO 05 119 CF 08 120 GTO 06 121 LBL 05 122 RCL 02 123 X-BUF 124 SF 08 125 LBL 06 126 DSE 05 127 CLX 128 DSE 06 129 GTO 02 130 ISG L 131 GTO 01 132 FC? 08 133 GTO 07 134 RCL 03 135 X-BUF 136 RCL 01 137 X-BUF 138 GTO 08 139 LBL 07 140 RCL 01 141 X-BUF 142 RCL 02 143 X-BUF 144 X-BUF 145 LBL 08 146 PRBUF 147 PT? 148 STO 06 149 7 150 - 151 CLA 152 27 153 XTOA 154 RDN 155 42 156 XTOA 157 RDN 158 98 159 XTOA 160 RDN 161 99 162 X <> Y 163 X < = Y? 164 ->"0" 165 9 166 X <> Y 167 X < = Y? 168 ->"0" 169 ARCLX 170 ->"W" 171 0.035 172 STO 05 173 CLX 174 PT= 175 A-BUF 176 CLA 177 27 178 XTOA 179 RDN 180 42 181 XTOA 182 RDN 183 114 184 XTOA 185 RDN 186 49 187 XTOA 188 RDN 189 50 190 XTOA 191 RDN 192 56 193 XTOA 194 RDN 195 48 196 XTOA 197 RDN 198 83 199 XTOA 200 RDN 201 ACA 202 1 203 LAD 204 LBL 09 205 CLX 206 PT= 207 RCL 06 208 OUTBUFX 209 ISG 05 210 GTO 09 211 CLA 212 27 213 XTOA 214 RDN 215 42 216 XTOA 217 RDN 218 114 219 XTOA 220 RDN 221 66 222 XTOA 223 RDN 224 ACA 225 RCL 04 226 X = 0? 227 GTO 10 228 ISG 07 229 GTO 16 230 CLA 231 12 232 XTOA 233 RDN 234 ACA 235 GTO 15 236 LBL 10 237 CLA 238 12 239 XTOA 240 RDN 241 ACA 242 CLX 243 BSIZEX 244 PCLBUF 245 END
That's it. Hope it's useful!