1
0
mirror of https://github.com/pkimpel/retro-220.git synced 2026-04-12 15:07:09 +00:00

Commit support for paper-tape/TTY I/O in BALGOL and run-time.

1. Implement paper-tape/TTY versions of compiler INPUTMEDIA and
OUTPUTMEDIA routines, and the run-time REED and RITE routines.
2. Create Generator callout deck to make a compiler tape containing
paper-tape/TTY support.
3. Create a compiler tape containing paper-tape/TTY support.
4. Create a paper-tape compiler callout bootstrap program.
5. Correct address for NUMB in Generator source to match the address in
the compiler's Overlay module.
6. Create corrected Generator tape (must be used to create compilers
with paper-tape/TTY support).
7. Add option to produce Generator INPUTMEDIA/OUTPUTMEDIA object card
decks to BAC-Assembler and GEN-Assembler.
8. Create Xlate-Card-PT.wsf utility to convert card-image files to
retro-220 paper-tape image files.
9. Create paper-tape versions of example BALGOL programs.
This commit is contained in:
Paul Kimpel
2018-10-23 13:15:31 -07:00
parent a32815073a
commit 28eae3bfdd
35 changed files with 6046 additions and 698 deletions

View File

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

View File

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

View File

@@ -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 *,

File diff suppressed because it is too large Load Diff

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -0,0 +1,4 @@
2 COMMENT PAPER-TAPE HELLO WORLD PROGRAM;
2 FORMAT F1(*HELLO WORLD*,W0);
2 WRITE(;; F1);
2 FINISH;

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -1,2 +1 @@
60600000100000000000100008000042000080412400008100001099980000048000183210400007
6040000020000614400289999110700300000000030000840000990000
60600000100000000000100008000042000001160030101000004601171000030000040000990000

View File

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

View File

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

View File

@@ -1,13 +1,15 @@
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

View File

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

View File

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

View File

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

View File

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

View File

@@ -193,6 +193,7 @@ LABEL {
<option value="" >No Object
<option value=L SELECTED>Loadable Deck
<option value=M >BALGOL ML Deck
<option value=P >Gen MEDIA Deck
<option value=T >Object Tape
</select>
<td class=rj>
@@ -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;

View File

@@ -192,6 +192,7 @@ LABEL {
<option value="" >No Object
<option value=L SELECTED>Loadable Deck
<option value=M >BALGOL ML Deck
<option value=P >Gen MEDIA Deck
<option value=T >Object Tape
</select>
<td class=rj>
@@ -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;

View File

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

View File

@@ -0,0 +1,127 @@
<?XML version="1.0"?>
<package>
<job id="Xlate-Card-PT">
<reference object="Scripting.FileSystemObject" />
<script language="VBScript">
<![CDATA[
Option Explicit
'-----------------------------------------------------------------------
' retro-220 Xlate-Card-PT.wsf
' Copyright (c) 2018, Paul Kimpel,
' Licensed under the MIT License, see
' http://www.opensource.org/licenses/mit-license.php
'-----------------------------------------------------------------------
' VBScript to reformat card-image files to the paper-tape format used by
' the retro-220 emulator.
' Uses Scripting Runtime FileSystemObject.
' Parameters:
' Name of card-image file (required).
' Number of words per paper-tape record (5 char/word) (optional,
' defaults to 14).
' Name of resulting retro-220 file (optional, by defaults to the name
' of the card-image file with ".pt" replacing the orginal file
' name extension.
'-----------------------------------------------------------------------
' Modification Log.
' 2018-10-22 P.Kimpel
' Original version, cloned from retro-220 Mahon-PT-Xlate.wsf.
'-----------------------------------------------------------------------
Const charsPerWord = 5
Const defaultSuffix = ".pt"
Const defaultWordsPerRec = 14
Dim args
Dim cardFile
Dim cardName
Dim charsPerRec
Dim fso
Dim ptFile
Dim ptName
Dim wordsPerRec
'---------------------------------------
Sub ReformatPaperTape
'Creates the retro-220 paper-tape file from the card-image file.
Dim code
Dim count
Dim line
Dim word
Dim x
count = 0
word = ""
Do While Not cardFile.AtEndOfStream
line = cardFile.ReadLine
count = Len(line)
If count > charsPerRec Then
line = Left(line, charsPerRec)
Else
Do While count < charsPerRec
line = line + " "
count = count+1
Loop
End If
For x = 1 To charsPerRec Step charsPerWord
ptFile.WriteLine "2" & Mid(line, x, charsPerWord)
Next
Loop
End Sub
'---------------------------------------------------------------
Set fso = WScript.CreateObject("Scripting.FileSystemObject")
wordsPerRec = defaultWordsPerRec
Set args = WScript.Arguments
If args.Count < 1 Then
MsgBox "Must supply at least the name of the assembler-encoded file."
WScript.Quit 9
Else
cardName = Trim(args.Item(0))
If args.Count > 1 Then
If IsNumeric(args.Item(1)) Then
wordsPerRec = CLng(args.Item(1))
Else
MsgBox "Second parameter must be number of words."
WScript.Quit 9
End If
End If
If args.Count > 2 Then
ptName = Trim(args.Item(2))
Else
ptName = fso.BuildPath(fso.GetParentFolderName(cardName), fso.GetBaseName(cardName)) & defaultSuffix
End If
End If
Set args = Nothing
charsPerRec = wordsPerRec*charsPerWord
'-- Main Line --
If Not fso.FileExists(cardName) Then
MsgBox "Card-image file does not exist: " & vbCrLf & cardName
Else
Set cardFile = fso.OpenTextFile(cardName, ForReading, False)
Set ptFile = fso.CreateTextFile(ptName, True, False)
ReformatPaperTape
ptFile.Close
Set ptFile = Nothing
cardFile.Close
Set cardFile = Nothing
MsgBox "retro-220 paper-tape file created: " & vbCrLf & ptName
End If
Set fso = Nothing
WScript.Quit 0
]]>
</script>
</job>
</package>