diff --git a/software/BALGOL/BAC-220-Generator.tape b/software/BALGOL/BAC-220-Generator.tape index 62c43f0..56dcdb2 100644 --- a/software/BALGOL/BAC-220-Generator.tape +++ b/software/BALGOL/BAC-220-Generator.tape @@ -125,13 +125,13 @@ 1,100,300002,300023,18500000,4450000,10001520000,420006,1450999,10000120000,1210007,360015,40092355,1580000,272002720,420007,300004,1101270016,4000420007,999200018,412400007,320004,1105270016,410400007,310046,18500000,420025,4001450998,10000120000,1210026,420026,10000410999,10000400999,10000110999,10000400999,10000560000,10001400999,999200036,412400026,1101270025,320024,310040,18500000,1248008421,7450000,410400026,1106270025,300002,60092349,1101260051,1101260049,640051,300049,2621517,8500000,440115,300107,10182337,350134,10182411,350139,10182394,350268,10182416,350290,10182302,350144,10182414,350161,10182293,350240,10182340,350167,10182341,350172,10182410,350178,10182420,350192,10182393,350225,10182397,350245,10182335,350248,10182396,350260,10182381,350266,10182365,350100,10182440,350603,10182291,350767,10182310,350387,50092382,160091778,10092342,1370007310,300098 1,100,440115,300107,10182374,350364,10182418,350360,300095,460116,440125,300117,490008,190116,102270110,320108,100116,300115,0,502260133,9400280133,10000101778,420133,160210126,10000490002,172270,360117,300125,410051,1111400128,10601793,101793,460133,2330117,300095,158,502270133,440125,300117,213360053,300117,440359,300352,490007,3310401520,300134,440350,300337,401676,121676,490006,4210402451,440350,300337,401676,121676,490006,4410402449,4204272451,300134,102449,14410401677,300514,440350,300337,490009,1110401801,1110400792,300134,440350,300337,490009,1110401803,300134,440350,300337,490009,1110401823,1110400621,300134,440359,300352,490007,3310401827,2490003,160000,2480010,1480010,101827,122441,370190,132272,3310401828,300134,410051,1111400195,1111400219,11601539,101527,2330134,1450000,422442 1,100,10000121533,1210200,360206,60092434,9669009669,300204,101536,420223,402260386,10000402449,101535,121534,411532,100370217,102370221,103371533,1430000,10000402448,2260223,10601539,300195,3430000,300217,14,0,440350,300337,200360231,120092422,1370007310,300229,122443,8210400239,10134,410402459,122445,410402457,410404240,300134,4900,440350,300337,122443,6229260233,300234,501260247,300134,0,440350,300337,400256,410400259,422279,440385,300376,300134,0,2,840081,10000,1260265,440350,300337,403505,300134,0,4201262461,300134,440350,300337,410400283,410404241,410400285,401270285,490004,6410400287,6410400289,422282,440385,300376,300134,8,740052,300000,270052,290000,210042,0,320016,20000000000,440115,300107,10182419,350134,10182338,350308,10182360,350299,300095,422287 -1,100,440385,300376,300134,4,170045,674517,220045,44523309898,422288,440385,300376,300134,24,30000350061,10408271677,30000360061,10414261677,30000370061,10409271677,30000420061,10414261677,30000430061,10408271677,30000470061,10414261677,30000670079,14209271677,30000940079,10409271677,30000960079,10409271677,30000980079,10409271677,30000000080,10409271677,30000240080,14209271677,440125,300117,9108360341,300117,460351,1480001,100351,1490001,400351,440125,300117,9108360342,100351,300350,0,440350,300337,490002,401676,440350,300337,121676,300359,440350,300337,122444,300366,440350,300337,401675,421675,10000420372,440385,300376,300134,1645,1658,1667,1672,10000100000,412400384,401260384,420386,190386,190223,490007,3210400384,290000,300385,2462,411520,3211400389,2008500000,1000380392,6202261424,4450000,10000412448,811182454,99370403,1350402,10000102449,1200370401,120239 +1,100,440385,300376,300134,4,170045,674517,220045,44523309898,422288,440385,300376,300134,24,30000340061,10408271677,30000350061,10414261677,30000360061,10409271677,30000410061,10414261677,30000420061,10408271677,30000460061,10414261677,30000670079,14209271677,30000940079,10409271677,30000960079,10409271677,30000980079,10409271677,30000000080,10409271677,30000240080,14209271677,440125,300117,9108360341,300117,460351,1480001,100351,1490001,400351,440125,300117,9108360342,100351,300350,0,440350,300337,490002,401676,440350,300337,121676,300359,440350,300337,122444,300366,440350,300337,401675,421675,10000420372,440385,300376,300134,1645,1658,1667,1672,10000100000,412400384,401260384,420386,190386,190223,490007,3210400384,290000,300385,2462,411520,3211400389,2008500000,1000380392,6202261424,4450000,10000412448,811182454,99370403,1350402,10000102449,1200370401,120239 1,100,132421,400224,2200393,100224,130616,400224,122445,400602,400991,130239,122299,490008,1480002,480004,1480008,100616,122300,440601,300573,100224,130780,400224,122445,400602,400992,130239,122299,490008,1480002,480004,1480008,100780,122294,440601,300573,410224,1400443,422290,440385,300376,300444,2,310042,0,420256,9999200448,2100580000,300445,101521677,1422412,101519,10410183246,350496,2200450,422297,10001101677,440931,4330932,1210455,421519,10000102157,410400471,2480004,410400467,401676,6400281676,1450000,10000130000,1210467,121777,461777,400000,310473,422323,441448,301424,401261519,101519,410182289,350483,410182295,340516,300448,2201580000,2200524800,461777,464800,422317,1450000,10000134800,1210489,404800,2201580000,2200564800,300580000,300448,10000103247,10000413246,2401676,16400283246 1,100,1230370512,10000401677,1220370510,1200370508,430000,120239,132421,10410401677,421676,300453,1001031677,300508,400513,0,421676,300453,4400280519,10000299500,1101270520,4500320517,3000420247,1210993,100521677,422323,441448,301424,101677,182277,1350522,1000380531,6202260540,3000422323,294500,422297,10001101677,440931,4330932,5330932,1210534,422323,12100540000,1261449,8101260532,1101270531,320531,300546,70092324,8500000,101449,1480004,1450000,3000490001,1109260551,122269,1490001,310551,2430000,401675,10091675,40092345,411520,3211400562,2008500000,420265,9999200571,422446,8101260567,293400,1101270570,320566,4000301028,757007250,300571,403249,1403250,420386,413250,10001400000,6400283249,10001100000,8330587,6330584,10000100000,300591,1480006,120602,1490006,120602,10010400000,1450000,10000120000,420386,10000400001,6401263249,6201263250,402260386,401273249,310599,300600,401263250 1,100,320575,300601,0,410051,1111400607,1111400614,460616,11601539,101527,2330134,101536,1260616,420616,10000400616,10601539,300607,6,10000,80000420000,80412400005,14400289999,11010600015,300622 1,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,410051,1111400771,1111400778,460780,11601539,101527,2330134,101536,1260780,420780,10000400780,10601539,300771,13,10000,80000420000,80412400012,10000109999,480006,80410400011,10000109998,84210400011,480008,134100,80000190011,2009610000,300793 1,100 -1,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,300931,6260360947,6262360947,6264360947,6261360952,6263360952,6265360952,6250360961,5105360974,6244360983,6230360983,300931,1450000,10000121677,10000401677,300931,1101360949,300931,101823,11110401677,300943,1101360958,1102360955,300931,101801,11110401677,300943,101803,11110401677,300943,1101360964,1102360970,300931,411827,3100360967,411828,13311401677,4100360931,300943,411520,13311401677,4100360931,300943,1101360977,1102360980,300931,411827,11111401677,300943,411520,11111401677,300943,498360986,499360988,300931,410992,300989,410991,10411401677,300943,0,0,80092366,1580000,1580000,1580000,501580000,300523996,13753346952 +1,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,300931,6260360947,6262360947,6264360947,6261360952,6263360952,6265360952,6250360961,5105360974,6244360983,6230360983,300931,1450000,10000121677,10000401677,300931,1101360949,300931,101823,11110401677,300943,1101360958,1102360955,300931,101801,11110401677,300943,101803,11110401677,300943,1101360964,1102360970,300931,411827,3100360967,411828,13311401677,4100360931,300943,411520,13311401677,4100360931,300943,1101360977,1102360980,300931,411827,11111401677,300943,411520,11111401677,300943,498360986,499360988,300931,410992,300989,410991,10411401677,300943,0,0,80092366,1580000,1580000,1580000,501580000,300523996,13753406952 1,100,421001,10292265,990291857,291857,3000291857,1101271003,422417,441448,301424,321004,441192,301184,2331015,40092331,1370007310,301013,441211,301193,101829,10182310,1351023,101830,10182413,351340,441289,301275,10092415,20091829,401261797,101797,490006,403251,421797,101795,16410401857,441211,301193,6512401825,461826,103261826,101829,2223361045,361074,50092376,1370007310,301043,441211,301193,101829,10182309,351052,10182311,1351054,2101261825,301059,10182395,351059,10182339,351059,2103261825,441211,301193,101829,361074,2224361065,301042,441211,301193,101829,10182309,351072,10182311,1351073,101261826,103271826,6400281795,10000460000,101825,12110400000,101826,10110400000,11103260000,461796,461545,422359,990291545,441192,301184,331121,441211,301193,441289,301275,441211,301193,2233361096,301042,441211,301193,182298 1,100,210401544,1341104,60092303,1370007310,301102,101799,421797,10000411857,10410401857,401281799,10411400001,101795,16410400001,421544,16410401545,490002,121544,4430000,401794,441258,301251,301085,461800,461488,1450000,9910401815,101271815,4401261815,321134,1010601822,101807,331123,40092283,1370007310,301132,101816,410181488,410401488,351142,341142,30092319,1370007310,301140,4400281815,10000101816,401794,4331163,5331152,6331152,6401261796,441258,301251,301125,6290361148,6291361148,8210403248,6212403248,8400283248,10000411545,371160,301148,50092312,1370007310,301161,6200361174,6299361177,6290361152,6291361152,6201361149,6202361149,6203361149,6204361149,40092361,1370007310,301172,490004,191796,301149,441258,301259,421797,16400281857,101796,16410400000,301009,421186,10292265,150291807,410051,1111401189,1010601822,101807,461824,301192,502261824,461829,422318,90291829,9400281824,10000101807 1,100,9984201202,7450000,301211,421824,10000490000,2210400125,2200361193,1108361212,1104361226,1105361226,1106361226,2210401829,301211,461829,1480009,101829,1490001,401829,502261824,9400281824,10000101807,421824,10000490000,1108361213,502271824,101829,301211,461829,422318,90291829,461543,480008,1421543,10000490008,9400281543,402261543,10000191829,402261824,9400281824,10000101807,421824,10000490000,1104361230,1105361230,1106361230,1108361230,2214361230,502271824,1220261829,1220261830,101829,301211,101794,421518,10000403250,193350,311256,201261518,311263,301258,421518,101794,10000403250,193350,113350,403350,422343,441448,301424,461518,2261518,1263251,421273,10292265,980293252,301258,411543,1182266,1490006,4411401337,4309261337,1490002,2211401543,341291,411829,421802,10011182241,1351290,10000102242,6410401795,301289,2211285,1101829,1480010,152297,1490010,122301,401798,400223,420223 diff --git a/software/BALGOL/BALGOL-Build-Notes.txt b/software/BALGOL/BALGOL-Build-Notes.txt index e1c2826..6e5438c 100644 --- a/software/BALGOL/BALGOL-Build-Notes.txt +++ b/software/BALGOL/BALGOL-Build-Notes.txt @@ -45,9 +45,15 @@ The layout of the final Generator Tape is: value. The high-order three bits of the sign digit are ignored by 220 integer addition. - 2 blocks (51..52) reserved for compiler patches. These are also - checksummed in the same fashion, but the checksum word is stored - at the beginning of the first block, not the end of the second. + 2 blocks (51..52) reserved for compiler patches. More + importantly, this is where the INPUTMEDIA and OUTPUTMEDIA + routines for the compiler are stored, which is why these + routines are limited to 200 words in the aggregate. These blocks + are prepared by the Generator, then read into high memory + addresses by the compiler Main's loader routine located at its + addresses 0000-0059. These blocks are checksummed in the same + fashion as above, but the checksum word is stored at the + beginning of the first block, not the end of the second. 3 blocks (53..55) containing a copy of words 3996-4295 from the Compiler, not checksummed. This range of addresses is originally @@ -430,3 +436,5 @@ PROCESS LIBRARY statement and the library object decks. Paul Kimpel July 2018 + + diff --git a/software/BALGOL/BALGOL-Examples/Reference-Manual/Example-2/Example-2-Corrected-PT-List.lst b/software/BALGOL/BALGOL-Examples/Reference-Manual/Example-2/Example-2-Corrected-PT-List.lst new file mode 100644 index 0000000..3c0ef1a --- /dev/null +++ b/software/BALGOL/BALGOL-Examples/Reference-Manual/Example-2/Example-2-Corrected-PT-List.lst @@ -0,0 +1,1668 @@ + +0200 BAC-220 STANDARD VERSION 2/1/62 + +0200 COMMENT SECOND EXAMPLE PROGRAM FROM BALGOL MANUAL, MARCH 1963. + +0200 THIS IS THE CORRECTED VERSION THAT COMPUTES AREA USING NORTH/SOUTH + +0200 RATHER THAN NORTH/SOUTH DISPLACEMENTS IN THE CALCULATION FOR -SUM-. + +0200 + +0200 THE PROGRAM WHICH FOLLOWS IS ONE FOR SURVEY TRAVERSE CALCULATIONS$ + +0200 + +0200 COMMENT SURVEY TRAVERSE CALCULATIONS$ + +0200 TRACE ANGLE$ + +0200 DUMP EW, NS, CD$ + +0400 INTEGER I, J, K, SURVEY, D%¤, M%¤, S%¤, Q%¤, N$ + +0400 FUNCTION LENGTH%X,Y¤ # SQRT%X*2 & Y*2¤$ + +0413 ARRAY D%200¤, M%200¤, S%200¤, Q%200¤, MD%200¤, NS%200¤, + +0413 EW%200¤, CNS%201¤, CEW%201¤$ + +0413 + +0413 START.. + +0415 READ%$$ IDENT¤$ + +0419 TMD # 0$ TNS # 0$ TEW # 0$ + +0422 FOR I# %1,1,N¤$ + +0433 BEGIN + +0434 READ %$$ STATION¤$ + +0438 IF I NEQ K$ + +0438 STOP K$ + +0438 + +0444 Z # %60%60D%I¤ & M%I¤¤ & S%I¤¤/6.48**5$ + +0457 SWITCH Q%I¤, %QUAD1, QUAD2, QUAD3, QUAD4¤$ + +0464 QUAD1.. Z # 0.5 - Z$ GO TO ANGLE$ + +0470 QUAD2.. Z # 1.5 & Z$ GO TO ANGLE$ + +0476 QUAD3.. Z # 0.5 & Z$ GO TO ANGLE$ + +0482 QUAD4.. Z # 1.5 - Z$ + +0487 ANGLE.. + +0487 ALPHA # 3.1415927Z$ + +0494 NS%I¤ # MD%I¤SIN%ALPHA¤$ + +0500 TNS # TNS & NS%I¤$ + +0504 EW%I¤ # MD%I¤COS%ALPHA¤$ + +0510 TEW # TEW & EW%I¤$ + +0514 TMD # TMD & MD%I¤ + +0518 END$ + +0518 + +0519 ERROR # LENGTH%TNS, TEW¤$ + +0526 WRITE %$$ TITLE, F1¤$ + +0534 NSCF # -TNS/TMD$ + +0538 EWCF # -TEW/TMD$ + +0542 TCD # 0$ TCNS # 0$ TCEW # 0$ + +0545 FOR I # %1,1,N¤$ + +0556 BEGIN + +0556 CNS%I¤ # NS%I¤ & MD%I¤.NSCF$ + +0562 TCNS # TCNS & CNS%I¤$ + +0566 CEW%I¤ # EW%I¤ & MD%I¤.EWCF$ + +0571 TCEW # TCEW & CEW%I¤$ + +0575 CD # LENGTH%CNS%I¤, CEW%I¤¤$ + +0584 TCD # TCD & CD$ + +0587 WRITE %$$ ANSWERS, F2¤ + +0591 END$ + +0591 + +0596 CNS%N&1¤ # CNS%1¤$ + +0599 CEW%N&1¤ # CEW%1¤$ + +0602 SUM # 0$ + +0603 NSLOC # 0$ EWLOC # 0$ + +0605 FOR I#%1,1,N¤$ + +0616 BEGIN + +0616 NSLOC # NSLOC & CNS%I¤$ + +0621 EWLOC # EWLOC & CEW%I¤$ + +0625 SUM # SUM & %CNS%I&1¤¤ %CEW%I&1¤ & 2EWLOC¤ + +0629 END$ + +0629 + +0633 SQFT # ABS%SUM¤/2$ + +0637 ACRES # SQFT/43560$ + +0641 WRITE %$$ TOTALS, F3¤$ + +0649 GO TO START$ + +0649 + +0650 INPUT + +0655 IDENT %SURVEY, N¤, + +0660 STATION %K, D%I¤, M%K¤, S%I¤, Q%I¤, MD%I¤¤$ + +0687 OUTPUT + +0692 TITLE %SURVEY, N, ERROR¤, + +0700 ANSWERS %I, D%I¤, M%I¤, S%I¤, Q%I¤, MD%I¤, CD, CNS%I¤, CEW%I¤¤, + +0738 TOTALS %TMD, TCD, TCNS, TCEW, SQFT, ACRES¤$ + +0760 FORMAT + +0760 F1 %*SURVEY*, I8, B5, *NUMBER OF LEGS*, I5, B5, *CLOSURE ERROR*, + +0760 X9.2, W1, + +0760 *LEG*, B5, *ANGLE*, B7, *MEASURED*, B5, *CORRECTED*, B3, + +0760 *NORTH-SOUTH EAST-WEST*, W6, + +0760 *NO. DD MM SS Q DISTANCE DISTANCE DISPLACEMENT *, + +0760 *DISPLACEMENT*,2W¤, + +0760 F2 %I3, I5, 2I3, I2, 4X13.2, W¤, + +0760 F3 %B6, *TOTALS*, B4, 4X13.2, W4, *AREA OF TRAVERSE*, X13.2, + +0760 * SQUARE FEET*, X13.2, * ACRES*, W6¤$ + +0835 FINISH$ +COMPILED PROGRAM ENDS AT 0836 +PROGRAM VARIABLES BEGIN AT 2438 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + LAST LABEL PASSED WAS 5864414482 2480808081 400000000 + + VARIABLE IN PROGRAM VALUE + + + + CD .00000000, 00 + + ARRAY EW + + + + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + + + ARRAY NS + + + + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + LAST LABEL PASSED WAS 5864414482 2480808082 400000000 + + VARIABLE IN PROGRAM VALUE + + + + CD .00000000, 00 + + ARRAY EW + + + + .12152047, 03 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + + + ARRAY NS + + + + -.63259569, 02 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + LAST LABEL PASSED WAS 5864414482 2480808083 400000000 + + VARIABLE IN PROGRAM VALUE + + + + CD .00000000, 00 + + ARRAY EW + + + + .12152047, 03 .41265074, 02 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + + + ARRAY NS + + + + -.63259569, 02 -.72935818, 02 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + LAST LABEL PASSED WAS 5864414481 2480808081 400000000 + + VARIABLE IN PROGRAM VALUE + + + + CD .00000000, 00 + + ARRAY EW + + + + .12152047, 03 .41265074, 02 .11927717, 03 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + + + ARRAY NS + + + + -.63259569, 02 -.72935818, 02 -.35331520, 02 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + LAST LABEL PASSED WAS 5864414483 2480808081 400000000 + + VARIABLE IN PROGRAM VALUE + + + + CD .00000000, 00 + + ARRAY EW + + + + .12152047, 03 .41265074, 02 .11927717, 03 .95284538, 02 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + + + ARRAY NS + + + + -.63259569, 02 -.72935818, 02 -.35331520, 02 .11558936, 03 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + LAST LABEL PASSED WAS 5864414484 2480808081 400000000 + + VARIABLE IN PROGRAM VALUE + + + + CD .00000000, 00 + + ARRAY EW + + + + .12152047, 03 .41265074, 02 .11927717, 03 .95284538, 02 + -.71049930, 02 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + + + ARRAY NS + + + + -.63259569, 02 -.72935818, 02 -.35331520, 02 .11558936, 03 + .86190464, 02 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + LAST LABEL PASSED WAS 5864414484 2480808082 400000000 + + VARIABLE IN PROGRAM VALUE + + + + CD .00000000, 00 + + ARRAY EW + + + + .12152047, 03 .41265074, 02 .11927717, 03 .95284538, 02 + -.71049930, 02 -.26640867, 03 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + + + ARRAY NS + + + + -.63259569, 02 -.72935818, 02 -.35331520, 02 .11558936, 03 + .86190464, 02 -.69762206, 01 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + .00000000, 00 .00000000, 00 .00000000, 00 .00000000, 00 + + + + + + + + + + + + + + + +SURVEY 1234 NUMBER OF LEGS 7 CLOSURE ERROR 7.33 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +LEG ANGLE MEASURED CORRECTED NORTH-SOUTH EAST-WEST + +NO. DD MM SS Q DISTANCE DISTANCE DISPLACEMENT DISPLACEMENT + + 1 62 30 0 2 137.00 136.85 -62.23 121.88 + 2 29 30 0 2 83.80 83.36 -72.30 41.48 + 3 73 30 0 2 124.40 124.45 -34.40 119.60 + 4 39 30 0 1 149.80 150.91 116.70 95.68 + 5 39 30 0 3 111.70 112.15 87.02 -70.75 + 6 88 30 0 4 266.50 265.75 -4.98 -265.70 + 7 54 30 0 4 52.00 51.66 -29.80 -42.19 + + TOTALS 925.20 925.16 -.00 -.00 + +AREA OF TRAVERSE 45199.14 SQUARE FEET 1.03 ACRES diff --git a/software/BALGOL/BALGOL-Examples/Reference-Manual/Example-2/Example-2-Corrected.card b/software/BALGOL/BALGOL-Examples/Reference-Manual/Example-2/Example-2-Corrected.card index 41d8dfb..c066824 100644 --- a/software/BALGOL/BALGOL-Examples/Reference-Manual/Example-2/Example-2-Corrected.card +++ b/software/BALGOL/BALGOL-Examples/Reference-Manual/Example-2/Example-2-Corrected.card @@ -1,5 +1,5 @@ 2 COMMENT SECOND EXAMPLE PROGRAM FROM BALGOL MANUAL, MARCH 1963. -2 THIS IS THE CORREECTED VERSION THAT COMPUTES AREA USING NORTH/SOUTH +2 THIS IS THE CORRECTED VERSION THAT COMPUTES AREA USING NORTH/SOUTH 2 RATHER THAN NORTH/SOUTH DISPLACEMENTS IN THE CALCULATION FOR -SUM-. 2 2 THE PROGRAM WHICH FOLLOWS IS ONE FOR SURVEY TRAVERSE CALCULATIONS; @@ -77,7 +77,7 @@ 2 TOTALS (TMD, TCD, TCNS, TCEW, SQFT, ACRES); 2 FORMAT 2 F1 (*SURVEY*, I8, B5, *NUMBER OF LEGS*, I5, B5, *CLOSURE ERROR*, *ADDED SPACING -2 X9.2, W1, +2 X9.2, W1, 2 *LEG*, B5, *ANGLE*, B7, *MEASURED*, B5, *CORRECTED*, B3, 2 *NORTH-SOUTH EAST-WEST*, W6, 2 *NO. DD MM SS Q DISTANCE DISTANCE DISPLACEMENT *, diff --git a/software/BALGOL/BALGOL-Examples/Reference-Manual/Example-2/Example-2-Corrected.pt b/software/BALGOL/BALGOL-Examples/Reference-Manual/Example-2/Example-2-Corrected.pt new file mode 100644 index 0000000..1ad6bdf --- /dev/null +++ b/software/BALGOL/BALGOL-Examples/Reference-Manual/Example-2/Example-2-Corrected.pt @@ -0,0 +1,1392 @@ +22 COM +2MENT +2SECON +2D EXA +2MPLE +2PROGR +2AM FR +2OM BA +2LGOL +2MANUA +2L, MA +2RCH 1 +2963. +2 +22 THI +2S IS +2THE C +2ORREC +2TED V +2ERSIO +2N THA +2T COM +2PUTES +2 AREA +2 USIN +2G NOR +2TH/SO +2UTH +22 RAT +2HER T +2HAN N +2ORTH/ +2SOUTH +2 DISP +2LACEM +2ENTS +2IN TH +2E CAL +2CULAT +2ION F +2OR -S +2UM-. +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 THE +2 PROG +2RAM W +2HICH +2FOLLO +2WS IS +2 ONE +2FOR S +2URVEY +2 TRAV +2ERSE +2CALCU +2LATIO +2NS; +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 COM +2MENT +2SURVE +2Y TRA +2VERSE +2 CALC +2ULATI +2ONS; +2 +2 +2 +2 +2 +2 +22 TRA +2CE AN +2GLE; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 DUM +2P EW, +2 NS, +2CD; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 INT +2EGER +2I, J, +2 K, S +2URVEY +2, D() +2, M() +2, S() +2, Q() +2, N; +2 +2 +2 +2 +22 FUN +2CTION +2 LENG +2TH(X, +2Y) = +2SQRT( +2X*2 + +2 Y*2) +2; +2 +2 +2 +2 +2 +22 ARR +2AY D( +2200), +2 M(20 +20), S +2(200) +2, Q(2 +200), +2MD(20 +20), N +2S(200 +2), +2 +2 +22 +2 EW +2(200) +2, CNS +2(201) +2, CEW +2(201) +2; +2 +2 +2 +2 +2 +2 +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 STA +2RT.. +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 R +2EAD(; +2; IDE +2NT); +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 T +2MD = +20; TN +2S = 0 +2; TEW +2 = 0; +2 +2 +2 +2 +2 +2 +2 +2 +22 F +2OR I= +2 (1,1 +2,N); +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 BEGI +2N +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 READ +2 (;; +2STATI +2ON); +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 IF I +2 NEQ +2K; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 ST +2OP K; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 Z = +2(60(6 +20D(I) +2 + M( +2I)) + +2 S(I) +2)/6.4 +28**5; +2 +2 +2 +2 +2 +22 +2 SWIT +2CH Q( +2I), ( +2QUAD1 +2, QUA +2D2, Q +2UAD3, +2 QUAD +24); +2 +2 +2 +2 +22 +2 QUAD +21.. Z +2 = 0. +25 - Z +2; GO +2TO AN +2GLE; +2 +2 +2 +2 +2 +2 +22 +2 QUAD +22.. Z +2 = 1. +25 + Z +2; GO +2TO AN +2GLE; +2 +2 +2 +2 +2 +2 +22 +2 QUAD +23.. Z +2 = 0. +25 + Z +2; GO +2TO AN +2GLE; +2 +2 +2 +2 +2 +2 +22 +2 QUAD +24.. Z +2 = 1. +25 - Z +2; +2 +2 +2 +2 +2 +2 +2 +2 +22 ANG +2LE.. +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 ALPH +2A = 3 +2.1415 +2927Z; +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 NS(I +2) = M +2D(I)S +2IN(AL +2PHA); +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 TNS +2= TNS +2 + NS +2(I); +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 EW(I +2) = M +2D(I)C +2OS(AL +2PHA); +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 TEW +2= TEW +2 + EW +2(I); +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 TMD +2= TMD +2 + MD +2(I) +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 END; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 E +2RROR +2= LEN +2GTH(T +2NS, T +2EW); +2 +2 +2 +2 +2 +2 +2 +2 +22 W +2RITE +2(;; T +2ITLE, +2 F1); +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 N +2SCF = +2 -TNS +2/TMD; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 E +2WCF = +2 -TEW +2/TMD; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 T +2CD = +20; TC +2NS = +20; TC +2EW = +20; +2 +2 +2 +2 +2 +2 +2 +22 F +2OR I +2= (1, +21,N); +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 BEGI +2N +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 CNS( +2I) = +2NS(I) +2 + MD +2(I).N +2SCF; +2 +2 +2 +2 +2 +2 +2 +22 +2 TCNS +2 = TC +2NS + +2CNS(I +2); +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 CEW( +2I) = +2EW(I) +2 + MD +2(I).E +2WCF; +2 +2 +2 +2 +2 +2 +2 +22 +2 TCEW +2 = TC +2EW + +2CEW(I +2); +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 CD = +2 LENG +2TH(CN +2S(I), +2 CEW( +2I)); +2 +2 +2 +2 +2 +2 +2 +22 +2 TCD +2= TCD +2 + CD +2; +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 WRIT +2E (;; +2 ANSW +2ERS, +2F2) +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 END; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 C +2NS(N+ +21) = +2CNS(1 +2); +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 C +2EW(N+ +21) = +2CEW(1 +2); +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 S +2UM = +20; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 N +2SLOC +2= 0; +2EWLOC +2 = 0; +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 F +2OR I= +2(1,1, +2N); +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 BEGI +2N +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 NSLO +2C = N +2SLOC +2+ CNS +2(I); +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 EWLO +2C = E +2WLOC +2+ CEW +2(I); +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 SUM +2= SUM +2 + (C +2NS(I+ +21)) ( +2CEW(I +2+1) + +2 2EWL +2OC) +2 +2 +2 +2 +22 +2 END; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 S +2QFT = +2 ABS( +2SUM)/ +22; +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 A +2CRES +2= SQF +2T/435 +260; +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 W +2RITE +2(;; T +2OTALS +2, F3) +2; +2 +2 +2 +2 +2 +2 +2 +2 +22 G +2O TO +2START +2; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 INP +2UT +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 I +2DENT +2(SURV +2EY, N +2), +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 S +2TATIO +2N (K, +2 D(I) +2, M(K +2), S( +2I), Q +2(I), +2MD(I) +2); +2 +2 +2 +2 +22 OUT +2PUT +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 T +2ITLE +2(SURV +2EY, N +2, ERR +2OR), +2 +2 +2 +2 +2 +2 +2 +2 +22 A +2NSWER +2S (I, +2 D(I) +2, M(I +2), S( +2I), Q +2(I), +2MD(I) +2, CD, +2 CNS( +2I), C +2EW(I) +2), +22 T +2OTALS +2 (TMD +2, TCD +2, TCN +2S, TC +2EW, S +2QFT, +2ACRES +2); +2 +2 +2 +2 +22 FOR +2MAT +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 F +21 (*S +2URVEY +2*, I8 +2, B5, +2 *NUM +2BER O +2F LEG +2S*, I +25, B5 +2, *CL +2OSURE +2 ERRO +2R*, +22 +2 X9 +2.2, W +21, +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 *L +2EG*, +2B5, * +2ANGLE +2*, B7 +2, *ME +2ASURE +2D*, B +25, *C +2ORREC +2TED*, +2 B3, +2 +22 +2 *N +2ORTH- +2SOUTH +2 E +2AST-W +2EST*, +2 W6, +2 +2 +2 +2 +2 +2 +22 +2 *N +2O. +2DD MM +2 SS Q +2 +2DISTA +2NCE +2 D +2ISTAN +2CE D +2ISPLA +2CEMEN +2T *, +22 +2 *D +2ISPLA +2CEMEN +2T*,2W +2), +2 +2 +2 +2 +2 +2 +2 +2 +22 F +22 (I3 +2, I5, +2 2I3, +2 I2, +24X13. +22, W) +2, +2 +2 +2 +2 +2 +2 +22 F +23 (B6 +2, *TO +2TALS* +2, B4, +2 4X13 +2.2, W +24, *A +2REA O +2F TRA +2VERSE +2*, X1 +23.2, +2 +22 +2 * +2SQUAR +2E FEE +2T*, X +213.2, +2 * AC +2RES*, +2 W6); +2 +2 +2 +2 +2 +22 FIN +2ISH; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +25 123 +24 7 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +25 1 +2 62 +230 0 +2 2 +2 137 +2.0 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +25 2 +2 29 +230 0 +2 2 +2 83 +2.8 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +25 3 +2 73 +230 0 +2 2 +2 124 +2.4 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +25 4 +2 39 +230 0 +2 1 +2 149 +2.8 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +25 5 +2 39 +230 0 +2 3 +2 111 +2.7 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +25 6 +2 88 +230 0 +2 4 +2 266 +2.5 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +25 7 +2 54 +230 0 +2 4 +2 52 +2.0 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +25 999 +29 1 * +2 DUMM +2Y DAT +2A SET +2 TO F +2ORCE +2A STO +2P +2 +2 +2 +2 +2 +2 +2 +25 0 +2 0 +2 0 0 +2 0 +2 0 +2.0 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 diff --git a/software/BALGOL/BALGOL-Examples/Simpsons-Rule/SIMPS-PT-List.lst b/software/BALGOL/BALGOL-Examples/Simpsons-Rule/SIMPS-PT-List.lst new file mode 100644 index 0000000..808fcdc --- /dev/null +++ b/software/BALGOL/BALGOL-Examples/Simpsons-Rule/SIMPS-PT-List.lst @@ -0,0 +1,416 @@ + +0200 BAC-220 STANDARD VERSION 2/1/62 + +0200 COMMENT SIMPSON-S RULE INTEGRATION PROCEDURE, TRANSLATED TO BALGOL + +0200 FROM THE EXAMPLE IN THE PRELIMINARY IAL REPORT$ + +0200 + +0200 COMMENT + +0200 EXAMPLE.. INTEGRATION OF A FUNCTION F%X¤ BY SIMPSON-S RULE. THE + +0200 VALUES OF F%X¤ ARE SUPPLIED BY AN ASSUMED EXISTENT FUNCTION + +0200 ROUTINE. THE MESH SIZE IS HALVED UNTIL TWO SUCCESSIVE SIMPSON + +0200 SUMS AGREE WITHIN A PRESCRIBED ERROR. DURING THE MESH REDUCTION + +0200 F%X¤ IS EVALUATED AT MOST ONCE FOR ANY X. A VALUE V GREATER THAN + +0200 THE MAXIMUM ABSOLUTE VALUE ATTAINED BY THE FUNCTION ON THE + +0200 INTERVAL IS REQUIRED FOR INITIALZING$ + +0200 + +0204 PROCEDURE SIMPS%A, B, DELTA, V$$ F%¤¤$ + +0204 COMMENT A, B ARE THE MIN AND MAX, RESP. OF THE POINTS DEF. + +0204 INTERVAL OF INTEG. F%¤ IS THE FUNCTION TO INTEGRATED. + +0204 DELTA IS THE PERMISSIBLE DIFFERENCE BETWEEN TO SUCCESSIVE SIMPSO + +0204 SUMS. V IS GREATER THAN THE MAXIMUM ABSOLUTE VALUE OF F ON A, B$ + +0204 BEGIN + +0204 MONITOR IBAR, N, H, J, S, K, I$ + +0204 INTEGER K, N$ + +0204 + +0204 IBAR # V%B-A¤$ + +0210 N # 1$ + +0214 H # %B-A¤/2$ + +0221 J # H%F%A¤ & F%B¤¤$ + +0221 + +0233 J1.. + +0233 S # 0$ + +0238 FOR K # %1, 1, N¤$ + +0253 S # S & F%A & %2K-1¤H¤$ + +0253 + +0269 I # J & 4H.S$ + +0276 IF DELTA LSS ABS%I-IBAR¤$ + +0276 BEGIN + +0276 IBAR # I$ + +0287 J # %I&J¤/4$ + +0294 N # 2N$ + +0299 H # H/2$ + +0305 GO TO J1 + +0306 END$ + +0306 + +0306 SIMPS%¤ # I/3$ + +0309 RETURN$ + +0311 END SIMPS%¤$ + +0311 + +0318 FUNCTION TORADS%X¤ # 3.1415926X/180$ + +0318 + +0327 FUNCTION DARCTAN%X¤ # 1/%X*2 & 1¤$ + +0327 + +0339 PROCEDURE LOGISTICSIGMOID%X¤$ + +0339 BEGIN + +0342 LOGISTICSIGMOID%¤ # 1/%1 & EXP%-X¤¤$ + +0350 RETURN$ + +0352 END LOGISTICSIGMOID%¤$ + +0352 + +0352 SUM # SIMPS%TORADS%30.0¤, TORADS%90.0¤, 0.00001, 2.0$$ SIN%¤¤$ + +0371 WRITE%$$ RESULT, F1¤$ + +0379 SUM # SIMPS%0.0, 1.0, 1**-5, 2.0$$ DARCTAN%¤¤$ + +0393 WRITE%$$ RESULT, F2¤$ + +0401 SUM # SIMPS%0.5, 3.0, 1**-5, 2.0$$ LOGISTICSIGMOID%¤¤$ + +0415 WRITE%$$ RESULT, F3¤$ + +0415 + +0423 OUTPUT RESULT%SUM¤$ + +0430 FORMAT F1%*SINE INTEGRAL # *,X10.6,W0¤, + +0430 F2%*DARCTAN INTEGRAL # *,X10.6,W0¤, + +0430 F3%*LOGISTIC INTEGRAL #*,X10.6,W0¤$ + +0452 FINISH$ +COMPILED PROGRAM ENDS AT 0453 +PROGRAM VARIABLES BEGIN AT 4328 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + IBAR # . 2094395000, 01 + N # 1 + H # . 5235987500, 00 + J # . 7853980700, 00 + S # . , 00 + K # 1 + S # . 8660253800, 00 + K # 2 + I # . 2599197200, 01 + IBAR # . 2599197200, 01 + J # . 8461488000, 00 + N # 2 + H # . 2617993700, 00 + S # . , 00 + K # 1 + S # . 7071067600, 00 + K # 2 + S # . 1673032500, 01 + K # 3 + I # . 2598144200, 01 + IBAR # . 2598144200, 01 + J # . 8610732500, 00 + N # 4 + H # . 1308996800, 00 + S # . , 00 + K # 1 + S # . 6087614000, 00 + K # 2 + S # . 1402114700, 01 + K # 3 + S # . 2325994100, 01 + K # 4 + S # . 3317438900, 01 + K # 5 + I # . 2598079900, 01 + IBAR # . 2598079900, 01 + J # . 8647882700, 00 + N # 8 + H # . 6544984000,-01 + S # . , 00 + K # 1 + S # . 5555702100, 00 + K # 2 + S # . 1214915900, 01 + K # 3 + S # . 1966755600, 01 + K # 4 + S # . 2798225100, 01 + K # 5 + S # . 3695097700, 01 + K # 6 + S # . 4642027800, 01 + K # 7 + S # . 5622813000, 01 + K # 8 + S # . 6620671900, 01 + K # 9 + I # . 2598075800, 01 +SINE INTEGRAL # .866025 + IBAR # . 2000000000, 01 + N # 1 + H # . 5000000000, 00 + J # . 7500000000, 00 + S # . , 00 + K # 1 + S # . 8000000000, 00 + K # 2 + I # . 2350000000, 01 + IBAR # . 2350000000, 01 + J # . 7750000000, 00 + N # 2 + H # . 2500000000, 00 + S # . , 00 + K # 1 + S # . 9411764700, 00 + K # 2 + S # . 1581176400, 01 + K # 3 + I # . 2356176400, 01 + IBAR # . 2356176400, 01 + J # . 7827941000, 00 + N # 4 + H # . 1250000000, 00 + S # . , 00 + K # 1 + S # . 9846153800, 00 + K # 2 + S # . 1861327700, 01 + K # 3 + S # . 2580428800, 01 + K # 4 + S # . 3146800400, 01 + K # 5 + I # . 2356194300, 01 + IBAR # . 2356194300, 01 + J # . 7847471000, 00 + N # 8 + H # . 6250000000,-01 + S # . , 00 + K # 1 + S # . 9961089900, 00 + K # 2 + S # . 1962146700, 01 + K # 3 + S # . 2873178700, 01 + K # 4 + S # . 3712522900, 01 + K # 5 + S # . 4472166800, 01 + K # 6 + S # . 5151211900, 01 + K # 7 + S # . 5753564800, 01 + K # 8 + S # . 6285789300, 01 + K # 9 + I # . 2356194400, 01 +DARCTAN INTEGRAL # .785398 + IBAR # . 5000000000, 01 + N # 1 + H # . 1250000000, 01 + J # . 1968791800, 01 + S # . , 00 + K # 1 + S # . 8519528300, 00 + K # 2 + I # . 6228555800, 01 + IBAR # . 6228555800, 01 + J # . 2049336900, 01 + N # 2 + H # . 6250000000, 00 + S # . , 00 + K # 1 + S # . 7549150200, 00 + K # 2 + S # . 1669816000, 01 + K # 3 + I # . 6223876900, 01 + IBAR # . 6223876900, 01 + J # . 2068303400, 01 + N # 4 + H # . 3125000000, 00 + S # . , 00 + K # 1 + S # . 6926419800, 00 + K # 2 + S # . 1500709200, 01 + K # 3 + S # . 2387913800, 01 + K # 4 + S # . 3324198800, 01 + K # 5 + I # . 6223551800, 01 + IBAR # . 6223551800, 01 + J # . 2072963800, 01 + N # 8 + H # . 1562500000, 00 + S # . , 00 + K # 1 + S # . 6584175200, 00 + K # 2 + S # . 1383287700, 01 + K # 3 + S # . 2165950200, 01 + K # 4 + S # . 2997093200, 01 + K # 5 + S # . 3867690400, 01 + K # 6 + S # . 4769611100, 01 + K # 7 + S # . 5695914800, 01 + K # 8 + S # . 6640909500, 01 + K # 9 + I # . 6223532200, 01 + IBAR # . 6223532200, 01 + J # . 2074124000, 01 + N # 16 + H # . 7812500000,-01 + S # . , 00 + K # 1 + S # . 6406358700, 00 + K # 2 + S # . 1316400400, 01 + K # 3 + S # . 2025419500, 01 + K # 4 + S # . 2765593800, 01 + K # 5 + S # . 3534674000, 01 + K # 6 + S # . 4330332100, 01 + K # 7 + S # . 5150225400, 01 + K # 8 + S # . 5992051000, 01 + K # 9 + S # . 6853589200, 01 + K # 10 + S # . 7732735900, 01 + K # 11 + S # . 8627525300, 01 + K # 12 + S # . 9536143200, 01 + K # 13 + S # . 1045693200, 02 + K # 14 + S # . 1138839400, 02 + K # 15 + S # . 1232918300, 02 + K # 16 + S # . 1327810000, 02 + K # 17 + I # . 6223530000, 01 +LOGISTIC INTEGRAL # 2.074510 diff --git a/software/BALGOL/BALGOL-Examples/Simpsons-Rule/SIMPS.pt b/software/BALGOL/BALGOL-Examples/Simpsons-Rule/SIMPS.pt new file mode 100644 index 0000000..cbb7b7b --- /dev/null +++ b/software/BALGOL/BALGOL-Examples/Simpsons-Rule/SIMPS.pt @@ -0,0 +1,938 @@ +22 COM +2MENT +2SIMPS +2ON-S +2RULE +2INTEG +2RATIO +2N PRO +2CEDUR +2E, TR +2ANSLA +2TED T +2O BAL +2GOL +22 +2 +2FROM +2THE E +2XAMPL +2E IN +2THE P +2RELIM +2INARY +2 IAL +2REPOR +2T; +2 +2 +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 COM +2MENT +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 EXAM +2PLE.. +2 INTE +2GRATI +2ON OF +2 A FU +2NCTIO +2N F(X +2) BY +2SIMPS +2ON-S +2RULE. +2 THE +22 +2 VALU +2ES OF +2 F(X) +2 ARE +2SUPPL +2IED B +2Y AN +2ASSUM +2ED EX +2ISTEN +2T FUN +2CTION +2 +22 +2 ROUT +2INE. +2THE M +2ESH S +2IZE I +2S HAL +2VED U +2NTIL +2TWO S +2UCCES +2SIVE +2SIMPS +2ON +22 +2 SUMS +2 AGRE +2E WIT +2HIN A +2 PRES +2CRIBE +2D ERR +2OR. D +2URING +2 THE +2MESH +2REDUC +2TION +22 +2 F(X) +2 IS E +2VALUA +2TED A +2T MOS +2T ONC +2E FOR +2 ANY +2X. A +2VALUE +2 V GR +2EATER +2 THAN +22 +2 THE +2MAXIM +2UM AB +2SOLUT +2E VAL +2UE AT +2TAINE +2D BY +2THE F +2UNCTI +2ON ON +2 THE +2 +22 +2 INTE +2RVAL +2IS RE +2QUIRE +2D FOR +2 INIT +2IALZI +2NG; +2 +2 +2 +2 +2 +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 PRO +2CEDUR +2E SIM +2PS(A, +2 B, D +2ELTA, +2 V;; +2F()); +2 +2 +2 +2 +2 +2 +22 +2 COMM +2ENT A +2, B A +2RE TH +2E MIN +2 AND +2MAX, +2RESP. +2 OF T +2HE PO +2INTS +2DEF. +2 +22 +2 INTE +2RVAL +2OF IN +2TEG. +2F() I +2S THE +2 FUNC +2TION +2TO IN +2TEGRA +2TED. +2 +2 +22 +2 DELT +2A IS +2THE P +2ERMIS +2SIBLE +2 DIFF +2ERENC +2E BET +2WEEN +2TO SU +2CCESS +2IVE S +2IMPSO +22 +2 SUMS +2. V I +2S GRE +2ATER +2THAN +2THE M +2AXIMU +2M ABS +2OLUTE +2 VALU +2E OF +2F ON +2A, B; +22 B +2EGIN +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 M +2ONITO +2R IBA +2R, N, +2 H, J +2, S, +2K, I; +2 +2 +2 +2 +2 +2 +2 +22 I +2NTEGE +2R K, +2N; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 I +2BAR = +2 V(B- +2A); +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 N +2 = 1; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 H +2 = (B +2-A)/2 +2; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 J +2 = H( +2F(A) +2+ F(B +2)); +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 J1. +2. +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 S +2 = 0; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 F +2OR K +2= (1, +2 1, N +2); +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 S = +2S + F +2(A + +2(2K-1 +2)H); +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 I +2 = J +2+ 4H. +2S; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 I +2F DEL +2TA LS +2S ABS +2(I-IB +2AR); +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 BEGI +2N +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 IBAR +2 = I; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 J = +2(I+J) +2/4; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 N = +22N; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 H = +2H/2; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 GO T +2O J1 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 END; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 S +2IMPS( +2) = I +2/3; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 R +2ETURN +2; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 E +2ND SI +2MPS() +2; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 FUN +2CTION +2 TORA +2DS(X) +2 = 3. +214159 +226X/1 +280; +2 +2 +2 +2 +2 +2 +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 FUN +2CTION +2 DARC +2TAN(X +2) = 1 +2/(X*2 +2 + 1) +2; +2 +2 +2 +2 +2 +2 +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 PRO +2CEDUR +2E LOG +2ISTIC +2SIGMO +2ID(X) +2; +2 +2 +2 +2 +2 +2 +2 +22 B +2EGIN +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 L +2OGIST +2ICSIG +2MOID( +2) = 1 +2/(1 + +2 EXP( +2-X)); +2 +2 +2 +2 +2 +2 +22 R +2ETURN +2; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 E +2ND LO +2GISTI +2CSIGM +2OID() +2; +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 SUM +2 = SI +2MPS(T +2ORADS +2(30.0 +2), TO +2RADS( +290.0) +2, 0.0 +20001, +2 2.0; +2; SIN +2()); +2 +22 WRI +2TE(;; +2 RESU +2LT, F +21); +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 SUM +2 = SI +2MPS(0 +2.0, 1 +2.0, 1 +2**-5, +2 2.0; +2; DAR +2CTAN( +2)); +2 +2 +2 +2 +22 WRI +2TE(;; +2 RESU +2LT, F +22); +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 SUM +2 = SI +2MPS(0 +2.5, 3 +2.0, 1 +2**-5, +2 2.0; +2; LOG +2ISTIC +2SIGMO +2ID()) +2; +2 +2 +22 WRI +2TE(;; +2 RESU +2LT, F +23); +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 OUT +2PUT R +2ESULT +2(SUM) +2; +2 +2 +2 +2 +2 +2 +2 +2 +2 +22 FOR +2MAT F +21(*SI +2NE IN +2TEGRA +2L = +2 *,X +210.6, +2W0), +2 +2 +2 +2 +2 +22 +2 F +22(*DA +2RCTAN +2 INTE +2GRAL +2= *,X +210.6, +2W0), +2 +2 +2 +2 +2 +22 +2 F +23(*LO +2GISTI +2C INT +2EGRAL +2 =*,X +210.6, +2W0); +2 +2 +2 +2 +2 +22 FIN +2ISH; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 diff --git a/software/BALGOL/BALGOL-Generator/BALGOL-Generator-List.lst b/software/BALGOL/BALGOL-Generator/BALGOL-Generator-List.lst index 0b6c096..59c2c10 100644 --- a/software/BALGOL/BALGOL-Generator/BALGOL-Generator-List.lst +++ b/software/BALGOL/BALGOL-Generator/BALGOL-Generator-List.lst @@ -1,4 +1,4 @@ -Assembler for the Burroughs 220 BAC Generator -- 2018-07-07 10:18 +Assembler for the Burroughs 220 BAC Generator -- 2018-09-23 17:49 Source File: BALGOL-Generator.card Pool Data: BALGOL-Generator-PoolSet.js @@ -16,7 +16,6 @@ LITERAL POOL LENGTH = 183, LAST = 183 END PASS 1, ERRORS = 0 RESTARTING PASS 1 TO RE-RESOLVE SYMBOLS - START PASS 1 UNRESOLVED LABEL REFERENCES = 0 @@ -54,7 +53,7 @@ START PASS 2 27 LODOX IS 5200+74 28 LIBRARYTABLE 29 IS 1857 - 30 NUMB IS 4800+1335 + 30 NUMB IS 4800+1334 **ON LISTING AS 4800+1335** 31 LOD2 IS 4800+3127 32 POSCT IS 4800+3384 33 HALT IS 4800+3450 @@ -438,17 +437,17 @@ START PASS 2 390 391 DJ 00 392 0312 0 0000 00 0024 1 (24) - 393 0313 3 0000 35 0061 3J (NUMB/100)(04)+(NUMB//100)(64) + 393 0313 3 0000 34 0061 3J (NUMB/100)(04)+(NUMB//100)(64) 394 0314 1 0408 27 1677 -DFL IA/04,8 - 395 0315 3 0000 36 0061 3J ((NUMB+1)/100)(04)+((NUMB+1)//100)(64) + 395 0315 3 0000 35 0061 3J ((NUMB+1)/100)(04)+((NUMB+1)//100)(64) 396 0316 1 0414 26 1677 -IFL IA/04,14 - 397 0317 3 0000 37 0061 3J ((NUMB+2)/100)(04)+((NUMB+2)//100)(64) + 397 0317 3 0000 36 0061 3J ((NUMB+2)/100)(04)+((NUMB+2)//100)(64) 398 0318 1 0409 27 1677 -DFL IA/04,9 - 399 0319 3 0000 42 0061 3J ((NUMB+7)/100)(04)+((NUMB+7)//100)(64) + 399 0319 3 0000 41 0061 3J ((NUMB+7)/100)(04)+((NUMB+7)//100)(64) 400 0320 1 0414 26 1677 -IFL IA/04,14 - 401 0321 3 0000 43 0061 3J ((NUMB+8)/100)(04)+((NUMB+8)//100)(64) + 401 0321 3 0000 42 0061 3J ((NUMB+8)/100)(04)+((NUMB+8)//100)(64) 402 0322 1 0408 27 1677 -DFL IA/04,8 - 403 0323 3 0000 47 0061 3J ((NUMB+12)/100)(04)+((NUMB+12)//100)(64) + 403 0323 3 0000 46 0061 3J ((NUMB+12)/100)(04)+((NUMB+12)//100)(64) 404 0324 1 0414 26 1677 -IFL IA/04,14 405 0325 3 0000 67 0079 3J ((LOD2+40)/100)(04)+((LOD2+40)//100)(64) 406 0326 1 4209 27 1677 -DFL IA/42,09 @@ -2157,7 +2156,7 @@ SYMBOL TABLE 1798 LL0 1008 LLC 1799 LMAX 2 LOAD 4217 LOCN 7927 LOD2 5274 LODOX 4227 MAMAX 224 MAMAXP 1223 MATCHSRF 1177 MATCHSRF.1 473 MOW 448 MRD 1045 NAME 1074 NAME2 - 1800 NI 6135 NUMB 351 NUMBER 1005 NUMBERWORDS 1121 NUMERIC + 1800 NI 6134 NUMB 351 NUMBER 1005 NUMBERWORDS 1121 NUMERIC 3129 NUTBL 780 OK 992 OREL 233 OSWITCH 781 OTBL 364 OUTPUTFORMATS 767 OUTPUTMEDIA 8184 POSCT 1801 PRINTER 1802 PRMAX 247 PROCESSBIT 2241 PRTABLE 1120 PSDO 308 PTVER 1803 PUNCH @@ -2183,7 +2182,6 @@ SYMBOL TABLE 4099 XONE 5227 ZERO - ASSEMBLE PROGRAM UNIT #2: START PASS 1 @@ -2194,7 +2192,6 @@ LITERAL POOL LENGTH = 6, LAST = 6 END PASS 1, ERRORS = 0 RESTARTING PASS 1 TO RE-RESOLVE SYMBOLS - START PASS 1 UNRESOLVED LABEL REFERENCES = 0 @@ -2576,3 +2573,4 @@ SYMBOL TABLE 0 LOADL 29 LOADP 77 LODOX 51 M 333 MRD 73 O 1 OT 388 OUTFMT 115 PFMT 67 R 78 SECT 72 X 74 Z 25 ZERO + diff --git a/software/BALGOL/BALGOL-Generator/BALGOL-Generator-Object.tape b/software/BALGOL/BALGOL-Generator/BALGOL-Generator-Object.tape index 4a199c4..5c4aab6 100644 --- a/software/BALGOL/BALGOL-Generator/BALGOL-Generator-Object.tape +++ b/software/BALGOL/BALGOL-Generator/BALGOL-Generator-Object.tape @@ -1,7 +1,7 @@ 0,100,300002,300023,18500000,4450000,10001520000,420006,1450999,10000120000,1210007,360015,40092355,1580000,272002720,420007,300004,1101270016,4000420007,999200018,412400007,320004,1105270016,410400007,310046,18500000,420025,4001450998,10000120000,1210026,420026,10000410999,10000400999,10000110999,10000400999,10000560000,10001400999,999200036,412400026,1101270025,320024,310040,18500000,1248008421,7450000,410400026,1106270025,300002,60092349,1101260051,1101260049,640051,300049,2621517,8500000,440115,300107,10182337,350134,10182411,350139,10182394,350268,10182416,350290,10182302,350144,10182414,350161,10182293,350240,10182340,350167,10182341,350172,10182410,350178,10182420,350192,10182393,350225,10182397,350245,10182335,350248,10182396,350260,10182381,350266,10182365,350100,10182440,350603,10182291,350767,10182310,350387,50092382,160091778,10092342,1370007310,300098 0,100,440115,300107,10182374,350364,10182418,350360,300095,460116,440125,300117,490008,190116,102270110,320108,100116,300115,0,502260133,9400280133,10000101778,420133,160210126,10000490002,172270,360117,300125,410051,1111400128,10601793,101793,460133,2330117,300095,158,502270133,440125,300117,213360053,300117,440359,300352,490007,3310401520,300134,440350,300337,401676,121676,490006,4210402451,440350,300337,401676,121676,490006,4410402449,4204272451,300134,102449,14410401677,300514,440350,300337,490009,1110401801,1110400792,300134,440350,300337,490009,1110401803,300134,440350,300337,490009,1110401823,1110400621,300134,440359,300352,490007,3310401827,2490003,160000,2480010,1480010,101827,122441,370190,132272,3310401828,300134,410051,1111400195,1111400219,11601539,101527,2330134,1450000,422442 0,100,10000121533,1210200,360206,60092434,9669009669,300204,101536,420223,402260386,10000402449,101535,121534,411532,100370217,102370221,103371533,1430000,10000402448,2260223,10601539,300195,3430000,300217,14,0,440350,300337,200360231,120092422,1370007310,300229,122443,8210400239,10134,410402459,122445,410402457,410404240,300134,4900,440350,300337,122443,6229260233,300234,501260247,300134,0,440350,300337,400256,410400259,422279,440385,300376,300134,0,2,840081,10000,1260265,440350,300337,403505,300134,0,4201262461,300134,440350,300337,410400283,410404241,410400285,401270285,490004,6410400287,6410400289,422282,440385,300376,300134,8,740052,300000,270052,290000,210042,0,320016,20000000000,440115,300107,10182419,350134,10182338,350308,10182360,350299,300095,422287 -0,100,440385,300376,300134,4,170045,674517,220045,44523309898,422288,440385,300376,300134,24,30000350061,10408271677,30000360061,10414261677,30000370061,10409271677,30000420061,10414261677,30000430061,10408271677,30000470061,10414261677,30000670079,14209271677,30000940079,10409271677,30000960079,10409271677,30000980079,10409271677,30000000080,10409271677,30000240080,14209271677,440125,300117,9108360341,300117,460351,1480001,100351,1490001,400351,440125,300117,9108360342,100351,300350,0,440350,300337,490002,401676,440350,300337,121676,300359,440350,300337,122444,300366,440350,300337,401675,421675,10000420372,440385,300376,300134,1645,1658,1667,1672,10000100000,412400384,401260384,420386,190386,190223,490007,3210400384,290000,300385,2462,411520,3211400389,2008500000,1000380392,6202261424,4450000,10000412448,811182454,99370403,1350402,10000102449,1200370401,120239 +0,100,440385,300376,300134,4,170045,674517,220045,44523309898,422288,440385,300376,300134,24,30000340061,10408271677,30000350061,10414261677,30000360061,10409271677,30000410061,10414261677,30000420061,10408271677,30000460061,10414261677,30000670079,14209271677,30000940079,10409271677,30000960079,10409271677,30000980079,10409271677,30000000080,10409271677,30000240080,14209271677,440125,300117,9108360341,300117,460351,1480001,100351,1490001,400351,440125,300117,9108360342,100351,300350,0,440350,300337,490002,401676,440350,300337,121676,300359,440350,300337,122444,300366,440350,300337,401675,421675,10000420372,440385,300376,300134,1645,1658,1667,1672,10000100000,412400384,401260384,420386,190386,190223,490007,3210400384,290000,300385,2462,411520,3211400389,2008500000,1000380392,6202261424,4450000,10000412448,811182454,99370403,1350402,10000102449,1200370401,120239 0,100,132421,400224,2200393,100224,130616,400224,122445,400602,400991,130239,122299,490008,1480002,480004,1480008,100616,122300,440601,300573,100224,130780,400224,122445,400602,400992,130239,122299,490008,1480002,480004,1480008,100780,122294,440601,300573,410224,1400443,422290,440385,300376,300444,2,310042,0,420256,9999200448,2100580000,300445,101521677,1422412,101519,10410183246,350496,2200450,422297,10001101677,440931,4330932,1210455,421519,10000102157,410400471,2480004,410400467,401676,6400281676,1450000,10000130000,1210467,121777,461777,400000,310473,422323,441448,301424,401261519,101519,410182289,350483,410182295,340516,300448,2201580000,2200524800,461777,464800,422317,1450000,10000134800,1210489,404800,2201580000,2200564800,300580000,300448,10000103247,10000413246,2401676,16400283246 0,100,1230370512,10000401677,1220370510,1200370508,430000,120239,132421,10410401677,421676,300453,1001031677,300508,400513,0,421676,300453,4400280519,10000299500,1101270520,4500320517,3000420247,1210993,100521677,422323,441448,301424,101677,182277,1350522,1000380531,6202260540,3000422323,294500,422297,10001101677,440931,4330932,5330932,1210534,422323,12100540000,1261449,8101260532,1101270531,320531,300546,70092324,8500000,101449,1480004,1450000,3000490001,1109260551,122269,1490001,310551,2430000,401675,10091675,40092345,411520,3211400562,2008500000,420265,9999200571,422446,8101260567,293400,1101270570,320566,4000301028,757007250,300571,403249,1403250,420386,413250,10001400000,6400283249,10001100000,8330587,6330584,10000100000,300591,1480006,120602,1490006,120602,10010400000,1450000,10000120000,420386,10000400001,6401263249,6201263250,402260386,401273249,310599,300600,401263250 0,100,320575,300601,0,410051,1111400607,1111400614,460616,11601539,101527,2330134,101536,1260616,420616,10000400616,10601539,300607,6,10000,80000420000,80412400005,14400289999,11010600015,300622,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 diff --git a/software/BALGOL/BALGOL-Generator/BALGOL-Generator.bacg b/software/BALGOL/BALGOL-Generator/BALGOL-Generator.bacg index 8c0c932..c5afbfe 100644 --- a/software/BALGOL/BALGOL-Generator/BALGOL-Generator.bacg +++ b/software/BALGOL/BALGOL-Generator/BALGOL-Generator.bacg @@ -27,7 +27,7 @@ 27 LODOX IS 5200+74 28 LIBRARYTABLE 29 IS 1857 - 30 NUMB IS 4800+1335 + 30 NUMB IS 4800+1334 **ON LISTING AS 4800+1335** 31 LOD2 IS 4800+3127 32 POSCT IS 4800+3384 33 HALT IS 4800+3450 diff --git a/software/BALGOL/BALGOL-Generator/BALGOL-Generator.card b/software/BALGOL/BALGOL-Generator/BALGOL-Generator.card index cce6890..c98bf97 100644 --- a/software/BALGOL/BALGOL-Generator/BALGOL-Generator.card +++ b/software/BALGOL/BALGOL-Generator/BALGOL-Generator.card @@ -27,7 +27,7 @@ 1 LODOX IS 5200+74 1 LIBRARYTABLE 1 IS 1857 -1 NUMB IS 4800+1335 +1 NUMB IS 4800+1334 **ON LISTING AS 4800+1335** 1 LOD2 IS 4800+3127 1 POSCT IS 4800+3384 1 HALT IS 4800+3450 diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/Cardatron-Media.txt b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/Cardatron-Media.txt index ab889f3..c0b7a32 100644 --- a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/Cardatron-Media.txt +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/Cardatron-Media.txt @@ -39,11 +39,11 @@ From BALGOL-Main: Format Bands 1 FR1 FBGR INPUT,T2Z1B4A,15(T5A) 046 57 0 1 FR2 FBGR INPUT,16(P5A),P10Z 046 58 0 -1 FR3 FBGR PRINT,49B,TZZZZZZNNNN,BBB,SBNNNNBNNBNNNN,BT5A,44B 046 59 0 -1 FR6 FBGR PRINT,49B,TZZZZZZNNNN,BBB,SBNNNNBNNBZZZZ,5BT5A,44B 046 60 0 -1 FR7 FBGR PRINT,49B,TZZZZZZNNNN,BBB,T6Z10BNNNN,50B 046 61 0 -1 FR4 FBGR PRINT,7(T5A),85B 046 62 0 -1 FR8 FBGR PRINT,TZZNNNNZZZZ,4B,16(T5A),32B 046 63 0 +1 FR3 FBGR PRINT,49B,TZZZZZZNNNN,BBB,SBNNNNBNNBNNNN,BT5A,44B 046 59 0 Machine Instructions, band 1 +1 FR6 FBGR PRINT,49B,TZZZZZZNNNN,BBB,SBNNNNBNNBZZZZ,5BT5A,44B 046 60 0 Forward References, band 3 +1 FR7 FBGR PRINT,49B,TZZZZZZNNNN,BBB,T6Z10BNNNN,50B 046 61 0 Fix-ups, band 5 +1 FR4 FBGR PRINT,7(T5A),85B 046 62 0 Error messages, band 4 +1 FR8 FBGR PRINT,TZZNNNNZZZZ,4B,16(T5A),32B 046 63 0 Algol statements, band 2 From Library REED listing: Cardatron input routine for Library: diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/Hello-World-BALGOL.card b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/Hello-World-BALGOL.card new file mode 100644 index 0000000..2559730 --- /dev/null +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/Hello-World-BALGOL.card @@ -0,0 +1,4 @@ +2 COMMENT PAPER-TAPE HELLO WORLD PROGRAM; +2 FORMAT F1(*HELLO WORLD*,W0); +2 WRITE(;; F1); +2 FINISH; diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/Hello-World-BALGOL.pt b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/Hello-World-BALGOL.pt index 988eada..7122960 100644 --- a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/Hello-World-BALGOL.pt +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/Hello-World-BALGOL.pt @@ -1,64 +1,56 @@ 2 COMM 2ENT P 2APER- -2TAPE +2TAPE 2HELLO -2WORLD -2PROGR -2AM; -2 -2 -2 -2 -2 -2 -2 -2 +2 WORL +2D PRO +2GRAM; +2 +2 +2 +2 +2 +2 2 FORM 2AT F1 2(*HEL 2LO WO -2RLD*) -2; -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 +2RLD*, +2W0); +2 +2 +2 +2 +2 +2 +2 +2 2 WRIT -2E(;; -2F1); -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 +2E(;; +2F1); +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 2 FINI -2SH; -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 +2SH; +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 +2 diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/Hello-World-Code-List.lst b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/Hello-World-Code-List.lst new file mode 100644 index 0000000..75b164d --- /dev/null +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/Hello-World-Code-List.lst @@ -0,0 +1,409 @@ + +0200 BAC-220 STANDARD VERSION 2/1/62 + +0200 COMMENT PAPER-TAPE HELLO WORLD PROGRAM$ + 0200 0 0000 30 + 0201 2 4845 53 5356 + 0202 2 0066 56 5953 + 0203 3 4414 00 0000 + 0204 0 0006 60 0000 + 0205 1 0000 00 0201 + +0200 FORMAT F1%*HELLO WORLD*,W0¤$ + 0200 0206 + +0206 WRITE%$$ F1¤$ + 0206 0 0000 10 0207 + 0207 0 0000 01 0201 F1 + 0208 0 0000 44 4760 WRITE + 0209 0 0000 30 4760 + +0210 FINISH$ + 0210 0 9669 00 9669 + 0211 0 1000 60 0000 + 4760 0 0100 01 0000 + 4761 0 0410 40 4796 + 4762 0 0000 42 4764 + 4763 0 0010 29 4996 + 4764 0 0300 29 0101 + 4765 0 0000 42 4760 + 4766 0 0412 40 4845 + 4767 1 0000 41 9999 + 4768 0 0009 43 7557 + 4769 0 2200 37 4773 + 4770 0 0000 42 0100 + 4771 1 0000 44 0000 + 4772 1 2201 37 0001 + 4773 0 0000 40 0132 + 4774 0 0412 40 4827 + 4775 0 0000 41 0130 + 4776 0 0000 37 4794 + 4777 0 0000 10 0134 + 4778 0 0000 46 0133 + 4779 0 5246 37 4956 + 4780 0 5267 37 4932 + 4781 0 5249 37 4870 + 4782 0 5262 37 4983 + 4783 0 5241 37 4785 + 4784 0 0000 30 4971 + 4785 0 0000 41 4803 + 4786 0 0001 27 0129 + 4787 0 0000 44 4928 + 4788 0 0000 30 4919 + 4789 0 0000 10 0129 + 4790 0 0000 36 4810 + 4791 0 2299 37 4824 + 4792 0 0001 49 0010 + 4793 0 0000 30 4786 + 4794 0 0000 42 4761 + 4795 0 0000 31 4643 ERROR + 4796 0 0000 10 9999 + 4797 0 0401 26 4796 + 4798 0 0000 33 4812 + 4799 0 0000 41 4803 + 4800 0 0001 33 4828 + 4801 0 2214 36 4796 + 4802 0 0000 44 4928 + 4803 0 9900 30 4919 + 4804 0 2299 37 4796 + 4805 0 0001 49 0010 + 4806 0 0000 30 4801 + 4807 0 0000 10 0129 + 4808 0 0000 19 0125 + 4809 0 0000 19 0125 + 4810 0 0000 10 0130 + 4811 0 3300 36 4794 + 4812 0 3300 36 4814 + 4813 0 0000 13 4997 + 4814 0 0000 40 0130 + 4815 0 0210 40 0131 + 4816 0 0001 48 0002 + 4817 0 0310 40 0129 + 4818 0 7242 36 4807 + 4819 0 7266 36 4848 + 4820 0 7257 36 4856 + 4821 0 7263 36 4858 + 4822 0 7243 36 4847 + 4823 0 0300 36 4796 + 4824 0 0000 10 0132 + 4825 0 0000 40 0134 + 4826 0 0009 33 4807 + 4827 0 0000 30 9999 + 4828 0 0000 42 4796 + 4829 0 6600 36 4844 + 4830 0 0001 49 0003 + 4831 0 0300 37 4838 + 4832 0 0000 13 4997 + 4833 0 3300 36 4840 + 4834 1 6301 27 9999 + 4835 1 0000 41 9999 + 4836 0 0411 40 4796 + 4837 0 0000 30 4796 + 4838 1 3310 40 9999 + 4839 0 0000 30 4832 + 4840 1 0000 10 9999 + 4841 0 0001 48 0003 + 4842 1 6610 40 9999 + 4843 0 0000 30 4796 + 4844 0 0000 10 0132 + 4845 0 0009 33 9999 + 4846 0 0000 30 4835 + 4847 0 1008 61 0124 + 4848 0 0001 48 0003 + 4849 0 3111 40 4850 + 4850 0 2408 44 4676 REED + 4851 0 0101 30 4676 REED + 4852 0 0000 42 4854 + 4853 0 0010 29 4996 + 4854 0 0240 29 0101 + 4855 0 0000 30 4810 + 4856 0 1008 61 0124 + 4857 0 0000 30 4852 + 4858 0 0300 36 4863 + 4859 0 0010 09 4862 + 4860 0 0001 12 4840 + 4861 0 0000 30 4858 + 4862 2 1602 02 0202 + 4863 0 0000 10 0125 + 4864 0 0000 36 4810 + 4865 0 0000 12 4933 + 4866 0 0001 48 0004 + 4867 0 3211 40 4868 + 4868 0 0990 09 0101 + 4869 0 0000 30 4852 + 4870 0 0000 42 4880 + 4871 0 0000 36 4929 + 4872 0 1100 36 4930 + 4873 0 0000 40 0134 + 4874 0 0003 45 0080 + 4875 0 0002 40 0128 + 4876 0 0000 46 0126 + 4877 0 0410 40 0126 + 4878 0 0001 40 0127 + 4879 0 0000 10 0134 + 4880 0 0002 48 0010 + 4881 0 0001 43 0023 + 4882 0 0000 12 0129 + 4883 0 0000 13 0128 + 4884 0 0001 33 4971 + 4885 0 0000 19 0125 + 4886 0 5000 19 0125 + 4887 0 0000 10 0134 + 4888 0 0000 41 4924 + 4889 0 0000 44 4928 + 4890 0 0001 33 4918 + 4891 0 0001 27 0128 + 4892 0 0000 32 4904 + 4893 0 0000 41 0127 + 4894 0 0000 37 4810 + 4895 0 0000 41 4881 + 4896 0 0000 44 4928 + 4897 0 0000 30 4918 + 4898 0 0000 10 0127 + 4899 0 0000 13 4886 + 4900 0 0000 42 4816 + 4901 0 0000 46 0129 + 4902 0 0003 26 0129 + 4903 0 0000 30 4873 + 4904 0 0001 27 0126 + 4905 0 0000 41 0126 + 4906 0 0000 37 4912 + 4907 0 0000 41 0133 + 4908 0 0000 37 4914 + 4909 0 0001 27 0133 + 4910 0 0000 41 4874 + 4911 0 0000 30 4918 + 4912 0 0000 41 4841 + 4913 0 0000 30 4918 + 4914 0 0000 10 0134 + 4915 0 0000 41 4933 + 4916 0 0001 49 0001 + 4917 0 0000 40 0134 + 4918 0 0001 49 0018 + 4919 0 0001 48 0008 + 4920 0 0001 42 0125 + 4921 1 0000 49 0008 + 4922 0 9400 28 0125 + 4923 0 0024 21 4928 + 4924 0 0000 43 0020 + 4925 1 0000 12 0125 + 4926 1 0010 40 0125 + 4927 0 0002 26 0125 + 4928 0 0000 30 9999 + 4929 0 0009 21 4874 + 4930 0 0000 49 0051 + 4931 0 0001 21 4872 + 4932 0 0002 45 7557 + 4933 0 0001 48 0008 + 4934 0 0410 18 4998 + 4935 0 0001 40 0134 + 4936 0 0001 34 4946 + 4937 0 0410 40 4944 + 4938 0 0449 27 4944 + 4939 0 0000 42 4944 + 4940 0 0000 10 0130 + 4941 0 0001 48 0004 + 4942 0 4211 40 4945 + 4943 0 0000 10 4944 + 4944 0 0002 45 9999 + 4945 0 0000 20 4875 + 4946 0 0000 43 7557 + 4947 0 0000 13 4998 + 4948 0 0210 40 0133 + 4949 0 0211 18 0130 + 4950 0 0000 35 4953 + 4951 0 0000 10 4998 + 4952 0 0000 30 4937 + 4953 0 0000 10 4930 + 4954 0 1110 40 0134 + 4955 0 0000 30 4937 + 4956 0 0304 27 0129 + 4957 0 0000 32 4960 + 4958 0 0000 30 4970 + 4959 0 0000 10 4999 + 4960 0 0000 36 4959 + 4961 0 0002 45 7557 + 4962 0 2210 40 4885 + 4963 0 0001 48 0008 + 4964 0 0001 40 0134 + 4965 0 0002 48 0010 + 4966 0 0000 12 0130 + 4967 0 0000 17 4930 + 4968 0 0310 18 0129 + 4969 0 0001 34 4979 + 4970 0 0004 26 0129 + 4971 0 0000 10 0129 + 4972 0 0000 19 0125 + 4973 0 0000 19 0125 + 4974 0 0002 27 0125 + 4975 0 0000 41 4986 + 4976 0 0000 44 4928 + 4977 0 0000 30 4918 + 4978 0 0000 30 4810 + 4979 0 0000 41 4885 + 4980 0 0000 10 4916 + 4981 0 0000 42 0131 + 4982 0 0001 20 4875 + 4983 0 0002 45 7557 + 4984 0 0001 48 0008 + 4985 0 0001 40 0134 + 4986 0 0000 43 0014 + 4987 0 0000 13 4998 + 4988 0 0002 45 7557 + 4989 0 0001 33 4994 + 4990 0 0210 18 0130 + 4991 0 0000 34 4971 + 4992 0 0000 12 4916 + 4993 0 0000 30 4981 + 4994 0 0010 40 0133 + 4995 0 0000 30 4980 + 4996 2 0000 00 0000 + 4997 0 0010 00 0000 + 4998 0 0000 00 0050 + 4999 0 5000 00 0000 + 4622 0 0000 44 4655 + 4623 0 0000 30 4651 + 4624 2 5945 62 6453 + 4625 2 6300 56 6463 + 4626 2 0056 46 0059 + 4627 2 4155 47 4500 + 4628 2 4955 00 0000 + 4629 0 0000 44 4655 + 4630 0 0000 30 4651 + 4631 2 5945 62 6453 + 4632 2 6300 64 5544 + 4633 2 4546 49 5545 + 4634 2 4400 46 5659 + 4635 2 0000 00 0000 + 4636 0 0000 44 4655 + 4637 0 0000 30 4651 + 4638 2 5945 62 6453 + 4639 2 6300 49 5353 + 4640 2 2044 45 4649 + 4641 2 5545 44 0046 + 4642 2 5659 00 0000 + 4643 0 0000 46 4664 + 4644 0 0000 44 4655 + 4645 0 0000 30 4653 + 4646 0 0000 00 0000 + 4647 2 0041 59 4963 + 4648 2 4854 45 6349 + 4649 2 4300 56 6545 + 4650 2 5946 53 5666 + 4651 0 0001 40 4664 + 4652 0 0003 45 0000 + 4653 0 0412 40 4658 + 4654 0 0000 42 4675 + 4655 0 0050 29 0033 + 4656 0 1106 44 4676 REED + 4657 0 4659 30 4676 REED + 4658 0 0000 30 0036 + 4659 0 0000 00 0000 + 4660 0 0000 00 0000 + 4661 0 0000 00 0000 + 4662 0 0000 00 0000 + 4663 0 0000 00 0000 + 4664 0 0000 00 0000 + 4665 0 0000 00 0000 + 4666 0 0000 00 0000 + 4667 0 0000 00 0000 + 4668 0 0000 00 0000 + 4669 0 0000 00 0000 + 4670 0 5000 00 0000 + 4671 0 0000 00 0000 + 4672 0 0000 00 0000 + 4673 0 5110 00 0000 + 4674 0 0000 00 0000 + 4675 0 0000 00 4659 + 4676 0 0000 01 0000 + 4677 0 0000 42 4676 + 4678 0 0412 40 4754 + 4679 0 0001 40 4759 + 4680 1 0000 41 9998 + 4681 0 3122 37 4691 + 4682 0 3133 37 4688 + 4683 0 3144 37 4690 + 4684 0 3155 37 4688 + 4685 0 3166 37 4690 + 4686 0 3177 37 4688 + 4687 0 0000 30 4691 + 4688 0 1010 06 4757 + 4689 0 0000 30 4692 + 4690 0 1010 06 4756 + 4691 0 1010 06 4756 + 4692 1 4400 28 9999 + 4693 0 4144 37 4696 + 4694 0 4166 37 4726 + 4695 0 0000 30 4727 + 4696 0 1010 06 4758 + 4697 1 0000 10 0000 + 4698 0 0010 40 4755 + 4699 0 1010 06 4755 + 4700 1 0000 10 0001 + 4701 0 0001 48 0008 + 4702 0 0000 49 0002 + 4703 0 0001 49 0004 + 4704 0 0000 49 0001 + 4705 0 0002 43 0000 + 4706 0 0002 49 0001 + 4707 0 0010 40 4755 + 4708 0 1010 06 4755 + 4709 1 1010 06 0002 + 4710 0 0000 10 4756 + 4711 0 0000 49 0002 + 4712 0 0000 40 4755 + 4713 1 0000 10 0003 + 4714 0 0210 40 4755 + 4715 0 1010 06 4755 + 4716 0 0000 10 4756 + 4717 0 0000 49 0002 + 4718 0 0000 40 4755 + 4719 1 0000 10 0004 + 4720 0 0410 40 4755 + 4721 0 6212 40 4755 + 4722 0 0000 33 4724 + 4723 0 5102 26 4755 + 4724 0 1010 06 4755 + 4725 0 0000 30 4743 + 4726 0 1010 06 4758 + 4727 0 0412 40 4742 + 4728 0 0412 40 4736 + 4729 0 0000 42 4676 + 4730 1 0000 10 9998 + 4731 0 0000 48 0001 + 4732 0 3210 40 4742 + 4733 0 0000 48 0001 + 4734 0 4410 40 4733 + 4735 0 4401 28 4733 + 4736 1 0000 10 0000 + 4737 0 0000 36 4739 + 4738 0 0000 30 4742 + 4739 0 3201 27 4742 + 4740 0 0001 21 4736 + 4741 0 0000 30 4743 + 4742 0 1000 06 0000 + 4743 0 0000 42 4676 + 4744 1 0000 41 9998 + 4745 0 3111 37 4750 + 4746 0 3122 37 4752 + 4747 0 3166 37 4752 + 4748 0 3199 37 4750 + 4749 0 0000 30 4753 + 4750 0 1010 06 4757 + 4751 0 0000 30 4753 + 4752 0 1010 06 4756 + 4753 0 0000 41 4759 + 4754 0 0000 30 0000 + 4755 2 0000 00 0000 + 4756 2 1602 02 0202 + 4757 2 1615 02 0202 + 4758 2 0000 00 0000 + 4759 0 0000 00 0000 +COMPILED PROGRAM ENDS AT 0211 +PROGRAM VARIABLES BEGIN AT 4622 + + + + + +HELLO WORLD diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-Compiler.tape b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-Compiler.tape index 6a412ce..a12e806 100644 --- a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-Compiler.tape +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-Compiler.tape @@ -13,11 +13,11 @@ 0,100,301092,100297,440846,301819,100296,440846,301819,301237,441313,301310,214361211,301184,420254,1211216,460182,2258260182,1260254,441352,301339,410230,1400187,1260253,441313,301310,220361230,234361230,210361231,9108361234,441687,1184301682,30129300000,6101261355,441313,301310,301226,400223,206270199,301240,460253,6112401355,100223,460230,460182,460254,110400230,300850,847440846,301676,1249440846,301676,420274,11210260000,10000100000,1260272,2330850,1260267,300850,6206271290,460267,6400280201,10000100000,6400361278,1267361912,441687,1305301682,30617000000,331273,414231,1400242,410466,1400185,444046,301793,301284,6400280201,10000410000,442962,304065,301284,104217,16410400000,301284,442820,620302736,6229261280,6400280201,441755,1265301752,410205,1014217,100262,361305,6400280247,444054,304053,6400280201,412401301,100201,331299,11210260001 0,100,444046,301771,1101301,11305,2331306,6331306,301305,442694,310302706,6229261302,301305,441598,301582,361582,301313,420267,1211334,441352,301339,441537,301514,6400280201,10000100000,1107361330,2210400201,1106361332,100201,170667,440846,301819,301329,490004,301327,1102260201,301325,411102,1400197,421329,14400289999,10000300000,460229,100254,361353,100230,2300361347,2201260182,2480001,301343,1480010,100182,811400182,220182,400230,301352,100253,361366,1100230,8800361360,441687,1364301682,33436373800,490008,1120187,311357,331351,1450000,301351,2201260229,301352,120204,172338,121907,410400201,414216,1490004,6411400201,101402,2310400201,480002,4310401389,4200361397,420201,10000410000,100201,371386,441738,301728,16710400000,424216,4319261389,290229,2404216,414216,411184227,341746,6400280201,10000460000,301396,2101261389,301380 0,100,100197,490008,2310401402,1100230,1480010,152338,1400204,410266,100265,371426,410105,361417,441674,301648,301477,2100371417,2101371417,410221,2111400220,100200,441396,301368,410220,12111400000,410267,371441,301475,361447,100200,441674,301649,301447,410255,371441,410201,1400206,100296,440846,301819,410206,1400201,460255,420281,10000410000,6400280201,1270371505,10000100000,301446,441674,301648,301459,11320,2274371431,1107371440,1109371479,2283371480,2103371473,444054,1103374053,301431,100203,361471,1450009,441674,301649,301470,2274371431,1107371440,1104371431,1103371454,1108371454,100203,441396,301368,410267,371480,11101270000,301440,100200,301471,460255,420281,10000410000,6411180348,1351488,100220,6400280201,12110400000,301441,100230,420286,9999201503,10000410001,1400154,6400280154,2211401495,12210180000,420154,1351490,100154 -0,100,2480002,6400280201,12110400000,301431,100221,301500,80000101505,412403627,460267,441738,301728,442694,345302706,1260262,300850,100230,410229,11538,6400280245,2101371520,6400280246,10000180001,351532,412401527,10000420000,9999201526,1201520,424216,412401527,20290229,2404216,11102269998,9998201532,2400201,100201,490004,6410400201,6400280201,301537,2111180241,343756,1343775,6229271516,400240,443752,303741,410240,100174,1260174,442962,302922,301329,441446,301399,1107361320,6411180348,350850,420267,1100361570,1101361564,1109361568,1211565,441687,1320301682,30122240000,9999201320,441687,1577301682,30117240000,1211577,301561,6411180352,1351575,420274,10000100000,3331579,6400280201,11101260000,460267,301320,6400280201,11109260000,301320,11623,9400280225,10000101632,420225,10000490000,144211610,361620,480008,502260225,210400179,301598,490004,287441738,301726,6233361599,100179,301598 -0,100,100279,420287,412400279,10000410000,10410400000,411400287,400371607,301599,6229261592,100179,301598,4000381613,1642444872,1632304872,444992,1632304992,460225,6212402690,6201262690,2260225,301583,510260225,110400225,301591,420856,10000100000,480004,210400179,9999202564,10000410001,411400856,301598,20002000000,0,0,0,24241432082,28280006263,24155444159,24400654559,26249565500,20000822181,22186820000,0,0,0,0,0,0,100203,120204,172338,121907,400201,420201,9999201674,10000100001,400201,2310181402,1351653,480004,400154,6309260154,410401667,401261667,5401280154,321667,421461,10000101667,10010180230,1351653,1211667,401261674,6400280201,10000410000,301674,1237440846,420846,14400289998,412400846,420222,10000100293,301819,460208,421696,1220260208,60290208,460154,101687,2450000,1480008,361711,410401688,1400329,401261688,421688,10000410100,1450209,1420154,1490002 -0,100,361707,10000490008,9400280154,430000,10000120208,10010400208,502260154,301696,3331693,502260154,100329,301688,4000381713,301715,1642444872,1632304872,706444872,208304872,421687,14400289999,100243,10000300000,100290,490004,460290,301726,104217,421738,14400289998,412401736,410273,400371739,10000410000,420273,16710400000,10000100000,10411400000,412401736,410400273,301738,414227,411184216,411400273,411401744,1274227,461744,341731,441687,157301682,33941430000,460226,421755,14400289998,412401760,10000420000,10000100000,9999201755,9999211757,410273,412400273,10411400000,410401760,421755,14400289999,10000300000,100251,490004,16410400000,401270251,10000100000,6400361764,301770,10000100000,410118,1400185,410247,4412400639,1109361784,410446,1400185,414228,2210400639,1101361784,1108361784,420252,1400242,10000100001,400230,2112400229,441537,301514,441770,301768,490002,4410400612,102133,304023,100343,301799,100344 +0,100,2480002,6400280201,12110400000,301431,100221,301500,80000101505,412403627,460267,441738,301728,442694,345302706,1260262,300850,100230,410229,11538,6400280245,2101371520,6400280246,10000180001,351532,412401527,10000420000,9999201526,1201520,424216,412401527,20290229,2404216,11102269998,9998201532,2400201,100201,490004,6410400201,6400280201,301537,2111180241,343756,1343775,6229271516,400240,443752,303741,410240,100174,1260174,442962,302922,301329,441446,301399,1107361320,6411180348,350850,420267,1100361570,1101361564,1109361568,1211565,441687,1320301682,30122240000,9999201320,441687,1577301682,30117240000,1211577,301561,6411180352,1351575,420274,10000100000,3331579,6400280201,11101260000,460267,301320,6400280201,11109260000,301320,11623,9400280225,10000101632,420225,10000490000,140211610,361620,480008,502260225,210400179,301598,490004,287441738,301726,6233361599,100179,301598 +0,100,100279,420287,412400279,10000410000,10410400000,411400287,400371607,301599,6229261592,100179,301598,4000381613,1642444850,1632304850,444989,1632304989,460225,6212402690,6201262690,2260225,301583,510260225,110400225,301591,420856,10000100000,480004,210400179,9999202564,10000410001,411400856,301598,20002000000,0,0,0,24241432082,28280006263,24155444159,24400654559,26249565500,20000822181,22186820000,0,0,0,0,0,0,100203,120204,172338,121907,400201,420201,9999201674,10000100001,400201,2310181402,1351653,480004,400154,6309260154,410401667,401261667,5401280154,321667,421461,10000101667,10010180230,1351653,1211667,401261674,6400280201,10000410000,301674,1237440846,420846,14400289998,412400846,420222,10000100293,301819,460208,421696,1220260208,60290208,460154,101687,2450000,1480008,361711,410401688,1400329,401261688,421688,10000410100,1450209,1420154,1490002 +0,100,361707,10000490008,9400280154,430000,10000120208,10010400208,502260154,301696,3331693,502260154,100329,301688,4000381713,301715,1642444850,1632304850,706444850,208304850,421687,14400289999,100243,10000300000,100290,490004,460290,301726,104217,421738,14400289998,412401736,410273,400371739,10000410000,420273,16710400000,10000100000,10411400000,412401736,410400273,301738,414227,411184216,411400273,411401744,1274227,461744,341731,441687,157301682,33941430000,460226,421755,14400289998,412401760,10000420000,10000100000,9999201755,9999211757,410273,412400273,10411400000,410401760,421755,14400289999,10000300000,100251,490004,16410400000,401270251,10000100000,6400361764,301770,10000100000,410118,1400185,410247,4412400639,1109361784,410446,1400185,414228,2210400639,1101361784,1108361784,420252,1400242,10000100001,400230,2112400229,441537,301514,441770,301768,490002,4410400612,102133,304023,100343,301799,100344 0,100,442694,302675,441819,300846,6410400154,6400280154,101361809,104361811,105361815,301799,10006330000,301799,10000100000,410401738,4400280281,301728,412401818,420281,10000100000,301818,301803,1331823,16400280000,16273300000,441687,2077301682,31545000000,442694,302678,442694,298302706,100317,301799,1103601,444046,304023,1260267,100321,301799,442694,302699,5260257,6229271844,100302,301799,301835,6229261844,442597,302591,442820,661302736,460186,301835,1260261,104217,6410400330,442694,330302706,100322,2201260257,301799,100340,301858,442694,299302706,442694,302699,1260261,301801,441819,300846,400227,9269361876,442694,339302706,100227,301799,442694,302678,442820,657302736,442694,302699,1260261,301860,6410180348,351893,442694,302678,442820,657302736,4260257,100324,301799,410220,1400221,420203,1211801,1400219,301801 -0,100,1260267,441819,300846,444018,304013,301801,442694,328302706,1454116,301799,444046,304019,301801,460267,441598,100179,213360916,301582,442694,325302706,442694,302699,6229271592,100179,490004,287441738,301726,460256,101260256,301980,460270,410256,101371952,102371938,102270256,460260,442582,302577,301980,442543,302539,278441755,1943301750,6141001942,442962,304064,442694,322302706,1260270,102270257,101260256,100331,301799,420281,10000410000,2202371976,1260256,442694,302678,442553,302544,442582,302572,442571,302554,441819,300846,180313,410342,1351970,410341,1400331,400227,442694,303302706,100227,301799,442553,302544,442582,302572,460257,3260257,301801,2332036,420272,460272,1211801,6410180352,352008,6410180360,352001,420257,10000301993,302023,302012,302039,302039,302025,10444411680 +0,100,1260267,441819,300846,444018,304013,301801,442694,328302706,1454116,301799,444046,304019,301801,460267,441598,100179,213360916,301582,442694,325302706,442694,302699,6229271592,100179,490004,287441738,301726,460256,101260256,301980,460270,410256,101371952,102371938,102270256,460260,442582,302577,301980,442543,302539,278441755,1943301750,6141001942,442962,304064,442694,322302706,1260270,102270257,101260256,100331,301799,420281,10000410000,2202371976,1260256,442694,302678,442553,302544,442582,302572,442571,302554,441819,300846,180313,410342,1351970,410341,1400331,400227,442694,303302706,100227,301799,442553,302544,442582,302572,460257,3260257,301801,2332036,420272,460272,1211801,6410180352,352008,6410180360,352001,420257,10000301993,302023,302012,302039,302039,302025,10440411542 0,100,442694,302678,302023,442674,302640,10001100000,11210260000,331801,1260267,301801,295442597,302586,420274,302003,442694,302678,460270,302041,1100362025,441687,2025301682,34661000000,441687,2027301682,30147000000,442543,302539,283441755,2016301750,277441755,2020301750,460226,460186,460270,460261,460257,460267,301801,442274,302272,301998,442553,302544,1260261,442820,657302736,442694,293012706,278441755,2054301750,442274,302272,460260,279441755,2051301750,302025,442962,304064,302046,100305,302060,100308,400228,442820,657302736,1260267,302077,442597,302591,302061,442820,609302736,6229262045,442694,304302706,100293,301799,293442597,302586,460186,301801,442820,657302736,5260257,442694,302699,1260267,441819,300846,202362699,460184,277441738,301725,420277,100184,2490008,12310400000,460193,460184,441313 0,100,301310,224362089,9108362110,203362115,223362120,214362138,204362119,1480002,100184,1490007,5510400193,302096,1480001,100184,1490001,400184,301310,100184,490002,8310400193,302096,6229272129,100184,410193,372129,8300372156,210400193,442962,302918,420277,9999201801,302095,6229262129,277441755,2134301750,7043002133,2480004,1430000,400193,302125,6235271588,460194,460193,441598,301582,402280194,10000490000,190193,100179,214362153,9992211582,1220260193,442962,302918,302139,1230260193,6235261588,302125,490002,8310400193,302125,1100101,1120100,362164,442962,302948,6401260002,100002,170651,400002,490004,124217,274441738,301726,1260267,404260257,104217,410002,1404217,400205,441819,300846,6239261288,441305,301257,6239271288,100323,301799,442694,302678,1260267,441819,300846,6710180332,352186,180297,352186,180306,351803,6710180316 0,100,1352188,460267,301803,442694,302678,2004500000,2501520400,300700,6410180346,352210,100294,301799,442597,302591,100347,301812,273441738,301726,411402224,411402225,1490014,276441738,301726,420283,16400280000,10000410000,2311402224,812402225,420283,16410400000,442694,319302706,442694,302699,100245,442694,302696,100303,1260260,301799,327442597,302586,442271,302263,442694,303302706,100217,1102362247,302256,6400280217,10000410001,1400309,420276,16400280000,10000100000,173145,140309,16411400000,420276,10000410000,2200371801,100217,282441738,301726,301801,442694,296302706,406262694,277441755,2695301750,441687,2695301682,30147000000,302271,420281,12201280000,100212274,281441755,2278301750,552002277,6410180357,422274,10001350000,420276,16400280000,412402303,412402306,10000420000,412402305,1450000,10000120000,1332293,410243,1400217,302299,442694,302699,442271,302263,442694 @@ -27,7 +27,7 @@ 0,100,290441755,2598301750,288441755,2603301750,1565002602,480004,410400290,302972,290441755,2611301750,100251,490004,401270251,302611,442820,657302736,274441738,301725,288441738,301721,441819,300846,400331,442694,315302706,1260266,1260200,442694,302699,442694,318302706,100251,1480004,4411400623,442820,623302736,1260260,6400280201,100200,10410400000,18201270000,302639,420259,460259,1212661,420274,10000100000,1332661,6400280201,11210260000,420274,10000100000,3332652,302653,1260267,480004,430000,284441738,301726,10000100000,490004,10000400000,11210010000,283441755,2664301750,4,480004,410402668,100251,490004,6410402668,6400280331,18299270000,401270251,420274,12201260000,302674,100362696,101362709,102362699,275441755,2683301750,441687,2699301682,34652540000,6710180317,352688,442972,302977,302678,442274,302272,302694,414217,6411401631,6229262690,302694,400217,283441738,301726 0,100,302694,420260,460260,1212694,420281,12201260000,1450040,302726,422694,14400289999,10000100000,420275,10000410000,6600372726,400224,12210180000,342726,1342729,332718,302726,3100362720,302726,420283,10000410000,1100372729,10000420000,10000410000,1100372729,275441738,301726,302694,275441755,2732301750,10000,442972,302977,100224,302709,422820,14400289999,10000100000,460193,460192,10400193,10400192,400189,410268,372755,460268,6240362752,710180627,1352755,6401274217,302820,6401274217,4101260193,4101260192,184112,342812,420193,10000410239,1105372763,442894,302844,302820,16400280239,10000410000,400190,1107372801,1105372760,11101260000,2400154,10000420000,10000100000,16400280000,10000410000,1103362785,1106372785,441770,301768,6710180186,6710400186,1352786,420154,441755,2801301752,9629000000,460186,420154,441755,2790301752,302796,291441738,301726,16400280000,1103362796,10000100000,1106361752,100664,400193 0,100,460189,291441755,2807301750,100192,1430000,400193,410190,1400189,302760,400248,442894,302844,110664,302797,4332821,6332826,7332842,8332831,1210260193,9332831,442962,302918,302820,410193,711180624,1352818,1260268,302818,104217,480004,1120193,410400193,302818,104217,4430000,410261,372836,7430000,4400280275,410270,372840,4400280278,441738,301728,4104262940,302818,420193,10000410239,16400280239,10000100000,400252,1103372869,1101372861,1102372864,1104372879,1105372903,1108372879,10000410001,1100372858,1400185,441738,6400362912,302879,8332880,10000410001,302865,410135,1400185,441770,6400361764,302880,460252,11400252,100189,3332894,1332877,1490010,290441738,301726,102917,400185,100252,480004,410400193,441738,9332912,8332886,302887,5108362912,124096,1332895,100189,3332893,442962,302918,460185,302894,170157,130188,490008 -0,100,420284,12210180000,352912,16400280000,302899,410189,1210372879,1230372879,100273,2400273,10410400000,420252,10000100001,302878,1100002,490004,170673,124217,301728,26345545700,104217,480004,6401264217,410193,410400183,130101,420180,400362936,134100,400362932,412400207,100183,10000400003,1260180,420207,13201260003,1260180,420180,10001400002,1400184,2000382940,302942,300444872,183304872,4112402940,410183,411400101,410180,1180181,1342962,1422338,1450004,10000130101,1202950,312953,400101,1100560002,1260002,460180,460181,96260181,460003,422949,980290003,302962,1212400240,100240,283441738,301726,420283,10000410000,1100372971,302972,2400226,302972,100609,442820,302739,302972,400216,2333024,3333026,4333201,5333204,7333201,443644,303630,443644,303635,100216,1333026,8333033,6400362995,444004,303792,100175,302965,420281,10000100000,5514235091 +0,100,420284,12210180000,352912,16400280000,302899,410189,1210372879,1230372879,100273,2400273,10410400000,420252,10000100001,302878,1100002,490004,170673,124217,301728,26345545700,104217,480004,6401264217,410193,410400183,130101,420180,400362936,134100,400362932,412400207,100183,10000400003,1260180,420207,13201260003,1260180,420180,10001400002,1400184,2000382940,302942,300444850,183304850,4112402940,410183,411400101,410180,1180181,1342962,1422338,1450004,10000130101,1202950,312953,400101,1100560002,1260002,460180,460181,96260181,460003,422949,980290003,302962,1212400240,100240,283441738,301726,420283,10000410000,1100372971,302972,2400226,302972,100609,442820,302739,302972,400216,2333024,3333026,4333201,5333204,7333201,443644,303630,443644,303635,100216,1333026,8333033,6400362995,444004,303792,100175,302965,420281,10000100000,5514235135 0,100,6710183028,1352991,100240,2221363007,410241,2221373004,302991,1400240,400241,1490010,6400280240,10000410001,1480000,1184100,342991,420276,16400280000,1480000,1450000,10000120000,1332991,1490010,490004,10001120000,16410400000,100241,302965,443644,303630,6400280216,10000300000,122380000,441687,3032301682,30167200000,460216,110240,400240,100216,400215,6210273993,460216,6112403051,444004,303792,6210263993,333045,6401260215,1100363050,430000,400240,443713,303698,442820,667302736,420275,10000410000,6700373064,6402260215,6711180340,353067,6402260215,6711180322,353067,441687,2694301682,30157200000,444046,303076,302965,100273,412400273,10000400000,411400275,444046,303076,460261,1260260,302694,6400280215,10000100776,304023,100240,460268,6710180249,353114,410241,6710180250,1353087,2100373114,333094,442820,303680,443713,303698,100627,303096,1100363092,100643,442820 0,100,302739,443713,303696,4450000,100240,2101363104,1203104,100241,2101363107,2203107,412403100,10000413129,444018,4218204006,423100,10000103113,100302965,1100241,400241,400240,1102363126,442820,303680,100241,1100363126,1110570,442820,302739,1112400240,100296,400216,302991,24667144667,24667144653,24653144667,24653144653,443752,303741,423138,410240,1100373139,9989210634,1353141,9999210000,442820,302738,302963,420283,10013110000,10000400000,302972,410240,102602,2201373157,442820,303684,100240,1333160,2100363160,103590,444046,304023,302963,441687,3156301682,30159610000,410654,1403176,100240,2100363173,1333173,443713,303698,442820,3176302736,303073,441687,3168301682,30159610000,0,442820,303684,443735,303725,1102363184,104113,303157,6400280240,10000100001,490009,1110400640,104109,303157,443752,303741,443713,303698,1480010,104115,2100373198 0,100,104114,444046,304023,302964,442962,304064,302972,6400280216,412400611,100611,302974,283441755,3211301750,302972,400240,460226,6400280228,10000300000,2200280257,1213029,6400280241,10000410000,3411403015,100241,1333294,1400241,10400241,420275,10000100000,6410180294,353233,420281,10000100000,6410180350,1353234,1260264,460268,100241,1109363294,1101363239,1110183238,5001343294,100240,2103363284,1102363270,443713,303698,410241,2111180240,2111400240,353254,2100373251,6400280453,303252,6400280552,444018,304005,1100241,1108363260,1103749,444046,304023,1103015,411302,6201373266,6400280241,444046,301772,303268,2333262,6333262,460264,302964,6410180246,353284,6410180245,353284,2110180241,353242,2100363280,443771,303753,303282,443771,303772,10400240,303270,100817,420264,410241,2312400240,2103260240,1213257,490006,1108373257,490006,303257,2112400240,441687,3268301682 @@ -38,33 +38,33 @@ 0,100,303699,424100,10000100239,412403760,1100363713,442820,303684,423760,10000100239,1333717,10000100569,442820,302739,423760,11212400239,10000100239,333713,442820,10000303666,423760,10000100574,303708,100240,443735,2100363725,442820,1100363667,303724,100240,1102363736,443713,303698,2101363735,6400280453,444018,304005,2101260240,100240,303735,2101363735,443771,303772,10400240,303734,442820,303684,420275,10000410000,6711180313,1353752,275441755,3750301750,3100000000,110240,400241,303752,400154,6400280154,10000100001,460229,460230,363766,2261260230,2450000,1480003,1490001,2201270230,3100363762,810400230,441537,301514,10000100000,2310400201,100201,303771,400154,6400280154,10000100001,460229,2101260229,184110,343789,2450000,1480008,400154,210183783,1450051,1343787,450280154,10001490000,400230,303766,441687,3775301682,33436373800,4454226,410241,1100373798,9996210000,1102373798 0,100,9998200000,2101373800,9999210000,410240,1100373805,9976210000,1102373805,9988200000,2101373807,9994210000,10000410810,1400178,410178,1450000,1490002,1400178,110400196,9103363957,1480001,400191,420191,1101373824,1102373830,1103373833,1104373839,1105373845,303903,6400280552,444018,304005,420191,12112400239,303809,442820,10000303666,303809,10000100239,443771,303753,420191,10010400239,303809,442820,303680,420191,443713,303699,303809,6400280240,410240,10000100001,1490000,400816,6400280241,410241,10000100001,1490000,400309,410216,100191,460229,101363873,100309,6711180303,1353864,220816,303889,6711180296,1353868,240816,303889,6711180314,1353809,2450000,250816,303889,2101260229,100309,6711180303,1353879,120816,303889,6711180296,1353885,140816,1490010,373889,303900,6711180314,1353809,1480010,150816,313900,10400230,400175,441537,301514,10001100000,10400175,410201 0,100,6411400175,100175,304004,441687,3890301682,33436373800,10000100239,333913,410216,2100373913,1420191,10000110242,10000400242,420191,10001100239,10000400239,16400280239,10000410001,373945,1184102,353950,5450000,9999210000,1490019,1100363919,1490001,11184100,1353809,9998203950,100240,170241,2100363809,410216,9999210000,612400594,6248373937,420191,2213809,6224373938,303809,6201260594,6248260594,1420191,443713,9997213699,442820,594302736,303953,6109273051,410216,6500373953,6248373955,303809,410216,6711180296,1353809,1420191,10000100242,400175,304004,442820,303684,100216,480004,172338,400309,400816,100241,2480010,190816,100240,2480010,190816,190816,100216,4100363987,4101363995,100196,190816,110240,333981,170241,1333981,2101363984,441687,3984301682,30159610000,420816,10000100764,304002,100196,120196,190816,190816,420816,10000100668,9988304002,9928204001,100196,15377781547 -0,100,142663,152326,1490010,190816,420816,10000100740,444046,304023,304004,10000410001,1400185,444054,304053,2400242,5104260242,100242,490004,400242,1102574,444046,304023,460186,304018,420274,16400280000,412400630,101942,442820,404036,414036,1454026,1490002,1404036,200364037,232363667,233363668,410404026,424026,10000100569,302739,4036,334046,410240,2111404051,2111404052,2480010,410404026,424026,10000104046,400175,304046,100000000,0,10100000000,10000000000,0,10000000000,10000100000,1104364054,480004,170157,130251,410400251,1490004,16410400000,16401260000,11101260000,304053,414217,400184,1480004,411400184,410400183,7334071,304072,1260184,2000384074,304077,8334077,208444872,183304872,410184,420207,100183,410180101,344092,10000100003,400364092,410180183,344092,130183,490006,4410404089,214090,10411400004,302962,401280181,10001400005,302945,2100004099 +0,100,142663,152326,1490010,190816,420816,10000100740,444046,304023,304004,10000410001,1400185,444054,304053,2400242,5104260242,100242,490004,400242,1102574,444046,304023,460186,304018,420274,16400280000,412400630,101942,442820,404036,414036,1454026,1490002,1404036,200364037,232363667,233363668,410404026,424026,10000100569,302739,4036,334046,410240,2111404051,2111404052,2480010,410404026,424026,10000104046,400175,304046,100000000,0,10100000000,10000000000,0,10000000000,10000100000,1104364054,480004,170157,130251,410400251,1490004,16410400000,16401260000,11101260000,304053,414217,400184,1480004,411400184,410400183,7334071,304072,1260184,2000384074,304077,8334077,208444850,183304850,410184,420207,100183,410180101,344092,10000100003,400364092,410180183,344092,130183,490006,4410404089,214090,10411400004,302962,401280181,10001400005,302945,2100004099 0,100,0,2000004101,0,2100004103,1,2000004105,5110000000,2100000000,2,2000000000,5120000000,3000530003,1604380000,371720000,6099999999,5822570000,9999999999,6034037172,4959035600,4959045600,804610000,0,0,0,403820000,0,1042600000,1203840000,0,842730000,0,842750000,0,0,0,803780537,403804270,0,0,805340000,405440000,804630000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1005460562,604560000,0,0,842394262,605540000,605560000,0,0,1242570000,0,605580000,1203870000,1004650000,1403900504,605640454,1242540000,605664244,1203980000,604010512,642520000,1604050514,604114249,604160516,0,0,0,642470000,0,1004290000,604314241,0,0,1804354266,0,604410000,1804670000,0,604430000,1404450000 -0,100,1404260000,1604580000,0,0,1042340000,1204480524,1003690000,0,0,0,1003714236,0,1203730000,0,0,403760000,0,0,0,0,4277,2000000,3000410003,3000090003,3000380003,3000480003,3100170000,24649670000,3000140001,24653564163,3000560003,4871,4042260000,3000540003,3000220003,4042300000,3000090003,3000720003,3002400003,26659496345,842370000,3001390003,25945414400,3000450000,26258596300,642420455,3000750000,24567570000,642450507,3000870000,25356470000,3000560000,26249550000,642500515,3000100000,24356620000,3000230000,26341550000,3000130000,24159436249,25500000000,3000650000,24159436341,25500000000,3000470000,25956546767,1242630000,3000200000,24159434356,26200000000,1242674108,3000140000,24555634959,24500000000,842710000,3000330000,26249554800,3000240000,26341554800,3000160000,24356624800 +0,100,1404260000,1604580000,0,0,1042340000,1204480524,1003690000,0,0,0,1003714236,0,1203730000,0,0,403760000,0,0,0,0,4277,2000000,3000410003,3000090003,3000380003,3000480003,3100170000,24649670000,3000140001,24653564163,3000560003,4849,4042260000,3000540003,3000220003,4042300000,3000050003,3000840003,3002400003,26659496345,842370000,3001390003,25945414400,3000450000,26258596300,642420455,3000750000,24567570000,642450507,3000870000,25356470000,3000560000,26249550000,642500515,3000100000,24356620000,3000230000,26341550000,3000130000,24159436249,25500000000,3000650000,24159436341,25500000000,3000470000,25956546767,1242630000,3000200000,24159434356,26200000000,1242674108,3000140000,24555634959,24500000000,842710000,3000330000,26249554800,3000240000,26341554800,3000160000,24356624800 0,100,0,0,0,0,3000380303,1000630388,300304,1070060353,1008500000,1300580000,4000380319,1000590333,300307,3000380317,420081,50290100,1001610352,401260347,205260311,310333,300310,1000060100,300333,3000380330,6105260347,420081,50290250,1001610352,405270322,401260347,320321,460347,6101260347,300333,1000060000,1000060100,1000060200,1101520100,100100,99360346,1450100,1420336,10000120200,1200338,310341,360309,40090082,9669009669,1101580000,300333,757007250,10000,0,0,0,0,0,4000380302,300003,1000030000,1000030100,1000030200,300003,60000300300,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333332,0,2222,0,0,22222222222,22222222222,22222222222,22222222222,22222222222 0,100 -0,100,0,0,0,0,41003014586,1008500000,460002,422959,990290002,41008014615,42004014673,42000014644,42006014731,42002014760,42008014702,1300580000,4000384519,304517,80094550,8421001248,304513,1632444872,1632304872,444992,1632304992,300854,20002000000,0,0,0,24241432082,28280005655,20053495545,20048625700,26545596249,25655000000,20000822181,22186820000,0,0,0,0,0,21615000000,20000000000,20000000000,24241432082,28280005741,25745590063,24157450065,24559624956,25500000000,20000822181,22186820000,21600000000,25753454162,24500594541,24468004849,24748206257,24545440057,25949556345,25900000000,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333300,20,3311111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333 +0,100,0,0,0,0,41003014586,1008500000,460002,422959,990290002,41008014615,42004014673,42000014644,42006014731,42002014760,42008014702,1300580000,4000384519,304517,80094550,8421001248,304513,1632444850,1632304850,444989,1632304989,300854,20002000000,0,0,0,24241432082,28280005655,20053495545,20048625700,26545596249,25655000000,20000822181,22186820000,0,0,0,0,0,21615000000,20000000000,20000000000,24241432082,28280005741,25745590063,24157450065,24559624956,25500000000,20000822181,22186820000,21600000000,25753454162,24500594541,24468004849,24748206257,24545440057,25949556345,25900000000,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333300,20,3311111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,21111111111,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333 0,100,33333333333,33333333333,0,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,0,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333300,0,0,0,0,0,0,0,0,333,33332222000,20022220,2200222200,31111111111,0,0,0,0,0,0,0,0,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,30000000000,0,0,0,0,0,0,0,0,33333332222,20022,22002200333,30000000000,31111111111,0,0,0,0,0,0,0,0,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333330000,0,0,0,0,0,0,0,0,33333,33222200000,3333333000,0,22220 0,100,0,0,0,0,0,0,0,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333331111,11111131111,11111131111,11111131111,11111131111,11111131111,11111131111,11111100000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,33333333333,33333333333,33333333333,33333333333,33333333333,33333333222,23333000000,311111111,11311111111,11311111111,11311111111,11311111111,11311111111,11311111111,11311111111,11311111111,11311111111,11311111111,11311111111,11311111111,11311111111,11311111111,11311111111,11000000000 0,100 -0,100,0,0,0,0,403264897,7000384905,424875,104925,10000300000,424907,10294439,50294452,444451,304449,304902,8001454878,490001,1490001,134927,1108264911,314912,1105264916,314921,404465,304911,1480010,104465,304896,9985,4978125000,10000,80,5100000000,5120741240,5062245935,4800000000,4978125000,5120000000,5500000000,5216000000,5110000000,4942415900,5162235322,380273,2404464,424956,314436,404467,424939,14400289999,10000410000,1404989,424939,464992,464993,6412404990,10000109997,334955,134464,410404959,1454943,10000419998,1108374961,124868,304962,124467,2100374973,404991,334966,4220264990,412404971,504444469,4989304469,104467,424464,300273,300033,1480008,464991,8811404991,334978,4220264990,430000,8800374981,134994,223264992,6203264990,110404993,490001,8910404993,9108264993,7108264993,304966,4900000000,23300030000,6223530000,1008500000,1001520000,1001521000,2415748348 -0,100,14709247457,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10000,424872,2404945,10000419998,3100374887,3122374887,3133374884,3144374886,3155374884,3166374886,3177374884,304888,1010064987,304888,1010064986,1010064986,14400289999,4122374909,4100374897,4144374919,4188374928,1480001,3211404895,11230060000,304936,10000100000,444951,304946 -0,100,10000100001,444984,304963,10000100001,444962,304952,1010064988,11010060002,304936,10000100000,480004,444962,304952,1010064990,1480001,3211404917,3101274917,11450060000,304936,10000100000,444951,304946,10000100001,444984,304963,1010064991,11010060002,304936,10000100000,444951,304946,1010064991,1010064991,10000100001,444962,304952,424872,10000419998,3111374942,3122374944,3166374944,304945,1010064987,304945,1010064986,300073,1010064991,10000100000,444962,304952,1010064989,300079,9001480004,104989,1104264952,8430000,2490001,1490001,1101274952,324955,10404985,1010064985,300090,1480010,104988,1490000,2480001,8430000,2480001,4410404985,1010064985,1490004,444962,304952,104990,8430000,490001,1490001,8430000,490001,1490001,480002,10404985,1010064985,300112,20000000000,21602020202,21615020202,20002020202,20000000202,20000000002,20000000000,10000,424992,2404999,14400289999,11140030000,1450000,12210400000,300007 +0,100,0,0,0,0,403264897,7000384905,424875,104925,10000300000,424907,10294439,50294452,444451,304449,304902,8001454878,490001,1490001,134927,1108264911,314912,1105264916,314921,404465,304911,1480010,104465,304896,9985,4978125000,10000,80,5100000000,5120741240,5062245935,4800000000,4978125000,5120000000,5500000000,5216000000,5110000000,4942415900,5162235322,380273,2404464,424956,314436,404467,424939,14400289999,10000410000,1404989,424939,464992,464993,6412404990,10000109997,334955,134464,410404959,1454943,10000419998,1108374961,124868,304962,124467,2100374973,404991,334966,4220264990,412404971,504444469,4989304469,104467,424464,300273,300033,1480008,464991,8811404991,334978,4220264990,430000,8800374981,134994,223264992,6203264990,110404993,490001,8910404993,9108264993,7108264993,304966,4900000000,23300030000,6223530000,1008500000,1001520000,1001521000,2415668464 +0,100,15502635544,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10000,424850,412404941,1404988,10000419998,3122374865,3133374862,3144374864,3155374862,3166374864,3177374862,304865,1010064983,304866,1010064982,1010064982,14400289999,4122374887,4100374872,4144374893,4188374904,304913,10000100000,444946,304942,10000100001,444980,304959,10000100001,444958,304947,1010064984,10000100002,364929,10404981,1010064981,304929,10000109999,480004,444958,304947,1010064986,304913,10000100000,444946,304942,10000100001,444980,304959,1010064987 +0,100,10000100002,10404981,1010064981,304929,10000100000,444946,304942,1010064987,1010064987,10000100001,444958,304947,304929,412404928,412404922,424850,10000109998,480001,3210404928,480001,4410404919,4401284919,10000100000,364925,304928,3201274928,1214922,304929,1000060000,424850,10000419998,3111374936,3122374938,3166374938,3199374936,304939,1010064983,304939,1010064982,414988,314941,300000,1010064987,444958,304947,1010064985,300000,9001480004,104986,1104264947,8430000,2490001,1490001,1101274947,324950,10404981,1010064981,314958,300000,1480010,104984,1490000,2480001,8430000,2480001,10404981,1010064981,1490004,444958,304947,104986,8430000,2490001,1490001,8430000,2490001,1490001,490002,10404981,1010064981,300000,20000000000,21602020202,21615020202,20002020202,20000000202,20000000002,20000000000,0,10000,424989,412404999,14400289999,11140030000,1450000,2430000,12210400000,10000400014,10000400015,300000 0,100,0,1390000,310004,5103260022,1018500000,400012,2400013,1420008,12739,1400560000,1308520100,300100,0,5000,420000,412400024,1004500000,1100580000,420013,390000,250020,100012,10023,5112400022,300024,420027,10290012,290199,2400012,411180012,1350027,1100520100,410069,1400048,1420035,1450100,10000120200,10000120201,10000120202,10000120203,10000120204,5200036,310043,360048,40090092,9669009669,1101580000,300031,100101,420048,4330060,460071,299260071,401280071,10000410100,1280370072,370031,16400280100,10411400000,300053,6610400064,9999210000,412400064,10000429999,290000,1480007,120070,190048,300048,100101,1,99,6711180091,1350053,300200,1111,420074,10000100000,170075,490004,10400091,401260074,4450000,41000500091,1100520100,100100,10180091,350032,30090096,9669009669,300083,80000000000,21602020202,24348454352,20062645400,24559595659,21662454754,24555630045,25959565902 0,100,0,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,0,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,0,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,30000000000,0,0,0,0,0,0,0,0,31111111111,31100111133,33322222222,22333333333,11103333331,11100000000,0,0,0,0,0,0,0,0,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33000000000,0,0,0,0,0,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111 0,100,0,33333333333,33333333333,33333333333,33333333333,33333333333,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,41000010232,300233,1008620129,5512400200,5401260200,310238,42000010238,10234,42000010240,300243,2004630158,2006630187,2008630229,1000650245,300246,1008630229,410013,300025 -0,100,4000380703,1642444872,1632304872,2700520900,2000521600,2000522600,1453200,1420706,10000123600,10000123601,10000123602,10000123603,10000123604,10000123605,10000123606,10000123607,10000123608,10000123609,10200708,310720,360732,40093460,9669009669,2201580000,2001580000,2001580000,2001580000,2000520400,2000521400,2000522400,2200523400,300707,42006013492,420292,9999200738,423554,441691,301690,100208,8330742,413531,1403450,420275,412400751,9999200752,441847,301812,30102030000,420751,10000420000,300743,0,100002,6400360764,100101,120100,360759,441733,301765,100002,460002,6410400002,6401260002,300772,413546,1402160,441733,301734,413536,1402160,441733,301734,413547,1400185,420775,104095,403495,6400360783,480004,10000410001,441733,301739,103495,400360787,423495,10000100000,300776,420788,104097,440783,300776,460185,2004500000,2000590795,300793,2300521857,1109271755,1109271709,420258,441153 +0,100,4000380703,1642444850,1632304850,2700520900,2000521600,2000522600,1453200,1420706,10000123600,10000123601,10000123602,10000123603,10000123604,10000123605,10000123606,10000123607,10000123608,10000123609,10200708,310720,360732,40093460,9669009669,2201580000,2001580000,2001580000,2001580000,2000520400,2000521400,2000522400,2200523400,300707,42006013492,420292,9999200738,423554,441691,301690,100208,8330742,413531,1403450,420275,412400751,9999200752,441847,301812,30102030000,420751,10000420000,300743,0,100002,6400360764,100101,120100,360759,441733,301765,100002,460002,6410400002,6401260002,300772,413546,1402160,441733,301734,413536,1402160,441733,301734,413547,1400185,420775,104095,403495,6400360783,480004,10000410001,441733,301739,103495,400360787,423495,10000100000,300776,420788,104097,440783,300776,460185,2004500000,2000590795,300793,2300521857,1109271755,1109271709,420258,441153 0,100,1211123,1102271755,1102271709,103544,610401600,463502,4450000,104217,403449,8142210810,2401441,10000100000,1330832,360834,10403501,6400283501,10000100000,1103360832,421441,11210260000,300827,6400283501,10000100000,1104360827,1263502,441691,301690,423501,9999200832,10000100001,403501,300821,421441,1200810,423502,1210805,4400281120,10000101857,360891,1330842,4401261120,300836,16400281857,10000100000,4400280844,42000501120,6410404217,490002,4410401122,480006,410401122,462217,423555,292217,461121,202261121,2004500000,2000590859,300857,2100522318,102318,181120,350872,30093457,9669009669,300842,461121,202261121,2004500000,2000590871,300869,2100522318,420873,1450098,10000122319,1210874,310877,360882,40093460,9669009669,2101580000,300866,421121,10000102317,402160,441458,301448,300840,201261121,310866,300882,2000590893,300891,2008500000,1450000,8430000,441733,301701,100100,8330901 0,100,360903,441733,301765,103550,400002,441733,301765,1000590909,300907,1008500000,420968,10000104116,400967,6400280967,9999200925,310916,1290260967,10000100001,8330943,1109360928,420967,413548,811400941,10000100000,1000210912,201270968,320910,300969,6400360930,300920,2211270967,10000100002,10000410003,3430000,320936,2450000,310950,401653,1401654,441847,301812,33234353600,300920,310944,1108360947,1289360930,300920,413553,811400941,300928,430000,1480010,1490001,123528,1108360957,490001,300952,401653,1230261653,1450000,1490001,123528,1108360965,490001,300960,401654,300939,0,99,103449,6410180202,340973,100202,133525,1480008,310976,1450300,123549,1490001,490001,8101270976,320977,490001,401653,100251,123532,330988,1450000,1480004,1450003,123549,1490001,490001,101270989,320990,490001,401654,4000381010,101654,8810181653 -0,100,341004,441847,301812,36866707147,441847,301814,34547495036,441847,301814,34751535037,420292,1212474,103450,3105361017,916444872,2418304872,301020,4000381020,916444872,2164304872,4400283447,442463,302460,301106,413556,411401023,403495,6400283495,10000100000,403495,480008,490004,403496,4450000,41000503496,1100520100,10180100,351042,30093457,9669009669,301034,1100520100,1450100,1421042,10000120200,10000120201,10000120202,10000120203,10000120204,5201044,311051,361055,40093460,9669009669,301053,100101,4331060,413532,211401055,301041,401102,490004,6410183495,1341071,351071,101102,480001,4210401068,200261055,201261055,301055,101102,480007,121102,490004,6410183495,341078,301065,1101580000,113495,480004,173539,191102,101055,1421102,410401088,9999211087,413495,10411400000,1450100,1421089,460199,10000130200,10000130201,10000130202,10000130203,10000130204,5201092,311099,400199 -0,100,1100560100,301020,0,1000591105,301103,1008500000,4450000,290400,290500,290600,1000591112,301110,1300560000,103450,4000381118,401116,0,300233,3102361115,300233,1000000,0,0,104217,180202,341127,100202,404217,462217,423555,292217,462437,441358,301351,104217,402200,102201,2331142,441847,301812,3060809000,301132,3000381144,4000381146,1602444872,2201304872,441429,301359,102427,10183535,1351155,102428,10183543,351153,102427,2331180,1480010,153552,1402161,102437,441811,301785,301176,102157,490002,4410402217,104217,480004,410402217,410401122,490006,4410401122,6400282157,10000100000,1109361196,1108361229,441847,301812,31047141500,301278,1480010,153552,1402161,1450000,441811,301785,301190,6400282157,10000100000,1108361194,441847,301812,31712141500,301146,210402437,301146,6400282157,10000100000,403495,490002 -0,100,4410402217,442463,302460,0,490004,2210403495,103495,2200361225,173541,490004,124217,490006,403495,422439,442448,302438,103495,10000400000,2403495,103495,490004,4400283447,442448,302438,301228,430000,441733,301701,6400282157,442463,302460,301272,8331256,2200361252,173541,490004,124217,490006,403495,422439,442448,302438,103495,10000400000,2403495,103495,490004,4400283447,442448,302438,6400282157,301229,441733,301701,6400282157,301229,403495,6400282157,442463,302460,0,173534,414217,194217,1113495,1403495,441733,301701,6400282157,413495,1404217,301229,6400282157,10000100000,430000,10000400000,104217,16410400000,441358,301351,462437,102201,331334,3000381285,4000381287,1602444872,2201304872,441429,301359,102427,2331322,1480010,153552,1402161,102437,441811,301431,301318,441691,6400282157 -0,100,10000100000,8331303,430000,480004,402174,6612402174,6212262174,5103361690,102157,490002,4410402174,441429,301359,422427,100211318,102174,10000402318,301278,441847,301812,31921090000,301278,1480010,153552,1402161,1450000,441811,301785,301318,6400282157,10000100000,210402437,1108361287,301318,101272209,422193,10000102225,402151,441458,301448,301128,401262201,101272223,321327,441358,301351,102201,331348,441847,301812,30624260000,462201,423557,150292201,462162,402262162,444992,2201304992,301358,462158,462427,423558,90292427,9400282162,10000102201,422162,10000490000,480008,502262162,402163,200361378,224361377,9108361413,9104361383,9105361383,9106361383,301378,1220262427,9840201363,441847,301812,30628295809,301426,1422158,10000490008,9400282158,10211390,10000122437,10010402437,502262158,9400282162,10000102201,422162,10000490000,480008,402163,502262162,162211379,210183527,341383 +0,100,341004,441847,301812,36866707147,441847,301814,34547495036,441847,301814,34751535037,420292,1212474,103450,3105361017,916444850,2418304850,301020,4000381020,916444850,2164304850,4400283447,442463,302460,301106,413556,411401023,403495,6400283495,10000100000,403495,480008,490004,403496,4450000,41000503496,1100520100,10180100,351042,30093457,9669009669,301034,1100520100,1450100,1421042,10000120200,10000120201,10000120202,10000120203,10000120204,5201044,311051,361055,40093460,9669009669,301053,100101,4331060,413532,211401055,301041,401102,490004,6410183495,1341071,351071,101102,480001,4210401068,200261055,201261055,301055,101102,480007,121102,490004,6410183495,341078,301065,1101580000,113495,480004,173539,191102,101055,1421102,410401088,9999211087,413495,10411400000,1450100,1421089,460199,10000130200,10000130201,10000130202,10000130203,10000130204,5201092,311099,400199 +0,100,1100560100,301020,0,1000591105,301103,1008500000,4450000,290400,290500,290600,1000591112,301110,1300560000,103450,4000381118,401116,0,300233,3102361115,300233,1000000,0,0,104217,180202,341127,100202,404217,462217,423555,292217,462437,441358,301351,104217,402200,102201,2331142,441847,301812,3060809000,301132,3000381144,4000381146,1602444850,2201304850,441429,301359,102427,10183535,1351155,102428,10183543,351153,102427,2331180,1480010,153552,1402161,102437,441811,301785,301176,102157,490002,4410402217,104217,480004,410402217,410401122,490006,4410401122,6400282157,10000100000,1109361196,1108361229,441847,301812,31047141500,301278,1480010,153552,1402161,1450000,441811,301785,301190,6400282157,10000100000,1108361194,441847,301812,31712141500,301146,210402437,301146,6400282157,10000100000,403495,490002 +0,100,4410402217,442463,302460,0,490004,2210403495,103495,2200361225,173541,490004,124217,490006,403495,422439,442448,302438,103495,10000400000,2403495,103495,490004,4400283447,442448,302438,301228,430000,441733,301701,6400282157,442463,302460,301272,8331256,2200361252,173541,490004,124217,490006,403495,422439,442448,302438,103495,10000400000,2403495,103495,490004,4400283447,442448,302438,6400282157,301229,441733,301701,6400282157,301229,403495,6400282157,442463,302460,0,173534,414217,194217,1113495,1403495,441733,301701,6400282157,413495,1404217,301229,6400282157,10000100000,430000,10000400000,104217,16410400000,441358,301351,462437,102201,331334,3000381285,4000381287,1602444850,2201304850,441429,301359,102427,2331322,1480010,153552,1402161,102437,441811,301431,301318,441691,6400282157 +0,100,10000100000,8331303,430000,480004,402174,6612402174,6212262174,5103361690,102157,490002,4410402174,441429,301359,422427,100211318,102174,10000402318,301278,441847,301812,31921090000,301278,1480010,153552,1402161,1450000,441811,301785,301318,6400282157,10000100000,210402437,1108361287,301318,101272201,422215,10000102202,402160,441458,301448,301128,401262215,101272201,321335,441358,301351,102215,331334,441847,301812,30624260000,462201,423557,150292201,462162,402262162,444989,2201304989,301358,462158,462427,423558,90292427,9400282162,10000102201,422162,10000490000,480008,502262162,402163,200361378,224361377,9108361413,9104361383,9105361383,9106361383,301378,1220262427,9840201363,441847,301812,30628295809,301426,1422158,10000490008,9400282158,10211390,10000122437,10010402437,502262158,9400282162,10000102201,422162,10000490000,480008,402163,502262162,162211379,210183527,341383 0,100,214361383,102427,331426,102163,204361426,9400282162,10000102201,422162,10000490000,480008,502262162,9838201404,301379,1480001,102427,1490001,402427,9400282162,10000102201,422162,402262162,10000490000,480008,9108361413,101430,402158,102158,490008,402159,301429,20000000010,200361433,301785,412158,311183526,341785,421441,102427,10010182175,351443,2211438,1450024,301785,10000102176,6410402157,421811,10000300001,70000000000,11448,181447,1341570,6290361548,6291361548,8331498,9331498,7331504,6331510,5331511,6299361458,6230361582,6200361586,6212361591,6201361557,6202361561,6203361564,6204361567,441847,301812,31926000000,301580,6229271448,301570,1000600000,1000610000,2000610000,6260361491,6262361491,6264361491,411473,1101361483,411474,1102361483,301493,6261361487,6263361487,6265361487,301493,1111402160,102160,6229271448,301448,411472,1101361487,441847,301812,31960380000,412160,301487,1280272160,1101122 0,100,1122160,311502,410402160,301570,1270272160,1131122,4410402160,311508,301570,0,1220272160,1240272160,8210401509,8400281509,10000102218,361598,8331524,1122160,131509,410402160,14400282218,441613,301602,301570,14400282218,441613,301602,10000100000,1108361530,10000420000,2401509,1102160,173533,1123503,463503,490004,442448,302438,1104217,8430000,421509,461509,442448,302438,102160,462160,6710402160,301570,6240272160,4331570,5331570,1220272160,6331512,7331512,1220272160,301499,301470,411556,1401448,301580,301475,411560,1401448,301580,412160,411403503,301580,411122,4411403504,301580,1102160,1123503,463503,410402160,1102160,1123504,4410402160,463504,441733,301734,421458,10000300001,4400282217,9999211584,412402160,301570,1102160,490004,1124217,6410404217,301580,4400282160,10000410000,422160,16610402218,1480004,10411402218,301580,441847,301812 0,100,33221000000,301518,2403495,103495,490004,423542,16410182175,351614,2211606,423495,10000410001,1100371613,1400185,301613,10000412174,1400185,423495,301613,24567635941,25345466300,35741594555,36348456249,26200000000,35449626249,25547000000,25541544500,24341594400,34567634559,25541530000,35759564345,24464594500,25556630000,34445435341,25945440000,35759454649,26700000000,34954575956,25745590000,34558644965,34153455543,24500000000,34649554962,24800000000,35762456444,25620565700,24649455344,25655000000,34845414445,25900000000,36455444546,24955454400,25341424553,22000000000,25541544500,25541544500,34955626359,36443634956,25500000000,22300000000,26356634153,24348454352,26264540000,34356545749,25345440000,35759564759,24154000000,24555446200,24163000000,36541594941,24253456200,24245474955,35349425941,25968000000,34955435659,25945436300,36268544256,25349430000,34341594441,26359565500,34356545749,25345590000,34341574143,24963680000,34567434545,24445440000,35445545659,26800000000,24656590000,35642514543,26300000000,10000100000,1104361691,480004,173540,130251,410400251,1490004,16410400000,16401260000,11101260000 -0,100,301690,414217,400184,1480004,411400184,410400183,7331708,301709,1260184,2000381711,301714,8331714,208444872,183304872,410184,420207,100183,410180101,341729,10000100003,400361729,410180183,341729,130183,490006,4410401726,211727,10411400004,301733,1270181,420181,10001400005,301762,301733,104217,480004,6401264217,311738,412160,410400183,130101,420180,400361753,134100,400361749,412400207,100183,10000400003,1260180,420207,13201260003,1260180,420180,10001400002,1400184,2000381757,301759,300444872,183304872,460185,410183,411400101,410180,1180181,1341733,1423448,1450004,10000130101,1201767,311770,400101,1000591773,301771,1004500000,1000591776,301774,1100560002,1260002,460180,460181,96260181,460003,421766,980290003,301733,122161,173533,123559,402157,422157,1211793,422157,9999201811,10000100001,2310182159,402157,480004,1351791,402174,6309262174 -0,100,410401805,401261805,5401282174,321805,423551,10000101805,10010182427,1351791,1211805,401261811,6400282157,301811,413531,1403450,461848,1220261848,421829,80291848,462174,421847,10000100000,2450000,1480008,361844,410401821,1402173,401261821,421821,10000411616,1451849,1422174,1490002,361840,10000490008,9400282174,430000,10000121848,10010401848,502262174,301829,3331826,502262174,102173,301821,401261847,906444872,1848304872,300000 +0,100,301690,414217,400184,1480004,411400184,410400183,7331708,301709,1260184,2000381711,301714,8331714,208444850,183304850,410184,420207,100183,410180101,341729,10000100003,400361729,410180183,341729,130183,490006,4410401726,211727,10411400004,301733,1270181,420181,10001400005,301762,301733,104217,480004,6401264217,311738,412160,410400183,130101,420180,400361753,134100,400361749,412400207,100183,10000400003,1260180,420207,13201260003,1260180,420180,10001400002,1400184,2000381757,301759,300444850,183304850,460185,410183,411400101,410180,1180181,1341733,1423448,1450004,10000130101,1201767,311770,400101,1000591773,301771,1004500000,1000591776,301774,1100560002,1260002,460180,460181,96260181,460003,421766,980290003,301733,122161,173533,123559,402157,422157,1211793,422157,9999201811,10000100001,2310182159,402157,480004,1351791,402174,6309262174 +0,100,410401805,401261805,5401282174,321805,423551,10000101805,10010182427,1351791,1211805,401261811,6400282157,301811,413531,1403450,461848,1220261848,421829,80291848,462174,421847,10000100000,2450000,1480008,361844,410401821,1402173,401261821,421821,10000411616,1451849,1422174,1490002,361840,10000490008,9400282174,430000,10000121848,10010401848,502262174,301829,3331826,502262174,102173,301821,401261847,906444850,1848304850,300000 2*0,100 0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,0,0,24649670000,42220000,24653564163,42240000,24667144667,42180000,24667144653,42190000,24653144667,42200000,24653144653,42210000,25341425345,41070000,25456554963,42260000,24559595659,42290000,26359414345,42300000,25949634500,42320000,25945454400,42330000,2199000000 0,100,20000000000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20000000000 @@ -80,7 +80,7 @@ 0,100,96611403306,80401283263,89999203229,80403283265,89999203221,80401283262,80001213217,80000413251,80000373212,80000443140,80000303129,80000303142,2428443212,263303213,80000423127,80230293290,80000303209,80000463251,80401263169,1450000,80000303169,2408443221,263303222,80000463265,80412263265,80000423127,80230293290,80000443251,80000303205,2428443229,263303230,80000413264,80001403263,80000303223,80203263252,80411403254,88223263254,80000103258,80000413253,82100373241,80000133260,80000333244,80220263254,430000,2450000,1480001,490001,1490007,80000123261,80010403255,80000303192,0,20000000000,20000000000,20000000000,20000000000,1,9999,0,8,50,8080000000,0,0,0,0,20000000000,20000415959,24168000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000 0,100,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,12650,80000423256,80030293318,300001,80001423314,1308520100,300100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1100563395,1008500000,103575,183565,343373,301012,183566,1343376,301012,2000593378,303376,2008500000,4400283379,2000580000,1100213380,2200580000,423384,10000,9999203388,2100580000,303385,2000520400,2000521400,2008500000,2000593393,303391,1004500000,301012,1018500000,9000380104,2418443397,108303398,410107 0,100,1400013,300013,1401520000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,20000000000,0,0,0,0,0,0,0,0,0,0,103575,123545,410183567,343443,103575,303442,103530,403575,303442,34460000,3447000000,99,0,757007250,0,0,0,0,0,0,21662454159,24348004559,25956590202,21643484543,25200626454,20045595956,25902020202,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333111111,11113111111,11113111111,11113111111,11113111111,11113111111,11113111111,11113111111,11113111111,11110000000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9999999999,9999999999 -0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10000,10,40,80,100,700,525005250,1,11,11110000,24649554962,1000600000,2000,2000000,10000001111,1111,1111110000,23,24800000000,545600,7,9669009669,25756565300,34353600,8,9999999999,9,99,10123536,4233,2218,1103,2202,2428,4116,3577,3576,292,3446,2868,1011,3877,4094,0,0,0,0,0,0,0,3877,34970000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16151734763 +0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10000,10,40,80,100,700,525005250,1,11,11110000,24649554962,1000600000,2000,2000000,10000001111,1111,1111110000,23,24800000000,545600,7,9669009669,25756565300,34353600,8,9999999999,9,99,10123536,4233,2218,1103,2202,2428,4116,3577,3576,292,3446,2868,1011,3877,4094,0,0,0,0,0,0,0,3877,34970000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16151734451 0,100,0,42240000,42222156,42342154,42372153,42292152,42392151,42422150,42452149,42212145,42202144,42182143,42192140,42472139,42502138,42522135,42542132,42632129,42572128,42602126,42670000,41072125,42262123,42302122,42712120,42732117,42752115,42322114,42330000 0,100 0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42370000,42292116,42420000,42292118,42752119,42710000,42292121,42420000,42290000,42332124,42290000,42290000,42392127,42290000,42290000,42292130,42602131,42570000,42292133,42602134,42570000,42292136,42502137,42470000,42470000,42290000,42292141,42212142,42240000,42290000,42290000,42222146,42422147,42452148,42290000,42290000,42290000,42290000,42330000,42320000,42332155,42290000,42290000 @@ -114,8 +114,8 @@ 0,100,24000000,44242120001,44229120002,2450000,60010180171,80000340025,80010180028,80001340014,60000440100,60000300102,60000400252,60000110251,60000250252,60000220252,80000240028,80000420000,10000300000,60000400252,60000240252,60000400249,80000240029,80000220030,60000240249,80000220031,60000240249,60000240252,60000220252,80000300012,80000420000,80000410032,60000300200,5050000000,4719841270,4883333333,5016666667,26249554800,40000990000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14422289637 0,100,25000000,44271120001,44275120002,44229120003,10000,80000400019,80000410021,80010180023,80000340015,60000440200,60000300202,80000400020,80000360013,80000100019,60000440100,60000300100,80000250020,80000420000,10000300000,60000100351,80000410019,1490000,80000300013,0,0,80000000022,26341554800,5250000000,40000990000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14384255963 0,100,26000000,44242120001,44229120002,10000,80000410013,430000,60000440100,60000300102,80000360011,60000400252,60000100251,60000250252,60000220252,80000240015,80000420000,10000300000,80000000014,24356624800,5050000000,40000990000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17882136065 -0,100,27000000,44237120001,10000,80000420000,80002400008,10000109998,480001,83210400007,14400289999,11070030000,300008,40000990000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11981690028 -0,100,28000000,10000,80000420000,80002400067,10000419998,83100370015,83122370015,83133370012,83144370014,83155370012,83166370014,83177370012,80000300016,81010060070,80000300016,81010060069,81010060069,14400289999,84144370023,84166370054,1480001,83211400021,11210060000,80000300058,81010060071,11010060000,10000100001,1480008,490002,1490004,490001,2430000,2490001,80010400068,81010060068,10000100002,430000,80000400068,81010060068,80000100069,2430000,80000400068,10000100003,80210400068,81010060068,80000100069,2430000,80000400068,10000100004,80410400068,86102270068,80000330051,85102260068,81010060068,80000300058,81010060071,1480001,83211400057,11570060000,80000420000,10000419998,83111370064,83122370066,83166370066,80000300067,81010060070,80000300067,81010060069,300067,20000000000,21602020202,21615020202,20000000000,40000990000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14130152772 +0,100,27000000,44237120001,10000,80000420000,1160030101,460117,10000300000,40000990000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15398730219 +0,100,28000000,10000,80000420000,80412400078,80001400083,10000419998,83122370015,83133370012,83144370014,83155370012,83166370014,83177370012,80000300015,81010060081,80000300016,81010060080,81010060080,14400289999,84144370020,84166370050,80000300051,81010060082,10000100000,80010400079,81010060079,10000100001,1480008,490002,1490004,490001,2430000,2490001,80010400079,81010060079,11010060002,80000100080,490002,80000400079,10000100003,80210400079,81010060079,80000100080,490002,80000400079,10000100004,80410400079,86212400079,80000330048,85102260079,81010060079,80000300067,81010060082,80412400066,80412400060,80000420000,10000109998,480001,83210400066,480001,84410400057,84401280057,10000100000,80000360063,80000300066,83201270066,80001210060,80000300067,1000060000,80000420000,10000419998,83111370074,83122370076,83166370076,83199370074,80000300077,81010060081,80000300077,81010060080,80000410083,300000,20000000000,21602020202,21615020202,20000000000,0,40000990000,0,0,0,0,0,0,0,0,0,0,0,0,0,18162693769 0,100,99999999999 0,100,1000640002,300000,1001620115,1008620144,5401260080,310008,2000650008,300004,2000650010,300013,2004630231,2006630202,2008630173,1000650015,300016,1008630173,410240,1400080,410241,411400077,411400025,401270025,410080,420025,10290079,290199,2400079,411180079,1350025,410072,1400051,3000380049,420086,5200034,11010600200,5200034,1420037,1450100,10000120200,10000120201,10000120202,10000120203,10000120204,5200038,310045,360051,40090082,9669009669,300047,1000030100,300036,100101,420051,4330063,460074,299260074,401280074,10000410100,1280370075,370029,16400280100,10411400000,300056,6610400067,9999210000,412400067,10000429999,290000,1480007,120073,190051,300051,100101,1,99,6711180078,1350056,300200,80000000000,0,5000,348,21643484543,25200626454,20045595956,25900000000,9899,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333 0,100,33333000000,333333,33333333333,33333333333,33333333333,33333333333,31313131313,13131313131,31313131313,13131313131,31313131313,13131313131,31313131313,13131313131,31313131313,13131313131,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,0,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,1111111111,0,33333333333,33333333333,33333333333,33333333333,33333333333,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,33333333333,33333333333,33333333333,33333333333,33333333333,33333333333,33000000000,0,0,0,0,0,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111,31111111111 diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-Generator-Callout.card b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-Generator-Callout.card index 6adff5d..c4b5d78 100644 --- a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-Generator-Callout.card +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-Generator-Callout.card @@ -2,147 +2,171 @@ 666 61000600005 === 6000030000200000390000000185000000000152000009999009999 2 COMMENT GENERATE COMPILER FOR PAPER-TAPE SYSTEM... -2 COMMENT * COMPILER ON TAPE UNIT 2 LANE 00 -2 COMMENT * COMPILED PROGRAM ON UNIT 1 LANE 00 -2 COMMENT * PAPER-TAPE READER UNIT 1 -2 COMMENT * PAPER-TAPE PUNCH UNIT 1 +2 COMMENT * COMPILER ON TAPE UNIT 2 LANE 00; +2 COMMENT * COMPILED PROGRAM ON UNIT 1 LANE 00; +2 COMMENT * PAPER-TAPE READER UNIT 1; +2 COMMENT * PAPER-TAPE PUNCH UNIT 1; +2 COMMENT * SOURCE STATEMENTS IN COLUMNS 2 THRU 70; 2 COMMENT * MEMORY SIZE 5000; 2 2 GENERATE PAPER TAPE VERSION OF BAC-220; +2 SET SCANNING FOR COLUMNS 2 THROUGH 70; 2 DELETE INPUT FORMAT 0; 2 DELETE OUTPUT FORMAT 0; 2 DELETE INPUT FORMAT 1; 2 DELETE OUTPUT FORMAT 1; 2 INPUTMEDIA; -60600000100000 00000010000 -6 80000420000 -6 80412400007 -6 14400289999 -6 11140030000 -6 00001450000 -60200000200006 12210400000 -6 00000300007 +60000000100000 00000010000 +60000000200001 80000420000 +60000000300002 80412400010 +60000000400003 14400289999 +60000000500004 11140030000 +60000000600005 00001450000 +60000000700006 00002430000 +60000000800007 12210400000 +60000000900008 10000400014 +60000001000009 10000400015 +60000001100010 00000300000 2 OUTPUTMEDIA; -60600000100000 00000010000 -6 80000420000 -6 80412400073 -6 10000419998 -6 83100370015 -6 83122370015 -60600000200006 83133370012 -6 83144370014 -6 83155370012 -6 83166370014 -6 83177370012 -6 80000300016 -60600000300012 81010060115 -6 80000300016 -6 81010060114 -6 81010060114 -6 14400289999 -6 84122370037 -60600000400018 84100370025 -6 84144370047 -6 84188370056 -6 00001480001 -6 83211400023 -6 11230060000 -60600000500024 80000300064 -6 10000100000 -6 80000440079 -6 80000300074 -6 10000100001 -6 80000440112 -60600000600030 80000300091 -6 10000100001 -6 80000440090 -6 80000300080 -6 81010060116 -6 11010060002 -60600000700036 80000300064 -6 10000100000 -6 00000480004 -6 80000440090 -6 80000300080 -6 81010060118 -60600000800042 00001480001 -6 83211400045 -6 83101270045 -6 11450060000 -6 80000300064 -6 10000100000 -60600000900048 80000440079 -6 80000300074 -6 10000100001 -6 80000440112 -6 80000300091 -6 81010060119 -60600001000054 11010060002 -6 80000300064 -6 10000100000 -6 80000440079 -6 80000300074 -6 81010060119 -60600001100060 81010060119 -6 10000100001 -6 80000440090 -6 80000300080 -6 80000420000 -6 10000419998 -60600001200066 83111370070 -6 83122370072 -6 83166370072 -6 80000300073 -6 81010060115 -6 80000300073 -60600001300072 81010060114 -6 00000300073 -6 81010060119 -6 10000100000 -6 80000440090 -6 80000300080 -60600001400078 81010060117 -6 00000300079 -6 09001480004 -6 80000100117 -6 81104260080 -6 00008430000 -60600001500084 00002490001 -6 00001490001 -6 81101270080 -6 80000320083 -6 80010400113 -6 81010060113 -60600001600090 00000300090 -6 00001480010 -6 80000100116 -6 00001490000 -6 00002480001 -6 00008430000 -60600001700096 00002480001 -6 84410400113 -6 81010060113 -6 00001490004 -6 80000440090 -6 80000300080 -60600001800102 80000100118 -6 00008430000 -6 00000490001 -6 00001490001 -6 00008430000 -6 00000490001 -60600001900108 00001490001 -6 00000480002 -6 80010400113 -6 81010060113 -6 00000300112 -6 20000000000 -60600002000114 21602020202 -6 21615020202 -6 20002020202 -6 20000000202 -6 20000000002 -6 20000000000 +60000000100000 00000010000 +60000000200001 80000420000 +60000000300002 80412400091 +60000000400003 80001400138 +60000000500004 10000419998 +60000000600005 83122370015 +60000000700006 83133370012 +60000000800007 83144370014 +60000000900008 83155370012 +60000001000009 83166370014 +60000001100010 83177370012 +60000001200011 80000300015 +60000001300012 81010060133 +60000001400013 80000300016 +60000001500014 81010060132 +60000001600015 81010060132 +60000001700016 14400289999 +60000001800017 84122370037 +60000001900018 84100370022 +60000002000019 84144370043 +60000002100020 84188370054 +60000002200021 80000300063 +60000002300022 10000100000 +60000002400023 80000440096 +60000002500024 80000300092 +60000002600025 10000100001 +60000002700026 80000440130 +60000002800027 80000300109 +60000002900028 10000100001 +60000003000029 80000440108 +60000003100030 80000300097 +60000003200031 81010060134 +60000003300032 10000100002 +60000003400033 80000360079 +60000003500034 80010400131 +60000003600035 81010060131 +60000003700036 80000300079 +60000003800037 10000109999 +60000003900038 00000480004 +60000004000039 80000440108 +60000004100040 80000300097 +60000004200041 81010060136 +60000004300042 80000300063 +60000004400043 10000100000 +60000004500044 80000440096 +60000004600045 80000300092 +60000004700046 10000100001 +60000004800047 80000440130 +60000004900048 80000300109 +60000005000049 81010060137 +60000005100050 10000100002 +60000005200051 80010400131 +60000005300052 81010060131 +60000005400053 80000300079 +60000005500054 10000100000 +60000005600055 80000440096 +60000005700056 80000300092 +60000005800057 81010060137 +60000005900058 81010060137 +60000006000059 10000100001 +60000006100060 80000440108 +60000006200061 80000300097 +60000006300062 80000300079 +60000006400063 80412400078 +60000006500064 80412400072 +60000006600065 80000420000 +60000006700066 10000109998 +60000006800067 00000480001 +60000006900068 83210400078 +60000007000069 00000480001 +60000007100070 84410400069 +60000007200071 84401280069 +60000007300072 10000100000 +60000007400073 80000360075 +60000007500074 80000300078 +60000007600075 83201270078 +60000007700076 80001210072 +60000007800077 80000300079 +60000007900078 01000060000 +60000008000079 80000420000 +60000008100080 10000419998 +60000008200081 83111370086 +60000008300082 83122370088 +60000008400083 83166370088 +60000008500084 83199370086 +60000008600085 80000300089 +60000008700086 81010060133 +60000008800087 80000300089 +60000008900088 81010060132 +60000009000089 80000410138 +60000009100090 80000310091 +60000009200091 00000300000 +60000009300092 81010060137 +60000009400093 80000440108 +60000009500094 80000300097 +60000009600095 81010060135 +60000009700096 00000300000 +60000009800097 09001480004 +60000009900098 80000100136 +60000010000099 81104260097 +60000010100100 00008430000 +60000010200101 00002490001 +60000010300102 00001490001 +60000010400103 81101270097 +60000010500104 80000320100 +60000010600105 80010400131 +60000010700106 81010060131 +60000010800107 80000310108 +60000010900108 00000300000 +60000011000109 00001480010 +60000011100110 80000100134 +60000011200111 00001490000 +60000011300112 00002480001 +60000011400113 00008430000 +60000011500114 00002480001 +60000011600115 80010400131 +60000011700116 81010060131 +60000011800117 00001490004 +60000011900118 80000440108 +60000012000119 80000300097 +60000012100120 80000100136 +60000012200121 00008430000 +60000012300122 00002490001 +60000012400123 00001490001 +60000012500124 00008430000 +60000012600125 00002490001 +60000012700126 00001490001 +60000012800127 00000490002 +60000012900128 80010400131 +60000013000129 81010060131 +60000013100130 00000300000 +60000013200131 20000000000 +60000013300132 21602020202 +60000013400133 21615020202 +60000013500134 20002020202 +60000013600135 20000000202 +60000013700136 20000000002 +60000013800137 20000000000 +60000013900138 00000000000 2 PROCESS LIBRARY; 2 FINISH; 2 FLOAT, REAL(INTEGER) @@ -441,21 +465,22 @@ 605000003000121000030000080000000014243566248000505000000040000990000 2 REED 2 READ=1 -60600000100000000000100008000042000080412400008100001099980000048000183210400007 -6040000020000614400289999110700300000000030000840000990000 +60600000100000000000100008000042000001160030101000004601171000030000040000990000 2 RITE -60600000100000000000100008000042000080412400067100004199988310037001583122370015 -60600000200006831333700128314437001483155370012831663700148317737001280000300016 -60600000300012810100600708000030001681010060069810100600691440028999984144370023 -60600000400018841663700540000148000183211400021112100600008000030005881010060071 -60600000500024110100600001000010000100001480008000004900020000149000400000490001 -60600000600030000024300000000249000180010400068810100600681000010000200000430000 -60600000700036800004000688101006006880000100069000024300008000040006810000100003 -60600000800042802104000688101006006880000100069000024300008000040006810000100004 -60600000900048804104000688610227006880000330051851022600688101006006880000300058 -60600001000054810100600710000148000183211400057115700600008000042000010000419998 -60600001100060831113700648312237006683166370066800003000678101006007080000300067 -60600001200066810100600690000030006720000000000216020202022161502020220000000000 -6010000130007240000990000 +60600000100000000000100008000042000080412400078800014000831000041999883122370015 +60600000200006831333700128314437001483155370012831663700148317737001280000300015 +60600000300012810100600818000030001681010060080810100600801440028999984144370020 +60600000400018841663700508000030005181010060082100001000008001040007981010060079 +60600000500024100001000010000148000800000490002000014900040000049000100002430000 +60600000600030000024900018001040007981010060079110100600028000010008000000490002 +60600000700036800004000791000010000380210400079810100600798000010008000000490002 +60600000800042800004000791000010000480410400079862124000798000033004885102260079 +60600000900048810100600798000030006781010060082804124000668041240006080000420000 +60600001000054100001099980000048000183210400066000004800018441040005784401280057 +60600001100060100001000008000036006380000300066832012700668000121006080000300067 +60600001200066010000600008000042000010000419998831113700748312237007683166370076 +60600001300072831993700748000030007781010060081800003000778101006008080000410083 +60600001400078000003000002000000000021602020202216150202022000000000000000000000 +6010000150008440000990000 2 FINISH; 777 DUMMY REJECT CARD TO END GENERATOR DECK diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-INPUTMEDIA-Object.card b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-INPUTMEDIA-Object.card index e174d08..58ce8ee 100644 --- a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-INPUTMEDIA-Object.card +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-INPUTMEDIA-Object.card @@ -1,8 +1,11 @@ -60600000100000 00000010000 -6 80000420000 -6 80412400007 -6 14400289999 -6 11140030000 -6 00001450000 -60200000200006 12210400000 -6 00000300007 +60000000100000 00000010000 +60000000200001 80000420000 +60000000300002 80412400010 +60000000400003 14400289999 +60000000500004 11140030000 +60000000600005 00001450000 +60000000700006 00002430000 +60000000800007 12210400000 +60000000900008 10000400014 +60000001000009 10000400015 +60000001100010 00000300000 diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-INPUTMEDIA.card b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-INPUTMEDIA.card index a5818e8..1bc103d 100644 --- a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-INPUTMEDIA.card +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-INPUTMEDIA.card @@ -2,12 +2,17 @@ REM 2018-07-31 P.KIMPEL REM PTU DEFN 1 PAPER TAPE INPUT UNIT NR + WORDS DEFN 14 REM - ITBL NOP * ENTRY POINT + ITBL NOP *-* ENTRY POINT LDB 8 ITBL LOAD RETURN ADDRESS TO B STB 8 EXIT,04 STORE IN EXIT BUN ADDR DLB - 9999,44,0 LOAD BUFFER ADDR TO B - PRD - 0,PTU,14 READ 14 WORDS INTO BUFFER - STB - 0,22 MAKE 1ST CHAR IN BUFFER A SPACE - EXIT BUN * RETURN TO CALLER + PRD - 0,PTU,WORDS READ 14 WORDS INTO BUFFER + CLA CLEAR A TO ZEROES + LSA 2 MAKE IT A WORD OF SPACES + STA - 0,22 MAKE 1ST CHAR IN BUFFER A SPACE + STA - WORDS CLEAR COLS 71-80 TO SPACES + STA - WORDS+1 + EXIT BUN *-* RETURN TO CALLER FINI ITBL diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-INPUTMEDIA.lst b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-INPUTMEDIA.lst index 20bbcca..fdb5feb 100644 --- a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-INPUTMEDIA.lst +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-INPUTMEDIA.lst @@ -1,4 +1,4 @@ -Assembler for the Burroughs 220 BALGOL Compiler & Library -- 2018-08-06 14:22 +Assembler for the Burroughs 220 BALGOL Compiler & Library -- 2018-10-22 16:53 Source File: PT-INPUTMEDIA.card @@ -8,20 +8,25 @@ START PASS 2 2018-07-31 P.KIMPEL 4 0000 PTU DEFN 1 PAPER TAPE INPUT UNIT NR + 5 0000 WORDS DEFN 14 - 6 0000 0 0000 01 0000 ITBL NOP * ENTRY POINT - 7 0001 8 0000 42 0000 LDB 8 ITBL LOAD RETURN ADDRESS TO B - 8 0002 8 0412 40 0007 STB 8 EXIT,04 STORE IN EXIT BUN ADDR - 9 0003 1 4400 28 9999 DLB - 9999,44,0 LOAD BUFFER ADDR TO B - 10 0004 1 1140 03 0000 PRD - 0,PTU,14 READ 14 WORDS INTO BUFFER - 11 0005 0 0001 45 0000 CLA ZERO A REG - 12 0006 1 2210 40 0000 STA - 0,22 MAKE 1ST CHAR IN BUFFER A SPACE - 13 0007 0 0000 30 0007 EXIT BUN * RETURN TO CALLER - 14 0008 FINI ITBL + 7 0000 0 0000 01 0000 ITBL NOP *-* ENTRY POINT + 8 0001 8 0000 42 0000 LDB 8 ITBL LOAD RETURN ADDRESS TO B + 9 0002 8 0412 40 0010 STB 8 EXIT,04 STORE IN EXIT BUN ADDR + 10 0003 1 4400 28 9999 DLB - 9999,44,0 LOAD BUFFER ADDR TO B + 11 0004 1 1140 03 0000 PRD - 0,PTU,WORDS READ 14 WORDS INTO BUFFER + 12 0005 0 0001 45 0000 CLA CLEAR A TO ZEROES + 13 0006 0 0002 43 0000 LSA 2 MAKE IT A WORD OF SPACES + 14 0007 1 2210 40 0000 STA - 0,22 MAKE 1ST CHAR IN BUFFER A SPACE + 15 0008 1 0000 40 0014 STA - WORDS CLEAR COLS 71-80 TO SPACES + 16 0009 1 0000 40 0015 STA - WORDS+1 + 17 0010 0 0000 30 0000 EXIT BUN *-* RETURN TO CALLER + 18 0011 FINI ITBL SYMBOL TABLE - 8 BMOD 7 EXIT 0 ITBL 1 PTU 1 RLO + 8 BMOD 10 EXIT 0 ITBL 1 PTU 1 RLO + 14 WORDS END PASS 2, ERRORS = 0 diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-OUTPUTMEDIA-Object.card b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-OUTPUTMEDIA-Object.card index 7bb9508..b9cf690 100644 --- a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-OUTPUTMEDIA-Object.card +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-OUTPUTMEDIA-Object.card @@ -1,120 +1,139 @@ -60600000100000 00000010000 -6 80000420000 -6 80412400073 -6 10000419998 -6 83100370015 -6 83122370015 -60600000200006 83133370012 -6 83144370014 -6 83155370012 -6 83166370014 -6 83177370012 -6 80000300016 -60600000300012 81010060115 -6 80000300016 -6 81010060114 -6 81010060114 -6 14400289999 -6 84122370037 -60600000400018 84100370025 -6 84144370047 -6 84188370056 -6 00001480001 -6 83211400023 -6 11230060000 -60600000500024 80000300064 -6 10000100000 -6 80000440079 -6 80000300074 -6 10000100001 -6 80000440112 -60600000600030 80000300091 -6 10000100001 -6 80000440090 -6 80000300080 -6 81010060116 -6 11010060002 -60600000700036 80000300064 -6 10000100000 -6 00000480004 -6 80000440090 -6 80000300080 -6 81010060118 -60600000800042 00001480001 -6 83211400045 -6 83101270045 -6 11450060000 -6 80000300064 -6 10000100000 -60600000900048 80000440079 -6 80000300074 -6 10000100001 -6 80000440112 -6 80000300091 -6 81010060119 -60600001000054 11010060002 -6 80000300064 -6 10000100000 -6 80000440079 -6 80000300074 -6 81010060119 -60600001100060 81010060119 -6 10000100001 -6 80000440090 -6 80000300080 -6 80000420000 -6 10000419998 -60600001200066 83111370070 -6 83122370072 -6 83166370072 -6 80000300073 -6 81010060115 -6 80000300073 -60600001300072 81010060114 -6 00000300073 -6 81010060119 -6 10000100000 -6 80000440090 -6 80000300080 -60600001400078 81010060117 -6 00000300079 -6 09001480004 -6 80000100117 -6 81104260080 -6 00008430000 -60600001500084 00002490001 -6 00001490001 -6 81101270080 -6 80000320083 -6 80010400113 -6 81010060113 -60600001600090 00000300090 -6 00001480010 -6 80000100116 -6 00001490000 -6 00002480001 -6 00008430000 -60600001700096 00002480001 -6 84410400113 -6 81010060113 -6 00001490004 -6 80000440090 -6 80000300080 -60600001800102 80000100118 -6 00008430000 -6 00000490001 -6 00001490001 -6 00008430000 -6 00000490001 -60600001900108 00001490001 -6 00000480002 -6 80010400113 -6 81010060113 -6 00000300112 -6 20000000000 -60600002000114 21602020202 -6 21615020202 -6 20002020202 -6 20000000202 -6 20000000002 -6 20000000000 +60000000100000 00000010000 +60000000200001 80000420000 +60000000300002 80412400091 +60000000400003 80001400138 +60000000500004 10000419998 +60000000600005 83122370015 +60000000700006 83133370012 +60000000800007 83144370014 +60000000900008 83155370012 +60000001000009 83166370014 +60000001100010 83177370012 +60000001200011 80000300015 +60000001300012 81010060133 +60000001400013 80000300016 +60000001500014 81010060132 +60000001600015 81010060132 +60000001700016 14400289999 +60000001800017 84122370037 +60000001900018 84100370022 +60000002000019 84144370043 +60000002100020 84188370054 +60000002200021 80000300063 +60000002300022 10000100000 +60000002400023 80000440096 +60000002500024 80000300092 +60000002600025 10000100001 +60000002700026 80000440130 +60000002800027 80000300109 +60000002900028 10000100001 +60000003000029 80000440108 +60000003100030 80000300097 +60000003200031 81010060134 +60000003300032 10000100002 +60000003400033 80000360079 +60000003500034 80010400131 +60000003600035 81010060131 +60000003700036 80000300079 +60000003800037 10000109999 +60000003900038 00000480004 +60000004000039 80000440108 +60000004100040 80000300097 +60000004200041 81010060136 +60000004300042 80000300063 +60000004400043 10000100000 +60000004500044 80000440096 +60000004600045 80000300092 +60000004700046 10000100001 +60000004800047 80000440130 +60000004900048 80000300109 +60000005000049 81010060137 +60000005100050 10000100002 +60000005200051 80010400131 +60000005300052 81010060131 +60000005400053 80000300079 +60000005500054 10000100000 +60000005600055 80000440096 +60000005700056 80000300092 +60000005800057 81010060137 +60000005900058 81010060137 +60000006000059 10000100001 +60000006100060 80000440108 +60000006200061 80000300097 +60000006300062 80000300079 +60000006400063 80412400078 +60000006500064 80412400072 +60000006600065 80000420000 +60000006700066 10000109998 +60000006800067 00000480001 +60000006900068 83210400078 +60000007000069 00000480001 +60000007100070 84410400069 +60000007200071 84401280069 +60000007300072 10000100000 +60000007400073 80000360075 +60000007500074 80000300078 +60000007600075 83201270078 +60000007700076 80001210072 +60000007800077 80000300079 +60000007900078 01000060000 +60000008000079 80000420000 +60000008100080 10000419998 +60000008200081 83111370086 +60000008300082 83122370088 +60000008400083 83166370088 +60000008500084 83199370086 +60000008600085 80000300089 +60000008700086 81010060133 +60000008800087 80000300089 +60000008900088 81010060132 +60000009000089 80000410138 +60000009100090 80000310091 +60000009200091 00000300000 +60000009300092 81010060137 +60000009400093 80000440108 +60000009500094 80000300097 +60000009600095 81010060135 +60000009700096 00000300000 +60000009800097 09001480004 +60000009900098 80000100136 +60000010000099 81104260097 +60000010100100 00008430000 +60000010200101 00002490001 +60000010300102 00001490001 +60000010400103 81101270097 +60000010500104 80000320100 +60000010600105 80010400131 +60000010700106 81010060131 +60000010800107 80000310108 +60000010900108 00000300000 +60000011000109 00001480010 +60000011100110 80000100134 +60000011200111 00001490000 +60000011300112 00002480001 +60000011400113 00008430000 +60000011500114 00002480001 +60000011600115 80010400131 +60000011700116 81010060131 +60000011800117 00001490004 +60000011900118 80000440108 +60000012000119 80000300097 +60000012100120 80000100136 +60000012200121 00008430000 +60000012300122 00002490001 +60000012400123 00001490001 +60000012500124 00008430000 +60000012600125 00002490001 +60000012700126 00001490001 +60000012800127 00000490002 +60000012900128 80010400131 +60000013000129 81010060131 +60000013100130 00000300000 +60000013200131 20000000000 +60000013300132 21602020202 +60000013400133 21615020202 +60000013500134 20002020202 +60000013600135 20000000202 +60000013700136 20000000002 +60000013800137 20000000000 +60000013900138 00000000000 diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-OUTPUTMEDIA.card b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-OUTPUTMEDIA.card index 4dcc328..194352c 100644 --- a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-OUTPUTMEDIA.card +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-OUTPUTMEDIA.card @@ -1,23 +1,23 @@ REM BALGOL COMPILER OUTPUTMEDIA ROUTINE FOR PAPER TAPE. - REM 2018-07-31 P.KIMPEL + REM 2018-07-31 P.KIMPEL, REVISED 2018-10-21 REM PTU DEFN 1 PAPER TAPE/TTY OUTPUT UNIT NR REM - OTBL NOP * ENTRY POINT + OTBL NOP *-* ENTRY POINT LDB 8 OTBL LOAD RETURN ADDRESS TO B - STB 8 EXIT,04 STORE IN EXIT BUN ADDR + STB 8 XBUN,04 STORE IN EXIT BUN ADDR + STR 8 RSAVE PRESERVE CALLER-S R REG LDR - 9998 LOAD STP WORD TO R REM REM OUTPUT CARRIAGE CONTROL BEFORE PRINT REM - BFR 8 SSB,31,00 SINGLE SPACE BEFORE BFR 8 SSB,31,22 SINGLE SPACE BEFORE AND AFTER BFR 8 FFB,31,33 SKIP CH.1 BEFORE BFR 8 DSB,31,44 DOUBLE SPACE BEFORE BFR 8 FFB,31,55 SKIP CH.2 BEFORE BFR 8 DSB,31,66 DOUBLE SPACE BEFORE/SINGLE AFTER BFR 8 FFB,31,77 SKIP CH.3 BEFORE - BUN 8 FMT ALL OTHER CASES, NO CC BEFORE + BUN 8 SSB ALL OTHER CASES, SINGLE SPACE BEFORE REM FFB PWR 8 FF,PTU,1 OUTPUT FORM-FEED BUN 8 FMT @@ -26,18 +26,18 @@ REM REM FORMAT LINE ACCORDING TO F-DIGIT IN STP WORD REM - FMT DLB - 9999,44,0 LOAD BUFFER ADDR TO B + FMT DEFN * + DLB - 9999,44,0 LOAD BUFFER ADDR TO B BFR 8 FMT2,41,22 FORMAT ALGOL STATEMENT BFR 8 FMT1,41,00 FORMAT MACHINE INSTRUCTION BFR 8 FMT3,41,44 FORMAT FORWARDS BFR 8 FMT5,41,88 FORMAT FIXUPS REM - FMT4 SRT 1 SHIFT BUF LEN IN R TO /32 - STR 8 *+1,32 STORE BUF LEN INTO PWR NEXT - PWR - 0,PTU,* OUTPUT WORDS FROM BUFFER - BUN 8 CCA BRANCH TO CARRIAGE CONTROL + FMT4 DEFN * FORMAT 4 -- OUTPUT WORDS FROM BUFFER + BUN 8 WBUF BRANCH TO BUFFER WRITE REM - FMT1 CAD - 0 FETCH 1ST WORD FROM BUFFER + FMT1 DEFN * FORMAT 1 -- MACHINE INSTRUCTION + CAD - 0 FETCH 1ST WORD FROM BUFFER STP 8 PFX1X OUTPUT INSTRUCTION PREFIX BUN 8 PFX1 CAD - 1 FETCH 2ND WORD FROM BUFFER @@ -47,31 +47,35 @@ STP 8 AOUTX OUTPUT THE ADDRESS FIELD BUN 8 AOUT PWR 8 SP1,PTU,1 OUTPUT A SPACE - PWR - 2,PTU,1 OUTPUT 3RD WORD FROM BUFFER + CAD - 2 FETCH 3RD WORD FROM BUFFER + BFA 8 CCA,00,00 IF BLANK, DONT PRINT IT + STA 8 SIGN2,00 STORE WITH SIGN-2 FOR ALPHA + PWR 8 SIGN2,PTU,1 OUTPUT 3RD WORD BUN 8 CCA BRANCH TO CARRIAGE CONTROL REM - FMT2 CAD - 0 FETCH 1ST WORD FROM BUFFER + FMT2 DEFN * FORMAT 2 -- ALGOL STATEMENT + CAD - 9999 FETCH ADDRESS WORD BEFORE BUFFER SRA 4 POSITION ADDRESS DIGITS STP 8 AOUTX OUTPUT THE ADDRESS BUN 8 AOUT PWR 8 SP4,PTU,1 OUTPUT 4 SPACES - SRT 1 SHIFT BUF LEN IN R TO /32 - STR 8 *+2,32 STORE BUF LEN INTO PWR NEXT - DFL 8 *+1,31,1 DECREMENT LEN BY 1 - PWR - 0,PTU,* OUTPUT WORDS FROM BUFFER - BUN 8 CCA BRANCH TO CARRIAGE CONTROL + BUN 8 WBUF BRANCH TO BUFFER WRITE REM - FMT3 CAD - 0 FETCH 1ST WORD FROM BUFFER + FMT3 DEFN * FORMAT 3 -- FORWARD ADDRESSES + CAD - 0 FETCH 1ST WORD FROM BUFFER STP 8 PFX1X OUTPUT INSTRUCTION PREFIX BUN 8 PFX1 CAD - 1 FETCH 2ND WORD FROM BUFFER STP 8 IOUTX FORMAT 7 HIGH-ORDER DIGITS BUN 8 IOUT PWR 8 SP5,PTU,1 OUTPUT 5 SPACES - PWR - 2,PTU,1 OUTPUT 3RD WORD FROM BUFFER + CAD - 2 FETCH 3RD WORD FROM BUFFER + STA 8 SIGN2,00 STORE WITH SIGN-2 FOR ALPHA + PWR 8 SIGN2,PTU,1 OUTPUT 3RD WORD BUN 8 CCA BRANCH TO CARRIAGE CONTROL REM - FMT5 CAD - 0 FETCH 1ST WORD FROM BUFFER + FMT5 DEFN * FORMAT 5 -- ADDRESS FIXUPS + CAD - 0 FETCH 1ST WORD FROM BUFFER STP 8 PFX1X OUTPUT INSTRUCTION PREFIX BUN 8 PFX1 PWR 8 SP5,PTU,1 OUTPUT 5 SPACES @@ -79,35 +83,62 @@ CAD - 1 FETCH 2ND WORD FROM BUFFER STP 8 AOUTX OUTPUT THE ADDRESS BUN 8 AOUT + BUN 8 CCA BRANCH TO CARRIAGE CONTROL + REM + REM WRITE N WORDS FROM BUFFER ADDRESS, TRIMMING SPACES + REM + WBUF DEFN * + STB 8 P+,04 STORE BUF ADDR IN PWR WORD + STB 8 C+,04 STORE BUF ADDR IN CAD WORD + LDB 8 OTBL GET RETURN ADDR + CAD - 9998 LOAD STP WORD TO A + SRA 1 SHIFT BUF LEN IN A TO /33 + STA 8 P+,32 STORE BUF LEN INTO PWR WORD + *B SRA 1 SHIFT BUF LEN IN A TO /44 + STA 8 B-,44 STORE BUF LEN FOR DLB NEXT + DLB 8 B-,44,1 LOAD BUF LEN MINUS 1 TO B + *C CAD - *-* LOAD CURRENT LAST WORD OF BUFFER + BFA 8 D+,00,00 BRANCH IF WORD IS ALL SPACES + BUN 8 P+ IF NOT SPACES, WRITE BUFFER + *D DFL 8 P+,32,1 DECREMENT BUF LEN IN PWR WORD + DBB 8 C-,1 DECREMENT B, LOOP IF NON-NEG + BUN 8 CCA BUFFER IS ALL SPACES, SKIP TO CC + *P PWR *-*,PTU,*-* WRITE THE TRIMMED BUFFER REM REM CARRIAGE CONTROL AFTER PRINT REM - CCA LDB 8 OTBL LOAD RETURN ADDRESS TO B + CCA DEFN * + LDB 8 OTBL LOAD RETURN ADDRESS TO B LDR - 9998 LOAD STP WORD TO R BFR 8 FFA,31,11 SKIP CH.1 AFTER BFR 8 SSA,31,22 SINGLE SPACE BEFORE AND AFTER BFR 8 SSA,31,66 DOUBLE SPACE BEFORE/SINGLE AFTER + BFR 8 FFA,31,99 SKIP CH.1 AFTER BUN 8 EXIT ALL OTHER CASES, NO CC AFTER REM FFA PWR 8 FF,PTU,1 OUTPUT FORM-FEED BUN 8 EXIT SSA PWR 8 CR,PTU,1 OUTPUT CARRIAGE-RETURN REM - EXIT BUN * RETURN TO CALLER + EXIT DEFN * + LDR 8 RSAVE RESTORE CALLER-S R REG + BOF 8 *+1 MAKE SURE OVERFLOW IS RESET + XBUN BUN *-* RETURN TO CALLER REM - REM OUTPUT INSTRUCTION PREFIX ROUTINE + REM OUTPUT INSTRUCTION PREFIX FROM A REG REM - PFX1 PWR 8 SP5,PTU,1 OUTPUT 5 SPACES - CAD - 0 LOAD ADDRESS WORD FROM BUF + PFX1 DEFN * + PWR 8 SP5,PTU,1 OUTPUT 5 SPACES STP 8 AOUTX OUTPUT THE ADDRESS BUN 8 AOUT PWR 8 SP3,PTU,1 OUTPUT 3 SPACES - PFX1X BUN * RETURN TO CALLER + PFX1X BUN *-* RETURN TO CALLER REM - REM OUTPUT 4 LOW-ORDER DIGITS IN A ROUTINE + REM OUTPUT 4 LOW-ORDER DIGITS FROM A REG REM - AOUT SRT 4,900 SHIFT DIGITS TO R - CAD 8 SP3 LOAD SP3 WORD FOR 02 CHAR + AOUT DEFN * + SRT 4,900 SHIFT DIGITS TO R + CAD 8 SP4 LOAD SP4 WORD FOR 02 CHAR IFL 8 AOUT,11,4 SET REPEAT COUNT *L LSA 8 SET SIGN TO 8 SLS 1 ROTATE IT TO THE /01 DIGIT @@ -116,32 +147,34 @@ BRP 8 L- LOOP IF NOT DONE STA 8 SIGN2,00 STORE IN /00 OF OUTPUT WORD PWR 8 SIGN2,PTU,1 OUTPUT ADDRESS STRING - AOUTX BUN * RETURN TO CALLER + BOF 8 *+1 MAKE SURE OVERFLOW IS RESET + AOUTX BUN *-* RETURN TO CALLER REM - REM OUTPUT 7 HIGH-ORDER INSTRUCTION DIGITS IN A ROUTINE + REM OUTPUT 7 HIGH-ORDER INSTRUCTION DIGITS FROM A REG REM - IOUT SRT 10 MOVE INSTRUCTION TO R + IOUT DEFN * + SRT 10 MOVE INSTRUCTION TO R CAD 8 SP1 LOAD SP1 WORD AS SKELETON SLT 0 COPY SIGN FROM R TO A SRS 1 SHIFT SIGN DIGIT TO /11 LSA 8 SET NUMERIC ZONE SRS 1 SHIFT ZONE TO /11 - STA 8 SIGN2,44 STORE RESULT IN OUTPUT WORD + STA 8 SIGN2,00 STORE RESULT IN OUTPUT WORD PWR 8 SIGN2,PTU,1 OUTPUT SIGN+SPACE SLT 4 SHIFT CONTROL DIGITS TO A STP 8 AOUTX OUTPUT CONTROL DIGITS BUN 8 AOUT CAD 8 SP4 LOAD SP4 WORD AS SKELETON LSA 8 SET SIGN TO 8 - SLA 1 SHIFT 1ST ZONE DIGIT TO /01 + SLS 1 ROTATE 1ST ZONE DIGIT TO /01 SLT 1 SHIFT 1ST NUMERIC DIGIT TO /01 LSA 8 SET SIGN TO 8 - SLA 1 SHIFT 2ND ZONE DIGIT TO /01 + SLS 1 ROTATE 2ND ZONE DIGIT TO /01 SLT 1 SHIFT 2ND NUMERIC DIGIT TO /01 - SRA 2 SHIFT ZERO (SPACE) TO /01 + SLA 2 ROTATE ZERO (SPACE) TO /02 STA 8 SIGN2,00 STORE IN /00 OF OUTPUT WORD PWR 8 SIGN2,PTU,1 OUTPUT OP CODE DIGITS - IOUTX BUN * RETURN TO CALLER + IOUTX BUN *-* RETURN TO CALLER REM REM STORAGE REM @@ -152,4 +185,5 @@ SP3 CNST 20000000202 3 SPACES SP4 CNST 20000000002 4 SPACES SP5 CNST 20000000000 5 SPACES + RSAVE CNST 0 STORAGE FOR CALLER-S R REG FINI OTBL diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-OUTPUTMEDIA.lst b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-OUTPUTMEDIA.lst index f6fef96..72c59d7 100644 --- a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-OUTPUTMEDIA.lst +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-OUTPUTMEDIA.lst @@ -1,174 +1,209 @@ -Assembler for the Burroughs 220 BALGOL Compiler & Library -- 2018-08-06 14:04 +Assembler for the Burroughs 220 BALGOL Compiler & Library -- 2018-10-22 17:02 Source File: PT-OUTPUTMEDIA.card START PASS 2 BALGOL COMPILER OUTPUTMEDIA ROUTINE FOR PAPER TAPE. - 2018-07-31 P.KIMPEL + 2018-07-31 P.KIMPEL, REVISED 2018-10-21 4 0000 PTU DEFN 1 PAPER TAPE/TTY OUTPUT UNIT NR - 6 0000 0 0000 01 0000 OTBL NOP * ENTRY POINT + 6 0000 0 0000 01 0000 OTBL NOP *-* ENTRY POINT 7 0001 8 0000 42 0000 LDB 8 OTBL LOAD RETURN ADDRESS TO B - 8 0002 8 0412 40 0073 STB 8 EXIT,04 STORE IN EXIT BUN ADDR - 9 0003 1 0000 41 9998 LDR - 9998 LOAD STP WORD TO R + 8 0002 8 0412 40 0091 STB 8 XBUN,04 STORE IN EXIT BUN ADDR + 9 0003 8 0001 40 0138 STR 8 RSAVE PRESERVE CALLER-S R REG + 10 0004 1 0000 41 9998 LDR - 9998 LOAD STP WORD TO R OUTPUT CARRIAGE CONTROL BEFORE PRINT - 13 0004 8 3100 37 0015 BFR 8 SSB,31,00 SINGLE SPACE BEFORE 14 0005 8 3122 37 0015 BFR 8 SSB,31,22 SINGLE SPACE BEFORE AND AFTER 15 0006 8 3133 37 0012 BFR 8 FFB,31,33 SKIP CH.1 BEFORE 16 0007 8 3144 37 0014 BFR 8 DSB,31,44 DOUBLE SPACE BEFORE 17 0008 8 3155 37 0012 BFR 8 FFB,31,55 SKIP CH.2 BEFORE 18 0009 8 3166 37 0014 BFR 8 DSB,31,66 DOUBLE SPACE BEFORE/SINGLE AFTER 19 0010 8 3177 37 0012 BFR 8 FFB,31,77 SKIP CH.3 BEFORE - 20 0011 8 0000 30 0016 BUN 8 FMT ALL OTHER CASES, NO CC BEFORE + 20 0011 8 0000 30 0015 BUN 8 SSB ALL OTHER CASES, SINGLE SPACE BEFORE - 22 0012 8 1010 06 0115 FFB PWR 8 FF,PTU,1 OUTPUT FORM-FEED + 22 0012 8 1010 06 0133 FFB PWR 8 FF,PTU,1 OUTPUT FORM-FEED 23 0013 8 0000 30 0016 BUN 8 FMT - 24 0014 8 1010 06 0114 DSB PWR 8 CR,PTU,1 OUTPUT CARRIAGE-RETURN - 25 0015 8 1010 06 0114 SSB PWR 8 CR,PTU,1 OUTPUT CARRIAGE-RETURN + 24 0014 8 1010 06 0132 DSB PWR 8 CR,PTU,1 OUTPUT CARRIAGE-RETURN + 25 0015 8 1010 06 0132 SSB PWR 8 CR,PTU,1 OUTPUT CARRIAGE-RETURN FORMAT LINE ACCORDING TO F-DIGIT IN STP WORD - 29 0016 1 4400 28 9999 FMT DLB - 9999,44,0 LOAD BUFFER ADDR TO B - 30 0017 8 4122 37 0037 BFR 8 FMT2,41,22 FORMAT ALGOL STATEMENT - 31 0018 8 4100 37 0025 BFR 8 FMT1,41,00 FORMAT MACHINE INSTRUCTION - 32 0019 8 4144 37 0047 BFR 8 FMT3,41,44 FORMAT FORWARDS - 33 0020 8 4188 37 0056 BFR 8 FMT5,41,88 FORMAT FIXUPS + 29 0016 FMT DEFN * + 30 0016 1 4400 28 9999 DLB - 9999,44,0 LOAD BUFFER ADDR TO B + 31 0017 8 4122 37 0037 BFR 8 FMT2,41,22 FORMAT ALGOL STATEMENT + 32 0018 8 4100 37 0022 BFR 8 FMT1,41,00 FORMAT MACHINE INSTRUCTION + 33 0019 8 4144 37 0043 BFR 8 FMT3,41,44 FORMAT FORWARDS + 34 0020 8 4188 37 0054 BFR 8 FMT5,41,88 FORMAT FIXUPS - 35 0021 0 0001 48 0001 FMT4 SRT 1 SHIFT BUF LEN IN R TO /32 - 36 0022 8 3211 40 0023 STR 8 *+1,32 STORE BUF LEN INTO PWR NEXT - 37 0023 1 1230 06 0000 PWR - 0,PTU,* OUTPUT WORDS FROM BUFFER - 38 0024 8 0000 30 0064 BUN 8 CCA BRANCH TO CARRIAGE CONTROL + 36 0021 FMT4 DEFN * FORMAT 4 -- OUTPUT WORDS FROM BUFFER + 37 0021 8 0000 30 0063 BUN 8 WBUF BRANCH TO BUFFER WRITE - 40 0025 1 0000 10 0000 FMT1 CAD - 0 FETCH 1ST WORD FROM BUFFER - 41 0026 8 0000 44 0079 STP 8 PFX1X OUTPUT INSTRUCTION PREFIX - 42 0027 8 0000 30 0074 BUN 8 PFX1 - 43 0028 1 0000 10 0001 CAD - 1 FETCH 2ND WORD FROM BUFFER - 44 0029 8 0000 44 0112 STP 8 IOUTX FORMAT 7 HIGH-ORDER DIGITS - 45 0030 8 0000 30 0091 BUN 8 IOUT - 46 0031 1 0000 10 0001 CAD - 1 REFETCH 2ND WORD FROM BUFFER - 47 0032 8 0000 44 0090 STP 8 AOUTX OUTPUT THE ADDRESS FIELD - 48 0033 8 0000 30 0080 BUN 8 AOUT - 49 0034 8 1010 06 0116 PWR 8 SP1,PTU,1 OUTPUT A SPACE - 50 0035 1 1010 06 0002 PWR - 2,PTU,1 OUTPUT 3RD WORD FROM BUFFER - 51 0036 8 0000 30 0064 BUN 8 CCA BRANCH TO CARRIAGE CONTROL + 39 0022 FMT1 DEFN * FORMAT 1 -- MACHINE INSTRUCTION + 40 0022 1 0000 10 0000 CAD - 0 FETCH 1ST WORD FROM BUFFER + 41 0023 8 0000 44 0096 STP 8 PFX1X OUTPUT INSTRUCTION PREFIX + 42 0024 8 0000 30 0092 BUN 8 PFX1 + 43 0025 1 0000 10 0001 CAD - 1 FETCH 2ND WORD FROM BUFFER + 44 0026 8 0000 44 0130 STP 8 IOUTX FORMAT 7 HIGH-ORDER DIGITS + 45 0027 8 0000 30 0109 BUN 8 IOUT + 46 0028 1 0000 10 0001 CAD - 1 REFETCH 2ND WORD FROM BUFFER + 47 0029 8 0000 44 0108 STP 8 AOUTX OUTPUT THE ADDRESS FIELD + 48 0030 8 0000 30 0097 BUN 8 AOUT + 49 0031 8 1010 06 0134 PWR 8 SP1,PTU,1 OUTPUT A SPACE + 50 0032 1 0000 10 0002 CAD - 2 FETCH 3RD WORD FROM BUFFER + 51 0033 8 0000 36 0079 BFA 8 CCA,00,00 IF BLANK, DONT PRINT IT + 52 0034 8 0010 40 0131 STA 8 SIGN2,00 STORE WITH SIGN-2 FOR ALPHA + 53 0035 8 1010 06 0131 PWR 8 SIGN2,PTU,1 OUTPUT 3RD WORD + 54 0036 8 0000 30 0079 BUN 8 CCA BRANCH TO CARRIAGE CONTROL - 53 0037 1 0000 10 0000 FMT2 CAD - 0 FETCH 1ST WORD FROM BUFFER - 54 0038 0 0000 48 0004 SRA 4 POSITION ADDRESS DIGITS - 55 0039 8 0000 44 0090 STP 8 AOUTX OUTPUT THE ADDRESS - 56 0040 8 0000 30 0080 BUN 8 AOUT - 57 0041 8 1010 06 0118 PWR 8 SP4,PTU,1 OUTPUT 4 SPACES - 58 0042 0 0001 48 0001 SRT 1 SHIFT BUF LEN IN R TO /32 - 59 0043 8 3211 40 0045 STR 8 *+2,32 STORE BUF LEN INTO PWR NEXT - 60 0044 8 3101 27 0045 DFL 8 *+1,31,1 DECREMENT LEN BY 1 - 61 0045 1 1450 06 0000 PWR - 0,PTU,* OUTPUT WORDS FROM BUFFER - 62 0046 8 0000 30 0064 BUN 8 CCA BRANCH TO CARRIAGE CONTROL + 56 0037 FMT2 DEFN * FORMAT 2 -- ALGOL STATEMENT + 57 0037 1 0000 10 9999 CAD - 9999 FETCH ADDRESS WORD BEFORE BUFFER + 58 0038 0 0000 48 0004 SRA 4 POSITION ADDRESS DIGITS + 59 0039 8 0000 44 0108 STP 8 AOUTX OUTPUT THE ADDRESS + 60 0040 8 0000 30 0097 BUN 8 AOUT + 61 0041 8 1010 06 0136 PWR 8 SP4,PTU,1 OUTPUT 4 SPACES + 62 0042 8 0000 30 0063 BUN 8 WBUF BRANCH TO BUFFER WRITE - 64 0047 1 0000 10 0000 FMT3 CAD - 0 FETCH 1ST WORD FROM BUFFER - 65 0048 8 0000 44 0079 STP 8 PFX1X OUTPUT INSTRUCTION PREFIX - 66 0049 8 0000 30 0074 BUN 8 PFX1 - 67 0050 1 0000 10 0001 CAD - 1 FETCH 2ND WORD FROM BUFFER - 68 0051 8 0000 44 0112 STP 8 IOUTX FORMAT 7 HIGH-ORDER DIGITS - 69 0052 8 0000 30 0091 BUN 8 IOUT - 70 0053 8 1010 06 0119 PWR 8 SP5,PTU,1 OUTPUT 5 SPACES - 71 0054 1 1010 06 0002 PWR - 2,PTU,1 OUTPUT 3RD WORD FROM BUFFER - 72 0055 8 0000 30 0064 BUN 8 CCA BRANCH TO CARRIAGE CONTROL + 64 0043 FMT3 DEFN * FORMAT 3 -- FORWARD ADDRESSES + 65 0043 1 0000 10 0000 CAD - 0 FETCH 1ST WORD FROM BUFFER + 66 0044 8 0000 44 0096 STP 8 PFX1X OUTPUT INSTRUCTION PREFIX + 67 0045 8 0000 30 0092 BUN 8 PFX1 + 68 0046 1 0000 10 0001 CAD - 1 FETCH 2ND WORD FROM BUFFER + 69 0047 8 0000 44 0130 STP 8 IOUTX FORMAT 7 HIGH-ORDER DIGITS + 70 0048 8 0000 30 0109 BUN 8 IOUT + 71 0049 8 1010 06 0137 PWR 8 SP5,PTU,1 OUTPUT 5 SPACES + 72 0050 1 0000 10 0002 CAD - 2 FETCH 3RD WORD FROM BUFFER + 73 0051 8 0010 40 0131 STA 8 SIGN2,00 STORE WITH SIGN-2 FOR ALPHA + 74 0052 8 1010 06 0131 PWR 8 SIGN2,PTU,1 OUTPUT 3RD WORD + 75 0053 8 0000 30 0079 BUN 8 CCA BRANCH TO CARRIAGE CONTROL - 74 0056 1 0000 10 0000 FMT5 CAD - 0 FETCH 1ST WORD FROM BUFFER - 75 0057 8 0000 44 0079 STP 8 PFX1X OUTPUT INSTRUCTION PREFIX - 76 0058 8 0000 30 0074 BUN 8 PFX1 - 77 0059 8 1010 06 0119 PWR 8 SP5,PTU,1 OUTPUT 5 SPACES - 78 0060 8 1010 06 0119 PWR 8 SP5,PTU,1 OUTPUT 5 MORE - 79 0061 1 0000 10 0001 CAD - 1 FETCH 2ND WORD FROM BUFFER - 80 0062 8 0000 44 0090 STP 8 AOUTX OUTPUT THE ADDRESS - 81 0063 8 0000 30 0080 BUN 8 AOUT + 77 0054 FMT5 DEFN * FORMAT 5 -- ADDRESS FIXUPS + 78 0054 1 0000 10 0000 CAD - 0 FETCH 1ST WORD FROM BUFFER + 79 0055 8 0000 44 0096 STP 8 PFX1X OUTPUT INSTRUCTION PREFIX + 80 0056 8 0000 30 0092 BUN 8 PFX1 + 81 0057 8 1010 06 0137 PWR 8 SP5,PTU,1 OUTPUT 5 SPACES + 82 0058 8 1010 06 0137 PWR 8 SP5,PTU,1 OUTPUT 5 MORE + 83 0059 1 0000 10 0001 CAD - 1 FETCH 2ND WORD FROM BUFFER + 84 0060 8 0000 44 0108 STP 8 AOUTX OUTPUT THE ADDRESS + 85 0061 8 0000 30 0097 BUN 8 AOUT + 86 0062 8 0000 30 0079 BUN 8 CCA BRANCH TO CARRIAGE CONTROL + + WRITE N WORDS FROM BUFFER ADDRESS, TRIMMING SPACES + + 90 0063 WBUF DEFN * + 91 0063 8 0412 40 0078 STB 8 P+,04 STORE BUF ADDR IN PWR WORD + 92 0064 8 0412 40 0072 STB 8 C+,04 STORE BUF ADDR IN CAD WORD + 93 0065 8 0000 42 0000 LDB 8 OTBL GET RETURN ADDR + 94 0066 1 0000 10 9998 CAD - 9998 LOAD STP WORD TO A + 95 0067 0 0000 48 0001 SRA 1 SHIFT BUF LEN IN A TO /33 + 96 0068 8 3210 40 0078 STA 8 P+,32 STORE BUF LEN INTO PWR WORD + 97 0069 0 0000 48 0001 *B SRA 1 SHIFT BUF LEN IN A TO /44 + 98 0070 8 4410 40 0069 STA 8 B-,44 STORE BUF LEN FOR DLB NEXT + 99 0071 8 4401 28 0069 DLB 8 B-,44,1 LOAD BUF LEN MINUS 1 TO B + 100 0072 1 0000 10 0000 *C CAD - *-* LOAD CURRENT LAST WORD OF BUFFER + 101 0073 8 0000 36 0075 BFA 8 D+,00,00 BRANCH IF WORD IS ALL SPACES + 102 0074 8 0000 30 0078 BUN 8 P+ IF NOT SPACES, WRITE BUFFER + 103 0075 8 3201 27 0078 *D DFL 8 P+,32,1 DECREMENT BUF LEN IN PWR WORD + 104 0076 8 0001 21 0072 DBB 8 C-,1 DECREMENT B, LOOP IF NON-NEG + 105 0077 8 0000 30 0079 BUN 8 CCA BUFFER IS ALL SPACES, SKIP TO CC + 106 0078 0 1000 06 0000 *P PWR *-*,PTU,*-* WRITE THE TRIMMED BUFFER CARRIAGE CONTROL AFTER PRINT - 85 0064 8 0000 42 0000 CCA LDB 8 OTBL LOAD RETURN ADDRESS TO B - 86 0065 1 0000 41 9998 LDR - 9998 LOAD STP WORD TO R - 87 0066 8 3111 37 0070 BFR 8 FFA,31,11 SKIP CH.1 AFTER - 88 0067 8 3122 37 0072 BFR 8 SSA,31,22 SINGLE SPACE BEFORE AND AFTER - 89 0068 8 3166 37 0072 BFR 8 SSA,31,66 DOUBLE SPACE BEFORE/SINGLE AFTER - 90 0069 8 0000 30 0073 BUN 8 EXIT ALL OTHER CASES, NO CC AFTER + 110 0079 CCA DEFN * + 111 0079 8 0000 42 0000 LDB 8 OTBL LOAD RETURN ADDRESS TO B + 112 0080 1 0000 41 9998 LDR - 9998 LOAD STP WORD TO R + 113 0081 8 3111 37 0086 BFR 8 FFA,31,11 SKIP CH.1 AFTER + 114 0082 8 3122 37 0088 BFR 8 SSA,31,22 SINGLE SPACE BEFORE AND AFTER + 115 0083 8 3166 37 0088 BFR 8 SSA,31,66 DOUBLE SPACE BEFORE/SINGLE AFTER + 116 0084 8 3199 37 0086 BFR 8 FFA,31,99 SKIP CH.1 AFTER + 117 0085 8 0000 30 0089 BUN 8 EXIT ALL OTHER CASES, NO CC AFTER - 92 0070 8 1010 06 0115 FFA PWR 8 FF,PTU,1 OUTPUT FORM-FEED - 93 0071 8 0000 30 0073 BUN 8 EXIT - 94 0072 8 1010 06 0114 SSA PWR 8 CR,PTU,1 OUTPUT CARRIAGE-RETURN + 119 0086 8 1010 06 0133 FFA PWR 8 FF,PTU,1 OUTPUT FORM-FEED + 120 0087 8 0000 30 0089 BUN 8 EXIT + 121 0088 8 1010 06 0132 SSA PWR 8 CR,PTU,1 OUTPUT CARRIAGE-RETURN - 96 0073 0 0000 30 0073 EXIT BUN * RETURN TO CALLER + 123 0089 EXIT DEFN * + 124 0089 8 0000 41 0138 LDR 8 RSAVE RESTORE CALLER-S R REG + 125 0090 8 0000 31 0091 BOF 8 *+1 MAKE SURE OVERFLOW IS RESET + 126 0091 0 0000 30 0000 XBUN BUN *-* RETURN TO CALLER - OUTPUT INSTRUCTION PREFIX ROUTINE + OUTPUT INSTRUCTION PREFIX FROM A REG - 100 0074 8 1010 06 0119 PFX1 PWR 8 SP5,PTU,1 OUTPUT 5 SPACES - 101 0075 1 0000 10 0000 CAD - 0 LOAD ADDRESS WORD FROM BUF - 102 0076 8 0000 44 0090 STP 8 AOUTX OUTPUT THE ADDRESS - 103 0077 8 0000 30 0080 BUN 8 AOUT - 104 0078 8 1010 06 0117 PWR 8 SP3,PTU,1 OUTPUT 3 SPACES - 105 0079 0 0000 30 0079 PFX1X BUN * RETURN TO CALLER + 130 0092 PFX1 DEFN * + 131 0092 8 1010 06 0137 PWR 8 SP5,PTU,1 OUTPUT 5 SPACES + 132 0093 8 0000 44 0108 STP 8 AOUTX OUTPUT THE ADDRESS + 133 0094 8 0000 30 0097 BUN 8 AOUT + 134 0095 8 1010 06 0135 PWR 8 SP3,PTU,1 OUTPUT 3 SPACES + 135 0096 0 0000 30 0000 PFX1X BUN *-* RETURN TO CALLER - OUTPUT 4 LOW-ORDER DIGITS IN A ROUTINE + OUTPUT 4 LOW-ORDER DIGITS FROM A REG - 109 0080 0 9001 48 0004 AOUT SRT 4,900 SHIFT DIGITS TO R - 110 0081 8 0000 10 0117 CAD 8 SP3 LOAD SP3 WORD FOR 02 CHAR - 111 0082 8 1104 26 0080 IFL 8 AOUT,11,4 SET REPEAT COUNT - 112 0083 0 0008 43 0000 *L LSA 8 SET SIGN TO 8 - 113 0084 0 0002 49 0001 SLS 1 ROTATE IT TO THE /01 DIGIT - 114 0085 0 0001 49 0001 SLT 1 SHIFT DIGIT FROM R - 115 0086 8 1101 27 0080 DFL 8 AOUT,11,1 DECREMENT REPEAT COUNT - 116 0087 8 0000 32 0083 BRP 8 L- LOOP IF NOT DONE - 117 0088 8 0010 40 0113 STA 8 SIGN2,00 STORE IN /00 OF OUTPUT WORD - 118 0089 8 1010 06 0113 PWR 8 SIGN2,PTU,1 OUTPUT ADDRESS STRING - 119 0090 0 0000 30 0090 AOUTX BUN * RETURN TO CALLER + 139 0097 AOUT DEFN * + 140 0097 0 9001 48 0004 SRT 4,900 SHIFT DIGITS TO R + 141 0098 8 0000 10 0136 CAD 8 SP4 LOAD SP4 WORD FOR 02 CHAR + 142 0099 8 1104 26 0097 IFL 8 AOUT,11,4 SET REPEAT COUNT + 143 0100 0 0008 43 0000 *L LSA 8 SET SIGN TO 8 + 144 0101 0 0002 49 0001 SLS 1 ROTATE IT TO THE /01 DIGIT + 145 0102 0 0001 49 0001 SLT 1 SHIFT DIGIT FROM R + 146 0103 8 1101 27 0097 DFL 8 AOUT,11,1 DECREMENT REPEAT COUNT + 147 0104 8 0000 32 0100 BRP 8 L- LOOP IF NOT DONE + 148 0105 8 0010 40 0131 STA 8 SIGN2,00 STORE IN /00 OF OUTPUT WORD + 149 0106 8 1010 06 0131 PWR 8 SIGN2,PTU,1 OUTPUT ADDRESS STRING + 150 0107 8 0000 31 0108 BOF 8 *+1 MAKE SURE OVERFLOW IS RESET + 151 0108 0 0000 30 0000 AOUTX BUN *-* RETURN TO CALLER - OUTPUT 7 HIGH-ORDER INSTRUCTION DIGITS IN A ROUTINE + OUTPUT 7 HIGH-ORDER INSTRUCTION DIGITS FROM A REG - 123 0091 0 0001 48 0010 IOUT SRT 10 MOVE INSTRUCTION TO R - 124 0092 8 0000 10 0116 CAD 8 SP1 LOAD SP1 WORD AS SKELETON - 125 0093 0 0001 49 0000 SLT 0 COPY SIGN FROM R TO A - 126 0094 0 0002 48 0001 SRS 1 SHIFT SIGN DIGIT TO /11 - 127 0095 0 0008 43 0000 LSA 8 SET NUMERIC ZONE - 128 0096 0 0002 48 0001 SRS 1 SHIFT ZONE TO /11 - 129 0097 8 4410 40 0113 STA 8 SIGN2,44 STORE RESULT IN OUTPUT WORD - 130 0098 8 1010 06 0113 PWR 8 SIGN2,PTU,1 OUTPUT SIGN+SPACE - 131 0099 0 0001 49 0004 SLT 4 SHIFT CONTROL DIGITS TO A - 132 0100 8 0000 44 0090 STP 8 AOUTX OUTPUT CONTROL DIGITS - 133 0101 8 0000 30 0080 BUN 8 AOUT - 134 0102 8 0000 10 0118 CAD 8 SP4 LOAD SP4 WORD AS SKELETON - 135 0103 0 0008 43 0000 LSA 8 SET SIGN TO 8 - 136 0104 0 0000 49 0001 SLA 1 SHIFT 1ST ZONE DIGIT TO /01 - 137 0105 0 0001 49 0001 SLT 1 SHIFT 1ST NUMERIC DIGIT TO /01 - 138 0106 0 0008 43 0000 LSA 8 SET SIGN TO 8 - 139 0107 0 0000 49 0001 SLA 1 SHIFT 2ND ZONE DIGIT TO /01 - 140 0108 0 0001 49 0001 SLT 1 SHIFT 2ND NUMERIC DIGIT TO /01 - 141 0109 0 0000 48 0002 SRA 2 SHIFT ZERO (SPACE) TO /01 - 142 0110 8 0010 40 0113 STA 8 SIGN2,00 STORE IN /00 OF OUTPUT WORD - 143 0111 8 1010 06 0113 PWR 8 SIGN2,PTU,1 OUTPUT OP CODE DIGITS - 144 0112 0 0000 30 0112 IOUTX BUN * RETURN TO CALLER + 155 0109 IOUT DEFN * + 156 0109 0 0001 48 0010 SRT 10 MOVE INSTRUCTION TO R + 157 0110 8 0000 10 0134 CAD 8 SP1 LOAD SP1 WORD AS SKELETON + 158 0111 0 0001 49 0000 SLT 0 COPY SIGN FROM R TO A + 159 0112 0 0002 48 0001 SRS 1 SHIFT SIGN DIGIT TO /11 + 160 0113 0 0008 43 0000 LSA 8 SET NUMERIC ZONE + 161 0114 0 0002 48 0001 SRS 1 SHIFT ZONE TO /11 + 162 0115 8 0010 40 0131 STA 8 SIGN2,00 STORE RESULT IN OUTPUT WORD + 163 0116 8 1010 06 0131 PWR 8 SIGN2,PTU,1 OUTPUT SIGN+SPACE + 164 0117 0 0001 49 0004 SLT 4 SHIFT CONTROL DIGITS TO A + 165 0118 8 0000 44 0108 STP 8 AOUTX OUTPUT CONTROL DIGITS + 166 0119 8 0000 30 0097 BUN 8 AOUT + 167 0120 8 0000 10 0136 CAD 8 SP4 LOAD SP4 WORD AS SKELETON + 168 0121 0 0008 43 0000 LSA 8 SET SIGN TO 8 + 169 0122 0 0002 49 0001 SLS 1 ROTATE 1ST ZONE DIGIT TO /01 + 170 0123 0 0001 49 0001 SLT 1 SHIFT 1ST NUMERIC DIGIT TO /01 + 171 0124 0 0008 43 0000 LSA 8 SET SIGN TO 8 + 172 0125 0 0002 49 0001 SLS 1 ROTATE 2ND ZONE DIGIT TO /01 + 173 0126 0 0001 49 0001 SLT 1 SHIFT 2ND NUMERIC DIGIT TO /01 + 174 0127 0 0000 49 0002 SLA 2 ROTATE ZERO (SPACE) TO /02 + 175 0128 8 0010 40 0131 STA 8 SIGN2,00 STORE IN /00 OF OUTPUT WORD + 176 0129 8 1010 06 0131 PWR 8 SIGN2,PTU,1 OUTPUT OP CODE DIGITS + 177 0130 0 0000 30 0000 IOUTX BUN *-* RETURN TO CALLER STORAGE - 148 0113 2 0000 00 0000 SIGN2 CNST 20000000000 SIGN-2 WORD FOR PWR OUTPUT - 149 0114 2 1602 02 0202 CR CNST 21602020202 CARRIAGE-RETURN WORD - 150 0115 2 1615 02 0202 FF CNST 21615020202 FORM-FEED WORD - 151 0116 2 0002 02 0202 SP1 CNST 20002020202 1 SPACE - 152 0117 2 0000 00 0202 SP3 CNST 20000000202 3 SPACES - 153 0118 2 0000 00 0002 SP4 CNST 20000000002 4 SPACES - 154 0119 2 0000 00 0000 SP5 CNST 20000000000 5 SPACES - 155 0120 FINI OTBL + 181 0131 2 0000 00 0000 SIGN2 CNST 20000000000 SIGN-2 WORD FOR PWR OUTPUT + 182 0132 2 1602 02 0202 CR CNST 21602020202 CARRIAGE-RETURN WORD + 183 0133 2 1615 02 0202 FF CNST 21615020202 FORM-FEED WORD + 184 0134 2 0002 02 0202 SP1 CNST 20002020202 1 SPACE + 185 0135 2 0000 00 0202 SP3 CNST 20000000202 3 SPACES + 186 0136 2 0000 00 0002 SP4 CNST 20000000002 4 SPACES + 187 0137 2 0000 00 0000 SP5 CNST 20000000000 5 SPACES + 188 0138 0 0000 00 0000 RSAVE CNST 0 STORAGE FOR CALLER-S R REG + 189 0139 FINI OTBL SYMBOL TABLE - 83 *L..1 80 AOUT 90 AOUTX 8 BMOD 64 CCA - 114 CR 14 DSB 73 EXIT 115 FF 70 FFA - 12 FFB 16 FMT 25 FMT1 37 FMT2 47 FMT3 - 21 FMT4 56 FMT5 91 IOUT 112 IOUTX 0 OTBL - 74 PFX1 79 PFX1X 1 PTU 1 RLO 113 SIGN2 - 116 SP1 117 SP3 118 SP4 119 SP5 72 SSA - 15 SSB + 69 *B..1 72 *C..1 75 *D..1 100 *L..1 78 *P..1 + 97 AOUT 108 AOUTX 8 BMOD 79 CCA 132 CR + 14 DSB 89 EXIT 133 FF 86 FFA 12 FFB + 16 FMT 22 FMT1 37 FMT2 43 FMT3 21 FMT4 + 54 FMT5 109 IOUT 130 IOUTX 0 OTBL 92 PFX1 + 96 PFX1X 1 PTU 1 RLO 138 RSAVE 131 SIGN2 + 134 SP1 135 SP3 136 SP4 137 SP5 88 SSA + 15 SSB 63 WBUF 91 XBUN END PASS 2, ERRORS = 0 diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-REED-Object.card b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-REED-Object.card index 492552b..160b57e 100644 --- a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-REED-Object.card +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-REED-Object.card @@ -1,2 +1 @@ -60600000100000000000100008000042000080412400008100001099980000048000183210400007 -6040000020000614400289999110700300000000030000840000990000 +60600000100000000000100008000042000001160030101000004601171000030000040000990000 diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-REED.card b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-REED.card index 2fe9121..4ee2bfe 100644 --- a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-REED.card +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-REED.card @@ -1,16 +1,20 @@ REM BALGOL LIBRARY REED ROUTINE FOR PAPER TAPE. - REM 2018-08-05 P.KIMPEL + REM 2018-08-05 P.KIMPEL, REVISED 2018-10-22 + REM + REM NOTE- THE BUFFER ADDRESS PASSED BY THE READ ROUTINE + REM IS 0117, WHICH IS THE *ENDING* BUFFER ADDRESS + REM REQUIRED BY THE CARDATRON. THE EFFECTIVE + REM STARTING ADDRESS IS 0101 (M+1), FOR SO FOR + REM PAPER-TAPE INPUT, WE USE THAT. REM PTU DEFN 1 PAPER TAPE INPUT UNIT NR + M DEFN 0100 I/O BUFFER ADDRESS + WORDS DEFN 16 NUMBER OF WORDS TO READ REM - REED NOP * ENTRY POINT + REED NOP *-* ENTRY POINT LDB 8 REED LOAD RETURN ADDRESS TO B - STB 8 EXIT,04 STORE IN EXIT BUN ADDR - CAD - 9998 LOAD STP WORD INTO A - SRA 1 SHIFT BUF LEN TO /32 - STA 8 *+2,32 STORE BUF LEN IN PRD WORD - DLB - 9999,44,0 LOAD BUFFER ADDR TO B - PRD - 0,PTU,* READ WORDS INTO BUFFER - EXIT BUN * RETURN TO CALLER + PRD M+1,PTU,WORDS READ WORDS INTO BUFFER ADDR + CLL M+WORDS+1 CLEAR LAST WORD OF BUFFER + EXIT BUN - 0 RETURN TO CALLER CNST 40000990000 END SIGNAL FOR LOADER FINI REED diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-REED.lst b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-REED.lst index 6853ae4..b36b5bb 100644 --- a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-REED.lst +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-REED.lst @@ -1,29 +1,34 @@ -Assembler for the Burroughs 220 BALGOL Compiler & Library -- 2018-08-06 14:07 +Assembler for the Burroughs 220 BALGOL Compiler & Library -- 2018-10-22 16:55 Source File: PT-REED.card START PASS 2 BALGOL LIBRARY REED ROUTINE FOR PAPER TAPE. - 2018-08-05 P.KIMPEL + 2018-08-05 P.KIMPEL, REVISED 2018-10-22 - 4 0000 PTU DEFN 1 PAPER TAPE INPUT UNIT NR + NOTE- THE BUFFER ADDRESS PASSED BY THE READ ROUTINE + IS 0117, WHICH IS THE *ENDING* BUFFER ADDRESS + REQUIRED BY THE CARDATRON. THE EFFECTIVE + STARTING ADDRESS IS 0101 (M+1), FOR SO FOR + PAPER-TAPE INPUT, WE USE THAT. - 6 0000 0 0000 01 0000 REED NOP * ENTRY POINT - 7 0001 8 0000 42 0000 LDB 8 REED LOAD RETURN ADDRESS TO B - 8 0002 8 0412 40 0008 STB 8 EXIT,04 STORE IN EXIT BUN ADDR - 9 0003 1 0000 10 9998 CAD - 9998 LOAD STP WORD INTO A - 10 0004 0 0000 48 0001 SRA 1 SHIFT BUF LEN TO /32 - 11 0005 8 3210 40 0007 STA 8 *+2,32 STORE BUF LEN IN PRD WORD - 12 0006 1 4400 28 9999 DLB - 9999,44,0 LOAD BUFFER ADDR TO B - 13 0007 1 1070 03 0000 PRD - 0,PTU,* READ WORDS INTO BUFFER - 14 0008 0 0000 30 0008 EXIT BUN * RETURN TO CALLER - 15 0009 4 0000 99 0000 CNST 40000990000 END SIGNAL FOR LOADER - 16 0010 FINI REED + 10 0000 PTU DEFN 1 PAPER TAPE INPUT UNIT NR + 11 0000 M DEFN 0100 I/O BUFFER ADDRESS + 12 0000 WORDS DEFN 16 NUMBER OF WORDS TO READ + + 14 0000 0 0000 01 0000 REED NOP *-* ENTRY POINT + 15 0001 8 0000 42 0000 LDB 8 REED LOAD RETURN ADDRESS TO B + 16 0002 0 1160 03 0101 PRD M+1,PTU,WORDS READ WORDS INTO BUFFER ADDR + 17 0003 0 0000 46 0117 CLL M+WORDS+1 CLEAR LAST WORD OF BUFFER + 18 0004 1 0000 30 0000 EXIT BUN - 0 RETURN TO CALLER + 19 0005 4 0000 99 0000 CNST 40000990000 END SIGNAL FOR LOADER + 20 0006 FINI REED SYMBOL TABLE - 8 BMOD 8 EXIT 1 PTU 0 REED 1 RLO + 8 BMOD 4 EXIT 100 M 1 PTU 0 REED + 1 RLO 16 WORDS END PASS 2, ERRORS = 0 diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-RITE-Object.card b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-RITE-Object.card index 5693803..c9070f0 100644 --- a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-RITE-Object.card +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-RITE-Object.card @@ -1,13 +1,15 @@ -60600000100000000000100008000042000080412400067100004199988310037001583122370015 -60600000200006831333700128314437001483155370012831663700148317737001280000300016 -60600000300012810100600708000030001681010060069810100600691440028999984144370023 -60600000400018841663700540000148000183211400021112100600008000030005881010060071 -60600000500024110100600001000010000100001480008000004900020000149000400000490001 -60600000600030000024300000000249000180010400068810100600681000010000200000430000 -60600000700036800004000688101006006880000100069000024300008000040006810000100003 -60600000800042802104000688101006006880000100069000024300008000040006810000100004 -60600000900048804104000688610227006880000330051851022600688101006006880000300058 -60600001000054810100600710000148000183211400057115700600008000042000010000419998 -60600001100060831113700648312237006683166370066800003000678101006007080000300067 -60600001200066810100600690000030006720000000000216020202022161502020220000000000 -6010000130007240000990000 \ No newline at end of file +60600000100000000000100008000042000080412400078800014000831000041999883122370015 +60600000200006831333700128314437001483155370012831663700148317737001280000300015 +60600000300012810100600818000030001681010060080810100600801440028999984144370020 +60600000400018841663700508000030005181010060082100001000008001040007981010060079 +60600000500024100001000010000148000800000490002000014900040000049000100002430000 +60600000600030000024900018001040007981010060079110100600028000010008000000490002 +60600000700036800004000791000010000380210400079810100600798000010008000000490002 +60600000800042800004000791000010000480410400079862124000798000033004885102260079 +60600000900048810100600798000030006781010060082804124000668041240006080000420000 +60600001000054100001099980000048000183210400066000004800018441040005784401280057 +60600001100060100001000008000036006380000300066832012700668000121006080000300067 +60600001200066010000600008000042000010000419998831113700748312237007683166370076 +60600001300072831993700748000030007781010060081800003000778101006008080000410083 +60600001400078000003000002000000000021602020202216150202022000000000000000000000 +6010000150008440000990000 diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-RITE.card b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-RITE.card index 6c8aad3..65e171c 100644 --- a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-RITE.card +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-RITE.card @@ -1,23 +1,23 @@ REM BALGOL LIBRARY RITE ROUTINE FOR PAPER TAPE. - REM 2018-08-05 P.KIMPEL + REM 2018-08-05 P.KIMPEL, REVISED 2018-10-21 REM PTU DEFN 1 PAPER TAPE/TTY OUTPUT UNIT NR REM - RITE NOP * ENTRY POINT + RITE NOP *-* ENTRY POINT LDB 8 RITE LOAD RETURN ADDRESS TO B - STB 8 EXIT,04 STORE IN EXIT BUN + STB 8 XBUN,04 STORE IN EXIT BUN ADDR + STR 8 RSAVE PRESERVE CALLER-S R REG LDR - 9998 LOAD STP WORD TO R REM REM OUTPUT CARRIAGE CONTROL BEFORE PRINT REM - BFR 8 SSB,31,00 SINGLE SPACE BEFORE BFR 8 SSB,31,22 SINGLE SPACE BEFORE AND AFTER BFR 8 FFB,31,33 SKIP CH.1 BEFORE BFR 8 DSB,31,44 DOUBLE SPACE BEFORE BFR 8 FFB,31,55 SKIP CH.2 BEFORE BFR 8 DSB,31,66 DOUBLE SPACE BEFORE/SINGLE AFTER BFR 8 FFB,31,77 SKIP CH.3 BEFORE - BUN 8 FMT ALL OTHER CASES, NO CC BEFORE + BUN 8 SSB ALL OTHER CASES, SINGLE SPACE BEFORE REM FFB PWR 8 FF,PTU,1 OUTPUT FORM-FEED BUN 8 FMT @@ -26,66 +26,87 @@ REM REM FORMAT LINE ACCORDING TO F-DIGIT IN STP WORD REM - FMT DLB - 9999,44,0 LOAD BUFFER ADDR TO B + FMT DEFN * + DLB - 9999,44,0 LOAD BUFFER ADDR TO B BFR 8 FMT3,41,44 FORMAT MONITOR OUTPUT BFR 8 FMT4,41,66 FORMAT ERRORS REM - FMT5 SRT 1 SHIFT BUF LEN IN R TO /32 - STR 8 *+1,32 STORE BUF LEN INTO PWR NEXT - PWR - 0,PTU,* OUTPUT WORDS FROM BUFFER - BUN 8 CCA BRANCH TO CARRIAGE CONTROL + FMT5 DEFN * FORMAT 5 -- OUTPUT WORDS FROM BUFFER + BUN 8 WBUF BRANCH TO BUFFER WRITE REM - FMT3 PWR 8 SP5,PTU,1 OUTPUT 5 SPACES - PWR - 0,PTU,1 OUTPUT 1ST WORD FROM BUFFER + FMT3 DEFN * FORMAT 3 -- MONITOR OUTPUT + PWR 8 SP5,PTU,1 OUTPUT 5 SPACES + CAD - 0 LOAD 1ST WORD FROM BUFFER + STA 8 SIGN2,00 MAKE IT ALPHA + PWR 8 SIGN2,PTU,1 OUTPUT 1ST WORD FROM BUFFER CAD - 1 FETCH 2ND WORD FROM BUFFER SRT 8 SLIDE 1ST CHAR TO /02, REST TO R - SLA 2 ROTATE SPACE AFTER 1ST CHAR + SLA 2 ROTATE A SPACE AFTER 1ST CHAR SLT 4 SHIFT NEXT 2 CHAR INTO A SLA 1 ROTATE ZERO DIGIT FOR 02 CHAR LSA 2 LOAD NUMERIC DIGIT FOR 02 CHAR SLS 1 ROTATE NUMERIC DIGIT FOR 02 CHAR STA 8 SIGN2,00 STORE IN OUTPUT WORD - PWR 8 SIGN2,PTU,1 OUTPUT WORD - CAD - 2 FETCH 3RD WORD FROM BUFFER - LSA 0 CLEAR SIGN TO PRINT NUMERICALLY - STA 8 SIGN2 STORE IN OUTPUT WORD - PWR 8 SIGN2,PTU,1 OUTPUT WORD + PWR 8 SIGN2,PTU,1 OUTPUT THE 2ND WORD + PWR - 2,PTU,1 OUTPUT THE 3RD WORD CAD 8 CR LOAD CR WORD AS SKELETON - LSA 2 ROTATE CR CHAR TO /02 + SLA 2 ROTATE CR CHAR TO /02 STA 8 SIGN2 STORE IN OUTPUT WORD CAD - 3 FETCH 4TH WORD FROM BUFFER STA 8 SIGN2,02 STORE CHAR IN OUTPUT WORD - PWR 8 SIGN2,PTU,1 OUTPUT WORD + PWR 8 SIGN2,PTU,1 OUTPUT THE WORD CAD 8 CR LOAD CR WORD AS SKELETON - LSA 2 ROTATE CR CHAR TO /02 + SLA 2 ROTATE CR CHAR TO /02 STA 8 SIGN2 STORE IN OUTPUT WORD CAD - 4 FETCH 5TH WORD FROM BUFFER STA 8 SIGN2,04 STORE TWO LOW-ORDER CHARS - DFL 8 SIGN2,61,2 CLEAR /62 CHAR TO SPACE - BSA 8 *+1,0 IF SIGN=0, DO NOTHING + STB 8 SIGN2,62 CLEAR /62 CHAR TO SPACE + BSA 8 *+2,0 IF SIGN=0, DO NOTHING IFL 8 SIGN2,51,2 OTHERWISE, SET /62 TO "-" - PWR 8 SIGN2,PTU,1 OUTPUT WORD + PWR 8 SIGN2,PTU,1 OUTPUT THE WORD BUN 8 CCA BRANCH TO CARRIAGE CONTROL REM - FMT4 PWR 8 SP5,PTU,1 OUTPUT 5 SPACES - SRT 1 SHIFT BUF LEN IN R TO /32 - STR 8 *+1,32 STORE BUF LEN INTO PWR NEXT - PWR - 0,PTU,* OUTPUT WORDS FROM BUFFER + FMT4 DEFN * FORMAT 4 -- ERRORS + PWR 8 SP5,PTU,1 OUTPUT 5 SPACES + REM + REM WRITE N WORDS FROM BUFFER ADDRESS, TRIMMING SPACES + REM + WBUF DEFN * + STB 8 P+,04 STORE BUF ADDR IN PWR WORD + STB 8 C+,04 STORE BUF ADDR IN CAD WORD + LDB 8 RITE GET RETURN ADDR + CAD - 9998 LOAD STP WORD TO A + SRA 1 SHIFT BUF LEN IN A TO /33 + STA 8 P+,32 STORE BUF LEN INTO PWR WORD + *B SRA 1 SHIFT BUF LEN IN A TO /44 + STA 8 B-,44 STORE BUF LEN FOR DLB NEXT + DLB 8 B-,44,1 LOAD BUF LEN MINUS 1 TO B + *C CAD - *-* LOAD CURRENT LAST WORD OF BUFFER + BFA 8 D+,00,00 BRANCH IF WORD IS ALL SPACES + BUN 8 P+ IF NOT SPACES, WRITE BUFFER + *D DFL 8 P+,32,1 DECREMENT BUF LEN IN PWR WORD + DBB 8 C-,1 DECREMENT B, LOOP IF NON-NEG + BUN 8 CCA BUFFER IS ALL SPACES, SKIP TO CC + *P PWR *-*,PTU,*-* WRITE THE TRIMMED BUFFER REM REM CARRIAGE CONTROL AFTER PRINT REM - CCA LDB 8 RITE LOAD RETURN ADDRESS TO B + CCA DEFN * + LDB 8 RITE LOAD RETURN ADDRESS TO B LDR - 9998 LOAD STP WORD TO R BFR 8 FFA,31,11 SKIP CH.1 AFTER BFR 8 SSA,31,22 SINGLE SPACE BEFORE AND AFTER BFR 8 SSA,31,66 DOUBLE SPACE BEFORE/SINGLE AFTER + BFR 8 FFA,31,99 SKIP CH.1 AFTER BUN 8 EXIT ALL OTHER CASES, NO CC AFTER REM FFA PWR 8 FF,PTU,1 OUTPUT FORM-FEED BUN 8 EXIT SSA PWR 8 CR,PTU,1 OUTPUT CARRIAGE-RETURN REM - EXIT BUN * RETURN TO CALLER + EXIT DEFN * + LDR 8 RSAVE RESTORE CALLER-S R REG + XBUN BUN *-* RETURN TO CALLER REM REM STORAGE REM @@ -93,5 +114,6 @@ CR CNST 21602020202 CARRIAGE-RETURN WORD FF CNST 21615020202 FORM-FEED WORD SP5 CNST 20000000000 5 SPACES + RSAVE CNST 0 STORAGE FOR CALLER-S R REG CNST 40000990000 END SIGNAL FOR LOADER FINI RITE diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-RITE.lst b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-RITE.lst index 3563e5a..c33cc1a 100644 --- a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-RITE.lst +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/PT-RITE.lst @@ -1,113 +1,137 @@ -Assembler for the Burroughs 220 BALGOL Compiler & Library -- 2018-08-06 14:08 +Assembler for the Burroughs 220 BALGOL Compiler & Library -- 2018-10-22 18:07 Source File: PT-RITE.card START PASS 2 BALGOL LIBRARY RITE ROUTINE FOR PAPER TAPE. - 2018-08-05 P.KIMPEL + 2018-08-05 P.KIMPEL, REVISED 2018-10-21 4 0000 PTU DEFN 1 PAPER TAPE/TTY OUTPUT UNIT NR - 6 0000 0 0000 01 0000 RITE NOP * ENTRY POINT + 6 0000 0 0000 01 0000 RITE NOP *-* ENTRY POINT 7 0001 8 0000 42 0000 LDB 8 RITE LOAD RETURN ADDRESS TO B - 8 0002 8 0412 40 0067 STB 8 EXIT,04 STORE IN EXIT BUN ADDR - 9 0003 1 0000 41 9998 LDR - 9998 LOAD STP WORD TO R + 8 0002 8 0412 40 0078 STB 8 XBUN,04 STORE IN EXIT BUN ADDR + 9 0003 8 0001 40 0083 STR 8 RSAVE PRESERVE CALLER-S R REG + 10 0004 1 0000 41 9998 LDR - 9998 LOAD STP WORD TO R OUTPUT CARRIAGE CONTROL BEFORE PRINT - 13 0004 8 3100 37 0015 BFR 8 SSB,31,00 SINGLE SPACE BEFORE 14 0005 8 3122 37 0015 BFR 8 SSB,31,22 SINGLE SPACE BEFORE AND AFTER 15 0006 8 3133 37 0012 BFR 8 FFB,31,33 SKIP CH.1 BEFORE 16 0007 8 3144 37 0014 BFR 8 DSB,31,44 DOUBLE SPACE BEFORE 17 0008 8 3155 37 0012 BFR 8 FFB,31,55 SKIP CH.2 BEFORE 18 0009 8 3166 37 0014 BFR 8 DSB,31,66 DOUBLE SPACE BEFORE/SINGLE AFTER 19 0010 8 3177 37 0012 BFR 8 FFB,31,77 SKIP CH.3 BEFORE - 20 0011 8 0000 30 0016 BUN 8 FMT ALL OTHER CASES, NO CC BEFORE + 20 0011 8 0000 30 0015 BUN 8 SSB ALL OTHER CASES, SINGLE SPACE BEFORE - 22 0012 8 1010 06 0070 FFB PWR 8 FF,PTU,1 OUTPUT FORM-FEED + 22 0012 8 1010 06 0081 FFB PWR 8 FF,PTU,1 OUTPUT FORM-FEED 23 0013 8 0000 30 0016 BUN 8 FMT - 24 0014 8 1010 06 0069 DSB PWR 8 CR,PTU,1 OUTPUT CARRIAGE-RETURN - 25 0015 8 1010 06 0069 SSB PWR 8 CR,PTU,1 OUTPUT CARRIAGE-RETURN + 24 0014 8 1010 06 0080 DSB PWR 8 CR,PTU,1 OUTPUT CARRIAGE-RETURN + 25 0015 8 1010 06 0080 SSB PWR 8 CR,PTU,1 OUTPUT CARRIAGE-RETURN FORMAT LINE ACCORDING TO F-DIGIT IN STP WORD - 29 0016 1 4400 28 9999 FMT DLB - 9999,44,0 LOAD BUFFER ADDR TO B - 30 0017 8 4144 37 0023 BFR 8 FMT3,41,44 FORMAT MONITOR OUTPUT - 31 0018 8 4166 37 0054 BFR 8 FMT4,41,66 FORMAT ERRORS + 29 0016 FMT DEFN * + 30 0016 1 4400 28 9999 DLB - 9999,44,0 LOAD BUFFER ADDR TO B + 31 0017 8 4144 37 0020 BFR 8 FMT3,41,44 FORMAT MONITOR OUTPUT + 32 0018 8 4166 37 0050 BFR 8 FMT4,41,66 FORMAT ERRORS - 33 0019 0 0001 48 0001 FMT5 SRT 1 SHIFT BUF LEN IN R TO /32 - 34 0020 8 3211 40 0021 STR 8 *+1,32 STORE BUF LEN INTO PWR NEXT - 35 0021 1 1210 06 0000 PWR - 0,PTU,* OUTPUT WORDS FROM BUFFER - 36 0022 8 0000 30 0058 BUN 8 CCA BRANCH TO CARRIAGE CONTROL + 34 0019 FMT5 DEFN * FORMAT 5 -- OUTPUT WORDS FROM BUFFER + 35 0019 8 0000 30 0051 BUN 8 WBUF BRANCH TO BUFFER WRITE - 38 0023 8 1010 06 0071 FMT3 PWR 8 SP5,PTU,1 OUTPUT 5 SPACES - 39 0024 1 1010 06 0000 PWR - 0,PTU,1 OUTPUT 1ST WORD FROM BUFFER - 40 0025 1 0000 10 0001 CAD - 1 FETCH 2ND WORD FROM BUFFER - 41 0026 0 0001 48 0008 SRT 8 SLIDE 1ST CHAR TO /02, REST TO R - 42 0027 0 0000 49 0002 SLA 2 ROTATE SPACE AFTER 1ST CHAR - 43 0028 0 0001 49 0004 SLT 4 SHIFT NEXT 2 CHAR INTO A - 44 0029 0 0000 49 0001 SLA 1 ROTATE ZERO DIGIT FOR 02 CHAR - 45 0030 0 0002 43 0000 LSA 2 LOAD NUMERIC DIGIT FOR 02 CHAR - 46 0031 0 0002 49 0001 SLS 1 ROTATE NUMERIC DIGIT FOR 02 CHAR - 47 0032 8 0010 40 0068 STA 8 SIGN2,00 STORE IN OUTPUT WORD - 48 0033 8 1010 06 0068 PWR 8 SIGN2,PTU,1 OUTPUT WORD - 49 0034 1 0000 10 0002 CAD - 2 FETCH 3RD WORD FROM BUFFER - 50 0035 0 0000 43 0000 LSA 0 CLEAR SIGN TO PRINT NUMERICALLY - 51 0036 8 0000 40 0068 STA 8 SIGN2 STORE IN OUTPUT WORD - 52 0037 8 1010 06 0068 PWR 8 SIGN2,PTU,1 OUTPUT WORD - 53 0038 8 0000 10 0069 CAD 8 CR LOAD CR WORD AS SKELETON - 54 0039 0 0002 43 0000 LSA 2 ROTATE CR CHAR TO /02 - 55 0040 8 0000 40 0068 STA 8 SIGN2 STORE IN OUTPUT WORD - 56 0041 1 0000 10 0003 CAD - 3 FETCH 4TH WORD FROM BUFFER - 57 0042 8 0210 40 0068 STA 8 SIGN2,02 STORE CHAR IN OUTPUT WORD - 58 0043 8 1010 06 0068 PWR 8 SIGN2,PTU,1 OUTPUT WORD - 59 0044 8 0000 10 0069 CAD 8 CR LOAD CR WORD AS SKELETON - 60 0045 0 0002 43 0000 LSA 2 ROTATE CR CHAR TO /02 - 61 0046 8 0000 40 0068 STA 8 SIGN2 STORE IN OUTPUT WORD - 62 0047 1 0000 10 0004 CAD - 4 FETCH 5TH WORD FROM BUFFER - 63 0048 8 0410 40 0068 STA 8 SIGN2,04 STORE TWO LOW-ORDER CHARS - 64 0049 8 6102 27 0068 DFL 8 SIGN2,61,2 CLEAR /62 CHAR TO SPACE - 65 0050 8 0000 33 0051 BSA 8 *+1,0 IF SIGN=0, DO NOTHING - 66 0051 8 5102 26 0068 IFL 8 SIGN2,51,2 OTHERWISE, SET /62 TO "-" - 67 0052 8 1010 06 0068 PWR 8 SIGN2,PTU,1 OUTPUT WORD - 68 0053 8 0000 30 0058 BUN 8 CCA BRANCH TO CARRIAGE CONTROL + 37 0020 FMT3 DEFN * FORMAT 3 -- MONITOR OUTPUT + 38 0020 8 1010 06 0082 PWR 8 SP5,PTU,1 OUTPUT 5 SPACES + 39 0021 1 0000 10 0000 CAD - 0 LOAD 1ST WORD FROM BUFFER + 40 0022 8 0010 40 0079 STA 8 SIGN2,00 MAKE IT ALPHA + 41 0023 8 1010 06 0079 PWR 8 SIGN2,PTU,1 OUTPUT 1ST WORD FROM BUFFER + 42 0024 1 0000 10 0001 CAD - 1 FETCH 2ND WORD FROM BUFFER + 43 0025 0 0001 48 0008 SRT 8 SLIDE 1ST CHAR TO /02, REST TO R + 44 0026 0 0000 49 0002 SLA 2 ROTATE A SPACE AFTER 1ST CHAR + 45 0027 0 0001 49 0004 SLT 4 SHIFT NEXT 2 CHAR INTO A + 46 0028 0 0000 49 0001 SLA 1 ROTATE ZERO DIGIT FOR 02 CHAR + 47 0029 0 0002 43 0000 LSA 2 LOAD NUMERIC DIGIT FOR 02 CHAR + 48 0030 0 0002 49 0001 SLS 1 ROTATE NUMERIC DIGIT FOR 02 CHAR + 49 0031 8 0010 40 0079 STA 8 SIGN2,00 STORE IN OUTPUT WORD + 50 0032 8 1010 06 0079 PWR 8 SIGN2,PTU,1 OUTPUT THE 2ND WORD + 51 0033 1 1010 06 0002 PWR - 2,PTU,1 OUTPUT THE 3RD WORD + 52 0034 8 0000 10 0080 CAD 8 CR LOAD CR WORD AS SKELETON + 53 0035 0 0000 49 0002 SLA 2 ROTATE CR CHAR TO /02 + 54 0036 8 0000 40 0079 STA 8 SIGN2 STORE IN OUTPUT WORD + 55 0037 1 0000 10 0003 CAD - 3 FETCH 4TH WORD FROM BUFFER + 56 0038 8 0210 40 0079 STA 8 SIGN2,02 STORE CHAR IN OUTPUT WORD + 57 0039 8 1010 06 0079 PWR 8 SIGN2,PTU,1 OUTPUT THE WORD + 58 0040 8 0000 10 0080 CAD 8 CR LOAD CR WORD AS SKELETON + 59 0041 0 0000 49 0002 SLA 2 ROTATE CR CHAR TO /02 + 60 0042 8 0000 40 0079 STA 8 SIGN2 STORE IN OUTPUT WORD + 61 0043 1 0000 10 0004 CAD - 4 FETCH 5TH WORD FROM BUFFER + 62 0044 8 0410 40 0079 STA 8 SIGN2,04 STORE TWO LOW-ORDER CHARS + 63 0045 8 6212 40 0079 STB 8 SIGN2,62 CLEAR /62 CHAR TO SPACE + 64 0046 8 0000 33 0048 BSA 8 *+2,0 IF SIGN=0, DO NOTHING + 65 0047 8 5102 26 0079 IFL 8 SIGN2,51,2 OTHERWISE, SET /62 TO "-" + 66 0048 8 1010 06 0079 PWR 8 SIGN2,PTU,1 OUTPUT THE WORD + 67 0049 8 0000 30 0067 BUN 8 CCA BRANCH TO CARRIAGE CONTROL - 70 0054 8 1010 06 0071 FMT4 PWR 8 SP5,PTU,1 OUTPUT 5 SPACES - 71 0055 0 0001 48 0001 SRT 1 SHIFT BUF LEN IN R TO /32 - 72 0056 8 3211 40 0057 STR 8 *+1,32 STORE BUF LEN INTO PWR NEXT - 73 0057 1 1570 06 0000 PWR - 0,PTU,* OUTPUT WORDS FROM BUFFER + 69 0050 FMT4 DEFN * FORMAT 4 -- ERRORS + 70 0050 8 1010 06 0082 PWR 8 SP5,PTU,1 OUTPUT 5 SPACES + + WRITE N WORDS FROM BUFFER ADDRESS, TRIMMING SPACES + + 74 0051 WBUF DEFN * + 75 0051 8 0412 40 0066 STB 8 P+,04 STORE BUF ADDR IN PWR WORD + 76 0052 8 0412 40 0060 STB 8 C+,04 STORE BUF ADDR IN CAD WORD + 77 0053 8 0000 42 0000 LDB 8 RITE GET RETURN ADDR + 78 0054 1 0000 10 9998 CAD - 9998 LOAD STP WORD TO A + 79 0055 0 0000 48 0001 SRA 1 SHIFT BUF LEN IN A TO /33 + 80 0056 8 3210 40 0066 STA 8 P+,32 STORE BUF LEN INTO PWR WORD + 81 0057 0 0000 48 0001 *B SRA 1 SHIFT BUF LEN IN A TO /44 + 82 0058 8 4410 40 0057 STA 8 B-,44 STORE BUF LEN FOR DLB NEXT + 83 0059 8 4401 28 0057 DLB 8 B-,44,1 LOAD BUF LEN MINUS 1 TO B + 84 0060 1 0000 10 0000 *C CAD - *-* LOAD CURRENT LAST WORD OF BUFFER + 85 0061 8 0000 36 0063 BFA 8 D+,00,00 BRANCH IF WORD IS ALL SPACES + 86 0062 8 0000 30 0066 BUN 8 P+ IF NOT SPACES, WRITE BUFFER + 87 0063 8 3201 27 0066 *D DFL 8 P+,32,1 DECREMENT BUF LEN IN PWR WORD + 88 0064 8 0001 21 0060 DBB 8 C-,1 DECREMENT B, LOOP IF NON-NEG + 89 0065 8 0000 30 0067 BUN 8 CCA BUFFER IS ALL SPACES, SKIP TO CC + 90 0066 0 1000 06 0000 *P PWR *-*,PTU,*-* WRITE THE TRIMMED BUFFER CARRIAGE CONTROL AFTER PRINT - 77 0058 8 0000 42 0000 CCA LDB 8 RITE LOAD RETURN ADDRESS TO B - 78 0059 1 0000 41 9998 LDR - 9998 LOAD STP WORD TO R - 79 0060 8 3111 37 0064 BFR 8 FFA,31,11 SKIP CH.1 AFTER - 80 0061 8 3122 37 0066 BFR 8 SSA,31,22 SINGLE SPACE BEFORE AND AFTER - 81 0062 8 3166 37 0066 BFR 8 SSA,31,66 DOUBLE SPACE BEFORE/SINGLE AFTER - 82 0063 8 0000 30 0067 BUN 8 EXIT ALL OTHER CASES, NO CC AFTER + 94 0067 CCA DEFN * + 95 0067 8 0000 42 0000 LDB 8 RITE LOAD RETURN ADDRESS TO B + 96 0068 1 0000 41 9998 LDR - 9998 LOAD STP WORD TO R + 97 0069 8 3111 37 0074 BFR 8 FFA,31,11 SKIP CH.1 AFTER + 98 0070 8 3122 37 0076 BFR 8 SSA,31,22 SINGLE SPACE BEFORE AND AFTER + 99 0071 8 3166 37 0076 BFR 8 SSA,31,66 DOUBLE SPACE BEFORE/SINGLE AFTER + 100 0072 8 3199 37 0074 BFR 8 FFA,31,99 SKIP CH.1 AFTER + 101 0073 8 0000 30 0077 BUN 8 EXIT ALL OTHER CASES, NO CC AFTER - 84 0064 8 1010 06 0070 FFA PWR 8 FF,PTU,1 OUTPUT FORM-FEED - 85 0065 8 0000 30 0067 BUN 8 EXIT - 86 0066 8 1010 06 0069 SSA PWR 8 CR,PTU,1 OUTPUT CARRIAGE-RETURN + 103 0074 8 1010 06 0081 FFA PWR 8 FF,PTU,1 OUTPUT FORM-FEED + 104 0075 8 0000 30 0077 BUN 8 EXIT + 105 0076 8 1010 06 0080 SSA PWR 8 CR,PTU,1 OUTPUT CARRIAGE-RETURN - 88 0067 0 0000 30 0067 EXIT BUN * RETURN TO CALLER + 107 0077 EXIT DEFN * + 108 0077 8 0000 41 0083 LDR 8 RSAVE RESTORE CALLER-S R REG + 109 0078 0 0000 30 0000 XBUN BUN *-* RETURN TO CALLER STORAGE - 92 0068 2 0000 00 0000 SIGN2 CNST 20000000000 SIGN-2 WORD FOR PWR OUTPUT - 93 0069 2 1602 02 0202 CR CNST 21602020202 CARRIAGE-RETURN WORD - 94 0070 2 1615 02 0202 FF CNST 21615020202 FORM-FEED WORD - 95 0071 2 0000 00 0000 SP5 CNST 20000000000 5 SPACES - 96 0072 4 0000 99 0000 CNST 40000990000 END SIGNAL FOR LOADER - 97 0073 FINI RITE + 113 0079 2 0000 00 0000 SIGN2 CNST 20000000000 SIGN-2 WORD FOR PWR OUTPUT + 114 0080 2 1602 02 0202 CR CNST 21602020202 CARRIAGE-RETURN WORD + 115 0081 2 1615 02 0202 FF CNST 21615020202 FORM-FEED WORD + 116 0082 2 0000 00 0000 SP5 CNST 20000000000 5 SPACES + 117 0083 0 0000 00 0000 RSAVE CNST 0 STORAGE FOR CALLER-S R REG + 118 0084 4 0000 99 0000 CNST 40000990000 END SIGNAL FOR LOADER + 119 0085 FINI RITE SYMBOL TABLE - 8 BMOD 58 CCA 69 CR 14 DSB 67 EXIT - 70 FF 64 FFA 12 FFB 16 FMT 23 FMT3 - 54 FMT4 19 FMT5 1 PTU 0 RITE 1 RLO - 68 SIGN2 71 SP5 66 SSA 15 SSB + 57 *B..1 60 *C..1 63 *D..1 66 *P..1 8 BMOD + 67 CCA 80 CR 14 DSB 77 EXIT 81 FF + 74 FFA 12 FFB 16 FMT 20 FMT3 50 FMT4 + 19 FMT5 1 PTU 0 RITE 1 RLO 83 RSAVE + 79 SIGN2 82 SP5 76 SSA 15 SSB 51 WBUF + 78 XBUN END PASS 2, ERRORS = 0 diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/README.txt b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/README.txt new file mode 100644 index 0000000..74940a5 --- /dev/null +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/PaperTape-Media/README.txt @@ -0,0 +1,115 @@ +Index of folder retro-220/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/ +PaperTape-Media: + +Source and object files to implement a version of the BALGOL compiler +that supports paper-tape input and TTY/paper-tape output for both +compilation and run-time. + +Unless otherwise specified, all files are in standard Windows text +format, with carriage-return/line-feed delimiters. + + +Hello-World-BALGOL.card + Card-image source for a simple "Hello World" program used to test + the paper-tape support for the compiler. + +Hello-World-BALGOL.pt + Paper-tape source for the same "Hello World" program. As required by + the compiler, each source line contains 14 words, with trailing + words of spaces as necessary to pad out to that length. + +Hello-World-Code-List.lst + Compilation listing of the paper-tape program above with the + generated code and run-time output. + +PT-Compiler.tape + Loadable tape image of the compiler generated with paper-tape + support. This tape should be loaded to a taped drive designated as + unit 2. + +PT-Compiler-Callout.pt + Paper-tape callout program to boot the compiler from the tape image + above. This program should be loaded on a paper-tape reader + designated as unit 1. + +PT-Generator-Callout.card + Card deck to run the BALGOL Generator program and produce the + loadable compiler tape image above. This deck includes the object + code for the paper-tape versions of the compiler's INPUTMEDIA and + OUTPUTMEDIA routines, plus the object decks for the complete + standard BALGOL library. The standard REED and RITE routines of the + library have been replaced by ones to use paper-tape input and TTY + output at run-time. Note that a 220 configuration that includes the + Cardatron is required in order to run the Generator. + +PT-INPUTMEDIA.card + Card-image source for the paper-tape version of the compiler's + INPUTMEDIA routine. This routine reads 14-word (70 character) + records of source code at compile time. It must be assembled using + the BAC-Assembler with the object code output as a "Gen MEDIA Deck" + and then inserted into the Generator Callout deck above. + +PT-INPUTMEDIA.lst + Assembly listing from the source file above. + +PT-INPUTMEDIA-Object.card + Card-image object code output from the assembly above in "Gen MEDIA + Deck" format. + +PT-OUTPUTMEDIA.card + Card-image source for the paper-tape version of the compiler's + OUTPUTMEDIA routine. This must be assembled using the BAC-Assembler + with the object code output as a "Gen MEDIA Deck" and then inserted + into the Generator Callout deck above. + +PT-OUTPUTMEDIA.lst + Assembly listing from the source file above. + +PT-OUTPUTMEDIA-Object.card + Card-image object code output from the assembly above in "Gen MEDIA + Deck" format. + +PT-REED.card + Card-image source for the paper-tape version of the BALGOL library's + REED routine. This reads 16-word (80 character) records of input + data for the READ intrinsic at run time. It must be assembled using + the BAC-Assembler with the object code output as a "BALGOL ML Deck" + and then inserted into the Generator Callout deck above. + +PT-REED.lst + Assembly listing from the source file above. + +PT-REED-Object.card + Card-image object code output from the assembly above in "BALGOL ML + Deck" format. + +PT-RITE.card + Card-image source for the paper-tape/TTY version of the BALGOL + library's RITE routine. This writes records of output data for the + WRITE intrinsic at run time. It must be assembled using the BAC- + Assembler with the object code output as a "BALGOL ML Deck" and then + inserted into the Generator Callout deck above. + +PT-RITE.lst + Assembly listing from the source file above. + +PT-RITE-Object.card + Card-image object code output from the assembly above in "BALGOL ML + Deck" format. + +A script to convert card-image files to the paper-tape image format +required by the retro-220 emulator can be found at /software/tools/ +Xlate-Card-PT.wsf. + +Additional paper-tape source file examples can be found in: + + \software\BALGOL\BALGOL-Examples\Simpsons-Rule\SIMPS.pt + + \software\BALGOL\BALGOL-Examples\Reference-Manual\ + Example-2\Example-2-Corrected.pt + + +Paul Kimpel +October 2018 + + diff --git a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/README.txt b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/README.txt index 6172ad2..f2038a6 100644 --- a/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/README.txt +++ b/software/BALGOL/BALGOL-INPUTMEDIA-OUTPUTMEDIA/README.txt @@ -16,8 +16,6 @@ PaperTape-Media/ Compiler and Library routines to support paper-tape I/O for the BALGOL compiler. - >>> This is a work in progress <<< - Paul Kimpel August 2018 diff --git a/software/tools/BAC-Assembler.html b/software/tools/BAC-Assembler.html index cb66e3b..a8a3145 100644 --- a/software/tools/BAC-Assembler.html +++ b/software/tools/BAC-Assembler.html @@ -193,6 +193,7 @@ LABEL { No Object Loadable Deck BALGOL ML Deck + Gen MEDIA Deck Object Tape @@ -2638,6 +2639,47 @@ window.addEventListener("load", function() { win.moveTo((screen.availWidth-win.outerWidth)/2, (screen.availHeight-win.outerHeight)/2); } + /**************************************/ + function generateGeneratorMediaDeck(asmCode, outputChecksum, startAddress) { + /* Formats the assembled object code as a Generator INPUTMEDIA/OUTPUTMEDIA + deck in a temporary window. From there it can be save, copied, etc. */ + var doc = null; // temp window document object + var deck = null; // temp window text area + var pval = p10[10]; // modulus for a word's absolute value + var psign = pval*2; // modulus for a word's sign bit + var title = "220 BAC-Assembler Generator MEDIA Deck"; + var win = window.open("../../webUI/B220FramePaper.html", "BAC-Asm-MEDIA", + "scrollbars,resizable,width=600,height=500"); + + function writeCard(word, addr, seq) { + + deck.appendChild(doc.createTextNode( + "600" + padLeft(seq, 7, "0") + padLeft(addr, 4, "0") + + padRight(" ", 22, " ") + padLeft(word, 11, "0") + "\n")); + } + + function generateDeck(ev) { + var addr = 0; // assembled code address + var seq = 10; // card sequence number + var word = undefined; // object code word + + win.removeEventListener("load", generateDeck, false); + doc = win.document; + doc.title = title; + deck = doc.getElementById("Paper"); + + while (addr < asmCode.length) { + word = asmCode[addr] || 0; + writeCard(word, addr, seq); + seq += 10; + ++addr; + } // while addr + } + + win.addEventListener("load", generateDeck, false); + win.moveTo((screen.availWidth-win.outerWidth)/2, (screen.availHeight-win.outerHeight)/2); + } + /**************************************/ function generateObjectTape(asmCode, outputChecksum, startAddress) { /* Formats the assembled object code as a 220 tape image in a temporary @@ -2739,6 +2781,9 @@ window.addEventListener("load", function() { case "M": generateMachineLanguageDeck(asmCode, outputChecksum, startAddress); break; + case "P": + generateGeneratorMediaDeck(asmCode, outputChecksum, startAddress); + break; case "T": generateObjectTape(asmCode, outputChecksum, startAddress); break; diff --git a/software/tools/GEN-Assembler.html b/software/tools/GEN-Assembler.html index e28e07b..e82f8f0 100644 --- a/software/tools/GEN-Assembler.html +++ b/software/tools/GEN-Assembler.html @@ -192,6 +192,7 @@ LABEL { No Object Loadable Deck BALGOL ML Deck + Gen MEDIA Deck Object Tape @@ -3091,6 +3092,47 @@ window.addEventListener("load", function() { win.moveTo((screen.availWidth-win.outerWidth)/2, (screen.availHeight-win.outerHeight)/2); } + /**************************************/ + function generateGeneratorMediaDeck(asmCode, outputChecksum, startAddress) { + /* Formats the assembled object code as a Generator INPUTMEDIA/OUTPUTMEDIA + deck in a temporary window. From there it can be save, copied, etc. */ + var doc = null; // temp window document object + var deck = null; // temp window text area + var pval = p10[10]; // modulus for a word's absolute value + var psign = pval*2; // modulus for a word's sign bit + var title = "220 GEN-Assembler Generator MEDIA Deck"; + var win = window.open("../../webUI/B220FramePaper.html", "GEN-Asm-MEDIA", + "scrollbars,resizable,width=600,height=500"); + + function writeCard(word, addr, seq) { + + deck.appendChild(doc.createTextNode( + "600" + padLeft(seq, 7, "0") + padLeft(addr, 4, "0") + + padRight(" ", 22, " ") + padLeft(word, 11, "0") + "\n")); + } + + function generateDeck(ev) { + var addr = 0; // assembled code address + var seq = 10; // card sequence number + var word = undefined; // object code word + + win.removeEventListener("load", generateDeck, false); + doc = win.document; + doc.title = title; + deck = doc.getElementById("Paper"); + + while (addr < asmCode.length) { + word = asmCode[addr] || 0; + writeCard(word, addr, seq); + seq += 10; + ++addr; + } // while addr + } + + win.addEventListener("load", generateDeck, false); + win.moveTo((screen.availWidth-win.outerWidth)/2, (screen.availHeight-win.outerHeight)/2); + } + /**************************************/ function generateObjectTape(asmCode, outputChecksum, startAddress) { /* Formats the assembled object code as a 220 tape image in a temporary @@ -3265,6 +3307,9 @@ window.addEventListener("load", function() { case "M": generateMachineLanguageDeck(asmCode, outputChecksum, startAddress); break; + case "P": + generateGeneratorMediaDeck(asmCode, outputChecksum, startAddress); + break; case "T": generateObjectTape(asmCode, outputChecksum, startAddress); break; diff --git a/software/tools/README.txt b/software/tools/README.txt index f4235dd..cdfc3b6 100644 --- a/software/tools/README.txt +++ b/software/tools/README.txt @@ -39,8 +39,19 @@ Mahon-PT-Xlate.wsf image format required by the retro-220 emulator. See /software/SNAP-Assembler for more on that assembler. +Xlate-Card-PT.wsf + Windows VBScript utility to translate card image files to the paper + tape image format required by the retro-220 emulator. An optional + parameter specifies the number of words per paper-tape record. This + defaults to 14 for input to the paper-tape version of the BALGOL + compiler. It should be 16 for input to programs compiled by the + paper-tape version of BALGOL. + Paul Kimpel January 2018 Original submission. 2018-06-10 Add BALGOL-Dumpanalyzer. +2018-10-22 + Added Xlate-Card-PT.wsf + diff --git a/software/tools/Xlate-Card-PT.wsf b/software/tools/Xlate-Card-PT.wsf new file mode 100644 index 0000000..1cf4e8e --- /dev/null +++ b/software/tools/Xlate-Card-PT.wsf @@ -0,0 +1,127 @@ + + + + + + +