512 50f747 error report 513 73s2 digit layout 514 50f744 digit layout 515 50f740 page layout 516 50f742 page layout 517 50f2047 page layout 518 50f2046 plant orders in reserved store 519 50f928 differential equations 520 50f2045 input binary tape 521 50f1538 matrix division 522 50f1073 input float number 523 50f769 float square root 524 50f864 float exp 525 50f834 float log 526 50f799 float sin 527 50f798 float cos 528 50f1536 report ?? 529 50f894 differential equations 530 50f2044 magnetic tape 531 50f2043 magnetic tape 532 72s1408 print as orders 533 73s2 print in user set layout 534 73s1404 print in user set layout 535 72s10 print floating binary 536 73s5 print float as 4 digit integer 537 73s1 print float as 5 digit float 538 72s4 print float as 6 digit integer 539 73s7 print float as 7 digit float 540 73s2037 print float as 8 digit integer 541 50f555 print float as 9 digit float 542 50f1074 input fixed point number 543 50f772 fixed square root 544 50f869 fixed exp 545 50f837 fixed log 546 33f1434 fixed sin 547 50f807 fixed cos 548 50f1537 report ?? 549 50f892 differential equations 550 50f2042 magnetic tape 551 50f2041 magnetic tape 552 50r1124 end interlude, go to 1676 # printing routines 553 72s2 print 11 digits fixed 554 72s16 print 2^39 M as integer 555 83s0 s=2 for 11 digits fixed, s=16 for integer 556 79t7 save t 557 70t714 set t714??? 558 49f10 save M and L 559 19f8 to be printed in 8 560 79t6 561 80t122 get page layout 562 50f1417 jump 563 73t1 come back to here if t not 0 or 1 564 75tr4 565 70t0 566 79t124 567 80t123 568 79t122 569 80t124 570 72t1 571 75r7 572 107f2 107f8 output cr lf for page layout 574 77t1 575 107f8 another lf unless t=0 576 107f31 output figure shift 577 80t125 578 79t124 579 9f4 come back to here if t=0 or 1, clear sign 580 10s1512 1528 -0.72 6 25 11 925 digit layout 581 19f14 583 54r6 sign determines whether number to be signed 584 10f8 number to be printed 584 55r2 test sign 585 2f1 586 71s1 587 79s4 store sign information in 4, -1 if <0, -2 if >=0 588 40f14 589 34f1000 10 * 2^(-40) 590 48f14 591 66t40 t=3 number style 6 592 89t16 not sure why t stored here 593 46f20 594 34f14 595 48f14 596 66s41 s = 2 X number of digits 597 47f1498 1/4 fixed 598 35s998 accessing powers of 10, initially 10^12 599 4t967 600 50r1 jump to 728 601 33f1442 602 39f8 603 20f10 604 68f1048 52r24 71t1 7f1 608 77s1024 50r5 35f1424 72t3 612 73s10 50f608 77s2038 50r10 616 34f1424 73t3 72s10 50f614 620 33f8 7s1 34f1426 72s4 624 73t1 6s1 32f8 55f620 628 32f1442 79t16 33f1434 6f1 632 19f8 come here from 734, replace number 633 46f10 634 34f14 635 48f14 come here printing char 636 52r21 jump 657, testing >< power of 10 ?? 637 66t41 t=12 number of digits? 638 46f5 639 34f8 640 48f8 641 66s40 determine the digit ?? 642 72s5 643 10f8 644 32f1430 -1 645 38f8 646 76s1 suppress zero if non-significant ?? 647 4f5 5 may contain 6 and goes to print char 648 50r1 649 4f4 4 contains sign information -1 if <0 -2 if >=0 650 50r3 651 2f7 652 107f23 print minus or space 653 9f4 clear sign and suppress leading zeros 654 4s951 655 107f30 print char, s has to contain digit ?? 656 75t638 657 46f10 658 34f14 659 48f14 660 66t40 661 110t951 662 66s9 663 66s6 664 50s665 jump depending on s, sometime to 703 665 79s5 666 50f633 667 50f1420 print char from t, jump to 633 668 50f1664 669 2f16 670 72t3 671 79t5 672 50f633 jump to 633 673 31f1422 38f16 50f656 676 10f10 68t8 79t16 2f4 680 107f15 80t16 77t1024 50r4 684 31f1422 38f16 50r3 107f23 688 81t16 70s6 46t0 47f1434 692 33s998 35s998 70s24 50f733 696 10f10 66s2 4s537 107f0 700 80t10 70s8 50f690 703 80t6 704 50r1148 jump to 1852 then to 707 with s from 122 layout 705 76s2 706 50t0 t set to 714 for exit 707 10f14 708 32f1430 -1 fixed 709 33f16 710 33f1442 1/10 fixed 711 56t0 exit loop to 714 on overflow 712 107f30 print space 713 50f710 loop to 710 714 10f10 restore M 715 47f12 restore L 716 80t7 restore t 717 60f0 exit 718 20f8 68t8 720 6t2009 33s998 50f1673 42f8 724 57f630 31f1000 33f1430 50f632 728 31s998 come here from 600 -10^n 729 42f8 +|number| 730 47f1434 1/2 fixed 731 35s998 divide 10^n 732 70s6 used to supress subsequent print of sign 733 79s5 734 50f632 back to 632 where M put back to 8 735 10f8 736 66t2 66t7 46t0 50f721 # set page layout 740 7f39 741 45f1432 742 49f122 743 60f0 # set digit layout 744 83s0 39s120 60f0 # error report entry 747 9f122 748 79t7 56r2 2f1 70t754 752 70s12 50f558 107f25 71s1 756 78s1 100s0 70s14 70t764 760 50f558 761 101f0 report stop 762 2f7 2f2047 764 80s1 26s0 70s2 73t1 768 50f559 # float square root 769 68s8 73s256 53r2 # fixed square root 772 90f25 39f8 55f512 7f1 776 32f1434 19f10 10f8 35f10 780 33f10 7f1 54r3 32f10 784 57f777 26s1022 66s10 54r5 788 10f10 34f1436 72s1 50r2 792 10f10 76s456 96s1665 77s456 796 6s1537 60f0 # floating cos 798 12f1534 # floating sin 799 15f1534 800 19f12 68s8 6s2047 33f1434 804 76s1024 2f3 2f3 # fixed cos 807 70s0 808 56r1 39f8 10f1434 43f8 812 39f8 34f8 6f1 39f10 816 79s6 71s10 10f1444 34f10 820 32s1456 74s819 4f6 50r1 824 34f8 6f1 60f0 96f1 828 14f12 60f0 34f8 96f2 832 60f0 2f0 # floating log 834 68s8 72s1024 836 53r2 # fixed log 837 90s512 79s6 7f1 840 32f1438 39f8 33f1436 35f8 844 39f8 34f8 39f10 71s8 848 10f1478 34f10 32s1488 74s849 852 24f8 39f8 80s6 82s6 856 46s2047 66s31 34f1532 36f8 860 81s6 77s512 96f7 60f0 # floating exp 864 68s8 77s1024 6s0 79s6 868 2f1 # fixed exp 869 71s13 79t7 66t2 872 33f1430 57r1 7f2 39f8 876 10f1456 34f8 32s1472 74s877 880 2t0 34t1470 77s1 50f716 884 96f2 81s8 76s1024 50f716 888 19f8 14f8 72s1 50f886 #differential equations 892 19f12 893 72t1024 894 79t6 895 30s0 896 19f8 30s4 19f10 30s2 900 44s2 77t1024 50f951 80t3 904 77t5 13f10 13f10 14t1491 908 18f8 8s0 13f8 14t1440 912 12f10 17t1492 8s4 72s6 916 71t2 78t6 82t6 77t1 920 50f1678 80t3 72t2 77t5 924 71t2 79t3 77t1 60f2046 # differential equations 928 71s1 79s3 60f0 80t3 932 77t5 33f10 33f10 34t1499 936 4f13 7f2027 38f8 8s0 940 33f8 4f13 6f0 19f8 944 10f10 33f8 7f1 33f8 948 37t1500 6f1 50f914 lookup table, bit 6=1 for figure, bits 2, 3, 4, 5 give value 951 81t101 e8865 11101 00010 00011 00101 B 952 38r26 5301a 01010 01100 00000 11010 f 953 51t72 d9848 11011 00110 00010 01000 \r 954 8f180 00000 10000 00101 10100 0 955 16s179 10001 00000 00101 10011 r 956 120f140 00111 10000 00100 01100 7 957 40f502 00010 10000 01111 10110 2 958 50r359 01011 00100 01011 00111 s a=decode t=0? 959 64t1003 11100 00000 11111 01011 \n 960 8r1230 01000 10001 00110 01110 8 961 88f3 00101 10000 00000 00011 5 962 115s0 10111 00110 00000 00000 / 963 24r0 01001 10000 00000 00000 9 a=decode t=5? 964 35s7 10010 00110 00000 00111 ( 965 0s0 10000 00000 00000 00000 = 966 19t0 11001 00110 00000 00000 10^ 967 86r0 01101 01100 00000 00000 p 968 72f117 00100 10000 00011 10101 4 969 56f122 00011 10000 00011 11010 3 970 3t127 11000 00110 00011 11111 2^ 971 104f134 00110 10000 00100 00110 6 972 64r0 01100 00000 00000 00000 t 973 102r0 01110 01100 00000 00000 n 974 96s0 10110 00000 00000 00000 - 975 24f43 00001 10000 00001 01011 1 976 118r43 01111 01100 00001 01011 * 977 48s43 10011 00000 00001 01011 ) 978 32t43 11010 00000 00001 01011 letter shift 979 67s17 10100 00110 00000 10001 . 980 80s49 10101 00000 00001 10001 + 981 51t63 11011 00110 00001 11111 ' ' 982 96t12 11110 00000 00000 01100 fig shift 983 40f12 00010 10000 00000 01100 984 70f12 00100 01100 00000 01100 985 43f9 00010 10110 00000 01001 986 71f8 00100 01110 00000 01000 p read? set t to route 987 40f129 00010 10000 00100 00001 988 38f12 00010 01100 00000 01100 989 69f121 00100 01010 00011 11001 990 49f156 00011 00010 00100 11100 991 55f1423 00011 01111 01100 01111 992 55f0 00011 01110 00000 00000 993 58f16 00011 10100 00000 10000 994 57f6 00011 10010 00000 00110 995 57f125 00011 10010 00011 11101 996 108r15 01110 11000 00000 01111 997 10r14 01000 10100 00000 01110 998 10r1423 01000 10101 01100 01111 999 10r156 01000 10100 00100 11100 powers of 10 1000 0f0 0f5 0f0 0f50 1004 0f0 0f500 0f0 2f904 1008 0f0 24f848 0f0 116r288 1012 0f4 9t832 0f47 94s128 1016 0f476 44t1280 2f672 62r512 1020 23f579 110s1024 104r1701 81f0 ASSEMBER START 1024 50f1067 jump to assembler input 1025 70s1 trace entry ? 1026 78s24 increment a(24), how is it set, cleared by assembler ? 1027 83s1 subtract r on entry 1028 76s1 1029 60f2047 s=0 1030 77s2047 1031 50f1025 jump back if s = 2047 1032 80s23 1033 83s1 1034 77s1 1035 50f1050 jump if s > 0 1036 80s22 1037 83s24 1038 77s1 1039 50f1050 jump if s > 0 1040 70s1 1041 78s117 1042 89s23 1043 76s100 1044 50f1063 jump if s < 100 1045 70s1 1046 78s116 1047 89s22 1048 71s100 1049 50f1041 come here from 1039 if s > 0 1050 70s2 1051 82s25 1052 77s90 if s = 90, reset to 0 1053 70s0 1054 79s25 1055 48f8 save L 1056 47f22 load trace info 1057 48s26 preserve trace entry, s <= 89 1058 47f8 restore L 1059 9f116 1060 9f22 1061 80s24 1062 79s22 1063 80s1 1064 79s23 1065 79s24 1066 60f2047 assember input starts here 1067 106f37 1068 46f2 1069 19f18 1070 71s48 1071 79s20 1072 50f1415 # entry for input floating point number 1073 2f1 # entry for input fixed point number 1074 71s0 1075 79t6 1076 89s6 1077 2f1448 1078 2f11 1079 70s1 1080 79s7 1081 69s17 jump to here from several places 1082 70t2 1083 10f1430 1084 49f8 1085 48f12 1086 89s20 1087 110s951 1088 66s5 1089 79s14 1090 54f1139 to 1139 on digit, s contains value, also in 14 # constructing a decimal number 1091 10f8 multiplies N(8) by 10 and adds s 1092 33f1680 subtract -1 1093 6f2 multiply by 4 1094 38f8 1095 46s0 1096 32f8 1097 33f1680 subtract -1 1098 38f8 set N(8) to 10*N(8) + s, except for first digit 1099 71s1 1100 76t1 1101 78s11 a(11) contains count of digits ? 1102 69s17 reading a char in number, t=9: label number 1103 77s31 skip erase t=7: parametric address ? 1104 50f1102 skip erase 1105 77s30 ignore single space 1106 69s17 1107 77s31 skip erase 1108 50f1106 skip erase 1109 110s951 decode char 1110 66s5 1111 55f1091 jump back to 1091, a digit has been read 1112 79t16 a non-digit has been read, save t=context? 1113 79s17 save decoded terminator in 17 1114 80s9 set s to number read? 1115 4t972 jump depending on context 1116 50f1160 major jump a number has been read, in N(8) decode table for terminator in M 1117 102f0 wait 1118 50f1081 jump back to 1081 1119 73s12 how do we get here 1120 89s6 1121 50f1081 jump back to 1081 1122 69s17 1123 107s0 punch ? 1124 76s9 1125 76s8 1126 50f1122 conditional jump back to 1122 1127 50f1081 jump back to 1081 1128 110f19 how do we get to here 1129 6f19 1130 54f1081 jump back to 1081 1131 110f833 how do we get to here 1132 19f12 1133 50f1268 major jump forward 1134 106s2031 change input/output 1135 50f1081 jump back to 1081 1136 2f1 how do we get to here 1137 70t0 1138 50f1102 jump back to 1102 something involving digits 1139 110s973 jump to here, read a digit, binary in s 1140 76s27 1141 66t9 1142 50t1079 1143 71s1 1144 50r9 jump to 1153 1145 71s1 1146 2f2046 set t depending on multiple entries 1147 2f1 set t depending on multiple entries 1148 2f2 set t depending on multiple entries 1149 2f1 set t depending on multiple entries 1150 2f1 set t depending on multiple entries 1151 2f1 set t depending on multiple entries 1152 70t3 set t depending on multiple entries t=5: just read p or ??? t=9: read ( reading label number?? 1153 89s7 store translated char p? 1154 10f1498 1/4 1155 4t958 reference to char table 1156 7f5 1157 32f1430 add -1 fixed, flag? 1158 19f8 1159 50f1102 jump to 1102 1160 66t3 1161 50t1162 1162 72s128 1163 55f1174 1164 72s256 1165 89s13 1166 76s512 sign of s maybe switched at 1205 1167 80t16 s and t determine if error 1168 80s17 1169 110t1504 1170 6s2036 1171 54f512 report on certain errors 1172 4s972 1173 51f1137 normal exit from loop 1174 10f8 1175 19f12 1176 50f1167 loop back to 1167 1177 110s18 parameter table 1178 19f10 1179 54r21 conditional jump to 1199 if set 1180 66s9 parameter unset M=all 1 1181 89s12 1182 73s514 1183 4f9 1184 89s18 1185 80t19 1186 72s2 1187 74sr7 conditional jump to 1194 1188 78s18 1188 100t0 1190 4f9 1191 79t18 1192 50r7 jump to 1199 1193 19f10 1194 4f10 1195 100f0 1196 74s1193 loop back to 1193 1197 4f10 1198 88t0 1199 19f10 1200 80s10 1201 79s9 1202 70t6 t=6 setting parameter ? t=7 parameter value required ? 1203 110f7 t=5 parameter, = read 1204 54r2 conditional jump to 1206 1205 81s9 under some condition change sign of s 1206 2t7 1207 78s0 add s to a(0) or a(7) 1208 50f1167 jump back to 1167 1209 73s100 how do we get here ? 1210 31f1000 5 2**-39 1211 19s118 1212 74s1211 loop setting up to 118, marking parameters ? 1213 80s17 1214 73s27 1215 76s1 since this can skip 0f0 MUST be overwritten 1216 50f1079 1217 0f0 1218 80s13 1219 79s0 1220 80s12 1221 79s9 1222 70t31 1223 110s18 come from 1116 zero with parameter number in s? 1224 9f12 1225 54t1208 goes to 1217 and causes report 1226 71s1 if continues sets parameter ? 1227 78s18 1228 19f10 1229 66s9 1230 73s512 1231 50f1669 1232 80t0 1233 4f10 1234 88t0 1235 79t10 1236 74s1232 1237 83t0 1238 79t12 1239 80t0 come from 1225 1240 4f9 1241 89s18 9 contains parameter ? set flag ? 1242 4f9 1243 79t18 set parameter value ? 1244 10f12 1245 52f1213 1246 120f1 optional stop 1247 52f1213 1248 46f3 1249 19f122 1250 19f124 1251 70r5 1252 50r4 1253 50f1213 1254 2f10 1255 2f2039 1256 80s9 1257 50f765 1258 46f1024 1259 6f9 1260 38f12 1261 50f1149 1262 81s9 1263 77s2044 1264 50f1080 1265 90sr450 scale, jump to 1315 1266 80s20 1267 79s13 1268 70t1 come here from 1308 1269 78t19 1270 73t1 1271 79t0 1272 100t0 1273 19f10 1274 110f13 1275 19f12 1276 99t0 place order in free store ??? 1277 10f1428 0f0 127t2047 1278 29f10 mask odd half of 10 and 12 1279 29f12 1280 70s14 1281 10f10 1282 33f12 1284 52r3 1284 120f1 optional stop ? 1285 53f1401 1286 80s17 1287 73s5 1288 77s20 1289 50f1079 1290 76s12 1291 50f1078 1292 50f1147 jump to 1147 1293 76t6 1294 50r24 1295 110f12 1296 54r5 1297 80s10 1298 83s13 1299 77s1 1300 0f0 another 0f0 ? 1301 80s7 1302 77s2 1303 0f0 and another, to trigger report ? 1304 80s14 1305 77s12 1306 50f1218 1307 76s10 1308 50f1268 jump to 1268 1309 110f13 1310 55r4 1311 80s18 1312 77s1 1313 0f0 1314 2f7 1315 80s6 1316 83s1 1317 60s0 start program ??? 1318 80s10 1319 80t11 1320 82t11 10f12 7f1 32f1434 1324 72s40 79s10 90f29 78s10 1328 76t1 50r26 76t2026 50r4 1332 34t1022 71t24 50f1324 76t1024 1336 50r12 49f10 35f1022 57r6 1340 10f10 47f12 7f1 72s1 1344 35f1022 72t24 73s40 50f1328 1348 76t24 2t2024 34f1022 76t24 1352 2t2024 73t24 50f1324 39f8 1356 80t14 77t22 31f8 39f8 1360 110f6 55r13 10f8 70t39 1364 76s1024 76s1 70t0 2t0 1368 73s0 6s0 76t10 2f2 1372 70s16 50r5 10f8 96s0 1376 80t6 70s0 39f12 4f7 1380 50r5 2f2 2f2 2f2 1384 39f118 50f1213 110f19 6f19 1388 66t1 72t2 78t19 73t2 1392 79t0 10f12 8t0 19f10 1396 50f1282 70t2 78t20 73t2 1400 50f1393 46f3 19f122 19f124 1404 26t0 79s1 70s2 70r3 1408 50f559 70t1287 10f12 47f10 1412 80s1 73t1 50f558 89s6 1416 50f1079 74t563 50f579 9f4 1420 107t28 50f633 # constants 1422 26f0 0f0 1424 122r0 0f0 1000/1024 1426 32r0 0f0 10/16 1428 0f0 127t2047 1430 0s0 0f0 -1 1432 0f0 0f100 100 2^-39 1434 0r0 0f0 1/2 1436 53r39 51s509 1/sqrt(2) 1438 90f1043 25t1279 1/(2*sqrt(2)) 1440 64s0 0f130 -3 float 1442 25f1228 25t1229 1/10 1444 127t2019 39r122 0f671 127t1391 1448 123t421 92t1114 40f1643 120s33 1452 90s1296 14t474 73r126 42t225 1456 0f59 20f1520 0f413 122r280 1460 1f427 75r86 6f88 111t23 1464 24f356 5f1710 72f1068 17f1350 1468 17r88 34f1756 17r88 34f1755 1472 111r277 111r1539 53f733 65t349 1476 87f1992 5t979 0f955 27t197 1480 0f1169 94r698 0f1638 79r798 1484 1f682 85s678 4f0 0f0 1488 42r1365 42r1406 1/6 float 1490 0r0 0f128 1/2 float 1492 21r1968 25t1151 1494 90r1043 25t1153 1496 21f682 85s683 1/12 1498 64f0 0f0 1/4 1500 37f1004 102f770 1502 90r1043 25t1278 bit patterns or numbers used to control printing ??? 1504 4f208 00000 01000 00110 10000 error 1505 5f208 00000 01010 00110 10000 1506 109t464 11110 11010 01110 10000 1507 4f528 00000 01000 10000 10000 1508 4f656 00000 01000 10100 10000 1509 16f0 00001 00000 00000 00000 1510 76r528 01100 11000 10000 10000 1511 68r16 01100 01000 00000 10000 1512 104t1414 11110 10001 01100 00110 1513 45r353 01010 11010 01011 00001 1514 65t1559 11100 00011 10000 10111 1515 125r540 01111 11010 10000 11100 1516 109t1652 11110 11011 10011 10100 1517 125s123 10111 11010 00011 11011 1518 114t1908 11111 00101 11011 10100 1519 122t1820 11111 10101 11000 11100 1520 60t265 11011 11000 01000 01001 1521 81f474 00101 00010 01110 11010 1522 55t1004 11011 01110 11111 01100 1523 21f682 00001 01010 10101 01010 1524 122s1769 10111 10101 10111 01001 1525 66r2005 01100 00101 11110 10101 1526 85r45 01101 01010 00001 01101 1527 74s1034 10100 10101 00000 01010 1528 70s163 10100 01100 00101 00011 1529 109f1988 00110 11011 11110 00100 1530 125s873 10111 11010 11011 01001 1531 124r1852 01111 11001 11001 11100 1532 49r912 127s1001 loge2 1534 73r126 42t385 pi/2 # used to force report on 59f16 and 59f36 and as mask in mag tape 1536 0f2047 1537 127t2046 # matrix division 1538 79s5 79t4 1540 79t20 19f6 19f14 19f16 1544 4f1 100f0 98f6 66t6 1548 66t2 70s2 2t0 79s15 1552 54r3 79s14 80s6 79s16 1556 55r3 80s7 79s14 80s0 1560 80t7 79t7 9f8 9f12 1564 21f8 22s0 55r4 30s0 1568 47f12 49f8 10f16 38f12 1572 82s17 75t1564 80s4 81t6 1576 75r8 30s0 4f10 8s0 1580 15f8 56f1714 8s0 82s14 1584 74r2041 80s5 81t7 10f6 1588 55r10 50r7 30s0 4f11 1592 8s0 15f8 56f1714 8s0 1596 82s15 74r2041 31f16 38f12 1600 52r48 80s13 83s11 77s1 1604 80s13 82s5 30s0 19f8 1608 80s13 82s5 10f6 55r11 1612 81t7 50r7 30s0 5f13 1616 44s0 17f8 56f1714 8s0 1620 82s15 74t1614 80s4 82s12 1624 81t6 75r8 30s0 5f12 1628 44s0 17f8 56f1714 8s0 1632 82s14 74t1626 75t1598 81s17 1636 78s11 30s0 19f8 81s16 1640 78s10 86s20 50r12 81t16 1644 78t12 71t1 83t6 50r2034 1648 10f16 38f4 80s15 78s5 1652 80t7 75t1561 31f16 38f4 1656 49f10 81s15 78s11 79s5 1660 83s0 77s1 50f1635 60f2 1664 4f4 50r3 2f7 107f23 1668 50f1419 74s1232 70t1 78t18 1672 50f1239 56f1688 39f8 50f1684 # entry for interlude 59f40 1676 79t6 50r5 1678 80t6 50f895 diff eqn! 1680 0s0 0f0 1682 79s19 50f1079 re-enter assembler 1684 10f8 47f1434 35s998 57f732 1688 10f10 19f8 70s7 50f579 jump into print? # magnetic tape subroutines 1692 79t5 entry for 59f18, words -> a(5) 1693 70t1958 return address put in a(127) 1694 2f2044 exit address for 59f18 1695 2f1958 entry for 59f19 1696 70s1822 entry for 59f38 1697 79s15 jump later 59f18:1728, 59f19:1732, 59f38:1822 1698 4f1 1699 100f0 load pseudo order following 59 1700 98f16 preserve pseudo order in 16 1701 32f1434 N(1434)=1/2 1702 66s2 modifier to s 1703 57r2 skip unless r (01) 1704 70s4 set s= 4 for read 1705 79s6 decoded modifier bits to a(6) a(6)= write: 0, checked write: 1, position: 3, read: 4 1706 98f14 sign of N(14) used for error exit, a(14) overwritten 1707 66s4 ignore 4 bits 1708 66s3 set s = tape number 1709 79s21 tape number to a(21) 1710 4f15 jump depending on 59fx 1711 50f0 59f18:1728, 59f19:1732, 59f38:1822 come here from 1869, exit from 59f19 1712 10f8 load current block label 1713 80t8 60f1 return ignoring pseudo order # entry for read block on assembly 1715 70s4 1716 79s6 a(6)=4 for load library, read 1717 89s14 function part 14 = 4 ?? 1718 70s1 1719 79s21 set tape number 1 for library 1720 80s19 p1 ? 1721 79s0 set as if entered with s = p1 1722 80s9 block number in 9, presumably set in assembler 1723 79s16 overwrite block num from in pseudo order in 16 1724 70t2034 later stored in a(127) for jump 1725 76s200 1726 50f1728 1727 127t2047 error if requested block >=200 come here from 1710 for 59f18 (t=1958) or library 1728 110f1537 59f18 load 127t2046 1729 62f0 0 contains s on entry, make place even 1730 98f0 makes initial location even 1731 2f3 59f38, dump/undump to here 1732 70s1867 59f19 to here 1733 79s15 set a(15) 1867 for 59f19, 1870 for 18, 38 or assembly 1734 79t127 a(127) exit address at 1807 59f18: 1958, library: 2034, dump: 2032, undump: 1958 ? come here from 1957 1735 110f1434 load 1000... clears L, block errors 1736 49f10 block error marker in 10, clear 12 for checksum 1737 9f22 clear block error pattern 1738 80t16 requested block number 1739 79t17 set starting block number to a(17) 1740 4f0 get start of r/w in free store ie s on entry 1741 70t2039 t=start-9, ( 9 allows for block data? ) 1742 79t14 a(14) added to address of 117 118 order 1743 110f5 number of 1/2 registers to transfer 2 copies come here from 1795 or 1951 from 1962 obeying loading N(4) in 1961 1744 62f1536 mask with N(1536)=0f2047 127f2046 come here from 1788, unsuccessful read, uses fn part of 4 for count of tries of read and a(4) for number half registers to transfer 1745 98f4 see above for use of 4 come here from 1910 when sign bit of N(2) is 0, tape stopped ? 1746 10f16 pseudo order 1747 62f1536 remove function part 1748 98f16 function part used as count of tries of block 1749 4f21 add tape unit number 1750 116f1024 select tape unit 1751 70t0 set t for error exit ? or ??? 1752 119f9 only 119 order, puts block label into 8 and M=0 1753 52r5 M=0 if got blockmark, jump out 1754 10f1422 N(1422)=26*2^-8 ~ 0.1 1755 32f16 add to count of tries 1756 57r2040 back to 1748, keep trying 1757 50f512 error 10, faulty block labels? 1758 31f8 load block label with sign bit 1 1759 54r2043 N(8) not a valid block label, try again 1760 4f15 here when got a valid block label, M<0 1761 50f0 jump 59f19: 1867, 59f18, 38, library: 1870 # create slave, data in 126 1762 4f1 entry for 59f39 1763 100f0 load pseudo order 1764 98f126 a(126) = num blocks to move 1765 66s10 1766 89s126 s mod 512 -> 0, f/b, 000, tape num (0-7), 0? sign of 126 = 0 implies slave on 1767 60f1 return skipping pseudo order come here from 1882. if write t=0, 1, or 2, if write t= actual block length 1768 79t4 set a(4) to actual block length for read, 0 for write come here from 1878 if digit 20 block length data is 0, read block length 1769 10f126 load slave data 1770 115f0 all 115 orders use data from 126 1771 80t4 a(4) set in 1745 or 1768, 1/2 reg to transfer 1772 77t101 1773 70t100 if transfer >100 set to 100 1774 73t2 1775 87t9 skip if required block length < actual 1776 51f1819 error: length of block too short 1777 80s6 s=tape op 1778 76s3 1779 50f1911 go to 1911 s=0,1,2 write 1780 76s4 1781 50f1891 go to 1891 s=3 position s=4,5,6 following does read and checking of write 1782 76s5 skip modification to address, read, no storing? 1783 4f14 a(14)=start - 9 1784 118f9 only 118 order, read, address either start or 9 1785 52f1924 M=0, read checksum equals one written on tape ? 1786 10f1422 N(1422)=26*2^-8 ~0.1 1787 32f4 1788 57f1745 read fail but not 10 times, try again 1789 76s5 here if tried reading 10 times 1790 50r6 here s = 0,1,2,3,4 1791 77s6 here s = 5 or 6 1792 50r4 here s=6, mark block error 1793 70s2 if s=5 set s = 2, first write failed come here from 1923, end of write s=6, done second write or above s=2 1794 79s6 set tape op 2 or 6 1795 50f1961 load retry count from 4, goto 1744 come here from 1790 or 1792, marks block as error 1796 10f10 here if s (above 1789) was not 5 1797 29f22 or onto block error pattern 1798 50f1927 go to 1927, stop tape and ? come here from 1848 s=0,1,2 but value destroyed come here from 1851 N(12) has been complemented if op = 4, read 1799 10f22 load pattern of block errors 1800 47f12 load checksum into L 1801 53r7 if errors jump 1802 48f22 if no errors put checksum into 22 come here from 1907 positioning finished 1803 10f14 get modified pseudo order 1804 66s1 gets 64 bit of tape number for exit 1805 72s1 s = 1 for normal , s = 2 for error 1806 4f127 a(127)=1958 for 59f18, 2034 for library 2032 for dump, 1842 for undump 1807 51f0 exit from mag tape subroutine come here from 1801 print pseudo order if checksum wrong 1808 9f122 clear page layout 1809 70s14 1810 4f1 100f0 get pseudo order 1812 70t1814 1813 50f558 print order if checksum wrong come here after print? guess t is set to address in 1812 1814 10f10 position mark for block errors 1815 66s2 s=0 means two blocks ok 1816 77s0 1817 55f1803 jump if error in block 3 ? 1818 2f1 error t=5, checksum wrong 1819 2f1 error t=4, block len 0 or write forbidden 1820 70t3 50f512 error t=3, tape number wrong backup free store from 1710, M contains bits of pseudo order 1822 80s6 59f38 here, s=1 dump s=4 undump 1823 77s4 1824 51r12 jump to undump 1825 70s19 dump 1826 79s0 a(0) = 19, destroys value on entry 1827 70t2032 set t for dump 1828 50r10 come here from 2032(dump) after storing s in a(6) 1829 80t17 dump/undump free store 1830 79t16 copy block number 1831 98f0 clears 0, a(0) = 0 1832 71s2 number of registers in free store 1833 79s5 dump set a(5) 1834 70t1958 set t for dump exit ? 1835 50f1731 do dump/undump at 1731 come here from 1824 for undump 1836 98f0 undump reserved store, a(0)=0 for free 1837 70t1841 t=1841 for undump, 2032 for dump come here from 1828 dump, M contains bits of pseudo order 1838 70s114 number of registers in reserved store 1839 79s5 dump, set a(5) 1840 50f1731 do dump/undump at 1731 come here from 1807 undump 1841 71s114 30s114 19s132 copies 0-114 in FREE store to 18-130 1844 74s1842 1845 51f1829 jumps back undump free store come here from 1954 if s NOT 1 1846 73s4 1847 77s1 1848 50f1799 way out 1849 31f12 here if s on entry = 4 (read) 1850 109f12 complement check digits 1851 50f1799 way out ------------------------------------------------------------------------------ 1852 80s122 jump here from 704 not mag tape ? 1853 74f2 1854 50f707 return to 707 setting s from 122 1855 76s4 from 1853, outputs something 1856 50f2000 1857 80s124 1858 77s2 1859 50f707 prints spaces and exits 1860 107f2 1861 107f8 1862 107s1 1863 80s125 1864 72s1 1865 79s124 1866 50t0 ------------------------------------------------------------------------------ come here from 1761 for 59f19, exit 1867 4f21 59f19 here 1868 116f0 stop tape unit 1869 50f1712 return, with contents of 8 come here from 1761, having read block label, M = -N(8) a(4) = number of 1/2 registers to transfer, 59f18,38 or x/ here, t=0 1870 98f2 set sign bit of 2 equal to 1, positioning not finished 1871 10f8 block label from 119 order 1872 66s9 tape unit to s 1873 83s21 subtract tape unit number 1874 77s1 1875 51f1820 1820 is error, wrong unit? 1876 66s11 is correct tape, current block number to s 1877 50r6 come here from 1885, at required block 1878 54f1769 tests digit 20 of block label, have block length? 1879 80t6 59f18 operation t=route 1880 77t3 1881 80t9 t=a(9), block length if read or position 1882 50f1768 59f18 t=0, 1 or 2 for write come here from 1877 with s = current block number, having checked tape etc 1883 83s17 subtract required block number 1884 76s1 1885 50f1878 go to 1878 if s=0, block = required 1886 77s2047 here if not, need to position 1887 51f1996 go to 1996 if s=2047, stop positioning stop tape, mark move finished, goto 1904 1888 87s8 s=current - required block number 1889 50r5 jump if current >= required 1890 2s0 s=current - required, but reverse come here from 1781 tape op = 3 position, why start tape backwards? 1891 71s2 s=required - current - 2 or s=2046 1892 4f21 add tape unit number 1893 116f1152 start tape backwards come here from 1889 if current block number < required 1894 72s1 set a(2) hardware block count 1895 79s2 a(2) = 2047, or blocks to move - 1 1896 10f126 slave data, just test sign? 1897 55r7 jump if no slave movement 1898 81s2 s=-a(2) 1899 87s126 skip if -a(2) < a(126), ie a(2) + a(126) > 0 1900 50r4 jump if a(2) + a(126) <= 0 1901 80s2 here if total move > 0, s=a(2) 1902 78s126 s = a(126) = a(126) + a(2) 1903 115f0 set slave, M used here? come here from 1897 or 1900 come here from 1999 tape stopped block difference = 2047, sign N(2) is zero 1904 80s6 set s to mag tape op 1905 73s3 1906 76s1 s=0 for positioning 1907 50f1803 exit if just positioning 1908 110f2 here if NOT positioning, fetch 2 ie M earlier 1909 55r2047 wait until sign bit of N(2) changes for r/w 1910 50f1746 read block label come from 1779 s= tape op =0,1,2 write 1911 4f21 116f1056 address = 1024 + 32 turn on write ??? 1913 10f126 slave data, used by 115 order ? 1914 115f0 all 115 orders have 126 data in M 1915 7f150 does not make sense, time delay? propagates sign, erase checksum?? 1916 4f14 last bit of a(14) + 9 determines store 1917 117f9 only 117 order, write, a(14) = start - 9 1918 24f8 load K from 8, why ???? 1919 32f12 add cumulative checksum, zero initially 1920 76s2 1921 50r5 1922 70s6 here if s=2, done second write, set s=6 1923 50f1794 do not increment checksum if second write come here from 1785 with M=0 after successful read of a block, checksum in K? 1924 10f12 1925 37f1680 N(1680)=-1, add K to M, cumulative checksum come here from 1921 if s=0,1 having written for first time 1926 109f12 store cumulative checksum during write come here from 1798, block noted as error, s=tape op number 1927 4f21 116f0 stop tape 1929 77s6 1930 70s5 if s=6 set s=5 1931 10f126 slave data 1932 55r7 jump if slave movement finished 1933 110f1429 N(1429)=127t2047 1934 80t126 a(126)= blocks to move 1935 76t2 if >=2 blocks continue 1936 98f126 mark as finished if 0 or 1 block 1937 73t1 reduce block count 1938 79t126 replace in a(126) come here from 1932 after adjusting slave movement, prepare next block 1939 70t1 1940 78t17 increment a(17) block number required 1941 80t4 t=a(4), 1/2 registers to transfer 1942 76t101 1943 50r9 jump if <= whole block 1944 71t100 here if a(4) > 100 1945 78t4 decrement a(4) by 100 1946 70t100 1947 78t14 a(14)+=100, address of 117/118 orders 1948 10f10 1949 7f1 shift error pattern for next block 1950 19f10 1951 50f1961 load number of 1/2 registers, goto block label come here from 1943, <= whole block, s = tape op, detects checked writing 1952 73s1 1953 77s1 1954 50f1846 jump if s was NOT 1 1955 70s5 if s=1 (checked write) set tape op = 5 1956 79s6 store tape op in a(6) 1957 50f1735 start a new tape operation come here from 1807, final exit 1958 80t17 t should be next block 1959 10f22 load checksum 1960 60s0 exit from 58f18 come here from 1795, 1951, implies new block 1961 10f4 50f1744 4 contains new number of 1/2 registers ------------------------------------------------------------------------------ is the following code obsolete ? looks like trace 1963 79s28 how do we get here ? and what is s ? 1964 114f2040 only 114 order, 2040 = -8 1965 83s30 s - a(30) 1966 77s1 1967 50r5 1968 70s1 s = a(30) 1969 78s29 1970 89s30 1971 60f0 exit to free store, crash unless a(0) changed 1972 70s1 s != a(30) 1973 78s27 1974 89s29 1975 80s28 1976 83s32 1977 48f34 save L 1978 76s1 1979 50r8 1980 47f32 s >= 1 1981 80s26 1982 72s2 1983 77s78 if a(26) + 2 >= 78 set s=0 1984 70s0 1985 79s26 0 <= a(26) <= 73 1986 48s36 why s modifier ? 1987 47f30 here if s = 0 or 1 1988 48f32 copy 30 to 32 1989 47f28 1990 48f30 copy 28 to 30 1991 47f34 restore L 1992 80s1 return address ????? 1993 79s31 stores a value of r in a(31) ???? 1994 9f28 1995 60f0 exit to free store, no skip crash unless a(0) changed ------------------------------------------------------------------------------ come here from 1887 if block difference = 2047, M=0 1996 98f2 set sign bit of 2 equal to 0, marks positioning finished 1997 4f21 116f0 stop tape unit 1999 50f1904 come here from 1856, not mag tape 2000 80s123 72s1 79s122 70s7 2004 50f1860 prints # binary tape input 2005 106f37 2006 71t2 2007 9f16 2008 9f8 51r4 4f1 8t0 2012 46f5 6f5 69s9 78s16 2016 32f8 57f2013 74t2010 19f0 2020 75r5 82s0 76s1 50f1 2024 101f2047 stop on checksum failure 2025 81t0 2026 51f2012 2027 80s122 page layout 2028 79t122 2s0 70t0 60f0 come here from 1807 for dump 2032 79s6 50f1829 set checked writing 2034 80s14 82s4 50f1682 re-enter assembler # putting orders in reserved store 2037 77s126 2038 127t2047 2039 98s0 2040 60f0 2041 50f1762 59f39 move slave tape 2042 50f1696 59f38 store dump 2043 50f1695 59f19 read block label 2044 50f1692 59f18 read/write/position 2045 50f2006 input binary tape 2046 50f2037 put orders in reserved store 2047 50f2027 page layout