1 ; HP-45 ROM source code from United States Patent 4,001,569 2 ; keyed in by Eric Smith on 9-Mar-1995 - any errors are probably mine 3 ; typo corrected in "if" instruction in "frac" routine, on 3-Jan-2003, 4 ; found by Peter Monta by OCRing the listing in the patent 5 6 .rom @00 7 8 L00000: ..1.1.11.1 -> L00053 pwo1: jsb pwo2 9 10 L00001: 11...1.... -> L06002 ***** tms5: select rom 6 11 12 L00002: .1..1.1..1 -> L00112 tms2: jsb frac 13 L00003: 11..1.111. a exchange b[w] 14 L00004: 11111..11. a + 1 -> a[m] 15 L00005: .1..111.1. a -> b[xs] 16 L00006: 11.1111.1. a - 1 -> a[xs] 17 L00007: 111...111. a + b -> a[w] 18 L00010: 1.111.1.1. 0 -> a[x] 19 L00011: 111...1..1 -> L00342 jsb mlop 20 L00012: 111...1..1 -> L00342 jsb mlop 21 L00013: 1.111.1.1. 0 -> a[x] 22 L00014: 11..1..1.1 -> L00311 jsb norm 23 L00015: .11..1..11 -> L00144 go to tms4 24 25 L00016: 1....1.1.. dmdtz4: if s8 # 1 26 L00017: .1.1...111 -> L00121 then go to dmt2 27 L00020: 1....111.1 -> L00207 tdms: jsb mode 28 L00021: 111.1.111. a exchange c[w] 29 L00022: .11...111. c -> a[w] 30 L00023: ......1.11 -> L00002 go to tms2 31 32 L00024: 1.1..1.... -> L05025 ***** pwo3: select rom 5 33 34 L00025: 1....111.1 -> L00207 tpl4: jsb mode 35 L00026: 111.1.111. a exchange c[w] 36 L00027: 1....1.... -> L04030 ***** select rom 4 37 38 L00030: ..1..1.... -> L01031 ***** ret1: select rom 1 39 40 L00031: ..11.1.1.. trc1z1: if s3 # 1 41 L00032: ...11...11 -> L00030 then go to ret1 42 L00033: .1..1.1... c -> stack 43 L00034: ..11..111. 0 -> c[w] 44 L00035: 1..111.... c -> data address 45 L00036: .......... no operation 46 L00037: 1.11111... data -> c 47 L00040: 111.1.111. a exchange c[w] 48 L00041: 1..1111..1 -> L00236 jsb div1 49 L00042: 11...11..1 -> L00306 jsb exch 50 L00043: 1.1...1..1 -> L00242 jsb mul1 51 L00044: 11...11..1 -> L00306 jsb exch 52 L00045: 1.1111111. 0 -> a[s] 53 L00046: 1.11111... data -> c 54 L00047: .11.11111. if c[s] = 0 55 L00050: ..1.11.111 -> L00055 then go to trc2 56 L00051: 11.111111. a - 1 -> a[s] 57 L00052: ..1.11.1.1 -> L00055 jsb trc2 58 59 L00053: ...1.1..11 -> L00024 pwo2: go to pwo3 60 61 L00054: ..1..1.... -> L01055 ***** sqt1: select rom 1 62 63 L00055: 111.1.111. trc2: a exchange c[w] 64 L00056: 1....1.1.. if s8 # 1 65 L00057: 1111..1.11 -> L00362 then go to reg9z4 66 L00060: ..1111111. 0 - c - 1 -> c[s] 67 L00061: 1111..1..1 -> L00362 jsb reg9z4 68 69 L00062: ...1.1.1.. sqrtz3: if s1 # 1 70 L00063: ..1.11..11 -> L00054 then go to sqt1 71 L00064: 1.1..1.1.. if s10 # 1 72 L00065: .11.1..111 -> L00151 then go to tn12 73 L00066: ..111.1.11 -> L00072 go to mag1z1 74 75 L00067: ..1..1.... -> L01070 ***** tanx: select rom 1 76 77 L00070: .11...111. sn12: c -> a[w] 78 L00071: ..1..1.... -> L01072 ***** select rom 1 79 80 L00072: 111.1.111. mag1z1: a exchange c[w] 81 L00073: .11...111. c -> a[w] 82 L00074: .111111.1. c + 1 -> c[xs] 83 L00075: .1...11.11 -> L00106 if no carry go to mag3 84 L00076: .11.1.1.1. if c[x] = 0 85 L00077: .1...11.11 -> L00106 then go to mag3 86 L00100: ..11..111. 0 -> c[w] 87 L00101: ......11.. 0 -> p 88 L00102: .1.1.11... load constant 5 89 L00103: 11....11.. 12 -> p 90 L00104: .111..1.1. a + c -> c[x] 91 L00105: 111.1.1111 -> L00353 if no carry go to mag4 92 L00106: 1.1..1.1.. mag3: if s10 # 1 93 L00107: .111.1.111 -> L00165 then go to rom1 94 L00110: 111.1.111. a exchange c[w] 95 L00111: ..111...11 -> L00070 go to sn12 96 97 L00112: ..11..1.1. frac: 0 -> c[x] 98 L00113: ......11.. 0 -> p 99 L00114: .1.1.11... load constant 5 100 L00115: 11.1..1.1. a - c -> a[x] 101 L00116: 1..1111.1. if a[xs] >= 1 102 L00117: 11..11..11 -> L00314 then go to frc1 103 L00120: 1111111111 -> L00377 go to err2 104 105 L00121: .1..1.1..1 -> L00112 dmt2: jsb frac 106 L00122: 111...11.1 -> L00343 jsb mlp0 107 L00123: ....1.111. 0 -> b[w] 108 L00124: 11..11..1. a exchange b[wp] 109 L00125: 11..1.111. a exchange b[w] 110 L00126: .1....111. shift left a[w] 111 L00127: 111..1.1.1 -> L00345 jsb mlp2 112 L00130: .111...1.. 1 -> s7 113 L00131: 11..1..1.1 -> L00311 jsb norm 114 L00132: ..11..111. 0 -> c[w] 115 L00133: ..11.11... load constant 3 116 L00134: .11..11... load constant 6 117 L00135: 11....11.. 12 -> p 118 L00136: 1..1111..1 -> L00236 jsb div1 119 L00137: 1....11..1 -> L00206 jsb mod0 120 L00140: .11111.111 -> L00175 go to fst0 121 122 L00141: .1111.1.1. rtfg: c + 1 -> c[x] 123 L00142: .1111...1. c + 1 -> c[p] 124 L00143: 1.....1111 -> L00203 if no carry go to dvml 125 126 L00144: ..11..111. tms4: 0 -> c[w] 127 L00145: ..1...11.. 2 -> p 128 L00146: .1...11... load constant 4 129 L00147: 111.1.111. a exchange c[w] 130 L00150: .......111 -> L00001 go to tms5 131 132 L00151: ..1..1.... -> L01152 ***** tn12: select rom 1 133 134 L00152: .111...1.. tpol: 1 -> s7 135 L00153: .1...1.1.. if s4 # 1 136 L00154: .111..1111 -> L00163 then go to tpl3 137 L00155: 1.1.1.111. c + c -> c[w] 138 L00156: .111.1111. a + c -> c[s] 139 L00157: 1..11..11. if a[m] >= 1 140 L00160: .111..1.11 -> L00162 then go to tpl2 141 L00161: ..1111111. 0 - c - 1 -> c[s] 142 L00162: 1.1..11..1 -> L00246 tpl2: jsb sub1 143 L00163: ...1...1.. tpl3: 1 -> s1 144 L00164: ...1.1.111 -> L00025 go to tpl4 145 146 L00165: ..1..1.... -> L01166 ***** rom1: select rom 1 147 148 L00166: 1....1.1.. drg1z1: if s8 # 1 149 L00167: .11.1.1.11 -> L00152 then go to tpol 150 L00170: 1....111.1 -> L00207 drg0: jsb mode 151 L00171: ...1...1.. 1 -> s1 152 L00172: 1.1..1.1.. if s10 # 1 153 L00173: ..111.1.11 -> L00072 then go to mag1z1 154 L00174: 1111..1111 -> L00363 go to regx 155 156 L00175: 111.1.111. fst0: a exchange c[w] 157 L00176: .11..1.... -> L03177 ***** fst1: select rom 3 158 159 L00177: .1.11.1.1. gtfd: c - 1 -> c[x] 160 L00200: .1.11.1.1. c - 1 -> c[x] 161 L00201: .111...1.. 1 -> s7 162 L00202: .1.11...1. dtfr: c - 1 -> c[p] 163 L00203: 1.1..1.1.. dvml: if s10 # 1 164 L00204: 1..1111.11 -> L00236 then go to div1 165 L00205: 1.1...1.11 -> L00242 go to mul1 166 167 L00206: 1.1.1..1.. mod0: 0 -> s10 168 L00207: .111...1.. mode: 1 -> s7 169 L00210: .1..1..1.. 0 -> s4 170 L00211: .11....1.. 1 -> s6 171 L00212: 1.1.1.1... m -> c 172 L00213: .11.11111. if c[s] = 0 173 L00214: 1...111.11 -> L00216 then go to mod2 174 L00215: .1.....1.. 1 -> s4 175 L00216: .11111111. mod2: c + 1 -> c[s] 176 L00217: 1..1...111 -> L00221 if no carry go to mod3 177 L00220: .11.1..1.. 0 -> s6 178 L00221: ..11..111. mod3: 0 -> c[w] 179 L00222: .1111.1.1. c + 1 -> c[x] 180 L00223: ...1.1.1.. if s1 # 1 181 L00224: 11......11 -> L00300 then go to degr 182 L00225: .1...1.1.. if s4 # 1 183 L00226: 111....111 -> L00341 then go to ret0 184 L00227: .1111..1.. 0 -> s7 185 L00230: .11..1.1.. if s6 # 1 186 L00231: 1.....1.11 -> L00202 then go to dtfr 187 L00232: .11....111 -> L00141 go to rtfg 188 189 L00233: 1.1.1.1.11 -> L00252 add3z1: go to add3 190 191 L00234: 1.1..1.1.. mldv: if s10 # 1 192 L00235: 1.1...1.11 -> L00242 then go to mul1 193 L00236: 1.11...1.. div1: 1 -> s11 194 L00237: ...11..1.. div0: 0 -> s1 195 L00240: ....1.111. 0 -> b[w] 196 L00241: 1.1..1.111 -> L00245 go to divx 197 198 L00242: 1.11...1.. mul1: 1 -> s11 199 L00243: ...11..1.. mul0: 0 -> s1 200 L00244: ..1..1.... -> L01245 ***** mulx: select rom 1 201 202 L00245: ..1..1.... -> L01246 ***** divx: select rom 1 203 204 L00246: 1.11...1.. sub1: 1 -> s11 205 L00247: ..1111111. sub0: 0 - c - 1 -> c[s] 206 L00250: ...11..1.. add0zx: 0 -> s1 207 L00251: ..1.1..1.. 0 -> s2 208 L00252: ....1.111. add3: 0 -> b[w] 209 L00253: 1111111.1. a + 1 -> a[xs] 210 L00254: 1111111.1. a + 1 -> a[xs] 211 L00255: .111111.1. c + 1 -> c[xs] 212 L00256: .111111.1. c + 1 -> c[xs] 213 L00257: ...1..1.1. if a >= c[x] 214 L00260: 1.11..1.11 -> L00262 then go to add4 215 L00261: 111.1.111. a exchange c[w] 216 L00262: 111.1..11. add4: a exchange c[m] 217 L00263: .11.1..11. if c[m] = 0 218 L00264: 1.11.11.11 -> L00266 then go to add5 219 L00265: 111.1.111. a exchange c[w] 220 L00266: 1...1..11. add5: b exchange c[m] 221 L00267: ...1..1.1. add6: if a >= c[x] 222 L00270: 1.11111.11 -> L00276 then go to add7 223 L00271: 1.1...111. add8: shift right b[w] 224 L00272: 11111.1.1. a + 1 -> a[x] 225 L00273: ......111. if b[w] = 0 226 L00274: 1.11111.11 -> L00276 then go to add7 227 L00275: 1.11.11111 -> L00267 go to add6 228 229 L00276: ..1..1.... -> L01277 ***** add7: select rom 1 230 231 L00277: 1111111111 -> L00377 err2z1: go to err2 232 233 L00300: .11..1.1.. degr: if s6 # 1 234 L00301: 111....111 -> L00341 then go to ret0 235 L00302: .1111..1.. 0 -> s7 236 L00303: .1...1.1.. if s4 # 1 237 L00304: 1.....1.11 -> L00202 then go to dtfr 238 L00305: .111111111 -> L00177 go to gtfd 239 240 L00306: .11.1.1... exch: stack -> a 241 L00307: .1..1.1... c -> stack 242 L00310: ....11.... return 243 244 L00311: 1.11...1.. norm: 1 -> s11 245 L00312: ..1..1.... -> L01313 ***** select rom 1 246 247 L00313: ..1..1.... -> L01314 ***** pii2: select rom 1 248 249 L00314: 1...1..11. frc1: b exchange c[m] 250 L00315: 1.1...111. frc2: shift right b[w] 251 L00316: 11111.1.1. a + 1 -> a[x] 252 L00317: 11..11.111 -> L00315 if no carry go to frc2 253 L00320: 1.111.111. 0 -> a[w] 254 L00321: .11...11.. 6 -> p 255 L00322: ....11.... return 256 257 L00323: 1.11.1.1.. pii4: if s11 # 1 258 L00324: 11.11...11 -> L00330 then go to pirt 259 L00325: 1.1.1.111. c + c -> c[w] 260 L00326: .111...1.. 1 -> s7 261 L00327: 1..111..11 -> L00234 go to mldv 262 263 L00330: ..1..1.... -> L01331 ***** pirt: select rom 1 264 265 L00331: 11....11.. pii4z1: 12 -> p 266 L00332: 11.1..1111 -> L00323 go to pii4 267 268 L00333: 1.11.1.1.. retnz1: if s11 # 1 269 L00334: 11111..111 -> L00371 then go to rtrn 270 L00335: 1.11...1.. 1 -> s11 271 L00336: .111.1.1.. if s7 # 1 272 L00337: 11..1.1111 -> L00313 then go to pii2 273 L00340: 1.111..1.. 0 -> s11 274 L00341: ....11.... ret0: return 275 276 L00342: ....1.111. mlop: 0 -> b[w] 277 L00343: 11..11..1. mlp0: a exchange b[wp] 278 L00344: 1.1...111. shift right b[w] 279 L00345: 1.1...11.. mlp2: 10 -> p 280 L00346: 111...111. mlp3: a + b -> a[w] 281 L00347: .....111.. p - 1 -> p 282 L00350: .1..1.11.. if p # 4 283 L00351: 111..11.11 -> L00346 then go to mlp3 284 L00352: ....11.... return 285 286 L00353: ..11..111. mag4: 0 -> c[w] 287 L00354: .1111...1. c + 1 -> c[p] 288 L00355: 1.1..1.1.. if s10 # 1 289 L00356: ..11.11111 -> L00067 then go to tanx 290 L00357: .11.1..111 -> L00151 go to tn12 291 292 L00360: ...1.1.1.. reg9: if s1 # 1 293 L00361: .111111.11 -> L00176 then go to fst1 294 L00362: 111.1.111. reg9z4: a exchange c[w] 295 L00363: ..11..111. regx: 0 -> c[w] 296 L00364: .1.11...1. c - 1 -> c[p] 297 L00365: 1..111.... c -> data address 298 L00366: ..11..111. 0 -> c[w] 299 L00367: 1.1111.... c -> data 300 L00370: .11111.111 -> L00175 go to fst0 301 302 L00371: ..11.1.1.. rtrn: if s3 # 1 303 L00372: 1111....11 -> L00360 then go to reg9 304 L00373: 1.1..1.1.. if s10 # 1 305 L00374: 1111111.11 -> L00376 then go to ret5 306 L00375: 1....1.... -> L04376 ***** ret4: select rom 4 307 308 L00376: 1.1..1.... -> L05377 ***** ret5: select rom 5 309 310 L00377: .1...1.... -> L02000 ***** err2: select rom 2 311 00250 add0zx 206 00252 add3 208 00233 add3z1 189 00262 add4 216 00266 add5 220 00267 add6 221 00276 add7 229 00271 add8 223 00300 degr 233 00237 div0 194 00236 div1 193 00245 divx 202 00016 dmdtz4 25 00121 dmt2 105 00170 drg0 150 00166 drg1z1 148 00202 dtfr 162 00203 dvml 163 00377 err2 310 00277 err2z1 231 00306 exch 240 00112 frac 97 00314 frc1 249 00315 frc2 250 00175 fst0 156 00176 fst1 157 00177 gtfd 159 00072 mag1z1 80 00106 mag3 92 00353 mag4 286 00234 mldv 191 00342 mlop 276 00343 mlp0 277 00345 mlp2 279 00346 mlp3 280 00206 mod0 167 00216 mod2 175 00221 mod3 178 00207 mode 168 00243 mul0 199 00242 mul1 198 00244 mulx 200 00311 norm 244 00313 pii2 247 00323 pii4 257 00331 pii4z1 265 00330 pirt 263 00000 pwo1 8 00053 pwo2 59 00024 pwo3 32 00360 reg9 292 00362 reg9z4 294 00363 regx 295 00341 ret0 274 00030 ret1 38 00375 ret4 306 00376 ret5 308 00333 retnz1 268 00165 rom1 146 00141 rtfg 122 00371 rtrn 302 00070 sn12 77 00062 sqrtz3 69 00054 sqt1 61 00247 sub0 205 00246 sub1 204 00067 tanx 75 00020 tdms 27 00002 tms2 12 00144 tms4 126 00001 tms5 10 00151 tn12 132 00162 tpl2 142 00163 tpl3 143 00025 tpl4 34 00152 tpol 134 00031 trc1z1 40 00055 trc2 63 313 314 .rom @01 315 316 L01000: 1...11111. b exchange c[s] 317 L01001: 1111..1111 -> L01363 go to tan13 318 319 L01002: 11..1.111. tan15: a exchange b[w] 320 L01003: ..11.....1 -> L01060 jsb tnm11 321 L01004: 1.11111... data -> c 322 L01005: 111.1.111. a exchange c[w] 323 L01006: ..11.....1 -> L01060 jsb tnm11 324 L01007: 1.11111... data -> c 325 L01010: 111.1.111. a exchange c[w] 326 L01011: 1..1.1.1.. tanx: if s9 # 1 327 L01012: ....11..11 -> L01014 then go to tan16 328 L01013: 111.1.111. a exchange c[w] 329 L01014: .1.1.1.1.. tan16: if s5 # 1 330 L01015: ...11.1.11 -> L01032 then go to asn12 331 L01016: ...111111. if c[s] >= 1 332 L01017: ...1...111 -> L01021 then go to tan17 333 L01020: 1...1..1.. 0 -> s8 334 L01021: ..11.1111. tan17: 0 -> c[s] 335 L01022: 1.1..11..1 -> L01246 jsb div11 336 L01023: 1.1111.... asn11: c -> data 337 L01024: 1.1..1.1.1 -> L01245 jsb mpy11 338 L01025: 1..11....1 -> L01230 jsb add10 339 L01026: ..1.11.1.1 -> L01055 jsb sqt11 340 L01027: 1.11111... data -> c 341 L01030: .....1.... -> L00031 ***** select rom 0 342 343 L01031: 111.1.111. asn1z0: a exchange c[w] 344 L01032: 1.1..11..1 -> L01246 asn12: jsb div11 345 L01033: 1.1..1.1.. if s10 # 1 346 L01034: 11.11.1.11 -> L01332 then go to rtn12 347 L01035: 1.111.111. atn11: 0 -> a[w] 348 L01036: 11111...1. a + 1 -> a[p] 349 L01037: .1..1..11. a -> b[m] 350 L01040: 111.1..11. a exchange c[m] 351 L01041: .1.11.1.1. atn12: c - 1 -> c[x] 352 L01042: 1.1..1..1. shift right b[wp] 353 L01043: .11.111.1. if c[xs] = 0 354 L01044: ..1....111 -> L01041 then go to atn12 355 L01045: 1.11.1..1. atn13: shift right a[wp] 356 L01046: .1111.1.1. c + 1 -> c[x] 357 L01047: ..1..1.111 -> L01045 if no carry go to atn13 358 L01050: 1.11..111. shift right a[w] 359 L01051: 1.1...111. shift right b[w] 360 L01052: 1.1111.... c -> data 361 L01053: 1...1.111. atn14: b exchange c[w] 362 L01054: .1...11.11 -> L01106 go to atn18 363 364 L01055: 1...1.111. sqt11: b exchange c[w] 365 L01056: .1....11.. 4 -> p 366 L01057: 11.1111.11 -> L01336 go to sqt14 367 368 L01060: 1.1111.... tnm11: c -> data 369 L01061: 111.1.111. a exchange c[w] 370 L01062: .11.1...1. if c[p] = 0 371 L01063: ..11.1.111 -> L01065 then go to tnm12 372 L01064: ..1.1.111. 0 - c -> c[w] 373 L01065: .11...111. tnm12: c -> a[w] 374 L01066: ..1...1.1. b -> c[x] 375 L01067: 11..1.1111 -> L01313 go to add15 376 377 L01070: ....1..111 -> L01011 tanxz0: go to tanx 378 379 L01071: .....1.... -> L00072 ***** tploxj: select rom 0 380 381 L01072: .1.1.1.1.. sin12: if s5 # 1 382 L01073: ...111.111 -> L01035 then go to atn11 383 L01074: ..1111111. 0 - c - 1 -> c[s] 384 L01075: 111.11111. a exchange c[s] 385 L01076: ...1..1111 -> L01023 go to asn11 386 387 L01077: 1.1..1..1. atn15: shift right b[wp] 388 L01100: 11.111111. atn16: a - 1 -> a[s] 389 L01101: ..11111111 -> L01077 if no carry go to atn15 390 L01102: .11111111. c + 1 -> c[s] 391 L01103: 11..11..1. a exchange b[wp] 392 L01104: .111.1..1. a + c -> c[wp] 393 L01105: 11..1.111. a exchange b[w] 394 L01106: .1..1.111. atn18: a -> b[w] 395 L01107: 11.1.1..1. a - c -> a[wp] 396 L01110: .1......11 -> L01100 if no carry go to atn16 397 L01111: 111.1.111. a exchange c[w] 398 L01112: 1.11111... data -> c 399 L01113: 1..1..111. shift right c[w] 400 L01114: 111.11111. a exchange c[s] 401 L01115: 11..1.111. a exchange b[w] 402 L01116: .1...1..1. shift left a[wp] 403 L01117: 1.1111.... c -> data 404 L01120: 111111111. a + 1 -> a[s] 405 L01121: 111111111. a + 1 -> a[s] 406 L01122: ..1.1.1111 -> L01053 if no carry go to atn14 407 L01123: ..11..111. 0 -> c[w] 408 L01124: ....1.1.1. 0 -> b[x] 409 L01125: 1.11.1.11. shift right a[ms] 410 L01126: 1.11..1..1 -> L01262 jsb div14 411 L01127: 11.11...1. a - 1 -> a[p] 412 L01130: 1.11111... data -> c 413 L01131: .1....11.. 4 -> p 414 L01132: 1.1..1...1 -> L01244 atn17: jsb pqo13 415 L01133: .11...11.. 6 -> p 416 L01134: 1..11.11.1 -> L01233 jsb pmu11 417 L01135: 1.....11.. 8 -> p 418 L01136: 1..11.11.1 -> L01233 jsb pmu11 419 L01137: ..1...11.. 2 -> p 420 L01140: 1....11... load constant 8 421 L01141: 1.1...11.. 10 -> p 422 L01142: 1..11.11.1 -> L01233 jsb pmu11 423 L01143: 1...111..1 -> L01216 jsb atcd1 424 L01144: 1..11.11.1 -> L01233 jsb pmu11 425 L01145: 11..11...1 -> L01314 jsb atc1 426 L01146: .1....111. shift left a[w] 427 L01147: 1..11.11.1 -> L01233 jsb pmu11 428 L01150: ..1...111. b -> c[w] 429 L01151: 11..1.11.1 -> L01313 jsb add15 430 L01152: 11..11...1 -> L01314 tan12: jsb atc1 431 L01153: 1.1.1.111. c + c -> c[w] 432 L01154: 1.1..1.1.. if s10 # 1 433 L01155: .111.1.111 -> L01165 then go to rom0 434 L01156: 1..1.1.1.. if s9 # 1 435 L01157: .111.1.111 -> L01165 then go to rom0 436 L01160: 111.1.111. a exchange c[w] 437 L01161: ..1111111. 0 - c - 1 -> c[s] 438 L01162: 1..11.1..1 -> L01232 jsb add11 439 L01163: 11..11...1 -> L01314 jsb atc1 440 L01164: 1.1.1.111. c + c -> c[w] 441 L01165: .....1.... -> L00166 ***** rom0: select rom 0 442 443 L01166: 11..11...1 -> L01314 lpi11: jsb atc1 444 L01167: 1.1.1.111. c + c -> c[w] 445 L01170: 1.1.1.111. c + c -> c[w] 446 L01171: 1..1.1.1.1 -> L01225 jsb rtn11 447 L01172: 1.1.1.111. c + c -> c[w] 448 L01173: 111.1.11.1 -> L01353 jsb pre11 449 L01174: 11..11...1 -> L01314 jsb atc1 450 L01175: 1.1...11.. 10 -> p 451 L01176: 1..111...1 -> L01234 jsb pqo11 452 L01177: 1...111..1 -> L01216 jsb atcd1 453 L01200: 1.....11.. 8 -> p 454 L01201: 1..111.1.1 -> L01235 jsb pqo12 455 L01202: ..1...11.. 2 -> p 456 L01203: 1....11... load constant 8 457 L01204: .11...11.. 6 -> p 458 L01205: 1..111...1 -> L01234 jsb pqo11 459 L01206: .1....11.. 4 -> p 460 L01207: 1..111...1 -> L01234 jsb pqo11 461 L01210: 1..111...1 -> L01234 jsb pqo11 462 L01211: 11..1.111. a exchange b[w] 463 L01212: 1..1..111. shift right c[w] 464 L01213: 11.1..11.. 13 -> p 465 L01214: .1.1.11... load constant 5 466 L01215: 111111..11 -> L01374 go to tan14 467 468 L01216: .11...11.. atcd1: 6 -> p 469 L01217: 1....11... load constant 8 470 L01220: .11..11... load constant 6 471 L01221: .1.1.11... load constant 5 472 L01222: ..1..11... load constant 2 473 L01223: .1...11... load constant 4 474 L01224: 1..1.11... load constant 9 475 L01225: ...1.1.1.. rtn11: if s1 # 1 476 L01226: 11.11.1.11 -> L01332 then go to rtn12 477 L01227: ....11.... return 478 479 L01230: 1.111.111. add10: 0 -> a[w] 480 L01231: 11111...1. a + 1 -> a[p] 481 L01232: .....1.... -> L00233 ***** add11: select rom 0 482 483 L01233: .1...1.... -> L02234 ***** pmu11: select rom 2 484 485 L01234: .1....111. pqo11: shift left a[w] 486 L01235: 1.1..1.11. pqo12: shift right b[ms] 487 L01236: 1...1.111. b exchange c[w] 488 L01237: 1.1....111 -> L01241 go to pqo16 489 490 L01240: .11111111. pqo15: c + 1 -> c[s] 491 L01241: 11....111. pqo16: a - b -> a[w] 492 L01242: 1.1.....11 -> L01240 if no carry go to pqo15 493 L01243: 111...111. a + b -> a[w] 494 L01244: .1...1.... -> L02245 ***** pqo13: select rom 2 495 496 L01245: .1...1.... -> L02246 ***** mpy11: select rom 2 497 498 L01246: .1.1..1.1. div11: a - c -> c[x] 499 L01247: .1...1.... -> L02250 ***** select rom 2 500 501 L01250: .1111...1. sqt15: c + 1 -> c[p] 502 L01251: 11.1..111. sqt16: a - c -> a[w] 503 L01252: 1.1.1...11 -> L01250 if no carry go to sqt15 504 L01253: 1111..111. a + c -> a[w] 505 L01254: .1....111. shift left a[w] 506 L01255: .....111.. p - 1 -> p 507 L01256: 1..1.1..1. sqt17: shift right c[wp] 508 L01257: ....1.11.. if p # 0 509 L01260: 1.1.1..111 -> L01251 then go to sqt16 510 L01261: ..11.1.111 -> L01065 go to tnm12 511 512 L01262: .1111...1. div14: c + 1 -> c[p] 513 L01263: 11...1.11. div15: a - b -> a[ms] 514 L01264: 1.11..1.11 -> L01262 if no carry go to div14 515 L01265: 111..1.11. a + b -> a[ms] 516 L01266: .1...1.11. shift left a[ms] 517 L01267: .....111.. div16: p - 1 -> p 518 L01270: ....1.11.. if p # 0 519 L01271: 1.11..1111 -> L01263 then go to div15 520 L01272: ..11.1.111 -> L01065 go to tnm12 521 522 L01273: .....111.. sqt12: p - 1 -> p 523 L01274: 111..1.11. a + b -> a[ms] 524 L01275: 11.11.1111 -> L01333 if no carry go to sqt18 525 L01276: .....1.... -> L00277 ***** select rom 0 526 527 L01277: .1.1111.1. add12: c - 1 -> c[xs] 528 L01300: .1.1111.1. c - 1 -> c[xs] 529 L01301: 1.111.1.1. 0 -> a[x] 530 L01302: 11.1.1111. a - c -> a[s] 531 L01303: 1..111111. if a[s] >= 1 532 L01304: 11...11.11 -> L01306 then go to add13 533 L01305: .1...1.... -> L02306 ***** select rom 2 534 535 L01306: 1......11. add13: if a >= b[m] 536 L01307: 11..1.1.11 -> L01312 then go to add14 537 L01310: ..1111111. 0 - c - 1 -> c[s] 538 L01311: 11..1.111. a exchange b[w] 539 L01312: 11....111. add14: a - b -> a[w] 540 L01313: .1...1.... -> L02314 ***** add15: select rom 2 541 L01314: ..11..111. atc1: 0 -> c[w] 542 L01315: 1.11..11.. 11 -> p 543 L01316: .111.11... load constant 7 544 L01317: 1....11... load constant 8 545 L01320: .1.1.11... load constant 5 546 L01321: ..11.11... load constant 3 547 L01322: 1..1.11... load constant 9 548 L01323: 1....11... load constant 8 549 L01324: ...1.11... load constant 1 550 L01325: .11..11... load constant 6 551 L01326: ..11.11... load constant 3 552 L01327: .1.1.11... load constant 5 553 L01330: .....1.... -> L00331 ***** select rom 0 554 555 L01331: ....11.... return 556 557 L01332: .....1.... -> L00333 ***** rtn12: select rom 0 558 559 L01333: 111...1.1. sqt18: a + b -> a[x] 560 L01334: 11.1111.11 -> L01336 if no carry go to sqt14 561 L01335: .1.11...1. c - 1 -> c[p] 562 L01336: .11111111. sqt14: c + 1 -> c[s] 563 L01337: ....1.11.. if p # 0 564 L01340: 1.111.1111 -> L01273 then go to sqt12 565 L01341: 111.1.1.1. a exchange c[x] 566 L01342: 1.111.1.1. 0 -> a[x] 567 L01343: ...11...1. if c[p] >= 1 568 L01344: 111..11.11 -> L01346 then go to sqt13 569 L01345: 1.11..111. shift right a[w] 570 L01346: 1..1..111. sqt13: shift right c[w] 571 L01347: 1...1.1.1. b exchange c[x] 572 L01350: ..11..1.1. 0 -> c[x] 573 L01351: 11....11.. 12 -> p 574 L01352: 1.1.111.11 -> L01256 go to sqt17 575 576 L01353: .1...1.... -> L02354 ***** pre11: select rom 2 577 578 L01354: 1.1..1..1. tan18: shift right b[wp] 579 L01355: 1.1..1..1. shift right b[wp] 580 L01356: .1.111111. tan19: c - 1 -> c[s] 581 L01357: 111.11..11 -> L01354 if no carry go to tan18 582 L01360: .111.1..1. a + c -> c[wp] 583 L01361: 11...1..1. a - b -> a[wp] 584 L01362: 1...11..1. b exchange c[wp] 585 L01363: ..1...111. tan13: b -> c[w] 586 L01364: 11.111111. a - 1 -> a[s] 587 L01365: 111.111.11 -> L01356 if no carry go to tan19 588 L01366: 111.11111. a exchange c[s] 589 L01367: 1.11111... data -> c 590 L01370: 111.1.111. a exchange c[w] 591 L01371: .....1111. if b[s] = 0 592 L01372: ......1.11 -> L01002 then go to tan15 593 L01373: .1....111. shift left a[w] 594 L01374: 111.11..1. tan14: a exchange c[wp] 595 L01375: 1.1111.... c -> data 596 L01376: 1.1..1..1. shift right b[wp] 597 L01377: .1.111111. c - 1 -> c[s] 598 00230 add10 479 00232 add11 481 00277 add12 527 00306 add13 535 00312 add14 539 00313 add15 540 00023 asn11 336 00032 asn12 344 00031 asn1z0 343 00314 atc1 541 00216 atcd1 468 00035 atn11 347 00041 atn12 351 00045 atn13 355 00053 atn14 361 00077 atn15 387 00100 atn16 388 00132 atn17 414 00106 atn18 394 00246 div11 498 00262 div14 512 00263 div15 513 00267 div16 517 00166 lpi11 443 00245 mpy11 496 00233 pmu11 483 00234 pqo11 485 00235 pqo12 486 00244 pqo13 494 00240 pqo15 490 00241 pqo16 491 00353 pre11 576 00165 rom0 441 00225 rtn11 475 00332 rtn12 557 00072 sin12 381 00055 sqt11 364 00273 sqt12 522 00346 sqt13 570 00336 sqt14 562 00250 sqt15 501 00251 sqt16 502 00256 sqt17 507 00333 sqt18 559 00152 tan12 430 00363 tan13 585 00374 tan14 594 00002 tan15 319 00014 tan16 329 00021 tan17 334 00354 tan18 578 00356 tan19 580 00011 tanx 326 00070 tanxz0 377 00060 tnm11 368 00065 tnm12 373 00071 tploxj 379 600 601 .rom @02 602 603 L02000: 11...1.... -> L06001 ***** err21: select rom 6 604 L02001: 11..11111. ln24: a exchange b[s] 605 L02002: 111111111. a + 1 -> a[s] 606 L02003: 1..1.1.11. shift right c[ms] 607 L02004: .1...1..1. shift left a[wp] 608 L02005: ...1..1.11 -> L02022 go to ln26 609 610 L02006: .11.1.1... xty22: stack -> a 611 L02007: 1.1..11..1 -> L02246 jsb mpy21 612 613 L02010: .11...111. xty21: c -> a[w] 614 L02011: 1....1.1.. if s8 # 1 615 L02012: .1....1.11 -> L02102 then go to exp21 616 L02013: 1.111.111. ln22: 0 -> a[w] 617 L02014: 11.1...11. a - c -> a[m] 618 L02015: ........11 -> L02000 if no carry go to err21 619 L02016: 1.11..111. shift right a[w] 620 L02017: .1.111111. c - 1 -> c[s] 621 L02020: ........11 -> L02000 if no carry go to err21 622 L02021: .11111111. ln25: c + 1 -> c[s] 623 L02022: .1..1.111. ln26: a -> b[w] 624 L02023: 1..1.11..1 -> L02226 jsb eca22 625 L02024: 11.11...1. a - 1 -> a[p] 626 L02025: ...1...111 -> L02021 if no carry go to ln25 627 L02026: 11..11..1. a exchange b[wp] 628 L02027: 111..1111. a + b -> a[s] 629 L02030: .......111 -> L02001 if no carry go to ln24 630 L02031: .111..11.. 7 -> p 631 L02032: .11.11.1.1 -> L02155 jsb pqo23 632 L02033: 1.....11.. 8 -> p 633 L02034: 1..111.1.1 -> L02235 jsb pmu22 634 L02035: 1..1..11.. 9 -> p 635 L02036: 1..111...1 -> L02234 jsb pmu21 636 L02037: 1111111..1 -> L02376 jsb lncd3 637 L02040: 1.1...11.. 10 -> p 638 L02041: 1..111...1 -> L02234 jsb pmu21 639 L02042: .11111.1.1 -> L02175 jsb lncd2 640 L02043: 1.11..11.. 11 -> p 641 L02044: 1..111...1 -> L02234 jsb pmu21 642 L02045: 11.11111.1 -> L02337 jsb lncd1 643 L02046: 1..111...1 -> L02234 jsb pmu21 644 L02047: 1.111..1.1 -> L02271 jsb lnc2 645 L02050: 1..111...1 -> L02234 jsb pmu21 646 L02051: 1111.11..1 -> L02366 jsb lnc10 647 L02052: 111.1.111. a exchange c[w] 648 L02053: .1.1..111. a - c -> c[w] 649 L02054: .....11.1. if b[xs] = 0 650 L02055: ..1.111111 -> L02057 then go to ln27 651 L02056: .1.1..111. a - c -> c[w] 652 L02057: 11..1.111. ln27: a exchange b[w] 653 L02060: .....111.. ln28: p - 1 -> p 654 L02061: .1....111. shift left a[w] 655 L02062: ...11.11.. if p # 1 656 L02063: ..11....11 -> L02060 then go to ln28 657 L02064: 111.1.111. a exchange c[w] 658 L02065: .11.11111. if c[s] = 0 659 L02066: ..111...11 -> L02070 then go to ln29 660 L02067: ..111..11. 0 - c - 1 -> c[m] 661 L02070: .1111.1.1. ln29: c + 1 -> c[x] 662 L02071: 1.11..11.. 11 -> p 663 L02072: 11...1.1.1 -> L02305 jsb mpy27 664 L02073: 1..1.1.1.. if s9 # 1 665 L02074: .....11.11 -> L02006 then go to xty22 666 L02075: .1.1.1.1.. if s5 # 1 667 L02076: 1..1.1..11 -> L02224 then go to rtn21 668 L02077: 1111.11..1 -> L02366 jsb lnc10 669 L02100: 1.1..111.1 -> L02247 jsb mpy22 670 L02101: 1..1.1..11 -> L02224 go to rtn21 671 672 L02102: 1111.11..1 -> L02366 exp21: jsb lnc10 673 L02103: 111.11...1 -> L02354 jsb pre21 674 L02104: 1.111..1.1 -> L02271 jsb lnc2 675 L02105: 1.11..11.. 11 -> p 676 L02106: 1..11.11.1 -> L02233 jsb pqo21 677 L02107: 11.11111.1 -> L02337 jsb lncd1 678 L02110: 1.1...11.. 10 -> p 679 L02111: 1..11.11.1 -> L02233 jsb pqo21 680 L02112: .11111.1.1 -> L02175 jsb lncd2 681 L02113: 1..1..11.. 9 -> p 682 L02114: 1..11.11.1 -> L02233 jsb pqo21 683 L02115: 1111111..1 -> L02376 jsb lncd3 684 L02116: 1.....11.. 8 -> p 685 L02117: 1..11.11.1 -> L02233 jsb pqo21 686 L02120: 1..11.11.1 -> L02233 jsb pqo21 687 L02121: 1..11.11.1 -> L02233 jsb pqo21 688 L02122: .11...11.. 6 -> p 689 L02123: 1.1111..1. 0 -> a[wp] 690 L02124: 11.1..11.. 13 -> p 691 L02125: 1...1.111. b exchange c[w] 692 L02126: 111.1.111. a exchange c[w] 693 L02127: .11..11... load constant 6 694 L02130: 1...111.11 -> L02216 go to exp23 695 696 L02131: ..1..1.1.. pre23: if s2 # 1 697 L02132: .1.1111.11 -> L02136 then go to pre24 698 L02133: 11111.1.1. a + 1 -> a[x] 699 L02134: 1..1111.1. pre29: if a[xs] >= 1 700 L02135: 11....1.11 -> L02302 then go to pre27 701 L02136: 11...1.11. pre24: a - b -> a[ms] 702 L02137: .1.11..111 -> L02131 if no carry go to pre23 703 L02140: 111..1.11. a + b -> a[ms] 704 L02141: .1....111. shift left a[w] 705 L02142: .1.11.1.1. c - 1 -> c[x] 706 L02143: .1.111..11 -> L02134 if no carry go to pre29 707 L02144: 1.11..111. pre25: shift right a[w] 708 L02145: ..11.1..1. 0 -> c[wp] 709 L02146: 111.1.1.1. a exchange c[x] 710 L02147: .11.11111. pre26: if c[s] = 0 711 L02150: .11.11..11 -> L02154 then go to pre28 712 L02151: 11..1.111. a exchange b[w] 713 L02152: 11....111. a - b -> a[w] 714 L02153: ..111.111. 0 - c - 1 -> c[w] 715 L02154: 1.11..111. pre28: shift right a[w] 716 L02155: 1...1.111. pqo23: b exchange c[w] 717 L02156: ..11..111. 0 -> c[w] 718 L02157: .1.11..11. c - 1 -> c[m] 719 L02160: ..1..1.1.. if s2 # 1 720 L02161: .111.11.11 -> L02166 then go to pqo28 721 L02162: .1...11... load constant 4 722 L02163: .1111..11. c + 1 -> c[m] 723 L02164: .1111..111 -> L02171 if no carry go to pqo24 724 L02165: .11..11... pqo27: load constant 6 725 L02166: ...11.11.. pqo28: if p # 1 726 L02167: .111.1.111 -> L02165 then go to pqo27 727 L02170: 1..1..111. shift right c[w] 728 L02171: 1..1..111. pqo24: shift right c[w] 729 L02172: ..1..1.1.. nrm26: if s2 # 1 730 L02173: 1..1.1..11 -> L02224 then go to rtn21 731 L02174: ....11.... return 732 733 L02175: .111..11.. lncd2: 7 -> p 734 L02176: ..11.11... lnc6: load constant 3 735 L02177: ..11.11... load constant 3 736 L02200: .....11... load constant 0 737 L02201: 1....11... lnc7: load constant 8 738 L02202: .1.1.11... load constant 5 739 L02203: .....11... load constant 0 740 L02204: 1..1.11... load constant 9 741 L02205: 111.1.1.11 -> L02352 go to lnc9 742 743 L02206: 1..1.11..1 -> L02226 exp29: jsb eca22 744 L02207: 11111...1. a + 1 -> a[p] 745 L02210: .1..1.111. exp22: a -> b[w] 746 L02211: .1.111111. c - 1 -> c[s] 747 L02212: 1....11.11 -> L02206 if no carry go to exp29 748 L02213: 1.11.1..1. shift right a[wp] 749 L02214: 111.1.111. a exchange c[w] 750 L02215: .1...1.11. shift left a[ms] 751 L02216: 111.1.111. exp23: a exchange c[w] 752 L02217: 11.111111. a - 1 -> a[s] 753 L02220: 1...1...11 -> L02210 if no carry go to exp22 754 L02221: 11..1.111. a exchange b[w] 755 L02222: 11111...1. a + 1 -> a[p] 756 L02223: 11..11...1 -> L02314 jsb nrm21 757 L02224: ..1..1.... -> L01225 ***** rtn21: select rom 1 758 759 L02225: 1.11.1..1. eca21: shift right a[wp] 760 L02226: 11.111111. eca22: a - 1 -> a[s] 761 L02227: 1..1.1.111 -> L02225 if no carry go to eca21 762 L02230: 1.1111111. 0 -> a[s] 763 L02231: 111...111. a + b -> a[w] 764 L02232: ....11.... return 765 766 L02233: ..1..1.... -> L01234 ***** pqo21: select rom 1 767 768 L02234: 1.11..111. pmu21: shift right a[w] 769 L02235: 1...1.111. pmu22: b exchange c[w] 770 L02236: 1.1.....11 -> L02240 go to pmu24 771 772 L02237: 111...111. pmu23: a + b -> a[w] 773 L02240: .1.111111. pmu24: c - 1 -> c[s] 774 L02241: 1..1111111 -> L02237 if no carry go to pmu23 775 L02242: 111.1.111. a exchange c[w] 776 L02243: .1...1.11. shift left a[ms] 777 L02244: 111.1.111. a exchange c[w] 778 L02245: .11.11.111 -> L02155 go to pqo23 779 780 L02246: ..11..11.. mpy21: 3 -> p 781 L02247: .111..1.1. mpy22: a + c -> c[x] 782 L02250: .1.1.1111. div21: a - c -> c[s] 783 L02251: 1.1.1.1111 -> L02253 if no carry go to div22 784 L02252: ..1.11111. 0 - c -> c[s] 785 L02253: 11..1..11. div22: a exchange b[m] 786 L02254: 1.111.111. 0 -> a[w] 787 L02255: 11..1.11.. if p # 12 788 L02256: 11...1.111 -> L02305 then go to mpy27 789 L02257: ...11..11. if c[m] >= 1 790 L02260: 1.11.11.11 -> L02266 then go to div23 791 L02261: ...1.1.1.. if s1 # 1 792 L02262: ........11 -> L02000 then go to err21 793 L02263: 1.1..1.... -> L05264 ***** select rom 5 794 L02264: 11.11.1111 -> L02333 go to nrm25 795 796 L02265: .......... no operation 797 798 L02266: 1...11..1. div23: b exchange c[wp] 799 L02267: 111.1..11. a exchange c[m] 800 L02270: ..1..1.... -> L01271 ***** select rom 1 801 802 L02271: 1...1..1.. lnc2: 0 -> s8 803 L02272: .11..11... load constant 6 804 L02273: 1..1.11... load constant 9 805 L02274: ..11.11... load constant 3 806 L02275: ...1.11... load constant 1 807 L02276: .1...11... load constant 4 808 L02277: .111.11... load constant 7 809 L02300: ...1.11... load constant 1 810 L02301: 111..11.11 -> L02346 go to lnc8 811 812 L02302: 11111..11. pre27: a + 1 -> a[m] 813 L02303: .11..1..11 -> L02144 if no carry go to pre25 814 L02304: 111...111. mpy26: a + b -> a[w] 815 L02305: .1.11...1. mpy27: c - 1 -> c[p] 816 L02306: 11...1..11 -> L02304 if no carry go to mpy26 817 L02307: 1.11..111. mpy28: shift right a[w] 818 L02310: ....1111.. p + 1 -> p 819 L02311: 11.11.11.. if p # 13 820 L02312: 11...1.111 -> L02305 then go to mpy27 821 L02313: .1111.1.1. nrm20: c + 1 -> c[x] 822 L02314: 1.1111111. nrm21: 0 -> a[s] 823 L02315: 11....11.. 12 -> p 824 L02316: ....1.111. 0 -> b[w] 825 L02317: 1..11...1. nrm23: if a[p] >= 1 826 L02320: 11.1.11.11 -> L02326 then go to nrm24 827 L02321: .1....111. shift left a[w] 828 L02322: .1.11.1.1. c - 1 -> c[x] 829 L02323: 1..11.111. if a[w] >= 1 830 L02324: 11..111111 -> L02317 then go to nrm23 831 L02325: ..11..111. 0 -> c[w] 832 L02326: .1..1.1.1. nrm24: a -> b[x] 833 L02327: 111...111. a + b -> a[w] 834 L02330: 1..111111. if a[s] >= 1 835 L02331: 11...11111 -> L02307 then go to mpy28 836 L02332: 111.1..11. a exchange c[m] 837 L02333: .11...111. nrm25: c -> a[w] 838 L02334: ....1.111. 0 -> b[w] 839 L02335: 11....11.. nrm27: 12 -> p 840 L02336: .1111.1.11 -> L02172 go to nrm26 841 842 L02337: 1..1..11.. lncd1: 9 -> p 843 L02340: ..11.11... load constant 3 844 L02341: ...1.11... load constant 1 845 L02342: .....11... load constant 0 846 L02343: ...1.11... load constant 1 847 L02344: .111.11... load constant 7 848 L02345: 1..1.11... load constant 9 849 L02346: 1....11... lnc8: load constant 8 850 L02347: .....11... load constant 0 851 L02350: .1.1.11... load constant 5 852 L02351: .1.1.11... load constant 5 853 L02352: ..11.11... lnc9: load constant 3 854 L02353: 11.111.111 -> L02335 go to nrm27 855 856 L02354: 111.1.111. pre21: a exchange c[w] 857 L02355: .1..1.111. a -> b[w] 858 L02356: .11....11. c -> a[m] 859 L02357: 1.1.111.1. c + c -> c[xs] 860 L02360: .1.1111.11 -> L02136 if no carry go to pre24 861 L02361: .111111.1. c + 1 -> c[xs] 862 L02362: 1.11..111. pre22: shift right a[w] 863 L02363: .1111.1.1. c + 1 -> c[x] 864 L02364: 1111..1.11 -> L02362 if no carry go to pre22 865 L02365: .11..11111 -> L02147 go to pre26 866 867 L02366: ..11..111. lnc10: 0 -> c[w] 868 L02367: 11....11.. 12 -> p 869 L02370: ..1..11... load constant 2 870 L02371: ..11.11... load constant 3 871 L02372: .....11... load constant 0 872 L02373: ..1..11... load constant 2 873 L02374: .1.1.11... load constant 5 874 L02375: 1......111 -> L02201 go to lnc7 875 876 L02376: .1.1..11.. lncd3: 5 -> p 877 L02377: .111111.11 -> L02176 go to lnc6 878 00250 div21 782 00253 div22 785 00266 div23 798 00225 eca21 759 00226 eca22 760 00000 err21 603 00102 exp21 672 00210 exp22 745 00216 exp23 751 00206 exp29 743 00013 ln22 616 00001 ln24 604 00021 ln25 622 00022 ln26 623 00057 ln27 652 00060 ln28 653 00070 ln29 661 00366 lnc10 867 00271 lnc2 802 00176 lnc6 734 00201 lnc7 737 00346 lnc8 849 00352 lnc9 853 00337 lncd1 842 00175 lncd2 733 00376 lncd3 876 00246 mpy21 780 00247 mpy22 781 00304 mpy26 814 00305 mpy27 815 00307 mpy28 817 00313 nrm20 821 00314 nrm21 822 00317 nrm23 825 00326 nrm24 832 00333 nrm25 837 00172 nrm26 729 00335 nrm27 839 00234 pmu21 768 00235 pmu22 769 00237 pmu23 772 00240 pmu24 773 00233 pqo21 766 00155 pqo23 716 00171 pqo24 728 00165 pqo27 724 00166 pqo28 725 00354 pre21 856 00362 pre22 862 00131 pre23 696 00136 pre24 701 00144 pre25 707 00147 pre26 710 00302 pre27 812 00154 pre28 715 00134 pre29 699 00224 rtn21 757 00010 xty21 613 00006 xty22 610 880 881 .rom @03 882 883 L03000: 1....1.... -> L04001 ***** prfx: select rom 4 884 885 L03001: .......... no operation 886 887 L03002: .1..1.1.11 -> L03112 fix1: go to fix2 888 889 L03003: .1.11..111 -> L03131 exp0: go to exp1 890 891 L03004: .1.11.1.11 -> L03132 lnnn: go to lnn2z4 892 893 L03005: .......... no operation 894 L03006: .1...1..11 -> L03104 invx: go to inv1 895 896 L03007: .1...1.... -> L02010 ***** lexx: select rom 2 897 898 L03010: 1....1.... -> L04011 ***** perc: select rom 4 899 900 L03011: 11...1.... -> L06012 ***** rnd0: select rom 6 901 902 L03012: .11..11.11 -> L03146 rcal: go to rcl0 903 904 L03013: .11.1...11 -> L03150 stor: go to str0 905 906 L03014: 11..1.1... rold: down rotate 907 L03015: .111111111 -> L03177 go to fst1zx 908 909 L03016: .11.1.1... exc1: stack -> a 910 L03017: .1..1.1... c -> stack 911 L03020: .111111.11 -> L03176 go to fstxzj 912 913 L03021: ..11111111 -> L03077 fst2z5: go to ent2 914 915 L03022: 11111.111. dig6: a + 1 -> a[w] 916 L03023: 11111.111. dig5: a + 1 -> a[w] 917 L03024: 11111.111. dig4: a + 1 -> a[w] 918 L03025: ...11.1.11 -> L03032 if no carry go to dig3 919 920 L03026: 1....1.... -> L04027 ***** addd: select rom 4 921 922 L03027: 1....111.1 -> L03207 fix3: jsb dsp0z4 923 L03030: .1....111. shift left a[w] 924 L03031: .1.1..1.11 -> L03122 go to fmt1 925 926 L03032: 11111.111. dig3: a + 1 -> a[w] 927 L03033: 11111.111. dig2: a + 1 -> a[w] 928 L03034: 11111.111. dig1: a + 1 -> a[w] 929 L03035: ....11.... return 930 931 L03036: 1....1.... -> L04037 ***** mult: select rom 4 932 933 L03037: ..11.1.... tkra: keys -> rom address 934 935 L03040: 1...1..1.. sig1: 0 -> s8 936 L03041: 1....1.... -> L04042 ***** select rom 4 937 938 L03042: ..1.....11 -> L03040 sigp: go to sig1 939 940 L03043: ..11..11.. dcpt: 3 -> p 941 L03044: ....11.... dig0: return 942 943 L03045: 1....1.... -> L04046 ***** dvid: select rom 4 944 945 L03046: ..1..1.111 -> L03045 divd: go to dvid 946 947 L03047: .1.1...1.. tan2: 1 -> s5 948 L03050: .11..1...1 -> L03144 tang: jsb sav9 949 L03051: .1....1.11 -> L03102 go to sqt1z4 950 951 L03052: .1..11..11 -> L03114 coss: go to cos2 952 953 L03053: ..1..11111 -> L03047 sinn: go to tan2 954 955 L03054: 1....1.... -> L04055 ***** tpol: select rom 4 956 957 L03055: .......... no operation 958 959 L03056: .11....1.1 -> L03141 sqar: jsb save 960 L03057: .1..1...11 -> L03110 go to mul0 961 962 L03060: .......... no operation 963 964 L03061: .....1.... -> L00062 ***** sqt2: select rom 0 965 966 L03062: 11111.111. dig9: a + 1 -> a[w] 967 L03063: 11111.111. dig8: a + 1 -> a[w] 968 L03064: 11111.111. dig7: a + 1 -> a[w] 969 L03065: ...1..1.11 -> L03022 if no carry go to dig6 970 971 L03066: 1....1.... -> L04067 ***** subt: select rom 4 972 973 L03067: .......... no operation 974 975 L03070: 1.1..11..1 -> L03246 clrx: jsb ofl2 976 L03071: 1......111 -> L03201 go to fst2zx 977 978 L03072: 1.111.1111 -> L03273 eexx: go to eex2 979 980 L03073: 11.....111 -> L03301 chs1: go to chs2 981 982 L03074: ....1.111. clok: 0 -> b[w] 983 L03075: 111..1.... -> L07076 ***** select rom 7 984 985 L03076: .1..1.1... ent1: c -> stack 986 L03077: 1.1..111.1 -> L03247 ent2: jsb ofl3 987 L03100: 1......111 -> L03201 go to fst2zx 988 989 L03101: .11....1.1 -> L03141 sqt0: jsb save 990 L03102: 1..11..1.. sqt1z4: 0 -> s9 991 L03103: ..11...111 -> L03061 sqt1: go to sqt2 992 993 L03104: .11....1.1 -> L03141 inv1: jsb save 994 L03105: 1.111.111. 0 -> a[w] 995 L03106: 11111...1. a + 1 -> a[p] 996 L03107: .1..1..111 -> L03111 if no carry go to div0 997 L03110: 1....1.... -> L04111 ***** mul0: select rom 4 998 999 L03111: 1....1.... -> L04112 ***** div0: select rom 4 1000 1001 L03112: 1..11..1.. fix2: 0 -> s9 1002 L03113: ...1.11111 -> L03027 go to fix3 1003 1004 L03114: .11..1...1 -> L03144 cos2: jsb sav9 1005 L03115: 1..1...1.. cos2z4: 1 -> s9 1006 L03116: .1.1...1.. trecz4: 1 -> s5 1007 L03117: ..11...111 -> L03061 go to sqt2 1008 1009 L03120: .1....111. frmt: shift left a[w] 1010 L03121: 11111.111. a + 1 -> a[w] 1011 L03122: .1....111. fmt1: shift left a[w] 1012 L03123: ..1.1.1... c exchange m 1013 L03124: 111.1.1.1. a exchange c[x] 1014 L03125: ..1.1.1... c exchange m 1015 L03126: .111..1.11 -> L03162 fstpz4: go to fstp 1016 1017 L03127: .......... no operation 1018 L03130: .......... no operation 1019 1020 L03131: 1...1..1.. exp1: 0 -> s8 1021 L03132: 1..1...1.. lnn2z4: 1 -> s9 1022 L03133: .11....1.1 -> L03141 jsb save 1023 L03134: ..1....1.. nty1z4: 1 -> s2 1024 L03135: .....11111 -> L03007 go to lexx 1025 1026 L03136: 1....111.1 -> L03207 sci2z4: jsb dsp0z4 1027 L03137: .1.1....11 -> L03120 go to frmt 1028 1029 L03140: ..11...1.. sav1: 1 -> s3 1030 L03141: 1.1.1..1.. save: 0 -> s10 1031 L03142: 11...1.... -> L06143 ***** select rom 6 1032 1033 L03143: 11...1.... -> L06144 ***** sav2: select rom 6 1034 1035 L03144: ...1...1.. sav9: 1 -> s1 1036 L03145: .11....111 -> L03141 go to save 1037 1038 L03146: 1..1...1.. rcl0: 1 -> s9 1039 L03147: .11.1..111 -> L03151 go to str1 1040 1041 L03150: 1..11..1.. str0: 0 -> s9 1042 L03151: ..1....1.. str1: 1 -> s2 1043 L03152: 1....111.1 -> L03207 jsb dsp0z4 1044 L03153: .111.1.1.1 -> L03165 jsb chk0 1045 L03154: .11...11.1 -> L03143 jsb sav2 1046 L03155: 1..1.1.1.. if s9 # 1 1047 L03156: .111...111 -> L03161 then go to str2 1048 L03157: 1111.11..1 -> L03366 jsb fst4 1049 L03160: .111111.11 -> L03176 go to fstxzj 1050 1051 L03161: 1.1111.... str2: c -> data 1052 L03162: .111.1.1.. fstp: if s7 # 1 1053 L03163: ..11111111 -> L03077 then go to ent2 1054 L03164: .111111111 -> L03177 go to fst1zx 1055 1056 L03165: ......11.. chk0: 0 -> p 1057 L03166: 1..11...1. if a[p] >= 1 1058 L03167: 1111111111 -> L03377 then go to retnzx 1059 L03170: .111..1.11 -> L03162 fstpz5: go to fstp 1060 1061 L03171: 1....111.1 -> L03207 asmdz4: jsb dsp0z4 1062 L03172: .111.1.1.1 -> L03165 jsb chk0 1063 L03173: 1....1.... -> L04174 ***** select rom 4 1064 1065 L03174: .......... no operation 1066 L03175: .......... no operation 1067 1068 L03176: 111.1.111. fstxzj: a exchange c[w] 1069 L03177: 1.1..111.1 -> L03247 fst1zx: jsb ofl3 1070 L03200: .111...1.. fst1zj: 1 -> s7 1071 L03201: 1....1.1.1 -> L03205 fst2zx: jsb dsp1 1072 L03202: 1111.1.1.1 -> L03365 jsb fst3 1073 L03203: 11.1.11.11 -> L03326 go to den2 1074 1075 L03204: ..1111111. chs3: 0 - c - 1 -> c[s] 1076 L03205: 1.1.1..1.. dsp1: 0 -> s10 1077 L03206: 1...1...11 -> L03210 go to dsp7 1078 L03207: 1.11..111. dsp0z4: shift right a[w] 1079 L03210: .11..1111. dsp7: c -> a[s] 1080 L03211: 1...1..1.. 0 -> s8 1081 L03212: 1..1.1..11 -> L03224 go to dsp8 1082 L03213: .111111.1. dsp2: c + 1 -> c[xs] 1083 L03214: 1......1.. dsp3: 1 -> s8 1084 L03215: .1.1.1.1.. if s5 # 1 1085 L03216: 1..1..1.11 -> L03222 then go to dsp5 1086 L03217: .1111.1.1. c + 1 -> c[x] 1087 L03220: 1...1.1111 -> L03213 if no carry go to dsp2 1088 L03221: ....1.1... dsp4: display toggle 1089 L03222: .....1.1.. dsp5: if s0 # 1 1090 L03223: 1...11..11 -> L03214 then go to dsp3 1091 L03224: ....1..1.. dsp8: 0 -> s0 1092 L03225: .....111.. dsp6: p - 1 -> p 1093 L03226: 11..1.11.. if p # 12 1094 L03227: 1..1.1.111 -> L03225 then go to dsp6 1095 L03230: 1...1.1... display off 1096 L03231: 1....1.1.. if s8 # 1 1097 L03232: 1..1...111 -> L03221 then go to dsp4 1098 L03233: .1....111. shift left a[w] 1099 L03234: .1.11..1.. 0 -> s5 1100 L03235: 1.1..1.1.. if s10 # 1 1101 L03236: ...1111111 -> L03037 then go to tkra 1102 L03237: 1....1.... -> L04240 ***** select rom 4 1103 1104 L03240: .......... no operation 1105 1106 L03241: ..11.1..1. ofl1: 0 -> c[wp] 1107 L03242: .1.111..1. c - 1 -> c[wp] 1108 L03243: ..11.11.1. 0 -> c[xs] 1109 L03244: 111...1.1. a + b -> a[x] 1110 L03245: 1.1..11111 -> L03247 if no carry go to ofl3 1111 L03246: ..11..111. ofl2: 0 -> c[w] 1112 L03247: ....11.1.. ofl3: clear status 1113 L03250: .11...111. c -> a[w] 1114 L03251: 11....11.. ofl4: 12 -> p 1115 L03252: .1..1.1.1. a -> b[x] 1116 L03253: .11...1.1. c -> a[x] 1117 L03254: .11.111.1. if c[xs] = 0 1118 L03255: 1.11...111 -> L03261 then go to ofl5 1119 L03256: ..1.1.1.1. 0 - c -> c[x] 1120 L03257: .1.1111.1. c - 1 -> c[xs] 1121 L03260: 1.1....111 -> L03241 if no carry go to ofl1 1122 L03261: 111.1.1.1. ofl5: a exchange c[x] 1123 L03262: .1...1.1.. if s4 # 1 1124 L03263: ....1..111 -> L03011 then go to rnd0 1125 L03264: 11..1.1.1. a exchange b[x] 1126 L03265: ....1.1.1. 0 -> b[x] 1127 L03266: 1....1.1.1 -> L03205 jsb dsp1 1128 L03267: 11..1.11.. if p # 12 1129 L03270: 1....11111 -> L03207 then go to dsp0z4 1130 L03271: .1....1.1. shift left a[x] 1131 L03272: 1.11111.11 -> L03276 go to eex3 1132 L03273: .1.....1.. eex2: 1 -> s4 1133 L03274: 1.11.1.1.. if s11 # 1 1134 L03275: ...111..11 -> L03034 then go to dig1 1135 L03276: 1.11..111. eex3: shift right a[w] 1136 L03277: 111.11..1. a exchange c[wp] 1137 L03300: 11...11.11 -> L03306 go to eex4 1138 1139 L03301: 1.11..111. chs2: shift right a[w] 1140 L03302: .1...1.1.. if s4 # 1 1141 L03303: 1....1..11 -> L03204 then go to chs3 1142 L03304: 111.11..1. a exchange c[wp] 1143 L03305: ..11111.1. 0 - c - 1 -> c[xs] 1144 L03306: .11...111. eex4: c -> a[w] 1145 L03307: .11.111.1. if c[xs] = 0 1146 L03310: 11..1.1111 -> L03313 then go to eex5 1147 L03311: ..11.11.1. 0 -> c[xs] 1148 L03312: ..1.1.1.1. 0 - c -> c[x] 1149 L03313: 11.1..11.. eex5: 13 -> p 1150 L03314: .1...1.11. eex6: shift left a[ms] 1151 L03315: .1.11.1.1. c - 1 -> c[x] 1152 L03316: 1..111111. if a[s] >= 1 1153 L03317: 111.11..11 -> L03354 then go to eex8 1154 L03320: 1..111.11. if a[ms] >= 1 1155 L03321: 11..11..11 -> L03314 then go to eex6 1156 L03322: ..11..1.1. 0 -> c[x] 1157 L03323: 1....1.1.1 -> L03205 den1: jsb dsp1 1158 L03324: 1.11.1.11. shift right a[ms] 1159 L03325: .11..1111. den7: c -> a[s] 1160 L03326: 11..1.11.. den2: if p # 12 1161 L03327: 11.1111111 -> L03337 then go to den4 1162 L03330: ..1...111. b -> c[w] 1163 L03331: .1111.111. c + 1 -> c[w] 1164 L03332: ...1..11.. 1 -> p 1165 L03333: .1...1..1. den3: shift left a[wp] 1166 L03334: ....1111.. p + 1 -> p 1167 L03335: .11.1...1. if c[p] = 0 1168 L03336: 11.11.1111 -> L03333 then go to den3 1169 L03337: 111.1.111. den4: a exchange c[w] 1170 L03340: ..111.11.. if p # 3 1171 L03341: 111..1.111 -> L03345 then go to den5 1172 L03342: ..11..1.1. 0 -> c[x] 1173 L03343: .11....1.. 1 -> s6 1174 L03344: 11...11.11 -> L03306 go to eex4 1175 1176 L03345: .11..1.1.. den5: if s6 # 1 1177 L03346: 111.1...11 -> L03350 then go to den6 1178 L03347: .....111.. p - 1 -> p 1179 L03350: 1.1..1..1. den6: shift right b[wp] 1180 L03351: 11...11..1 -> L03306 jsb eex4 1181 L03352: .....111.. eex7: p - 1 -> p 1182 L03353: .1111.1.1. c + 1 -> c[x] 1183 L03354: ........1. eex8: if b[p] = 0 1184 L03355: 111.1.1.11 -> L03352 then go to eex7 1185 L03356: 1.11...1.. 1 -> s11 1186 L03357: 1.11.1.11. shift right a[ms] 1187 L03360: 111.1..11. a exchange c[m] 1188 L03361: .1...1.1.. if s4 # 1 1189 L03362: 11.1..1111 -> L03323 then go to den1 1190 L03363: 1.1.1..1.1 -> L03251 eex9: jsb ofl4 1191 L03364: 1......111 -> L03201 go to fst2zx 1192 1193 L03365: 1.1111.11. fst3: 0 -> a[ms] 1194 L03366: .111.1.1.. fst4: if s7 # 1 1195 L03367: 11111..111 -> L03371 then go to fst5 1196 L03370: .1..1.1... c -> stack 1197 L03371: .111...1.. fst5: 1 -> s7 1198 L03372: ..11..111. 0 -> c[w] 1199 L03373: .1.11.111. c - 1 -> c[w] 1200 L03374: ..1.11111. 0 - c -> c[s] 1201 L03375: .11111111. c + 1 -> c[s] 1202 L03376: 1...1.111. b exchange c[w] 1203 L03377: ....11.... retnzx: return 1204 00026 addd 920 00171 asmdz4 1061 00165 chk0 1056 00073 chs1 980 00301 chs2 1139 00204 chs3 1075 00074 clok 982 00070 clrx 975 00114 cos2 1004 00115 cos2z4 1005 00052 coss 951 00043 dcpt 940 00323 den1 1157 00326 den2 1160 00333 den3 1165 00337 den4 1169 00345 den5 1176 00350 den6 1179 00325 den7 1159 00044 dig0 941 00034 dig1 928 00033 dig2 927 00032 dig3 926 00024 dig4 917 00023 dig5 916 00022 dig6 915 00064 dig7 968 00063 dig8 967 00062 dig9 966 00111 div0 999 00046 divd 945 00207 dsp0z4 1078 00205 dsp1 1076 00213 dsp2 1082 00214 dsp3 1083 00221 dsp4 1088 00222 dsp5 1089 00225 dsp6 1092 00210 dsp7 1079 00224 dsp8 1091 00045 dvid 943 00273 eex2 1132 00276 eex3 1135 00306 eex4 1144 00313 eex5 1149 00314 eex6 1150 00352 eex7 1181 00354 eex8 1183 00363 eex9 1190 00072 eexx 978 00076 ent1 985 00077 ent2 986 00016 exc1 909 00003 exp0 889 00131 exp1 1020 00002 fix1 887 00112 fix2 1001 00027 fix3 922 00122 fmt1 1011 00120 frmt 1009 00200 fst1zj 1070 00177 fst1zx 1069 00021 fst2z5 913 00201 fst2zx 1071 00365 fst3 1193 00366 fst4 1194 00371 fst5 1197 00162 fstp 1052 00126 fstpz4 1015 00170 fstpz5 1059 00176 fstxzj 1068 00104 inv1 993 00006 invx 894 00007 lexx 896 00132 lnn2z4 1021 00004 lnnn 891 00110 mul0 997 00036 mult 931 00134 nty1z4 1023 00241 ofl1 1106 00246 ofl2 1111 00247 ofl3 1112 00251 ofl4 1114 00261 ofl5 1122 00010 perc 898 00000 prfx 883 00012 rcal 902 00146 rcl0 1038 00377 retnzx 1203 00011 rnd0 900 00014 rold 906 00140 sav1 1029 00143 sav2 1033 00144 sav9 1035 00141 save 1030 00136 sci2z4 1026 00040 sig1 935 00042 sigp 938 00053 sinn 953 00056 sqar 959 00101 sqt0 989 00103 sqt1 991 00102 sqt1z4 990 00061 sqt2 964 00013 stor 904 00150 str0 1041 00151 str1 1042 00161 str2 1051 00066 subt 971 00047 tan2 947 00050 tang 948 00037 tkra 933 00054 tpol 955 00116 trecz4 1006 1206 1207 .rom @04 1208 1209 L04000: .......... prfx: no operation 1210 L04001: 1....1..11 -> L04204 prfxz3: go to pfx1 1211 1212 L04002: .1.111..11 -> L04134 sci1: go to sci2 1213 1214 L04003: 11..1...11 -> L04310 tenx: go to tnx2 1215 1216 L04004: .1.11...11 -> L04130 logg: go to log2 1217 1218 L04005: 11...1.... -> L06006 ***** tnx3: select rom 6 1219 1220 L04006: .11....1.1 -> L04141 xtoy: jsb save 1221 L04007: .1.11.1.11 -> L04132 go to xty1 1222 1223 L04010: 1..11...11 -> L04230 dpct: go to dpc1 1224 1225 L04011: .1....1.11 -> L04102 percz3: go to pct1 1226 1227 L04012: 1...1..1.. dmst: 0 -> s8 1228 L04013: ...1....11 -> L04020 tdms: go to tdm1 1229 1230 L04014: ..1.....11 -> L04040 stdd: go to std1 1231 1232 L04015: .....1.... -> L00016 ***** dmsd: select rom 0 1233 1234 L04016: .11....1.1 -> L04141 fact: jsb save 1235 L04017: 1111111111 -> L04377 go to fac2 1236 1237 L04020: .11....1.1 -> L04141 tdm1: jsb save 1238 L04021: ....11.111 -> L04015 go to dmsd 1239 1240 L04022: 1.....1.11 -> L04202 dig6: go to dsp0 1241 L04023: 1.....1.11 -> L04202 dig5: go to dsp0 1242 L04024: 1.....1.11 -> L04202 dig4: go to dsp0 1243 1244 L04025: 1.1..1.... -> L05026 ***** sig2: select rom 5 1245 1246 L04026: .......... addd: no operation 1247 L04027: .11.1...11 -> L04150 adddz3: go to amd1 1248 1249 L04030: 1.11.1.111 -> L04265 tpolz0: go to tpl3 1250 1251 L04031: .......... no operation 1252 1253 L04032: 1.....1.11 -> L04202 dig3: go to dsp0 1254 L04033: 1.....1.11 -> L04202 dig2: go to dsp0 1255 L04034: 1.....1.11 -> L04202 dig1: go to dsp0 1256 1257 L04035: .......... no operation 1258 1259 L04036: .......... mult: no operation 1260 L04037: .11.111.11 -> L04156 multz3: go to amd4 1261 1262 L04040: .11......1 -> L04140 std1: jsb sav1 1263 L04041: 1.1..1.... -> L05042 ***** select rom 5 1264 1265 L04042: 11.1....11 -> L04320 sigmz3: go to sgma 1266 1267 L04043: .111..1.11 -> L04162 dspt: go to piii 1268 1269 L04044: .111...111 -> L04161 dig0: go to cons 1270 L04045: .......... no operation 1271 1272 L04046: .111..1111 -> L04163 divdz3: go to amd5 1273 1274 L04047: .1.1...1.. atn2: 1 -> s5 1275 L04050: .1.1111..1 -> L04136 atan: jsb sav9 1276 L04051: .1.....111 -> L04101 go to sqt1 1277 1278 L04052: .1..1.1111 -> L04113 acos: go to acs1 1279 1280 L04053: ..1..11111 -> L04047 asin: go to atn2 1281 1282 L04054: 1..1..1111 -> L04223 trec: go to trc1 1283 1284 L04055: 1.1.1...11 -> L04250 tpolz3: go to tpl1 1285 1286 L04056: .11....1.1 -> L04141 sqrt: jsb save 1287 L04057: .1.....111 -> L04101 go to sqt1 1288 1289 L04060: .......... no operation 1290 L04061: .......... no operation 1291 1292 L04062: 11111.111. dig9: a + 1 -> a[w] 1293 L04063: 11111.111. dig8: a + 1 -> a[w] 1294 L04064: .111....11 -> L04160 dig7: if no carry go to con1 1295 1296 L04065: 1.1..1.... -> L05066 ***** tpl6: select rom 5 1297 1298 L04066: .......... subt: no operation 1299 L04067: .11.1.1111 -> L04153 subtz3: go to amd2 1300 1301 L04070: .11....1.1 -> L04141 cler: jsb save 1302 L04071: 1111.1.111 -> L04365 go to clr2 1303 1304 L04072: 11111.111. grad: a + 1 -> a[w] 1305 L04073: ..11111111 -> L04077 radn: if no carry go to mode 1306 1307 L04074: .......... clok: no operation 1308 L04075: .......... no operation 1309 L04076: 11.11.111. degr: a - 1 -> a[w] 1310 L04077: ......11.. mode: 0 -> p 1311 L04100: .1..111.11 -> L04116 go to shft 1312 1313 L04101: .11..1.... -> L03102 ***** sqt1: select rom 3 1314 1315 L04102: .11......1 -> L04140 pct1: jsb sav1 1316 L04103: 1...1..1.. 0 -> s8 1317 L04104: 11..1.1... c100: down rotate 1318 L04105: .1..1.1... c -> stack 1319 L04106: .1.11.1.1. c - 1 -> c[x] 1320 L04107: .1.11.1.1. c - 1 -> c[x] 1321 L04110: 1....1.1.. if s8 # 1 1322 L04111: 1.1...1111 -> L04243 mul0z3: then go to mul0 1323 L04112: 1.1....111 -> L04241 div0z3: go to div0 1324 1325 L04113: .1.1111..1 -> L04136 acs1: jsb sav9 1326 L04114: .11..1.... -> L03115 ***** select rom 3 1327 1328 L04115: .11..1.... -> L03116 ***** trc2: select rom 3 1329 1330 L04116: .1....111. shft: shift left a[w] 1331 L04117: ....1111.. p + 1 -> p 1332 L04120: 11.11.11.. if p # 13 1333 L04121: .1..111.11 -> L04116 then go to shft 1334 L04122: ..1.1.1... mrg0: c exchange m 1335 L04123: 111.1...1. a exchange c[p] 1336 L04124: ..1.1.1... mreg: c exchange m 1337 L04125: .11..1.... -> L03126 ***** select rom 3 1338 1339 L04126: .......... no operation 1340 L04127: .......... no operation 1341 1342 L04130: .1.1...1.. log2: 1 -> s5 1343 L04131: .11..1.... -> L03132 ***** select rom 3 1344 1345 L04132: 1....111.1 -> L04207 xty1: jsb exch 1346 L04133: .11..1.... -> L03134 ***** select rom 3 1347 1348 L04134: 1.1.1..1.. sci2: 0 -> s10 1349 L04135: .11..1.... -> L03136 ***** select rom 3 1350 1351 L04136: ...1...1.. sav9: 1 -> s1 1352 L04137: .11....111 -> L04141 go to save 1353 1354 L04140: ..11...1.. sav1: 1 -> s3 1355 L04141: 1.1....1.. save: 1 -> s10 1356 L04142: 11...1.... -> L06143 ***** select rom 6 1357 1358 L04143: 11...1.... -> L06144 ***** savx: select rom 6 1359 1360 L04144: 11...1.... -> L06145 ***** adr9: select rom 6 1361 1362 L04145: 1.1....1.. sav2: 1 -> s10 1363 L04146: ..11...1.. 1 -> s3 1364 L04147: .11...1111 -> L04143 go to savx 1365 1366 L04150: .11....1.. amd1: 1 -> s6 1367 L04151: .1.....1.. 1 -> s4 1368 L04152: .111.1.111 -> L04165 go to amd7 1369 1370 L04153: .11.1..1.. amd2: 0 -> s6 1371 L04154: .1.....1.. amd3: 1 -> s4 1372 L04155: .111.1.111 -> L04165 go to amd7 1373 1374 L04156: .11....1.. amd4: 1 -> s6 1375 L04157: .111.1..11 -> L04164 go to amd6 1376 1377 L04160: 11111.111. con1: a + 1 -> a[w] 1378 L04161: 11...1.... -> L06162 ***** cons: select rom 6 1379 1380 L04162: 11...1.... -> L06163 ***** piii: select rom 6 1381 1382 L04163: .11.1..1.. amd5: 0 -> s6 1383 L04164: .1..1..1.. amd6: 0 -> s4 1384 L04165: ..1..1.1.. amd7: if s2 # 1 1385 L04166: .111111111 -> L04177 then go to amd8 1386 L04167: 1.1.1..1.. 0 -> s10 1387 L04170: .11..1.... -> L03171 ***** select rom 3 1388 1389 L04171: 1.1.1..1.. am13: 0 -> s10 1390 L04172: 1.1..1.... -> L05173 ***** select rom 5 1391 1392 L04173: .......... no operation 1393 1394 L04174: 1...1.1111 -> L04213 amd9z3: go to amd9 1395 1396 L04175: .......... no operation 1397 1398 L04176: .11..1.... -> L03177 ***** fst1: select rom 3 1399 1400 L04177: .11....1.1 -> L04141 amd8: jsb save 1401 L04200: .11.1.1... stack -> a 1402 L04201: .1111..111 -> L04171 go to am13 1403 1404 L04202: 1.1.1..1.. dsp0: 0 -> s10 1405 L04203: 1....1.111 -> L04205 go to dspx 1406 1407 L04204: 1.1....1.. pfx1: 1 -> s10 1408 L04205: 1..11..1.. dspx: 0 -> s9 1409 L04206: .11..1.... -> L03207 ***** select rom 3 1410 1411 L04207: .11.1.1... exch: stack -> a 1412 L04210: .1..1.1... exc1: c -> stack 1413 L04211: 111.1.111. a exchange c[w] 1414 L04212: ....11.... return 1415 1416 L04213: 1..1.1.1.. amd9: if s9 # 1 1417 L04214: 1..1....11 -> L04220 then go to am12 1418 L04215: .11......1 -> L04140 am10: jsb sav1 1419 L04216: 111.1.111. am11: a exchange c[w] 1420 L04217: .1111..111 -> L04171 go to am13 1421 1422 L04220: .11..1.1.1 -> L04145 am12: jsb sav2 1423 L04221: 1.1111.... c -> data 1424 L04222: 1...111.11 -> L04216 go to am11 1425 1426 L04223: .1.1111..1 -> L04136 trc1: jsb sav9 1427 L04224: .11.1.1... stack -> a 1428 L04225: ..11...1.. 1 -> s3 1429 L04226: 1.1.1..1.. 0 -> s10 1430 L04227: .1..11.111 -> L04115 go to trc2 1431 1432 L04230: .11......1 -> L04140 dpc1: jsb sav1 1433 L04231: 11..1.1... down rotate 1434 L04232: .1..1.1... c -> stack 1435 L04233: 1.1..11..1 -> L04246 jsb sub1 1436 L04234: .1...1..11 -> L04104 go to c100 1437 1438 L04235: .......... no operation 1439 L04236: .......... no operation 1440 1441 L04237: 1.1..1.... -> L05240 ***** rcxy: select rom 5 1442 1443 L04240: ..11.1.... tkraz3: keys -> rom address 1444 1445 L04241: ..111..1.. div0: 0 -> s3 1446 L04242: 1.1..1.111 -> L04245 go to div1 1447 1448 L04243: ..111..1.. mul0: 0 -> s3 1449 L04244: ..1..1.... -> L01245 ***** mul1: select rom 1 1450 1451 L04245: ..1..1.... -> L01246 ***** div1: select rom 1 1452 1453 L04246: ..1111111. sub1: 0 - c - 1 -> c[s] 1454 L04247: .....1.... -> L00250 ***** add1: select rom 0 1455 1456 L04250: .1.1111..1 -> L04136 tpl1: jsb sav9 1457 L04251: ..11...1.. 1 -> s3 1458 L04252: .1..1..1.. 0 -> s4 1459 L04253: .11.11111. if c[s] = 0 1460 L04254: 1.1.111.11 -> L04256 then go to tpl2 1461 L04255: .1.....1.. 1 -> s4 1462 L04256: 11..1.1... tpl2: down rotate 1463 L04257: 1...1....1 -> L04210 jsb exc1 1464 L04260: 1..11..11. if a[m] >= 1 1465 L04261: ..11.1.111 -> L04065 then go to tpl6 1466 L04262: ..11.1..1. 0 -> c[wp] 1467 L04263: .1111...1. c + 1 -> c[p] 1468 L04264: ..11.1.1.1 -> L04065 jsb tpl6 1469 1470 L04265: ...11..1.. tpl3: 0 -> s1 1471 L04266: 1....111.1 -> L04207 jsb exch 1472 L04267: .11...111. c -> a[w] 1473 L04270: 1.1..1...1 -> L04244 jsb mul1 1474 L04271: 1.1111.... c -> data 1475 L04272: 11..1.11.1 -> L04313 jsb rest 1476 L04273: .11..1...1 -> L04144 jsb adr9 1477 L04274: 1.1..1...1 -> L04244 jsb mul1 1478 L04275: 1.11111... data -> c 1479 L04276: 1.1..111.1 -> L04247 jsb add1 1480 L04277: 11.1111.1. a - 1 -> a[xs] 1481 L04300: 11.1111.1. a - 1 -> a[xs] 1482 L04301: 11.1111.1. a - 1 -> a[xs] 1483 L04302: 11...1.111 -> L04305 if no carry go to tpl5 1484 L04303: .1.1111.1. c - 1 -> c[xs] 1485 L04304: 1111...1.1 -> L04361 jsb reg9 1486 1487 L04305: .11...111. tpl5: c -> a[w] 1488 L04306: .1.....1.1 -> L04101 jsb sqt1 1489 L04307: 1111...111 -> L04361 go to reg9 1490 1491 L04310: .11....1.1 -> L04141 tnx2: jsb save 1492 L04311: ..1....1.. 1 -> s2 1493 L04312: .....1.111 -> L04005 go to tnx3 1494 1495 L04313: ..11..111. rest: 0 -> c[w] 1496 L04314: 1..111.... c -> data address 1497 L04315: .......... no operation 1498 L04316: 1.11111... data -> c 1499 L04317: ....11.... return 1500 1501 L04320: 1..1.1.1.. sgma: if s9 # 1 1502 L04321: 11.1..1111 -> L04323 then go to sig1 1503 L04322: 1..1111111 -> L04237 go to rcxy 1504 1505 L04323: .11......1 -> L04140 sig1: jsb sav1 1506 L04324: ...1.1.111 -> L04025 go to sig2 1507 1508 L04325: .......... no operation 1509 L04326: .......... no operation 1510 L04327: .......... no operation 1511 L04330: .......... no operation 1512 L04331: .......... no operation 1513 L04332: .......... no operation 1514 L04333: .......... no operation 1515 L04334: .......... no operation 1516 L04335: .......... no operation 1517 L04336: .......... no operation 1518 L04337: .......... no operation 1519 L04340: .......... no operation 1520 L04341: .......... no operation 1521 L04342: .......... no operation 1522 L04343: .......... no operation 1523 L04344: .......... no operation 1524 L04345: .......... no operation 1525 L04346: .......... no operation 1526 L04347: .......... no operation 1527 L04350: .......... no operation 1528 L04351: .......... no operation 1529 L04352: .......... no operation 1530 L04353: .......... no operation 1531 L04354: .......... no operation 1532 L04355: .......... no operation 1533 L04356: .......... no operation 1534 L04357: .......... no operation 1535 L04360: .......... no operation 1536 1537 L04361: .....1.... -> L00362 ***** reg9: select rom 0 1538 1539 L04362: .......... no operation 1540 L04363: .......... no operation 1541 L04364: .......... no operation 1542 1543 L04365: 1.1..1.... -> L05366 ***** clr2: select rom 5 1544 1545 L04366: .......... no operation 1546 L04367: .......... no operation 1547 L04370: .......... no operation 1548 L04371: .......... no operation 1549 L04372: .......... no operation 1550 L04373: .......... no operation 1551 L04374: .......... no operation 1552 L04375: .......... no operation 1553 1554 L04376: ....11.... retnzx: return 1555 1556 L04377: 11...1.... -> L06000 ***** fac2: select rom 6 1557 00052 acos 1278 00113 acs1 1325 00247 add1 1454 00026 addd 1246 00027 adddz3 1247 00144 adr9 1360 00215 am10 1418 00216 am11 1419 00220 am12 1422 00171 am13 1389 00150 amd1 1366 00153 amd2 1370 00154 amd3 1371 00156 amd4 1374 00163 amd5 1382 00164 amd6 1383 00165 amd7 1384 00177 amd8 1400 00213 amd9 1416 00174 amd9z3 1394 00053 asin 1280 00050 atan 1275 00047 atn2 1274 00104 c100 1317 00070 cler 1301 00074 clok 1307 00365 clr2 1543 00160 con1 1377 00161 cons 1378 00076 degr 1309 00044 dig0 1269 00034 dig1 1255 00033 dig2 1254 00032 dig3 1253 00024 dig4 1242 00023 dig5 1241 00022 dig6 1240 00064 dig7 1294 00063 dig8 1293 00062 dig9 1292 00241 div0 1445 00112 div0z3 1323 00245 div1 1451 00046 divdz3 1272 00015 dmsd 1232 00012 dmst 1227 00230 dpc1 1432 00010 dpct 1223 00202 dsp0 1404 00043 dspt 1267 00205 dspx 1408 00210 exc1 1412 00207 exch 1411 00377 fac2 1556 00016 fact 1234 00176 fst1 1398 00072 grad 1304 00130 log2 1342 00004 logg 1216 00077 mode 1310 00124 mreg 1336 00122 mrg0 1334 00243 mul0 1448 00111 mul0z3 1322 00244 mul1 1449 00036 mult 1259 00037 multz3 1260 00102 pct1 1315 00011 percz3 1225 00204 pfx1 1407 00162 piii 1380 00000 prfx 1209 00001 prfxz3 1210 00073 radn 1305 00237 rcxy 1441 00361 reg9 1537 00313 rest 1495 00376 retnzx 1554 00140 sav1 1354 00145 sav2 1362 00136 sav9 1351 00141 save 1355 00143 savx 1358 00002 sci1 1212 00134 sci2 1348 00320 sgma 1501 00116 shft 1330 00323 sig1 1505 00025 sig2 1244 00042 sigmz3 1265 00056 sqrt 1286 00101 sqt1 1313 00040 std1 1262 00014 stdd 1230 00246 sub1 1453 00066 subt 1298 00067 subtz3 1299 00020 tdm1 1237 00013 tdms 1228 00003 tenx 1214 00240 tkraz3 1443 00310 tnx2 1491 00005 tnx3 1218 00250 tpl1 1456 00256 tpl2 1462 00265 tpl3 1470 00305 tpl5 1487 00065 tpl6 1296 00030 tpolz0 1249 00055 tpolz3 1284 00223 trc1 1426 00115 trc2 1328 00054 trec 1282 00006 xtoy 1220 00132 xty1 1345 1559 1560 .rom @05 1561 1562 L05000: 11...1.... -> L06001 ***** err2: select rom 6 1563 1564 L05001: .1111...1. adr5: c + 1 -> c[p] 1565 L05002: .1111...1. adr6: c + 1 -> c[p] 1566 L05003: .1111...1. adr7: c + 1 -> c[p] 1567 L05004: .1111...1. adr8: c + 1 -> c[p] 1568 L05005: .1111...1. adr9: c + 1 -> c[p] 1569 L05006: .1.1..111. adr0: a - c -> c[w] 1570 L05007: 1..111.... c -> data address 1571 L05010: .......... no operation 1572 L05011: 1.11111... data -> c 1573 L05012: .1...1.1.. if s4 # 1 1574 L05013: 1111111111 -> L05377 then go to retnzx 1575 L05014: 111.1.111. a exchange c[w] 1576 L05015: 1....1.1.. if s8 # 1 1577 L05016: 1.1..11111 -> L05247 then go to add1 1578 L05017: 1.1..11.11 -> L05246 go to sub1 1579 1580 L05020: .11..1.... -> L03021 ***** fst2: select rom 3 1581 1582 L05021: .......... no operation 1583 L05022: .......... no operation 1584 L05023: .......... no operation 1585 L05024: .......... no operation 1586 1587 L05025: 111..1..11 -> L05344 pwo2z0: go to pwo2 1588 1589 L05026: .1.....1.. sgmaz4: 1 -> s4 1590 L05027: 1.1.1..1.. 0 -> s10 1591 L05030: 1.1..1...1 -> L05244 jsb mul1 1592 L05031: ......1..1 -> L05002 jsb adr6 1593 L05032: 1.111.11.1 -> L05273 jsb stor 1594 L05033: ..1.11.1.1 -> L05055 jsb rest 1595 L05034: .11...111. c -> a[w] 1596 L05035: ......11.1 -> L05003 jsb adr7 1597 L05036: ..1...1111 -> L05043 go to sig1 1598 1599 L05037: .......... no operation 1600 L05040: .......... no operation 1601 L05041: .......... no operation 1602 1603 L05042: .1....1.11 -> L05102 stddz4: go to stdd 1604 1605 L05043: 1.111.11.1 -> L05273 sig1: jsb stor 1606 L05044: ..11..1..1 -> L05062 jsb yget 1607 L05045: .....1...1 -> L05004 jsb adr8 1608 L05046: 1.111.11.1 -> L05273 jsb stor 1609 L05047: ..11..111. 0 -> c[w] 1610 L05050: .1111...1. c + 1 -> c[p] 1611 L05051: .11...111. c -> a[w] 1612 L05052: .......1.1 -> L05001 jsb adr5 1613 L05053: 1.111.11.1 -> L05273 jsb stor 1614 L05054: ...1....11 -> L05020 go to fst2 1615 1616 L05055: ..11..111. rest: 0 -> c[w] 1617 L05056: 1..111.... c -> data address 1618 L05057: .......... no operation 1619 L05060: 1.11111... data -> c 1620 L05061: ....11.... return 1621 1622 L05062: 11..1.1... yget: down rotate 1623 L05063: .1..1.1... c -> stack 1624 L05064: .11...111. c -> a[w] 1625 L05065: ....11.... return 1626 1627 L05066: 1...1..1.. tploz4: 0 -> s8 1628 L05067: 1..11..1.. 0 -> s9 1629 L05070: 1.1..1.1.1 -> L05245 tpl0zj: jsb div1 1630 1631 L05071: .......... no operation 1632 L05072: .......... no operation 1633 L05073: .......... no operation 1634 L05074: .......... no operation 1635 L05075: .......... no operation 1636 L05076: .......... no operation 1637 L05077: .......... no operation 1638 L05100: .......... no operation 1639 1640 L05101: .11..1.... -> L03102 ***** sqt1: select rom 3 1641 1642 L05102: 1.1.1..1.. stdd: 0 -> s10 1643 L05103: .1..1..1.. 0 -> s4 1644 L05104: ......11.1 -> L05003 jsb adr7 1645 L05105: .11...111. c -> a[w] 1646 L05106: 1.1..1...1 -> L05244 jsb mul1 1647 L05107: .......1.1 -> L05001 jsb adr5 1648 L05110: ...111111. if c[s] >= 1 1649 L05111: ........11 -> L05000 then go to err2 1650 L05112: 1.1..1.1.1 -> L05245 jsb div1 1651 L05113: ......1..1 -> L05002 jsb adr6 1652 L05114: 111.1.111. a exchange c[w] 1653 L05115: 1.1..11..1 -> L05246 jsb sub1 1654 L05116: .1..1.1... c -> stack 1655 L05117: .......1.1 -> L05001 jsb adr5 1656 L05120: 111.1.111. a exchange c[w] 1657 L05121: ..11..111. 0 -> c[w] 1658 L05122: .1111...1. c + 1 -> c[p] 1659 L05123: 1.1..11..1 -> L05246 jsb sub1 1660 L05124: .11.1.1... stack -> a 1661 L05125: 1.1..1.1.1 -> L05245 jsb div1 1662 L05126: .1.....1.1 -> L05101 jsb sqt1 1663 L05127: .1..1.1... c -> stack 1664 L05130: ......11.1 -> L05003 jsb adr7 1665 L05131: .11...111. c -> a[w] 1666 L05132: .......1.1 -> L05001 jsb adr5 1667 L05133: 1.1....1.1 -> L05241 jsb div0 1668 L05134: .1..1..1.. rcxy: 0 -> s4 1669 L05135: .111.1.1.. if s7 # 1 1670 L05136: .11.....11 -> L05140 then go to rxy1 1671 L05137: .1..1.1... c -> stack 1672 L05140: .11...111. rxy1: c -> a[w] 1673 L05141: .....1...1 -> L05004 jsb adr8 1674 L05142: .1..1.1... c -> stack 1675 L05143: .11...111. c -> a[w] 1676 L05144: ......11.1 -> L05003 jsb adr7 1677 L05145: .111111.11 -> L05176 go to fst1 1678 1679 L05146: .......... no operation 1680 L05147: .......... no operation 1681 L05150: .......... no operation 1682 L05151: .......... no operation 1683 L05152: .......... no operation 1684 L05153: .......... no operation 1685 L05154: .......... no operation 1686 L05155: .......... no operation 1687 L05156: .......... no operation 1688 L05157: .......... no operation 1689 L05160: .......... no operation 1690 L05161: .......... no operation 1691 L05162: .......... no operation 1692 L05163: .......... no operation 1693 L05164: .......... no operation 1694 1695 L05165: 1.111.11.1 -> L05273 am10: jsb stor 1696 L05166: 111.1.111. a exchange c[w] 1697 L05167: .11..1.... -> L03170 ***** select rom 3 1698 1699 L05170: .......... no operation 1700 L05171: .......... no operation 1701 L05172: .......... no operation 1702 1703 L05173: 11.111...1 -> L05334 amd0z4: jsb dcod 1704 L05174: 1..1.1.1.. if s9 # 1 1705 L05175: .111.1.111 -> L05165 then go to am10 1706 L05176: .11..1.... -> L03177 ***** fst1: select rom 3 1707 1708 L05177: .......... no operation 1709 L05200: .......... no operation 1710 L05201: .......... no operation 1711 L05202: .......... no operation 1712 L05203: .......... no operation 1713 L05204: .......... no operation 1714 L05205: .......... no operation 1715 L05206: .......... no operation 1716 L05207: .......... no operation 1717 L05210: .......... no operation 1718 L05211: .......... no operation 1719 L05212: .......... no operation 1720 L05213: .......... no operation 1721 L05214: .......... no operation 1722 L05215: .......... no operation 1723 L05216: .......... no operation 1724 L05217: .......... no operation 1725 L05220: .......... no operation 1726 L05221: .......... no operation 1727 L05222: .......... no operation 1728 L05223: .......... no operation 1729 L05224: .......... no operation 1730 L05225: .......... no operation 1731 L05226: .......... no operation 1732 L05227: .......... no operation 1733 L05230: .......... no operation 1734 L05231: .......... no operation 1735 L05232: .......... no operation 1736 L05233: .......... no operation 1737 L05234: .......... no operation 1738 L05235: .......... no operation 1739 L05236: .......... no operation 1740 L05237: .......... no operation 1741 1742 L05240: .1.111..11 -> L05134 rcxyz4: go to rcxy 1743 1744 L05241: ..111..1.. div0: 0 -> s3 1745 L05242: 1.1..1.111 -> L05245 go to div1 1746 1747 L05243: ..111..1.. mul0: 0 -> s3 1748 L05244: ..1..1.... -> L01245 ***** mul1: select rom 1 1749 1750 L05245: ..1..1.... -> L01246 ***** div1: select rom 1 1751 1752 L05246: ..1111111. sub1: 0 - c - 1 -> c[s] 1753 L05247: .....1.... -> L00250 ***** add1: select rom 0 1754 1755 L05250: .......... no operation 1756 L05251: .......... no operation 1757 L05252: .......... no operation 1758 L05253: .......... no operation 1759 L05254: .......... no operation 1760 L05255: .......... no operation 1761 L05256: .......... no operation 1762 L05257: .......... no operation 1763 1764 L05260: ..11.1..1. dvof: 0 -> c[wp] 1765 L05261: .1.111..1. c - 1 -> c[wp] 1766 L05262: ..11.11.1. 0 -> c[xs] 1767 L05263: .1...1.... -> L02264 ***** select rom 2 1768 1769 L05264: 1.11....11 -> L05260 dvofz2: go to dvof 1770 1771 L05265: ..11.1..1. ofl1: 0 -> c[wp] 1772 L05266: .1.111..1. c - 1 -> c[wp] 1773 L05267: ..11.11.1. 0 -> c[xs] 1774 L05270: 111...1.1. a + b -> a[x] 1775 L05271: 1.111.1111 -> L05273 if no carry go to stor 1776 L05272: ..11..111. 0 -> c[w] 1777 L05273: .11...111. stor: c -> a[w] 1778 L05274: 11....11.. ofl4: 12 -> p 1779 L05275: .1..1.1.1. a -> b[x] 1780 L05276: .11...1.1. c -> a[x] 1781 L05277: .11.111.1. if c[xs] = 0 1782 L05300: 11...1..11 -> L05304 then go to ofl5 1783 L05301: ..1.1.1.1. 0 - c -> c[x] 1784 L05302: .1.1111.1. c - 1 -> c[xs] 1785 L05303: 1.11.1.111 -> L05265 if no carry go to ofl1 1786 L05304: 111.11.11. ofl5: a exchange c[ms] 1787 L05305: 1.11111... data -> c 1788 L05306: 111.1.111. a exchange c[w] 1789 L05307: 1.1111.... c -> data 1790 L05310: ....11.... return 1791 1792 L05311: .......... no operation 1793 L05312: .......... no operation 1794 L05313: .......... no operation 1795 L05314: .......... no operation 1796 L05315: .......... no operation 1797 L05316: .......... no operation 1798 L05317: .......... no operation 1799 L05320: .......... no operation 1800 L05321: .......... no operation 1801 L05322: .......... no operation 1802 L05323: .......... no operation 1803 L05324: .......... no operation 1804 L05325: .......... no operation 1805 L05326: .......... no operation 1806 L05327: .......... no operation 1807 L05330: .......... no operation 1808 L05331: .......... no operation 1809 L05332: .......... no operation 1810 L05333: .......... no operation 1811 1812 L05334: .1...1.1.. dcod: if s4 # 1 1813 L05335: 111....111 -> L05341 then go to dcd1 1814 L05336: .11..1.1.. if s6 # 1 1815 L05337: 1.1..11.11 -> L05246 then go to sub1 1816 L05340: 1.1..11111 -> L05247 go to add1 1817 1818 L05341: .11..1.1.. dcd1: if s6 # 1 1819 L05342: 1.1..1.111 -> L05245 then go to div1 1820 L05343: 1.1..1..11 -> L05244 go to mul1 1821 1822 L05344: ..11..111. pwo2: 0 -> c[w] 1823 L05345: .1.111111. c - 1 -> c[s] 1824 L05346: ..1...11.. 2 -> p 1825 L05347: ..1..11... load constant 2 1826 L05350: ..1.1.1... c exchange m 1827 L05351: ..11..111. 0 -> c[w] 1828 L05352: 1.111.111. clr2: 0 -> a[w] 1829 L05353: 11....11.. 12 -> p 1830 L05354: .1.11...1. clr3: c - 1 -> c[p] 1831 L05355: 1..111.... c -> data address 1832 L05356: 111.1.111. a exchange c[w] 1833 L05357: .1..1.1... c -> stack 1834 L05360: 1.1111.... c -> data 1835 L05361: 111.1.111. a exchange c[w] 1836 L05362: .1111...1. c + 1 -> c[p] 1837 L05363: .1111...1. c + 1 -> c[p] 1838 L05364: 111.11..11 -> L05354 if no carry go to clr3 1839 L05365: .111111.11 -> L05176 go to fst1 1840 1841 L05366: ..11..111. clr1z4: 0 -> c[w] 1842 L05367: .11..11... load constant 6 1843 L05370: 111.1.1.11 -> L05352 go to clr2 1844 1845 L05371: .......... no operation 1846 L05372: .......... no operation 1847 L05373: .......... no operation 1848 L05374: .......... no operation 1849 L05375: .......... no operation 1850 L05376: .......... no operation 1851 1852 L05377: ....11.... retnzx: return 1853 00247 add1 1753 00006 adr0 1569 00001 adr5 1564 00002 adr6 1565 00003 adr7 1566 00004 adr8 1567 00005 adr9 1568 00165 am10 1695 00173 amd0z4 1703 00366 clr1z4 1841 00352 clr2 1828 00354 clr3 1830 00341 dcd1 1818 00334 dcod 1812 00241 div0 1744 00245 div1 1750 00260 dvof 1764 00264 dvofz2 1769 00000 err2 1562 00176 fst1 1706 00020 fst2 1580 00243 mul0 1747 00244 mul1 1748 00265 ofl1 1771 00274 ofl4 1778 00304 ofl5 1786 00344 pwo2 1822 00025 pwo2z0 1587 00134 rcxy 1668 00240 rcxyz4 1742 00055 rest 1616 00377 retnzx 1852 00140 rxy1 1672 00026 sgmaz4 1589 00043 sig1 1605 00101 sqt1 1640 00102 stdd 1642 00042 stddz4 1603 00273 stor 1777 00246 sub1 1752 00070 tpl0zj 1629 00066 tploz4 1627 00062 yget 1622 1855 1856 .rom @06 1857 1858 L06000: 1.1111..11 -> L06274 factz4: go to fact 1859 1860 L06001: .....11111 -> L06007 err2z1: go to errr 1861 1862 L06002: ....11.1.. tdmsz0: clear status 1863 L06003: .111111111 -> L06177 go to tdmszj 1864 1865 L06004: .111111.1. oflw: c + 1 -> c[xs] 1866 L06005: .111111..1 -> L06176 jsb fst1 1867 1868 L06006: 1111.1...1 -> L06364 tenxzj: jsb tnx3 1869 L06007: ..11..111. errr: 0 -> c[w] 1870 L06010: ....11.1.. clear status 1871 L06011: .1.1...1.. 1 -> s5 1872 L06012: .11...111. rnd0z3: c -> a[w] 1873 L06013: 1.1.1.1... m -> c 1874 L06014: 111.1.111. a exchange c[w] 1875 L06015: ...11..111 -> L06031 go to rndx 1876 1877 L06016: 1.11.1.11. rnd3: shift right a[ms] 1878 L06017: 11111.1.1. a + 1 -> a[x] 1879 L06020: ....111.11 -> L06016 if no carry go to rnd3 1880 L06021: 11.1..11.. rnd4: 13 -> p 1881 L06022: 11..111.1. rnd5: a exchange b[xs] 1882 L06023: .1..111.1. a -> b[xs] 1883 L06024: .....111.. rnd6: p - 1 -> p 1884 L06025: ..1.1.11.. if p # 2 1885 L06026: ..1.11.111 -> L06055 then go to rnd7 1886 L06027: 1.111.111. rnof: 0 -> a[w] 1887 L06030: 11.11.1.1. a - 1 -> a[x] 1888 L06031: ....1.111. rndx: 0 -> b[w] 1889 L06032: 1......1.. 1 -> s8 1890 L06033: ...1..11.. 1 -> p 1891 L06034: .1..111.1. a -> b[xs] 1892 L06035: .11....11. c -> a[m] 1893 L06036: .1...1.11. shift left a[ms] 1894 L06037: 1..11...1. if a[p] >= 1 1895 L06040: ...1...111 -> L06021 then go to rnd4 1896 L06041: 1...1..1.. 0 -> s8 1897 L06042: 111...11.. 14 -> p 1898 L06043: .11...1.1. c -> a[x] 1899 L06044: ...1111.1. if c[xs] >= 1 1900 L06045: ....111.11 -> L06016 then go to rnd3 1901 L06046: .....111.. rnd1: p - 1 -> p 1902 L06047: ..1.1.11.. if p # 2 1903 L06050: ..1.1.1.11 -> L06052 then go to rnd2 1904 L06051: ...1.11111 -> L06027 go to rnof 1905 1906 L06052: 11.11.1.1. rnd2: a - 1 -> a[x] 1907 L06053: ..1..11.11 -> L06046 if no carry go to rnd1 1908 L06054: ...1..1.11 -> L06022 go to rnd5 1909 1910 L06055: 11.1111.1. rnd7: a - 1 -> a[xs] 1911 L06056: ...1.1..11 -> L06024 if no carry go to rnd6 1912 L06057: .1..1...1. a -> b[p] 1913 L06060: .....111.. p - 1 -> p 1914 L06061: 1.1111..1. 0 -> a[wp] 1915 L06062: .11...1.1. c -> a[x] 1916 L06063: 111..1.11. a + b -> a[ms] 1917 L06064: ..111.1.11 -> L06072 if no carry go to rnd8 1918 L06065: 1.11.1.11. shift right a[ms] 1919 L06066: 111111111. a + 1 -> a[s] 1920 L06067: 11111.1.1. a + 1 -> a[x] 1921 L06070: 1....1.1.. if s8 # 1 1922 L06071: ..111.1111 -> L06073 then go to rnd9 1923 L06072: ....1111.. rnd8: p + 1 -> p 1924 L06073: 1.11.1.11. rnd9: shift right a[ms] 1925 L06074: ....11.11. 0 -> b[ms] 1926 L06075: 11.1111.1. a - 1 -> a[xs] 1927 L06076: 1..1111.1. if a[xs] >= 1 1928 L06077: .1.....111 -> L06101 then go to rn10 1929 L06100: ...1.11111 -> L06027 go to rnof 1930 1931 L06101: 1111111.1. rn10: a + 1 -> a[xs] 1932 L06102: 11..1.111. a exchange b[w] 1933 L06103: 11111...1. a + 1 -> a[p] 1934 L06104: 11111...1. a + 1 -> a[p] 1935 L06105: .1...1.11. rn11: shift left a[ms] 1936 L06106: 11.1111.1. a - 1 -> a[xs] 1937 L06107: .1...1.111 -> L06105 if no carry go to rn11 1938 L06110: 1.1111..1. 0 -> a[wp] 1939 L06111: 11.111..1. a - 1 -> a[wp] 1940 L06112: 1.11.1.11. shift right a[ms] 1941 L06113: 11..1.111. a exchange b[w] 1942 L06114: 1....1.1.. if s8 # 1 1943 L06115: .1.1.1.111 -> L06125 then go to rnrt 1944 L06116: 111.1.1.1. a exchange c[x] 1945 L06117: ....1.1.1. 0 -> b[x] 1946 L06120: .11.111.1. if c[xs] = 0 1947 L06121: .1.1.1..11 -> L06124 then go to rtrn 1948 L06122: ..1.1.1.1. 0 - c -> c[x] 1949 L06123: .1.1111.1. c - 1 -> c[xs] 1950 L06124: 111.1.1.1. rtrn: a exchange c[x] 1951 L06125: .1.1.1.1.. rnrt: if s5 # 1 1952 L06126: 1111111.11 -> L06376 then go to ret3 1953 L06127: 1.......11 -> L06200 go to fst2 1954 1955 L06130: .......... no operation 1956 L06131: .......... no operation 1957 L06132: .......... no operation 1958 L06133: .......... no operation 1959 L06134: .......... no operation 1960 L06135: .......... no operation 1961 L06136: .......... no operation 1962 L06137: .......... no operation 1963 L06140: .......... no operation 1964 L06141: .......... no operation 1965 L06142: .......... no operation 1966 1967 L06143: 1.11.1..11 -> L06264 savezx: go to save 1968 1969 L06144: 1.1..1..11 -> L06244 sav2zx: go to sav2 1970 1971 L06145: .11...111. adr9z4: c -> a[w] 1972 L06146: ..11..111. 0 -> c[w] 1973 L06147: .1.11...1. c - 1 -> c[p] 1974 L06150: 1..111.... c -> data address 1975 L06151: 111.1.111. a exchange c[w] 1976 L06152: .11...111. c -> a[w] 1977 L06153: 11111.1111 -> L06373 go to svrt 1978 1979 L06154: .......... no operation 1980 L06155: .......... no operation 1981 L06156: .......... no operation 1982 L06157: .......... no operation 1983 L06160: .......... no operation 1984 L06161: .......... no operation 1985 1986 L06162: 1......111 -> L06201 consz4: go to cons 1987 1988 L06163: .111.11..1 -> L06166 piiiz4: jsb push 1989 L06164: ....11.1.. clear status 1990 L06165: ..1..1.... -> L01166 ***** select rom 1 1991 1992 L06166: .111.1.1.. push: if s7 # 1 1993 L06167: .1111..111 -> L06171 then go to pret 1994 L06170: .1..1.1... c -> stack 1995 L06171: ..11..111. pret: 0 -> c[w] 1996 L06172: ....11.... return 1997 1998 L06173: .......... no operation 1999 2000 L06174: 1.1.1..1.. lstxzj: 0 -> s10 2001 L06175: .11..1...1 -> L06144 jsb sav2zx 2002 L06176: .11..1.... -> L03177 ***** fst1: select rom 3 2003 2004 L06177: ...11..1.1 -> L06031 tdmszj: jsb rndx 2005 L06200: .11..1.... -> L03201 ***** fst2: select rom 3 2006 2007 L06201: .1....111. cons: shift left a[w] 2008 L06202: .1....111. shift left a[w] 2009 L06203: .111.11..1 -> L06166 jsb push 2010 L06204: 11.1111.1. a - 1 -> a[xs] 2011 L06205: 1....11111 -> L06207 if no carry go to con7 2012 L06206: .11111..11 -> L06174 go to lstxzj 2013 2014 L06207: 11.1111.1. con7: a - 1 -> a[xs] 2015 L06210: 1...11.111 -> L06215 if no carry go to con8 2016 L06211: ..1..11... load constant 2 2017 L06212: .1.1.11... load constant 5 2018 L06213: .1...11... load constant 4 2019 L06214: .111111.11 -> L06176 go to fst1 2020 2021 L06215: 11.1111.1. con8: a - 1 -> a[xs] 2022 L06216: 1..11..111 -> L06231 if no carry go to con9 2023 L06217: .1...11... load constant 4 2024 L06220: .1.1.11... load constant 5 2025 L06221: ..11.11... load constant 3 2026 L06222: .1.1.11... load constant 5 2027 L06223: 1..1.11... load constant 9 2028 L06224: ..1..11... load constant 2 2029 L06225: ..11.11... load constant 3 2030 L06226: .111.11... load constant 7 2031 L06227: .1.11.1.1. c - 1 -> c[x] 2032 L06230: .111111..1 -> L06176 jsb fst1 2033 2034 L06231: ..11.11... con9: load constant 3 2035 L06232: .111.11... load constant 7 2036 L06233: 1....11... load constant 8 2037 L06234: .1.1.11... load constant 5 2038 L06235: .1...11... load constant 4 2039 L06236: ...1.11... load constant 1 2040 L06237: ...1.11... load constant 1 2041 L06240: .111.11... load constant 7 2042 L06241: 1....11... load constant 8 2043 L06242: .1...11... load constant 4 2044 L06243: .111111.11 -> L06176 go to fst1 2045 2046 L06244: ......11.. sav2: 0 -> p 2047 L06245: .1....111. sav1: shift left a[w] 2048 L06246: ....1111.. p + 1 -> p 2049 L06247: 11..1.11.. if p # 12 2050 L06250: 1.1..1.111 -> L06245 then go to sav1 2051 L06251: 1.1111111. 0 -> a[s] 2052 L06252: 111.1.111. a exchange c[w] 2053 L06253: 1..111.... c -> data address 2054 L06254: ..1.1..1.. 0 -> s2 2055 L06255: 1.11111... data -> c 2056 L06256: 111.1.111. a exchange c[w] 2057 L06257: 1.111..1.. 0 -> s11 2058 L06260: ....1.111. 0 -> b[w] 2059 L06261: ...1.1.1.. if s1 # 1 2060 L06262: 11111.1111 -> L06373 then go to svrt 2061 L06263: .11..1.111 -> L06145 go to adr9z4 2062 2063 L06264: .1..1.111. save: a -> b[w] 2064 L06265: 111.1.111. a exchange c[w] 2065 L06266: ..11..111. 0 -> c[w] 2066 L06267: 1..111.... c -> data address 2067 L06270: ..1...111. b -> c[w] 2068 L06271: 111.1.111. a exchange c[w] 2069 L06272: 1.1111.... c -> data 2070 L06273: .11..1..11 -> L06144 go to sav2zx 2071 2072 L06274: ...111111. fact: if c[s] >= 1 2073 L06275: .....11111 -> L06007 then go to errr 2074 L06276: ...1111.1. if c[xs] >= 1 2075 L06277: .....11111 -> L06007 then go to errr 2076 L06300: ...11.1.1. fac0: if c[x] >= 1 2077 L06301: 11...1..11 -> L06304 then go to fac1 2078 L06302: .....111.. p - 1 -> p 2079 L06303: 11..1.1111 -> L06313 go to fact1 2080 L06304: .....111.. fac1: p - 1 -> p 2081 L06305: ..111.11.. if p # 3 2082 L06306: 11..1...11 -> L06310 then go to fac2 2083 L06307: .....1..11 -> L06004 go to oflw 2084 2085 L06310: .1.11.1.1. fac2: c - 1 -> c[x] 2086 L06311: 11.......1 -> L06300 jsb fac0 2087 L06312: .1...1.... -> L02313 ***** nrm20: select rom 2 2088 2089 L06313: ...111..1. fact1: if c[wp] >= 1 2090 L06314: .....11111 -> L06007 then go to errr 2091 L06315: 111.1.1.1. a exchange c[x] 2092 L06316: 1.11..11.. 11 -> p 2093 L06317: .11.1.1.1. if c[x] = 0 2094 L06320: 11.1.1.111 -> L06325 then go to fact2 2095 L06321: .1.11.1.1. c - 1 -> c[x] 2096 L06322: ...11.1.1. if c[x] >= 1 2097 L06323: .....1..11 -> L06004 then go to oflw 2098 L06324: .1....111. shift left a[w] 2099 L06325: 111.1.111. fact2: a exchange c[w] 2100 L06326: 1.111.111. 0 -> a[w] 2101 L06327: 11111...1. a + 1 -> a[p] 2102 L06330: ..1.1.111. 0 - c -> c[w] 2103 L06331: 11..1.1.11 -> L06312 if no carry go to nrm20 2104 L06332: 111.1.111. a exchange c[w] 2105 L06333: 1..1..111. shift right c[w] 2106 L06334: .11111111. c + 1 -> c[s] 2107 L06335: 11....11.. fact3: 12 -> p 2108 L06336: .1..11.11. a -> b[ms] 2109 L06337: 1111..111. fact4: a + c -> a[w] 2110 L06340: 11.1111111 -> L06337 if no carry go to fact4 2111 L06341: 11.1..111. a - c -> a[w] 2112 L06342: .1....111. shift left a[w] 2113 L06343: 1111..111. fact5: a + c -> a[w] 2114 L06344: 111...1111 -> L06343 if no carry go to fact5 2115 L06345: 111111111. a + 1 -> a[s] 2116 L06346: 11..1.111. a exchange b[w] 2117 L06347: 1111.11..1 -> L06366 jsb shft 2118 L06350: 1.11..11.. 11 -> p 2119 L06351: 1111.11..1 -> L06366 jsb shft 2120 L06352: ..1...111. b -> c[w] 2121 L06353: ....11..1. 0 -> b[wp] 2122 L06354: 1.1...111. shift right b[w] 2123 L06355: 11..1.111. a exchange b[w] 2124 L06356: 111..1.11. a + b -> a[ms] 2125 L06357: 11.111.111 -> L06335 if no carry go to fact3 2126 L06360: 111.1.111. a exchange c[w] 2127 L06361: 1...1.1.1. b exchange c[x] 2128 L06362: .1111.1.1. fact6: c + 1 -> c[x] 2129 L06363: 11..1.1..1 -> L06312 fact7: jsb nrm20 2130 L06364: 1...1..1.. tnx3: 0 -> s8 2131 L06365: .1...1.... -> L02366 ***** select rom 2 2132 2133 L06366: ........1. shft: if b[p] = 0 2134 L06367: 11111.1.11 -> L06372 then go to shfr 2135 L06370: 1.1..1..1. shift right b[wp] 2136 L06371: 11111.1.1. a + 1 -> a[x] 2137 L06372: ....11.... shfr: return 2138 2139 L06373: 1.1..1.1.. svrt: if s10 # 1 2140 L06374: 1111111.11 -> L06376 then go to ret3 2141 L06375: 1....1.... -> L04376 ***** ret4: select rom 4 2142 2143 L06376: .11..1.... -> L03377 ***** ret3: select rom 3 2144 2145 L06377: .......... no operation 2146 00145 adr9z4 1971 00207 con7 2014 00215 con8 2021 00231 con9 2034 00201 cons 2007 00162 consz4 1986 00001 err2z1 1860 00007 errr 1869 00300 fac0 2076 00304 fac1 2080 00310 fac2 2085 00274 fact 2072 00313 fact1 2089 00325 fact2 2099 00335 fact3 2107 00337 fact4 2109 00343 fact5 2113 00362 fact6 2128 00363 fact7 2129 00000 factz4 1858 00176 fst1 2002 00200 fst2 2005 00174 lstxzj 2000 00312 nrm20 2087 00004 oflw 1865 00163 piiiz4 1988 00171 pret 1995 00166 push 1992 00376 ret3 2143 00375 ret4 2141 00101 rn10 1931 00105 rn11 1935 00012 rnd0z3 1872 00046 rnd1 1901 00052 rnd2 1906 00016 rnd3 1877 00021 rnd4 1880 00022 rnd5 1881 00024 rnd6 1883 00055 rnd7 1910 00072 rnd8 1923 00073 rnd9 1924 00031 rndx 1888 00027 rnof 1886 00125 rnrt 1951 00124 rtrn 1950 00245 sav1 2047 00244 sav2 2046 00144 sav2zx 1969 00264 save 2063 00143 savezx 1967 00372 shfr 2137 00366 shft 2133 00373 svrt 2139 00002 tdmsz0 1862 00177 tdmszj 2004 00006 tenxzj 1868 00364 tnx3 2130 2148 2149 .rom @07 2150 2151 L07000: .....1.111 -> L07005 prfx: go to wt22 2152 L07001: 1.1...1.11 -> L07242 wt30: go to wt29 2153 L07002: .....1.111 -> L07005 fix1: go to wt22 2154 L07003: .....1.111 -> L07005 expn: go to wt22 2155 L07004: .....1.111 -> L07005 lnnn: go to wt22 2156 L07005: ....11.111 -> L07015 wt22: go to wt21 2157 L07006: .....1.111 -> L07005 invx: go to wt22 2158 L07007: ...1...111 -> L07021 wt18: go to wt17 2159 L07010: .....1.111 -> L07005 perc: go to wt22 2160 L07011: 1.1..11111 -> L07247 wt09: go to wt08 2161 L07012: .....1.111 -> L07005 rcal: go to wt22 2162 L07013: .....1.111 -> L07005 stor: go to wt22 2163 L07014: .....1.111 -> L07005 rold: go to wt22 2164 L07015: 1.1..1..11 -> L07244 wt21: go to wt20 2165 L07016: .....1.111 -> L07005 exc1: go to wt22 2166 L07017: 1..1.11... reg9: load constant 9 2167 L07020: 1..1..1111 -> L07223 go to rega 2168 L07021: 1.1..1.111 -> L07245 wt17: go to wt16 2169 L07022: ..11....11 -> L07060 dig6: go to reg6 2170 L07023: ...1111111 -> L07037 dig5: go to reg5 2171 L07024: .1...11... dig4: load constant 4 2172 L07025: .11111.111 -> L07175 go to reg1 2173 L07026: .....1.111 -> L07005 addd: go to wt22 2174 L07027: 1....11... reg8: load constant 8 2175 L07030: 1..1..1111 -> L07223 go to rega 2176 L07031: 1.1.1...11 -> L07250 wt06: go to wt05 2177 L07032: .1111.1.11 -> L07172 dig3: go to reg3 2178 L07033: .11111..11 -> L07174 dig2: go to reg2 2179 L07034: ...1.11... dig1: load constant 1 2180 L07035: .11111.111 -> L07175 go to reg1 2181 L07036: .....1.111 -> L07005 mult: go to wt22 2182 L07037: .1.1.11... reg5: load constant 5 2183 L07040: 1..1..1111 -> L07223 go to rega 2184 L07041: ..1..11111 -> L07047 wt11: go to wt10 2185 L07042: 1..1....11 -> L07220 sigp: go to chs3 2186 L07043: 11.1...111 -> L07321 dcpt: go to retn 2187 L07044: .....11... dig0: load constant 0 2188 L07045: .11111.111 -> L07175 go to reg1 2189 L07046: .....1.111 -> L07005 divd: go to wt22 2190 L07047: ....1..111 -> L07011 wt10: go to wt09 2191 L07050: .....1.111 -> L07005 tang: go to wt22 2192 L07051: ..1.11.111 -> L07055 dl06: go to dl05 2193 L07052: .....1.111 -> L07005 coss: go to wt22 2194 L07053: .....1.111 -> L07005 sinn: go to wt22 2195 L07054: .....1.111 -> L07005 tpol: go to wt22 2196 L07055: ..1.111111 -> L07057 dl05: go to dl04 2197 L07056: .....1.111 -> L07005 sqar: go to wt22 2198 L07057: ..11.11111 -> L07067 dl04: go to dl03 2199 L07060: .11..11... reg6: load constant 6 2200 L07061: 1..1..1111 -> L07223 go to rega 2201 L07062: ....111111 -> L07017 dig9: go to reg9 2202 L07063: ...1.11111 -> L07027 dig8: go to reg8 2203 L07064: .111.11... dig7: load constant 7 2204 L07065: .11111.111 -> L07175 go to reg1 2205 L07066: .....1.111 -> L07005 subt: go to wt22 2206 L07067: 111111.111 -> L07375 dl03: go to rtrn 2207 L07070: 1.111.111. clrx: 0 -> a[w] 2208 L07071: ....11.1.1 -> L07015 jsb wt21 2209 L07072: .111.1..11 -> L07164 eexx: go to eex1 2210 L07073: 1...111.11 -> L07216 chs1: go to chs2 2211 L07074: .111..1.11 -> L07162 clok: go to chs4 2212 L07075: .11..1.... -> L03076 ***** ent1: select rom 3 2213 2214 L07076: 1..1.1.1.. ent1z3: if s9 # 1 2215 L07077: ..1111.111 -> L07075 then go to ent1 2216 L07100: ....11.1.. init: clear status 2217 L07101: ...111111. if c[s] >= 1 2218 L07102: 1111111.11 -> L07376 then go to err2 2219 L07103: .1.11.1.1. c - 1 -> c[x] 2220 L07104: .1.11.1.1. c - 1 -> c[x] 2221 L07105: .11.111.1. if c[xs] = 0 2222 L07106: 1111111.11 -> L07376 then go to err2 2223 L07107: .1..1..111 -> L07111 go to int2 2224 L07110: 1..1...11. int1: shift right c[m] 2225 L07111: .1111.1.1. int2: c + 1 -> c[x] 2226 L07112: .1..1...11 -> L07110 if no carry go to int1 2227 L07113: 111.1.111. int3: a exchange c[w] 2228 L07114: 1.1.1.1... m -> c 2229 L07115: ...1.11... load constant 1 2230 L07116: ..11.11... load constant 3 2231 L07117: ...1...11. if a >= c[m] 2232 L07120: 1111111.11 -> L07376 then go to err2 2233 L07121: .11..11... load constant 6 2234 L07122: 1.1...11.. 10 -> p 2235 L07123: ...1....1. if a >= c[p] 2236 L07124: 1111111.11 -> L07376 then go to err2 2237 L07125: 1.....11.. 8 -> p 2238 L07126: 1.11.1..1. shift right a[wp] 2239 L07127: .111..11.. 7 -> p 2240 L07130: .11..11... load constant 6 2241 L07131: .111..11.. 7 -> p 2242 L07132: ...1....1. if a >= c[p] 2243 L07133: 1111111.11 -> L07376 then go to err2 2244 L07134: ..1.1.1... c exchange m 2245 L07135: .1.1..11.. 5 -> p 2246 L07136: 1.11.1..1. shift right a[wp] 2247 L07137: 1.11.1..1. shift right a[wp] 2248 L07140: 1.11.1..1. shift right a[wp] 2249 L07141: 1.11.1..1. shift right a[wp] 2250 L07142: 11..1.111. a exchange b[w] 2251 L07143: 11.111..1. a - 1 -> a[wp] 2252 L07144: 1.111.1.1. 0 -> a[x] 2253 L07145: 1.....11.. 8 -> p 2254 L07146: 11.11...1. a - 1 -> a[p] 2255 L07147: 1.11..11.. 11 -> p 2256 L07150: 11111...1. a + 1 -> a[p] 2257 L07151: 11111...1. a + 1 -> a[p] 2258 L07152: 11.111111. a - 1 -> a[s] 2259 L07153: 11..1.111. a exchange b[w] 2260 L07154: ....1..1.. key2: 0 -> s0 2261 L07155: ..1.1..1.1 -> L07051 jsb dl06 2262 L07156: ..1.1..1.1 -> L07051 jsb dl06 2263 L07157: .....1.1.. if s0 # 1 2264 L07160: 1...11..11 -> L07214 then go to key3 2265 L07161: 1.1..11.11 -> L07246 go to wt12 2266 2267 L07162: 1.1....1.. chs4: 1 -> s10 2268 L07163: 1.1..1..11 -> L07244 go to wt20 2269 2270 L07164: ......1.1. eex1: if b[x] = 0 2271 L07165: 1...1...11 -> L07210 then go to eex2 2272 L07166: ....1.1.1. 0 -> b[x] 2273 L07167: .....11111 -> L07007 go to wt18 2274 2275 L07170: .......... no operation 2276 L07171: .......... no operation 2277 2278 L07172: ..11.11... reg3: load constant 3 2279 L07173: 1..1..1111 -> L07223 go to rega 2280 2281 L07174: ..1..11... reg2: load constant 2 2282 L07175: 1..1..1111 -> L07223 reg1: go to rega 2283 2284 L07176: .11..1.... -> L03177 ***** fst1: select rom 3 2285 2286 L07177: .....1.1.. key1: if s0 # 1 2287 L07200: .......111 -> L07001 then go to wt30 2288 L07201: 1....1.1.. if s8 # 1 2289 L07202: .11.11..11 -> L07154 then go to key2 2290 L07203: 1...1.1... display off 2291 L07204: 1...1..1.. 0 -> s8 2292 L07205: 11....11.. 12 -> p 2293 L07206: ..11..111. 0 -> c[w] 2294 L07207: ..11.1.... keys -> rom address 2295 2296 L07210: 11..1.1.1. eex2: a exchange b[x] 2297 L07211: 11.11.1.1. a - 1 -> a[x] 2298 L07212: 11..1.1.1. a exchange b[x] 2299 L07213: 1.1..1.111 -> L07245 go to wt16 2300 2301 L07214: 1......1.. key3: 1 -> s8 2302 L07215: ..1....111 -> L07041 go to wt11 2303 2304 L07216: 1.1..1.1.. chs2: if s10 # 1 2305 L07217: .111..1.11 -> L07162 then go to chs4 2306 L07220: 1.1.1..1.. chs3: 0 -> s10 2307 L07221: 1..111.... c -> data address 2308 L07222: 1..1.11.11 -> L07226 go to chs5 2309 2310 L07223: 1..111.... rega: c -> data address 2311 L07224: 1.1..1.1.. if s10 # 1 2312 L07225: 1..11.1111 -> L07233 then go to regb 2313 L07226: 111.1.111. chs5: a exchange c[w] 2314 L07227: .11...111. c -> a[w] 2315 L07230: 1..1...11. shift right c[m] 2316 L07231: 1.1111.... c -> data 2317 L07232: 1.1..11.11 -> L07246 go to wt12 2318 2319 L07233: 1.11111... regb: data -> c 2320 L07234: 11....11.. 12 -> p 2321 L07235: .11.1...1. if c[p] = 0 2322 L07236: 1.1.....11 -> L07240 then go to regc 2323 L07237: ..11..111. 0 -> c[w] 2324 L07240: 111.1.111. regc: a exchange c[w] 2325 L07241: .1...1.11. shift left a[ms] 2326 L07242: ..1.11.1.1 -> L07055 wt29: jsb dl05 2327 L07243: ..1.1111.1 -> L07057 wt24: jsb dl04 2328 L07244: ..1.1111.1 -> L07057 wt20: jsb dl04 2329 L07245: ..1.1111.1 -> L07057 wt16: jsb dl04 2330 L07246: ..1.1111.1 -> L07057 wt12: jsb dl04 2331 L07247: ..11.111.1 -> L07067 wt08: jsb dl03 2332 L07250: 1.1.1.1... wt05: m -> c 2333 L07251: 1...1.1... display off 2334 L07252: ....1.1... display toggle 2335 L07253: 1.1..1.1.. if s10 # 1 2336 L07254: .111111111 -> L07177 then go to key1 2337 2338 L07255: ...1..11.. tim0: 1 -> p ; increment hundredths of seconds 2339 L07256: 111111..1. a + 1 -> a[wp] 2340 L07257: .111111111 -> L07177 if no carry go to key1 2341 2342 L07260: .11...11.. 6 -> p ; increment seconds 2343 L07261: 11111...1. a + 1 -> a[p] 2344 L07262: 1.1...1.11 -> L07242 if no carry go to wt29 2345 L07263: .111..11.. 7 -> p 2346 L07264: 11111...1. a + 1 -> a[p] 2347 L07265: ...1....1. if a >= c[p] 2348 L07266: 1.111...11 -> L07270 then go to tim1 2349 L07267: 1.1...1111 -> L07243 go to wt24 2350 2351 L07270: 1.1111..1. tim1: 0 -> a[wp] 2352 2353 L07271: 1..1..11.. 9 -> p ; increment minutes 2354 L07272: 11111...1. a + 1 -> a[p] 2355 L07273: ....11.111 -> L07015 if no carry go to wt21 2356 L07274: 1.1...11.. 10 -> p 2357 L07275: 11111...1. a + 1 -> a[p] 2358 L07276: ...1....1. if a >= c[p] 2359 L07277: 11.....111 -> L07301 then go to tim2 2360 L07300: 1.1..1.111 -> L07245 go to wt16 2361 2362 L07301: ..11.1..1. tim2: 0 -> c[wp] 2363 L07302: 1.1111..1. 0 -> a[wp] 2364 2365 L07303: 1.11..11.. 11 -> p ; increment hours 2366 L07304: 11111...1. a + 1 -> a[p] 2367 L07305: 11..1.1.11 -> L07312 if no carry go to tim3 2368 L07306: 1.111.111. 0 -> a[w] 2369 L07307: 11....11.. 12 -> p 2370 L07310: 11111...1. a + 1 -> a[p] 2371 L07311: 1.1..11111 -> L07247 if no carry go to wt08 2372 2373 L07312: ...1...11. tim3: if a >= c[m] 2374 L07313: 11..11.111 -> L07315 then go to tim4 2375 L07314: ....1..111 -> L07011 go to wt09 2376 2377 L07315: 1.111.111. tim4: 0 -> a[w] 2378 L07316: 1.11..11.. 11 -> p 2379 L07317: 11111...1. a + 1 -> a[p] 2380 L07320: ...11..111 -> L07031 if no carry go to wt06 2381 2382 L07321: 1.1.1.1... retn: m -> c 2383 L07322: ..11.1..1. 0 -> c[wp] 2384 L07323: ..1...11.. 2 -> p 2385 L07324: ......1.1. if b[x] = 0 2386 L07325: 11.11...11 -> L07330 then go to ret1 2387 L07326: .1...11... load constant 4 2388 L07327: 11.11..111 -> L07331 go to ret2 2389 2390 L07330: .11..11... ret1: load constant 6 2391 L07331: ..1.1.1... ret2: c exchange m 2392 L07332: ..11..111. 0 -> c[w] 2393 L07333: 11....11.. 12 -> p 2394 L07334: ....1.111. 0 -> b[w] 2395 L07335: 1..111.... ret3: c -> data address 2396 L07336: 1...1.111. b exchange c[w] 2397 L07337: 1.11111... data -> c 2398 L07340: ...11...1. if c[p] >= 1 2399 L07341: 111..1..11 -> L07344 then go to ret4 2400 L07342: 111.1.11.1 -> L07353 jsb fixx 2401 L07343: 1.1111.... c -> data 2402 L07344: 1...1.111. ret4: b exchange c[w] 2403 L07345: .1111...1. c + 1 -> c[p] 2404 L07346: 11.111.111 -> L07335 if no carry go to ret3 2405 L07347: 1.11...11. shift right a[m] 2406 L07350: 111.1.111. a exchange c[w] 2407 L07351: 111.1.11.1 -> L07353 jsb fixx 2408 L07352: .111111.11 -> L07176 go to fst1 2409 2410 L07353: .11.11..1. fixx: if c[wp] = 0 2411 L07354: 111111.111 -> L07375 then go to rtrn 2412 L07355: 111.1.111. a exchange c[w] 2413 L07356: .1....111. shift left a[w] 2414 L07357: 1.....11.. 8 -> p 2415 L07360: .1...1..1. shift left a[wp] 2416 L07361: .11...11.. 6 -> p 2417 L07362: .1...1..1. shift left a[wp] 2418 L07363: .1...1..1. shift left a[wp] 2419 L07364: .1...1..1. shift left a[wp] 2420 L07365: 11....11.. 12 -> p 2421 L07366: 11111.1.1. a + 1 -> a[x] 2422 L07367: 1..11...1. fix2: if a[p] >= 1 2423 L07370: 111111..11 -> L07374 then go to fxrt 2424 L07371: 11.11.1.1. a - 1 -> a[x] 2425 L07372: .1.....11. shift left a[m] 2426 L07373: 1111.11111 -> L07367 go to fix2 2427 L07374: 111.1.111. fxrt: a exchange c[w] 2428 L07375: ....11.... rtrn: return 2429 2430 L07376: ..11..111. err2: 0 -> c[w] 2431 L07377: .1..1.11.1 -> L07113 jsb int3 2432 00026 addd 2173 00073 chs1 2210 00216 chs2 2304 00220 chs3 2306 00162 chs4 2267 00226 chs5 2313 00074 clok 2211 00070 clrx 2207 00052 coss 2193 00043 dcpt 2186 00044 dig0 2187 00034 dig1 2179 00033 dig2 2178 00032 dig3 2177 00024 dig4 2171 00023 dig5 2170 00022 dig6 2169 00064 dig7 2203 00063 dig8 2202 00062 dig9 2201 00046 divd 2189 00067 dl03 2206 00057 dl04 2198 00055 dl05 2196 00051 dl06 2192 00164 eex1 2270 00210 eex2 2296 00072 eexx 2209 00075 ent1 2212 00076 ent1z3 2214 00376 err2 2430 00016 exc1 2165 00003 expn 2154 00002 fix1 2153 00367 fix2 2422 00353 fixx 2410 00176 fst1 2284 00374 fxrt 2427 00100 init 2216 00110 int1 2224 00111 int2 2225 00113 int3 2227 00006 invx 2157 00177 key1 2286 00154 key2 2260 00214 key3 2301 00004 lnnn 2155 00036 mult 2181 00010 perc 2159 00000 prfx 2151 00012 rcal 2161 00175 reg1 2282 00174 reg2 2281 00172 reg3 2278 00037 reg5 2182 00060 reg6 2199 00027 reg8 2174 00017 reg9 2166 00223 rega 2310 00233 regb 2319 00240 regc 2324 00330 ret1 2390 00331 ret2 2391 00335 ret3 2395 00344 ret4 2402 00321 retn 2382 00014 rold 2163 00375 rtrn 2428 00042 sigp 2185 00053 sinn 2194 00056 sqar 2197 00013 stor 2162 00066 subt 2205 00050 tang 2191 00255 tim0 2338 00270 tim1 2351 00301 tim2 2362 00312 tim3 2373 00315 tim4 2377 00054 tpol 2195 00250 wt05 2332 00031 wt06 2176 00247 wt08 2331 00011 wt09 2160 00047 wt10 2190 00041 wt11 2184 00246 wt12 2330 00245 wt16 2329 00021 wt17 2168 00007 wt18 2158 00244 wt20 2328 00015 wt21 2164 00005 wt22 2156 00243 wt24 2327 00242 wt29 2326 00001 wt30 2152 0 errors, 0 warnings