1
0
mirror of https://github.com/pkimpel/retro-220.git synced 2026-04-10 06:46:01 +00:00

Commit initial production release of BALGOL compiler, library, and tools.

1. Finalize compiler helper card decks.
2. Finalize example BALGOL programs.
3. Fix problem with relocation of ERROR library routine buffer address
(issue #1).
4. Update Generator tape build notes.
This commit is contained in:
Paul Kimpel
2018-07-16 15:31:31 -07:00
parent 2d06034237
commit 653cbe98cb
27 changed files with 609 additions and 100 deletions

View File

@@ -92,7 +92,7 @@
0,100,3000002,1110400134,80000300177,304270129,80000320200,80000300210,80000100239,80000360199,2457557,82210400125,1480008,1400134,2480010,120130,80000170170,310180129,80001340219,4260129,100129,190125,190125,2270125,80000410226,80000440168,80000300158,80000300050,80000410125,80000100156,420131,80001200115,2457557,1480008,1400134,430014,80000130238,2457557,80001330234,210180130,80000340211,80000120156,80000300221,10400133,80000300220,20000000000,10000000,50,5000000000,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,19198988395
0,100,4000000,44232120001,70128010000,80410400090,80410400091,80401260091,80000440097,80000300090,80000420128,10000460000,80000460136,60000440100,60117300100,80000460138,80502260138,80000420128,89999200018,86400280136,100101,89999200112,89400280138,10000100101,80000420138,10000490000,80502260138,80000410136,80000370038,80160210009,84400280136,82213360053,480008,10000490000,80000190135,84102270136,80000320018,80000100135,80000440097,80000300090,85212270136,80000300018,80162210009,81108360069,82203360065,82220360063,82234360063,82223360058,82213360120,82214360051,80000420132,89999200018,80000440097,80000300076,80000300018,89416260138,80000300046,80000460136,80000100135,80000440097,89992200090,80000300018,80001260134,80000440097,80000300076,80001260131,80000300018,80001260130,80000300018,80000410124,82211400129,80001260133,80000300018,490001,80000410135,1490001,80001400135,82201270129,80001260132,80000300018,80000410131,80000370103,80000420130,80000110135,490008,89999200083,430000,80001130137,81210270137,80000320090,430000,80000300090,80000420134,80001210098,440090,300091,80009330100,80412400091,80000420108,80000460129,80070290129,18464888225
0,100,4000001,300097,80000400137,80000300094,80000420000,80000460128,10000300000,80000100135,80000420133,89999200108,80000120129,80000220129,80000420130,89999200088,1430000,80000300088,80810180125,80001350018,410102,80011180126,80001350018,80000420128,10001260000,80000300100,80000420132,89999200036,80502270138,80000300048,5800000000,28562455563,24955455300,5110000000,0,0,0,0,0,0,0,0,0,0,0,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,15758013230
0,100,5000000,44233120001,80000440033,80000300029,25945626453,26300566463,20056460059,24155474500,24955000000,80000440033,80000300029,25945626453,26300645544,24546495545,24400465659,20000000000,80000440033,80000300029,25945626453,26300495353,22044454649,25545440046,25659000000,80000460042,80000440033,80000300031,0,20041594963,24854456349,24300566545,25946535666,80001400042,3450000,80412400036,80000420053,50290033,61106440100,60037300100,300036,0,0,0,0,0,0,0,0,0,0,0,5000000000,0,0,5110000000,0,80000000037,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,19204061430
0,100,5000000,44233120001,80000440033,80000300029,25945626453,26300566463,20056460059,24155474500,24955000000,80000440033,80000300029,25945626453,26300645544,24546495545,24400465659,20000000000,80000440033,80000300029,25945626453,26300495353,22044454649,25545440046,25659000000,80000460042,80000440033,80000300031,0,20041594963,24854456349,24300566545,25946535666,80001400042,3450000,80412400036,80000420053,50290033,61106440100,40000040000,60037300100,300036,0,0,0,0,0,0,0,0,0,0,0,5000000000,0,0,5110000000,0,80000000037,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,19204101430
0,100,6000000,44229120001,4450000,80000420000,10000360000,80001330034,80810400036,82310400037,60000100148,80000140037,80000130038,82310400037,83110180037,80000350014,80001330014,82201260037,80000100039,80000240036,80000220040,80000240036,80000220041,60000400149,80000100036,60000250149,60000220149,80000240042,60000400149,80000100036,60000250149,60000220149,80000120037,80000350032,80000240043,10000300000,80000240042,10000300000,80000410044,60000300107,5110000000,0,2550000000,14916450338,5041117101,5062697923,5050000000,5015811388,26258596300,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,14156674349
0,100,7000000,44229120001,2450000,80000410062,80411400057,81210400000,80010180064,80000340055,1490002,80211400008,2450000,80000420008,80000140065,89949200014,10001490001,80001420012,1490008,82211400061,82251260061,1490012,2450000,80010200021,10001490001,1490010,60000400150,60000140150,60000400152,80000140066,80000120067,60000140152,80000120068,60000140152,80000120069,60000140150,60000400150,60000400149,80000100070,60000140152,80000120071,60000140152,80000120072,60000140152,80000120073,60000190149,60000130150,1480003,60000150149,80001120061,81210270000,80000420000,80000320050,10000300000,60000400150,80000100074,89999410052,60000250150,10000300000,80000420000,80001330059,80000410063,60000300100,1450000,10000300000,0,80000000063,24567570000,5311282665,4342944819,10000017159,10004893282,10169203872,10995711477,417304,35418755,529087016,864864000,5099999999,40000990000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11311162777
0,100,8000000,44229120001,6450000,80001330061,80000360061,1480002,84210400068,1490004,80000180014,80001340044,80000180033,80000340044,1480001,80000120069,60000400152,80000130070,61014150152,60000400152,60000140152,60000400149,80000140071,80000120072,60000140149,80000120073,60000140149,80000120074,60000140149,80000120075,60000140149,80000120076,60000140149,80000120077,60000140152,80000120078,82200360035,9858480001,80001200032,90810400064,80000100068,80000230079,80001340040,60000220151,80000240080,90000220064,80000420000,10000300000,81101360047,1480001,80000130081,80000220082,80000360059,60000400152,62239260152,60000100152,80000240083,80000220084,60000240152,80000220085,60000240152,60000240152,60000220152,80000400067,80003200036,80000410086,80000420000,60000300107,4900000000,5000000000,5100000000,0,5200000000,316227766,632455532,410597044,57228327,250341093,282433571,400193033,666661710,2000000037,1151292547,5251000000,5123025851,2000000000,1000000000,15025000000,5033333333,15050000000,25356470000,40000990000,0,0,0,0,0,0,0,0,0,14130294806

View File

@@ -92,7 +92,7 @@
0,100,3000002,1110400134,80000300177,304270129,80000320200,80000300210,80000100239,80000360199,2457557,82210400125,1480008,1400134,2480010,120130,80000170170,310180129,80001340219,4260129,100129,190125,190125,2270125,80000410226,80000440168,80000300158,80000300050,80000410125,80000100156,420131,80001200115,2457557,1480008,1400134,430014,80000130238,2457557,80001330234,210180130,80000340211,80000120156,80000300221,10400133,80000300220,20000000000,10000000,50,5000000000,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,19198988395
0,100,4000000,44232120001,70128010000,80410400090,80410400091,80401260091,80000440097,80000300090,80000420128,10000460000,80000460136,60000440100,60117300100,80000460138,80502260138,80000420128,89999200018,86400280136,100101,89999200112,89400280138,10000100101,80000420138,10000490000,80502260138,80000410136,80000370038,80160210009,84400280136,82213360053,480008,10000490000,80000190135,84102270136,80000320018,80000100135,80000440097,80000300090,85212270136,80000300018,80162210009,81108360069,82203360065,82220360063,82234360063,82223360058,82213360120,82214360051,80000420132,89999200018,80000440097,80000300076,80000300018,89416260138,80000300046,80000460136,80000100135,80000440097,89992200090,80000300018,80001260134,80000440097,80000300076,80001260131,80000300018,80001260130,80000300018,80000410124,82211400129,80001260133,80000300018,490001,80000410135,1490001,80001400135,82201270129,80001260132,80000300018,80000410131,80000370103,80000420130,80000110135,490008,89999200083,430000,80001130137,81210270137,80000320090,430000,80000300090,80000420134,80001210098,440090,300091,80009330100,80412400091,80000420108,80000460129,80070290129,18464888225
0,100,4000001,300097,80000400137,80000300094,80000420000,80000460128,10000300000,80000100135,80000420133,89999200108,80000120129,80000220129,80000420130,89999200088,1430000,80000300088,80810180125,80001350018,410102,80011180126,80001350018,80000420128,10001260000,80000300100,80000420132,89999200036,80502270138,80000300048,5800000000,28562455563,24955455300,5110000000,0,0,0,0,0,0,0,0,0,0,0,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,15758013230
0,100,5000000,44233120001,80000440033,80000300029,25945626453,26300566463,20056460059,24155474500,24955000000,80000440033,80000300029,25945626453,26300645544,24546495545,24400465659,20000000000,80000440033,80000300029,25945626453,26300495353,22044454649,25545440046,25659000000,80000460042,80000440033,80000300031,0,20041594963,24854456349,24300566545,25946535666,80001400042,3450000,80412400036,80000420053,50290033,61106440100,60037300100,300036,0,0,0,0,0,0,0,0,0,0,0,5000000000,0,0,5110000000,0,80000000037,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,19204061430
0,100,5000000,44233120001,80000440033,80000300029,25945626453,26300566463,20056460059,24155474500,24955000000,80000440033,80000300029,25945626453,26300645544,24546495545,24400465659,20000000000,80000440033,80000300029,25945626453,26300495353,22044454649,25545440046,25659000000,80000460042,80000440033,80000300031,0,20041594963,24854456349,24300566545,25946535666,80001400042,3450000,80412400036,80000420053,50290033,61106440100,40000040000,60037300100,300036,0,0,0,0,0,0,0,0,0,0,0,5000000000,0,0,5110000000,0,80000000037,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,19204101430
0,100,6000000,44229120001,4450000,80000420000,10000360000,80001330034,80810400036,82310400037,60000100148,80000140037,80000130038,82310400037,83110180037,80000350014,80001330014,82201260037,80000100039,80000240036,80000220040,80000240036,80000220041,60000400149,80000100036,60000250149,60000220149,80000240042,60000400149,80000100036,60000250149,60000220149,80000120037,80000350032,80000240043,10000300000,80000240042,10000300000,80000410044,60000300107,5110000000,0,2550000000,14916450338,5041117101,5062697923,5050000000,5015811388,26258596300,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,14156674349
0,100,7000000,44229120001,2450000,80000410062,80411400057,81210400000,80010180064,80000340055,1490002,80211400008,2450000,80000420008,80000140065,89949200014,10001490001,80001420012,1490008,82211400061,82251260061,1490012,2450000,80010200021,10001490001,1490010,60000400150,60000140150,60000400152,80000140066,80000120067,60000140152,80000120068,60000140152,80000120069,60000140150,60000400150,60000400149,80000100070,60000140152,80000120071,60000140152,80000120072,60000140152,80000120073,60000190149,60000130150,1480003,60000150149,80001120061,81210270000,80000420000,80000320050,10000300000,60000400150,80000100074,89999410052,60000250150,10000300000,80000420000,80001330059,80000410063,60000300100,1450000,10000300000,0,80000000063,24567570000,5311282665,4342944819,10000017159,10004893282,10169203872,10995711477,417304,35418755,529087016,864864000,5099999999,40000990000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11311162777
0,100,8000000,44229120001,6450000,80001330061,80000360061,1480002,84210400068,1490004,80000180014,80001340044,80000180033,80000340044,1480001,80000120069,60000400152,80000130070,61014150152,60000400152,60000140152,60000400149,80000140071,80000120072,60000140149,80000120073,60000140149,80000120074,60000140149,80000120075,60000140149,80000120076,60000140149,80000120077,60000140152,80000120078,82200360035,9858480001,80001200032,90810400064,80000100068,80000230079,80001340040,60000220151,80000240080,90000220064,80000420000,10000300000,81101360047,1480001,80000130081,80000220082,80000360059,60000400152,62239260152,60000100152,80000240083,80000220084,60000240152,80000220085,60000240152,60000240152,60000220152,80000400067,80003200036,80000410086,80000420000,60000300107,4900000000,5000000000,5100000000,0,5200000000,316227766,632455532,410597044,57228327,250341093,282433571,400193033,666661710,2000000037,1151292547,5251000000,5123025851,2000000000,1000000000,15025000000,5033333333,15050000000,25356470000,40000990000,0,0,0,0,0,0,0,0,0,14130294806

View File

@@ -99,11 +99,12 @@
60600000300012244004656592000000000080000440033800003000292594562645326300495353
60600000400018220444546492554544004625659000000800004600428000044003380000300031
60600000500024000000000002004159496324854456349243005665452594653566680001400042
60600000600030000034500008041240003680000420053000502900336110644010060037300100
60600000700036000003000360000000000000000000000000000000000000000000000000000000
60600000800042000000000000000000000000000000000000000000000000000000000000000000
60600000900048050000000000000000000000000000000051100000000000000000080000000037
6010000100005440000990000
605000006000300000345000080412400036800004200530005029003361106440100
602000007000354000004000060037300100 RELOCATE /44 FIELD OF BUN INSTRUCTION
60600000800036000003000360000000000000000000000000000000000000000000000000000000
60600000900042000000000000000000000000000000000000000000000000000000000000000000
60600001000048050000000000000000000000000000000051100000000000000000080000000037
6010000110005440000990000
2 SQRT, REAL(REAL)
2 ERROR=1
60600000100000000044500008000042000010000360000800013300348081040003682310400037

View File

@@ -95,7 +95,7 @@
0,100,3000002,1110400134,80000300177,304270129,80000320200,80000300210,80000100239,80000360199,2457557,82210400125,1480008,1400134,2480010,120130,80000170170,310180129,80001340219,4260129,100129,190125,190125,2270125,80000410226,80000440168,80000300158,80000300050,80000410125,80000100156,420131,80001200115,2457557,1480008,1400134,430014,80000130238,2457557,80001330234,210180130,80000340211,80000120156,80000300221,10400133,80000300220,20000000000,10000000,50,5000000000,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,19198988395
0,100,4000000,44232120001,70128010000,80410400090,80410400091,80401260091,80000440097,80000300090,80000420128,10000460000,80000460136,60000440100,60117300100,80000460138,80502260138,80000420128,89999200018,86400280136,100101,89999200112,89400280138,10000100101,80000420138,10000490000,80502260138,80000410136,80000370038,80160210009,84400280136,82213360053,480008,10000490000,80000190135,84102270136,80000320018,80000100135,80000440097,80000300090,85212270136,80000300018,80162210009,81108360069,82203360065,82220360063,82234360063,82223360058,82213360120,82214360051,80000420132,89999200018,80000440097,80000300076,80000300018,89416260138,80000300046,80000460136,80000100135,80000440097,89992200090,80000300018,80001260134,80000440097,80000300076,80001260131,80000300018,80001260130,80000300018,80000410124,82211400129,80001260133,80000300018,490001,80000410135,1490001,80001400135,82201270129,80001260132,80000300018,80000410131,80000370103,80000420130,80000110135,490008,89999200083,430000,80001130137,81210270137,80000320090,430000,80000300090,80000420134,80001210098,440090,300091,80009330100,80412400091,80000420108,80000460129,80070290129,18464888225
0,100,4000001,300097,80000400137,80000300094,80000420000,80000460128,10000300000,80000100135,80000420133,89999200108,80000120129,80000220129,80000420130,89999200088,1430000,80000300088,80810180125,80001350018,410102,80011180126,80001350018,80000420128,10001260000,80000300100,80000420132,89999200036,80502270138,80000300048,5800000000,28562455563,24955455300,5110000000,0,0,0,0,0,0,0,0,0,0,0,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,15758013230
0,100,5000000,44233120001,80000440033,80000300029,25945626453,26300566463,20056460059,24155474500,24955000000,80000440033,80000300029,25945626453,26300645544,24546495545,24400465659,20000000000,80000440033,80000300029,25945626453,26300495353,22044454649,25545440046,25659000000,80000460042,80000440033,80000300031,0,20041594963,24854456349,24300566545,25946535666,80001400042,3450000,80412400036,80000420053,50290033,61106440100,60037300100,300036,0,0,0,0,0,0,0,0,0,0,0,5000000000,0,0,5110000000,0,80000000037,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,19204061430
0,100,5000000,44233120001,80000440033,80000300029,25945626453,26300566463,20056460059,24155474500,24955000000,80000440033,80000300029,25945626453,26300645544,24546495545,24400465659,20000000000,80000440033,80000300029,25945626453,26300495353,22044454649,25545440046,25659000000,80000460042,80000440033,80000300031,0,20041594963,24854456349,24300566545,25946535666,80001400042,3450000,80412400036,80000420053,50290033,61106440100,40000040000,60037300100,300036,0,0,0,0,0,0,0,0,0,0,0,5000000000,0,0,5110000000,0,80000000037,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,19204101430
0,100,6000000,44229120001,4450000,80000420000,10000360000,80001330034,80810400036,82310400037,60000100148,80000140037,80000130038,82310400037,83110180037,80000350014,80001330014,82201260037,80000100039,80000240036,80000220040,80000240036,80000220041,60000400149,80000100036,60000250149,60000220149,80000240042,60000400149,80000100036,60000250149,60000220149,80000120037,80000350032,80000240043,10000300000,80000240042,10000300000,80000410044,60000300107,5110000000,0,2550000000,14916450338,5041117101,5062697923,5050000000,5015811388,26258596300,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,14156674349
0,100,7000000,44229120001,2450000,80000410062,80411400057,81210400000,80010180064,80000340055,1490002,80211400008,2450000,80000420008,80000140065,89949200014,10001490001,80001420012,1490008,82211400061,82251260061,1490012,2450000,80010200021,10001490001,1490010,60000400150,60000140150,60000400152,80000140066,80000120067,60000140152,80000120068,60000140152,80000120069,60000140150,60000400150,60000400149,80000100070,60000140152,80000120071,60000140152,80000120072,60000140152,80000120073,60000190149,60000130150,1480003,60000150149,80001120061,81210270000,80000420000,80000320050,10000300000,60000400150,80000100074,89999410052,60000250150,10000300000,80000420000,80001330059,80000410063,60000300100,1450000,10000300000,0,80000000063,24567570000,5311282665,4342944819,10000017159,10004893282,10169203872,10995711477,417304,35418755,529087016,864864000,5099999999,40000990000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11311162777
0,100,8000000,44229120001,6450000,80001330061,80000360061,1480002,84210400068,1490004,80000180014,80001340044,80000180033,80000340044,1480001,80000120069,60000400152,80000130070,61014150152,60000400152,60000140152,60000400149,80000140071,80000120072,60000140149,80000120073,60000140149,80000120074,60000140149,80000120075,60000140149,80000120076,60000140149,80000120077,60000140152,80000120078,82200360035,9858480001,80001200032,90810400064,80000100068,80000230079,80001340040,60000220151,80000240080,90000220064,80000420000,10000300000,81101360047,1480001,80000130081,80000220082,80000360059,60000400152,62239260152,60000100152,80000240083,80000220084,60000240152,80000220085,60000240152,60000240152,60000220152,80000400067,80003200036,80000410086,80000420000,60000300107,4900000000,5000000000,5100000000,0,5200000000,316227766,632455532,410597044,57228327,250341093,282433571,400193033,666661710,2000000037,1151292547,5251000000,5123025851,2000000000,1000000000,15025000000,5033333333,15050000000,25356470000,40000990000,0,0,0,0,0,0,0,0,0,14130294806

View File

@@ -1,5 +1,6 @@
777 BAC-220 COMPILED OBJECT PROGRAM LOADER CALLOUT, COMPILER ON TAPE 2
777 THIS CALLOUT JUST LOADS THE LOADER PROGRAM -- IT DOES NOT EXECUTE IT
777 FOLLOW WITH OBJECT DECK
666 61000600405
66661000600409020085000000200050040902101520000000001000000000018040900001350408
666 6000030040002301520000007570072500999900999999999999999
666 6000030040002301520000000003000000999900999999999999999
6 (BLANK CARD - MUST BE PRESENT BEFORE OBJECT DECK)

View File

@@ -1,4 +1,4 @@
777 BALGOL COMPILED PROGRAM LOADER BOOTSTRAP, LOAD FROM CR1
777 BALGOL COMPILED PROGRAM LOADER BOOTSTRAP, LOAD FROM CR1, FOLLOW WITH LOADER
666 61000600294
666 600003002900000042029411010600004000052102910000030000000000000250
777 BALGOL OBJECT PROGRAM LOADER DECK, FOLLOW WITH OBJECT DECK
@@ -53,4 +53,4 @@
6 0048 0200463023102006630202020086301730100065001500000300016
6 0049 0000031000802000650008000003000040200065001000000300013
6 0050 0100064000200000300000010016201150100862014405401260080
6 (BLANK CARD - MUST BE PRESENT AFTER OBJECT LOADER)
6 (BLANK CARD - MUST BE PRESENT BEFORE OBJECT DECK)

View File

@@ -0,0 +1 @@
6 (BLANK CARD - MUST BE PRESENT BEFORE OBJECT OR DATA DECK)

View File

@@ -1,3 +1,3 @@
777 BALGOL COMPILED PROGRAM LOADER BOOTSTRAP, LOAD FROM CR1
777 BALGOL COMPILED PROGRAM LOADER BOOTSTRAP, LOAD FROM CR1, FOLLOW WITH LOADER
666 61000600294
666 600003002900000042029411010600004000052102910000030000000000000250

View File

@@ -0,0 +1,5 @@
777 BAC-220 COMPILED OBJECT PROGRAM PAPER TAPE LOADER CALLOUT
777 COMPILER ON TAPE 2, OBJECT PAPER TAPE ON UNIT 1, FOLLOW WITH ANY DATA DECK
666 61000600405
66661000600409020085000000200050040902101520000000001000000000018040900001350408
=== 6000030040002301520000010000403000999900999999999999999

View File

@@ -39,7 +39,11 @@ The layout of the final Generator Tape is:
code followed by a one-word checksum. It is literally a sum,
stored as the negative of the sum (as the 220 would do it) of
the 999 other words, discarding overflow. Therefore, summing all
1000 words in the group should yield a zero result.
1000 words in the group should yield a zero result. Note that
only the low-order bit of the sign digit participates the the
sum and indicates that the other 10 digits represent a negative
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
@@ -56,7 +60,8 @@ The layout of the final Generator Tape is:
tape. This was the most obtuse part of the tape to figure out.
3 blocks (56..58) containing addresses 0000-0299 of the Overlay
program, not checksummed.
program, not checksummed. This is the Symbolic Dump diagnostic
routine.
29 blocks (59..87) containing addresses 0700-3599 of the Overlay
program, not checksummed. The 32 blocks of the Overlay program
@@ -106,17 +111,21 @@ Layout of the BAC-220 Compiler Tape:
The layout of a Compiler Tape produced by the Generator is similar to
that of the Generator tape described above, with three exceptions:
1. Lane 0 contains the Compiler and library. Lane 1 is not used by
the Compiler.
1. Lane 0 (formatted as 100-word blocks) contains the Compiler and
Library.
2. The tape omits the skeleton symbol table at blocks 53-55.
Therefore, the library table and library start at block 85 instead
of block 88.
* The tape omits the skeleton symbol table at blocks 53-55.
Therefore, the library table and library start at block 85
instead of block 88.
3. Following the all-9s EOF sentinel block at the end of the library
routines, the Generator will write four blocks containing the code
for the Object Dump and Program Card Loader routines that are
described in Appendix B of the Compiler manual.
* Following the all-9s EOF sentinel block at the end of the
library routines, the Generator will write four blocks
containing the code for the Object Dump and Program Card Loader
routines that are described in Appendix B of the Compiler
manual.
2. Lane 1 (formatted as 100-word blocks) is used by the compiler's
Symbol Dump diagnostic facility.
Note that the Generator has the ability to modify the Compiler for
loading from a different lane and to start at a higher block number on
@@ -179,9 +188,66 @@ Generator's name and equivalence cards. Presumably the extra words would
have been deleted by the builder program, because the Generator will not
tolerate them after the FINISH pseudo-op word.
You can arrange the routines in any order, but it is probably best to
use the same order that the routines appear in the scanned listing of
the Compiler on the Computer History Museum's web site.
The object deck for the ERROR routine (ERROR-Object.card) requires an
additional manual correction after it has been inserted into the
Bootstrap deck:
* Locate the instruction word 6 0037 30 0100, which should be at
relative address 0035. This is a branch to the RITE subroutine.
* The /44 field of this instruction is the address of the buffer to
be written, but at compile time it needs to be relocated relative to
the starting physical address of the ERROR routine. Normally this
would be done by setting the sign digit of the word to 7, but this
word already has a sign digit of 6 to cause relocation of its /04
(address) field. Thus, an alternate method of relocating the /44
field must be used.
* Insert a new-line in the card image in front of this instruction.
It should be the last word on the sixth line of the deck. Adjust the
digit in column 3 of that line to reflect the number of words now
contained on that line (should be from 6 to 5).
* On the new line that has been created, insert the following in
front of the text:
60x0000yy0zzzz40000040000
where x is one plus the number of words originally on the new line
(should be 2), yy is the sequence number of the line, and must be
one plus the number in the corresponding columns above it (should be
07), and zzzz is the relative address of the first word on that line
(should be 0035). The 40000040000 is a "pseudo-op" word that
instructs the compiler to relocate the /44 field of the following
word. The compiler will drop this pseudo-op word from the compiled
code.
* Adjust the sequence numbers in columns 8-9 on all following cards
for the routine so that they increase by one from the number on the
preceding card.
* When finished, the first 47 columns of the card images for the
standard ERROR routine object deck should look like this. The first
five card images have not been altered; the remaining card images
have been modified as discussed above. Vertical bars have been
inserted between words for readability, but must not be present in
the card images.
606|00000100000|80000440033|80000300029|25945626453|
606|00000200006|24955000000|80000440033|80000300029|
606|00000300012|24400465659|20000000000|80000440033|
606|00000400018|22044454649|25545440046|25659000000|
606|00000500024|00000000000|20041594963|24854456349|
605|00000600030|00003450000|80412400036|80000420053|
602|00000700035|40000040000|60037300100| |
606|00000800036|00000300036|00000000000|00000000000|
606|00000900042|00000000000|00000000000|00000000000|
606|00001000048|05000000000|00000000000|00000000000|
601|00001100054|40000990000| | |
You can arrange the library routines in any order, but it is probably
best to use the same order that the routines appear in the scanned
listing of the Compiler on the Computer History Museum's web site.
When finished inserting the object code decks, save the updated
Generator bootstrap deck. Do not modify the generation control
@@ -201,9 +267,9 @@ blank tape formatted with 100-word blocks in both lanes. Make the tape
write-enabled and ready.
8. Load the BALGOL-Generator/BALGOL-Generator-Object-Store.card deck
into Cardatron Reader 1 and make the reader ready. Clear the Processor,
into card reader unit 1 and make the reader ready. Clear the Processor,
enter a CRD instruction (1000 60 0000) into the C register, set the
Execute Toggle, and press START. The system will read the object deck,
EXECUTE lamp, and click START. The system will read the object deck,
load 49 blocks from tape unit 1 to memory, then branch to the
Generator's store routine at address 0001. The store routine will write
the Generator program from memory in 5 checksummed groups of 10 blocks
@@ -216,9 +282,9 @@ to 2.
10. Load the BALGOL-Main/BALGOL-Main-Object.tape image file to tape unit
1 and make it ready. Load the BALGOL-Main/BALGOL-Main-Object-Store.card
deck into Cardatron Reader 1 and make it ready. Clear the Processor,
deck into card reader unit 1 and make it ready. Clear the Processor,
enter a CRD instruction (1000 60 0000) into the C register, set the
Execute Toggle, and press START. The system will read the object deck,
EXECUTE lamp, and click START. The system will read the object deck,
load 49 blocks from tape unit 1 to memory, then branch to the Main
program's store routine at address 0001. The store routine will write
the Compiler Main program from memory in 5 checksummed groups of 10
@@ -230,9 +296,9 @@ and write-enabled.
12. Load the BALGOL-Overlay/BALGOL-Overlay-Object.tape image file to
tape unit 1 and make it ready. Load the BALGOL-Overlay/BALGOL-Overlay-
Object-Store.card deck into Cardatron Reader 1 and make it ready. Clear
Object-Store.card deck into card reader unit 1 and make it ready. Clear
the Processor, enter a CRD instruction (1000 60 0000) into the C
register, set the Execute Toggle, and press START. The system will read
register, set the EXECUTE lamp, and click START. The system will read
the object deck, load 49 blocks from tape unit 1 to memory, then branch
to the Overlay program's store routine at address 4000. The store
routine will position tape unit 2 forward over the Main program and
@@ -243,9 +309,9 @@ tape unit 2, rewind it, and halt with 2222 00 2222 in the C register.
and write-enabled.
14. Load the BALGOL-Generator/BALGOL-Generator-Fixup-1-Load.card deck
into Cardatron Reader 1 and make it ready. Clear the Processor, enter a
into card reader unit 1 and make it ready. Clear the Processor, enter a
CRD instruction (1000 60 0000) into the C register, set the Execute
Toggle, and press START. The system will read the object deck and do the
Toggle, and click START. The system will read the object deck and do the
following:
a. Position the tape on unit 2 forward 40 blocks and read blocks
@@ -253,7 +319,7 @@ following:
b. Position the tape forward 9 blocks and overwrite blocks 53-55
with the data just read from blocks 41-43. This is a copy of the
Compiler's initial symbol tape, as assembled, before the library
Compiler's initial symbol table, as assembled, before the library
routines have been inserted into it. The table at blocks 41-43 will
be updated by the library build step below. The copy of the initial
table is stored at blocks 53-55 for use by the Generator if the
@@ -273,22 +339,22 @@ unit designation from 2 to 10.
formatted as 100-word blocks. Make the unit ready and write-enabled.
17. Load the BAC-220-Generator-Bootstrap.card file prepared above into
Cardatron Reader 1. Clear the Processor, enter a CRD (1000 60 0000)
instruction into C, set the Execute Toggle, and press START. The system
card reader unit 1. Clear the Processor, enter a CRD (1000 60 0000)
instruction into C, set the EXECUTE lamp, and click START. The system
will read the Generator callout bootstrap, load the program from unit
10, and generate a version of the Compiler according to the generation
statements in the card deck. The generated Compiler and library will be
written to tape unit 2.
18. Since the Generator tape does not yet have a library, one will be
built by the Generator from the routines in the bootstrap deck and
built by the Generator from the object decks in the bootstrap deck and
stored on the Compiler tape on unit 2. The routine names will be listed
on the SPO as they are processed. At the end, the program will rewind
both tapes.
19. If a PUNCH LIBRARY statement is present in the bootstrap deck, the
program will punch a new library deck to Cardatron punch 1, leaving tape
unit 2 up-tape at the end. Save the output deck as BALGOL-Library/
Generator will punch a new library deck to Cardatron punch 1, leaving
tape unit 2 up-tape at the end. Save the output deck as BALGOL-Library/
PUNCH-LIBRARY.card for possible use in modifying the library later.
20. The program will finally halt with 0757 00 7250 ("OK") in C if no
@@ -296,9 +362,9 @@ library deck was punched, or 0725 00 7570 ("KO") if a deck was punched.
Leave both tapes mounted and write-enabled.
21. Load the BALGOL-Generator/BALGOL-Generator-Fixup-2-Load.card deck
into Cardatron Reader 1 and make it ready. Clear the Processor, enter a
into card reader unit 1 and make it ready. Clear the Processor, enter a
CRD instruction (1000 60 0000) into the C register, set the Execute
Toggle, and press START. The system will read the object deck and do the
Toggle, and click START. The system will read the object deck and do the
following:
a. Position both tapes forward 41 blocks and copy blocks 42-45 of
@@ -319,7 +385,7 @@ tape. This is the final version of the Generator tape that can be used
to create additional customized Compiler tapes.
23. Unload tape unit 2 and save the image file as BAC-220-Compiler.tape.
This is a loadable version of the BALGOL Compiler and library, but has
This is a usable version of the BALGOL Compiler and library, but has
been generated primarily to harvest the library routines and data
structures for insertion into the Generator tape. It has the default
configuration settings described in Appendix A of the compiler manual.
@@ -333,4 +399,3 @@ PROCESS LIBRARY statement and the library object decks.
Paul Kimpel
July 2018

View File

@@ -0,0 +1,352 @@
?COMPILE DIRCHLT/B5500 XALGOL GO
?DATA CARD
$ CARD LIST SINGLE 00000100
% DIRICHLET PROBLEM FOR A BEAN-SHAPED REGION. FROM P J DAVIS, 00100100
% "ORTHONORMALIZING CODES IN NUMERICAL ANALYSIS" IN J TODD, --SURVEY OF 00100200
% NUMERICAL ANLAYSIS--, MCGRAW-HILL, 1962, P.347. P H KIMPEL 8/15/70 00100300
% MODIFICATION LOG: 00100320
% 92/03/17 P.KIMPEL, PARADIGM CORP, SAN DIEGO, CA 92117. 00100321
% CONVERT FOR UNISYS A-SERIES MCP 3.8.4. 00100322
% 2014-11-15 P.KIMPEL 00100330
% RETRO-CONVERT FROM UNISYS MCP ALGOL BACK TO BURROUGHS B5500 XALGOL. 00100331
00100398
BEGIN 00100400
FILE IN CDS (1,10); 00100500
FILE OUT PR 18 (2,17); 00100600
FORMAT F1 (X30,I3,2F10.3,4F10.5), 00100700
F2 (X40,"X",X9,"Y",X9,"W",X8,"BV",X7,"CBV,",X7,"DEV"), 00100800
FT (///X40,"PROCESSOR TIME: ", F6.2," SEC"); 00100900
DEFINE N = 43#, M = 11#, P = 11#, N1 = 42#, M1 = 10#, P1 = 10#; 00101000
LABEL QUIT; 00101100
INTEGER I, J; 00101200
INTEGER STARTT; 00101210
REAL SUM, GMDT; 00101300
ARRAY 00101400
X, % ABSCISSA VALUES. 00101500
Y, % ORDINATE VALUES. 00101600
W, % WEIGHTS. 00101700
CBV[0:N1], % BOUNDARY VALUES CALCULATED FROM ORTHO COEFS.00101800
BV[0:0, 0:N1+P], % GIVEN BOUNDARY VALUES. 00101900
Z[0:M1, 0:N1+P], % APPROXIMATING VECTORS. 00102000
ORTHV[0:M, 0:N1+P], % ORTHONORMAL VECTORS RETURNED BY "ORTHO" 00102100
DEV[0:0, 0:N1], % DEVIATIONS. 00102200
COF[0:0, 0:P1], % COEFFICIENTS. 00102300
STD[0:0], % STANDARD DEVIATION. 00102400
CV[0:P, 0:P1], % COVARIANCE MATRIX. 00102500
VCV[0:0, 0:P, 0:P1], % VARIANCE/COVARIANCE MATRIX. 00102600
Q[0:0, 0:M], % FOURIER COEFFICIENTS. 00102700
Q2, % SQUARED FOURIER COEFFICIENTS. 00102800
E, % SUM OF SQUARED RESIDUALS. 00102900
EP[0:0, 0:M1], % RESIDUALS. 00103000
A[0:M1, 0:P1], % LOWER TRIANGULAR MATRIX USED TO CALC CV. 00103100
GF[0:M], % GRAM FACTORS. 00103200
ENF[0:M1]; % NORMS OF THE APPROXIMATING VECTORS. 00103300
%***********************************************************************00103400
PROCEDURE ORTHO (W, Y, Z, N, FN, M, P, R, AI, AUI, MUI, ZEI, X, DEV, 00103500
COF, STD, CV, VCV, GMDT, Q, Q2, E, EP, A, GF, ENF); 00103600
VALUE N, M, P, R, AI, AUI, MUI, ZEI; 00103700
REAL FN, GMDT; 00103800
REAL ARRAY STD, GF, W, ENF [1]; 00103900
REAL ARRAY Y, Z, X, DEV, COF, CV, Q, Q2, E, EP, A [1, 1]; 00104000
REAL ARRAY VCV [1, 1, 1]; 00104100
INTEGER N, M, P, R, AI, AUI, ZEI, MUI; 00104200
COMMENT 00104300
ORTHO IS TAKEN FROM ACM ALGORITHM 127 [COMM. ACM, VOL.5, 00104400
OCTOBER 1962, P. 511, AUTHOR: PHILIP J. WALSH]; 00104500
BEGIN 00104600
INTEGER NPP, NPM, M1, N2, M2, R1, RBAR, P2, BEI, RHI, I18, GAI, SII, I,00104700
J, DEI, NUI, E1Z2, E1Z1, K, THI, ALI, OMI, NII; 00104800
REAL ARRAY PK, XP [1:N+P], QK[1:M+1]; 00104900
REAL DENOM, SUM, DK2, DK, FI, SS, SSQ; 00105000
LABEL BOX1, AT1, AT2, BOX2, AU1, AU2, BOX3, BOX4, BOX5, BOX6, MU1, 00105100
MU2, BOX7, OM1, OM2, BOX8, DE1, BOX8A, BOX8B, DE2, BOX8C, BOX8D, 00105200
BOX9, TH1, TH2, TH3, BOX10, AL1, AL2, BOX11, NU1, NU2, BOX12, 00105300
BE1, BE2, BOX13, GA1, GA2, BOX14, RH1, ZE1, ZE2, RH2, SI1, SI2, 00105400
FINAL; 00105500
SWITCH AT := AT1, AT2; SWITCH ZE := ZE1, ZE2; 00105600
SWITCH AU := AU1, AU2; SWITCH MU := MU1, MU2; 00105700
SWITCH BE := BE1, BE2; SWITCH RH := RH1, RH2; SWITCH GA := GA1, GA2;00105800
SWITCH SI := SI1, SI2; SWITCH DE := DE1, DE2; SWITCH NU := NU1, NU200105900
; 00106000
SWITCH TH := TH1, TH2, TH3; SWITCH AL := AL1, AL2; 00106100
SWITCH OM := OM1, OM2; 00106200
NPP := N+P; NPM := N+M; M1 := M-1; N2 := N+1; M2 := M+1; 00106300
R1 := 0; RBAR := R; P2 := P+1; DENOM := IF N=M THEN 1.0 00106400
ELSE SQRT(N-M); BEI := RHI := I18 := 1; 00106500
IF (P NEQ 0) THEN GAI := SII := 2 ELSE GAI := SII := 1; 00106600
BOX1: GO TO AT[AI]; 00106700
AT1: FOR J := 1 STEP 1 UNTIL N DO BEGIN 00106800
X[2,J] := Z[1,J]; X[1,J] := 1.0 END; 00106900
FOR I := 2 STEP 1 UNTIL M1 DO BEGIN 00107000
FOR J := 1 STEP 1 UNTIL N DO 00107100
X[I+1,J] := X[I,J] | X[2,J] END; GO TO BOX2; 00107200
AT2: FOR I := 1 STEP 1 UNTIL M DO BEGIN 00107300
FOR J := 1 STEP 1 UNTIL N DO 00107400
X[I,J] := Z[I,J] END; 00107500
BOX2: IF P = 0 THEN GO TO BOX3 ELSE GO TO AU[AUI]; 00107600
AU1: FOR I := 1 STEP 1 UNTIL M DO BEGIN 00107700
FOR J := N2 STEP 1 UNTIL NPP DO 00107800
X[I,J] := 0.0; X[I,N+I] := 1.0 END; GO TO BOX3; 00107900
AU2: FOR I := 1 STEP 1 UNTIL M DO BEGIN 00108000
FOR J := N2 STEP 1 UNTIL NPP DO 00108100
X[I,J] := Z[I,J] END; 00108200
BOX3: DEI := NUI := E1Z1 := E1Z2 := K := 1; 00108300
BOX4: THI := 1; 00108400
BOX5: ALI := OMI := 1; IF P = 0 THEN GO TO BOX6 ELSE 00108500
FOR J := 1 STEP 1 UNTIL P DO PK[N+J] := 0.0; 00108600
BOX6: GO TO MU[MUI]; 00108700
MU1: FOR I := 1 STEP 1 UNTIL N DO PK[I] := X[K,I]; 00108800
GO TO BOX7; 00108900
MU2: FOR I := 1 STEP 1 UNTIL N DO 00109000
PK[I] := X[K,I] | W[I]; GO TO BOX7; 00109100
BOX7: GO TO OM[OMI]; 00109200
OM1: FOR I := 1 STEP 1 UNTIL K DO BEGIN SUM := 0.0; 00109300
FOR J := 1 STEP 1 UNTIL NPP DO 00109400
SUM := SUM + PK[J] | X[I,J]; QK[I] := SUM END; 00109500
GO TO BOX8; 00109600
OM2: DK2 := 0.0; FOR I := 1 STEP 1 UNTIL NPP DO 00109700
DK2 := DK2 + PK[I] | X[K,I]; 00109800
DK := SQRT(DK2); 00109900
GF[I18] := DK; I18 := I18 + 1; 00110000
FOR I := 1 STEP 1 UNTIL NPP DO 00110100
X[K,I] := X[K,I]/DK; 00110200
OMI := 1; GO TO BOX6; 00110300
BOX8: GO TO DE[DEI]; 00110400
DE1: E1Z1 := -E1Z1; IF E1Z1 < 0 THEN GO TO BOX8B ELSE 00110500
GO TO BOX8A; 00110600
BOX8A: FOR I := 1 STEP 1 UNTIL K-1 DO 00110700
QK[I] := -QK[I]; QK[K] := 1.0; 00110800
FOR I := 1 STEP 1 UNTIL NPP DO BEGIN 00110900
SUM := 0.0; FOR J := 1 STEP 1 UNTIL K DO 00111000
SUM := SUM + X[J,I] | QK[J]; 00111100
XP[I] := SUM END; GO TO BOX9; 00111200
BOX8B: ENF[I18] := SQRT(QK[K]); GO TO BOX8A; 00111300
DE2: E1Z2 := -E1Z2; IF E1Z2 < 0 THEN GO TO BOX8C ELSE 00111400
GO TO BOX8A; 00111500
BOX8C: FOR I := 1 STEP 1 UNTIL M DO BEGIN 00111600
Q[R1,I] := QK[I]; Q2[R1,I] := QK[I] | QK[I] END; 00111700
Q[R1,M2] := QK[M2]; E[R1,1] := Q[R1,M2] - Q2[R1,1]; 00111800
FOR J := 2 STEP 1 UNTIL M DO 00111900
E[R1,J] := E[R1,J-1] - Q2[R1,J]; 00112000
FI := 1.0; 00112100
FOR I := 1 STEP 1 UNTIL M DO BEGIN 00112200
IF (FN - FI) > 0.0 THEN BEGIN IF E[R1,I] < 0.0 THEN 00112300
BEGIN EP[R1,I] := -SQRT(ABS(E[R1,I])/(FN - FI)); 00112400
GO TO BOX8D; END 00112500
ELSE EP[R1,I] := SQRT(E[R1,I]/(FN - FI)); 00112600
GO TO BOX8D; END ELSE E[R1,I] := -1.0; 00112700
BOX8D: FI := FI + 1.0; END; GO TO BOX8A; 00112800
BOX9: GO TO TH[THI]; 00112900
TH1: FOR I := 1 STEP 1 UNTIL NPP DO 00113000
X[K,I] := XP[I]; GO TO BOX10; 00113100
TH2: FOR I := 1 STEP 1 UNTIL N DO 00113200
DEV[R1,I] := XP[I]; 00113300
FOR I := 1 STEP 1 UNTIL P DO 00113400
COF[R1,I] := -XP[N+I]; THI := 3; GO TO TH1; 00113500
TH3: GO TO BOX11; 00113600
BOX10: GO TO AL[ALI]; 00113700
AL1: OMI := ALI := 2; GO TO BOX6; 00113800
AL2: IF K < M THEN BEGIN K := K + 1; GO TO BOX4; END 00113900
ELSE GO TO BOX12; 00114000
BOX11: GO TO NU[NUI]; 00114100
NU1: NUI := 2; GO TO BOX14; 00114200
NU2: SS := DK/DENOM; SSQ := SS | SS; 00114300
STD[R1] := SS; GO TO BOX14; 00114400
BOX12: GO TO BE[BEI]; 00114500
BE1: FOR I := 1 STEP 1 UNTIL M DO BEGIN 00114600
FOR J := 1 STEP 1 UNTIL P DO 00114700
A[I,J] := X[I,N+J] END; 00114800
GMDT := 1.0; FOR I := 1 STEP 1 UNTIL M DO 00114900
GMDT := GMDT | (GF[I]/ENF[I]); 00115000
GMDT := GMDT | GMDT; DEI := BEI := THI := 2; 00115100
K := K + 1; GO TO BOX13; 00115200
BE2: GO TO BOX11; 00115300
BOX13: GO TO GA[GAI]; 00115400
GA1: GO TO BOX11; 00115500
GA2: FOR I := 1 STEP 1 UNTIL P DO BEGIN 00115600
FOR J := I STEP 1 UNTIL P DO BEGIN 00115700
SUM := 0.0; 00115800
FOR NII := 1 STEP 1 UNTIL M DO 00115900
SUM := SUM + A[NII,I] | A[NII,J]; 00116000
CV[I,J] := SUM END END; 00116100
FOR I := 1 STEP 1 UNTIL P DO 00116200
CV[P2,I] := SQRT(CV[I,I]); GAI := 1; GO TO BOX11; 00116300
BOX14: GO TO RH[RHI]; 00116400
RH1: IF RBAR = 0 THEN GO TO FINAL ELSE RBAR := RBAR - 1; 00116500
R1 := R1 + 1; THI := RHI := 2; GO TO ZE[ZEI]; 00116600
ZE1: FOR I := 1 STEP 1 UNTIL N DO 00116700
X[M2,I] := Y[R1,I]; 00116800
FOR I := 1 STEP 1 UNTIL P DO 00116900
X[M2,N+I] := 0.0; GO TO BOX5; 00117000
ZE2: FOR I := 1 STEP 1 UNTIL NPP DO 00117100
X[M2,I] := Y[R1,I]; GO TO BOX5; 00117200
RH2: GO TO SI[SII]; 00117300
SI1: GO TO RH1; 00117400
SI2: FOR I := 1 STEP 1 UNTIL P DO BEGIN 00117500
FOR J := I STEP 1 UNTIL P DO 00117600
VCV[R1,I,J] := SSQ | CV[I,J] END; 00117700
FOR I := 1 STEP 1 UNTIL P DO 00117800
VCV[R1, P2, I] := SS | CV[P2,I]; GO TO RH1; 00117900
FINAL: END ORTHO ; 00118000
%***********************************************************************00118100
REAL PROCEDURE G (I, X, Y); 00118200
VALUE I, X, Y; REAL X, Y; INTEGER I; 00118300
CASE (I - 1) OF 00118400
BEGIN 00118500
G := 1; % 100118600
G := X; % 200118700
G := Y; % 300118800
G := X*2 - Y*2; % 400118900
G := 2.0 | X | Y; % 500119000
G := X*3 - 3.0 | X | Y*2; % 600119100
G := 3.0 | X*2 | Y - Y*3; % 700119200
G := X*4 + Y*4 - 6.0 | X*2 | Y*2; % 800119300
G := 4.0 | X*3 | Y - 4.0 | X | Y*3; % 900119400
G := X*5 - 10.0 | X*3 | Y*2 + 5.0 | X | Y*4; %1000119500
G := Y*5 - 10.0 | Y*3 | X*2 + 5.0 | Y | X*4; %1100119600
G := X*6 - 15.0 | X*4 | Y*2 + 15.0 | X*2 | Y*4 - Y*6; %1200119700
G := 6.0 | X*5 | Y + 6.0 | X | Y*5 - 20.0 | X*3 | Y*3; %1300119800
G := X*7 - 21.0 |X*5 | Y*2 + 35.0 | X*3 | Y*4 - 7.0 | X | %1400119900
Y*6; 00120000
G := 7.0 |X*6 | Y - 35.0 | X*4 | Y*3 + 21.0 | X*2 | Y*5 - %1500120100
Y*7; 00120200
G := X*8 + Y*8 - 28.0 |X*6 | Y*2 + 70.0 | X*4 | Y*4 - 28.0 00120300
| X*2 | Y*6; %1600120400
G := 8.0 | X*7 |Y - 56.0 | X*5 | Y*3 + 56.0 | X*3 | Y*5 00120500
- 8.0 |X | Y*7; %1700120600
END G; 00120700
00120780
STARTT := TIME(1); 00120790
FOR I := 0 STEP 1 UNTIL N1 DO 00120800
BEGIN 00120900
READ (CDS, /, X[I], Y[I], W[I]); 00121000
BV[0,I] := EXP(X[I]) | COS(Y[I]) + LN((1 - Y[I])*2 + X[I]*2); 00121100
FOR J := 0 STEP 1 UNTIL M1 DO 00121200
Z[J,I] := G(J+1, X[I], Y[I]); 00121300
END; 00121400
CLOSE (CDS); 00121500
ORTHO (W, BV, Z, N , N , M , P, 1, 2, 1, 2, 1, ORTHV, DEV, COF, STD, 00121600
CV, VCV, GMDT, Q, Q2, E, EP, A, GF, ENF); 00121700
FOR I := 0 STEP 1 UNTIL N1 DO 00121800
BEGIN SUM := 0; 00121900
FOR J:=0 STEP 1 UNTIL M1 DO SUM := SUM + COF[0,J]|G(J+1, X[I], Y[I]00122000
); 00122100
CBV[I] := SUM; 00122200
END; 00122300
WRITE (PR[DBL], F2); 00122400
WRITE (PR, F1, FOR I := 0 STEP 1 UNTIL N1 DO [I,X[I],Y[I],W[I], BV[0,I],00122500
CBV[I], (CBV[I]-BV[0,I])]); 00122600
WRITE (PR, FT, TIME(2)/60); 00122700
QUIT: 00122800
BEGIN 00122900
COMMENT INNER BLOCK; 00123000
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%00123100
PROCEDURE DMMP (NAME, ROW, SZ); 00123200
VALUE NAME, SZ; 00123300
ALPHA NAME, SZ; 00123400
ARRAY ROW[0]; 00123500
BEGIN 00123600
REAL 00123700
I, 00123800
UB; 00123900
FORMAT 00124000
F (A6," = ",/*(6E20.11,/)); 00124100
UB := SZ-1; 00124200
WRITE (PR[DBL]); 00124300
WRITE (PR[DBL]); 00124310
WRITE (PR, F, NAME, (SZ+5)DIV 6, 00124400
FOR I:=0 STEP 1 UNTIL UB DO ROW[I]); 00124410
END DMMP; 00124500
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%00124600
ARRAY NR[0:99]; 00124700
FOR I := 0 STEP 1 UNTIL 99 DO 00124800
REPLACE POINTER(NR[I])+6 BY I FOR 2 DIGITS; 00124900
00125000
DMMP ("X ", X, N1+1); 00125100
DMMP ("Y ", Y, N1+1); 00125200
DMMP ("W ", W, N1+1); 00125300
DMMP ("CBV ", CBV, N1+1); 00125400
DMMP ("BV ", BV[0,*], N1+P+1); 00125500
FOR I := 0 STEP 1 UNTIL M1 DO 00125600
BEGIN 00125700
SUM := "Z " & NR[I] [11:12]; 00125800
DMMP (SUM, Z[I,*], N1+P+1); 00125900
END; 00126000
FOR I := 0 STEP 1 UNTIL M DO 00126100
BEGIN 00126200
SUM := "ORTHV " & NR[I] [11:12]; 00126300
DMMP (SUM, ORTHV[I,*], N1+P+1); 00126400
END; 00126500
DMMP ("DEV ", DEV[0,*], N1+1); 00126600
DMMP ("COF ", COF[0,*], P1+1); 00126700
DMMP ("STD ", STD, 1); 00126800
FOR I := 0 STEP 1 UNTIL P DO 00126900
BEGIN 00127000
SUM := "CV " & NR[I] [11:12]; 00127100
DMMP (SUM, CV[I,*], P1+1); 00127200
END; 00127300
FOR I := 0 STEP 1 UNTIL P DO 00127400
BEGIN 00127500
SUM := "VCV " & NR[I] [11:12]; 00127600
DMMP (SUM, VCV[0,I,*], P1+1); 00127700
END; 00127800
DMMP ("EP ", EP[0,*], M1+1); 00127900
FOR I := 0 STEP 1 UNTIL M1 DO 00128000
BEGIN 00128100
SUM := "A " & NR[I] [11:12]; 00128200
DMMP (SUM, A[I,*], P1+1); 00128300
END; 00128400
DMMP ("GF ", GF, M+1); 00128500
DMMP ("Q ", Q[0,*], M+1); 00128600
DMMP ("Q2 ", Q2[0,*], M1+1); 00128700
DMMP ("E ", E[0,*], M1+1); 00128800
DMMP ("ENF ", ENF, M1+1); 00128900
END INNER BLOCK; 00129000
WRITE (PR, </,"ELAPSED=",F8.2,", PROCESSOR=",F8.2,", I/O=",F8.2," SEC">,00129080
(TIME(1)-STARTT)/60, TIME(2)/60, TIME(3)/60); 00129090
END. 00129100
?DATA CDS
0.000, 0.110, 0.01414,
-0.050, 0.108, 0.01427,
-0.100, 0.115, 0.01963,
-0.160, 0.150, 0.02300,
-0.220, 0.205, 0.03897,
-0.320, 0.300, 0.02792,
-0.400, 0.358, 0.03324,
-0.500, 0.420, 0.01483,
-0.550, 0.436, 0.01423,
-0.600, 0.430, 0.01505,
-0.644, 0.400, 0.01483,
-0.660, 0.350, 0.01420,
-0.655, 0.300, 0.02881,
-0.635, 0.200, 0.03043,
-0.595, 0.100, 0.03076,
-0.552, 0.000, 0.03311,
-0.500, -0.105, 0.03175,
-0.440, -0.200, 0.01809,
-0.400, -0.250, 0.01998,
-0.350,-0.300, 0.01882,
-0.300, -0.344, 0.03140,
-0.204, -0.400, 0.03450,
-0.100, -0.436, 0.02846,
0.000, -0.448, 0.02831,
0.100, -0.442, 0.03860,
0.230, -0.400, 0.02431,
0.300, -0.350, 0.02059,
0.353, -0.300, 0.03566,
0.430, -0.200, 0.03122,
0.477, -0.100, 0.02975,
0.510, 0.000, 0.02846,
0.522, 0.100, 0.01696,
0.520, 0.160, 0.02330,
0.500, 0.240, 0.02102,
0.456, 0.300, 0.01795,
0.400, 0.330, 0.01147,
0.360, 0.337, 0.01762,
0.300, 0.320, 0.01648,
0.250, 0.290, 0.01901,
0.300, 0.245, 0.01901,
0.150, 0.200, 0.01809,
0.100, 0.160, 0.01677,
0.050, 0.128, 0.01501,
?END

View File

@@ -0,0 +1,43 @@
0.000, 0.110, 0.01414
-0.050, 0.108, 0.01427
-0.100, 0.115, 0.01963
-0.160, 0.150, 0.02300,
-0.220, 0.205, 0.03897,
-0.320, 0.300, 0.02792,
-0.400, 0.358, 0.03324,
-0.500, 0.420, 0.01483,
-0.550, 0.436, 0.01423
-0.600, 0.430, 0.01505,
-0.644, 0.400, 0.01483,
-0.660, 0.350, 0.01420
-0.655, 0.300, 0.02881,
-0.635, 0.200, 0.03043,
-0.595, 0.100, 0.03076,
-0.552, 0.000, 0.03311
-0.500, -0.105, 0.03175,
-0.440, -0.200, 0.01809,
-0.400, -0.250, 0.01998,
-0.350,-0.300, 0.01882,
-0.300, -0.344, 0.03140,
-0.204, -0.400, 0.03450,
-0.100, -0.436, 0.02846,
0.000, -0.448, 0.02831,
0.100, -0.442, 0.03860,
0.230, -0.400, 0.02431,
0.300, -0.350, 0.02059,
0.353, -0.300, 0.03566,
0.430, -0.200, 0.03122,
0.477, -0.100, 0.02975,
0.510, 0.000, 0.02846,
0.522, 0.100, 0.01696
0.520, 0.160, 0.02330,
0.500, 0.240, 0.02102,
0.456, 0.300, 0.01795,
0.400, 0.330, 0.01147,
0.360, 0.337, 0.01762,
0.300, 0.320, 0.01648,
0.250, 0.290, 0.01901,
0.300, 0.245, 0.01901
0.150, 0.200, 0.01809,
0.100, 0.160, 0.01677,
0.050, 0.128, 0.01501,

View File

@@ -0,0 +1,20 @@
BEGIN JOB MISC/DIRICHLET; 00100100
JOBSUMMARY = UNCONDITIONAL; 00100200
00102000
PRINTDEFAULTS = (PRINTDISPOSITION=EOJ, DESTINATION="PCTEXT"); 00102100
00110000
TASK 00110100
T; 00110200
00900000
COMPILE OBJECT/MISC/DIRICHLET ALGOL [T] LIBRARY; 00900100
ALGOL FILE SOURCE = SRCE/MISC/DIRICHLET ON DISK; 00900200
OPTION = (FAULT, DSED, ARRAY); 00900300
ALGOL DATA 00900400
$ SET MERGE LIST 00900500
? 00900600
IF T IS COMPILEDOK THEN 00900700
BEGIN 00900800
RUN OBJECT/MISC/DIRICHLET; 00900900
FILE CDS (DEPENDENTSPECS, TITLE=DATA/MISC/DIRICHLET ON DISK); 00901000
END; 00901100
? END JOB 00999900

View File

@@ -72,19 +72,19 @@ Reference-Manual/
loadable object program onto cards or paper tape.
The "-Object.card" file is the card deck of object code
generated by running the "BAC-220-Compiled-Object-Dump-
Callout.card" program against "-Object.tape" with Program
generated by running the "BAC-220-Object-Dump-Callout.card"
program against "-Object.tape" with Program
Control Switch 4 off.
The "-Object-WITH-LOADER.card" file is a complete load-and-go
card deck for the program. It consists of:
1. The BAC-220-Compiled-Object-Program-Loader-Bootstrap.card
deck, followed by...
2. The BAC-220-Compiled-Object-Program-Loader.card deck,
generated by running the "BAC-220-Compiled-Object-Dump-
Callout.card" program against "-Object.tape" with Program
Control Switch 4 on, followed by...
1. The BAC-220-Object-Program-Loader-Bootstrap.card deck,
followed by...
2. The BAC-220-Object-Program-Loader.card deck, generated by
running the "BAC-220-Object-Dump-Callout.card" program
against "-Object.tape" with Program Control Switch 4 on,
followed by...
3. A blank card to allow the card reader format bands to be
loaded, followed by...
4. The card deck of object code in the "-Object.card" file
@@ -92,16 +92,15 @@ Reference-Manual/
5. The data for the object program.
The "-Object.pt" file is the paper tape image of object code
generated by running the "BAC-220-Compiled-Object-Dump-
Callout.card" program against "-Object.tape" with Program
Control Switch 3 on and 4 off. This combination generates a tape
with just the object program and no loader. To load and run the
program:
generated by running the "BAC-220-Object-Dump-Callout.card"
program against "-Object.tape" with Program Control Switch 3 on
and 4 off. This combination generates a tape with just the
object program and no loader. To load and run the program:
* Mount the compiler tape on magnetic tape unit 2.
* Set Program Control Switch 3 on and 4 off.
* Load the BAC-220-Compiled-Object-Loader-Callout.card deck
into card reader 1.
* Load the BAC-220-Object-Loader-Callout.card deck into card
reader 1.
* Enter 1000 60 0000 into the C register.
* Set the Execute toggle.
* Click START on the Control Console. Once the program
@@ -116,8 +115,8 @@ Reference-Manual/
run.
The "-Object-WITH-LOADER.pt" file is the paper tape image of
object code generated by running the "BAC-220-Compiled-Object-
Dump-Callout.card" program against "-Object.tape" with Program
object code generated by running the "BAC-220-Object-Dump-
Callout.card" program against "-Object.tape" with Program
Control Switches 3 and 4 on. This combination causes the Object
Program Loader code to be included on the tape. To load and run
the program:
@@ -245,3 +244,4 @@ February 2018
Complete Reference-Manual example programs and update results.

View File

@@ -0,0 +1,3 @@
5 .1 .2 .3 .4 .5 .6 .7 .8 .9 .10 .11 .12 .13 .14 .15 *
5 .16 .17 .18 .19 .20 .21 .22 .23 .24 .25 .26 .27 .28 .29 *
5 10 * NUMBER OF DIMENSIONS, MUST BE LEQ 25

View File

@@ -1,4 +1,4 @@
777 BALGOL COMPILED PROGRAM LOADER BOOTSTRAP, LOAD FROM CR1
777 BALGOL COMPILED PROGRAM LOADER BOOTSTRAP, LOAD FROM CR1, FOLLOW WITH LOADER
666 61000600294
666 600003002900000042029411010600004000052102910000030000000000000250
777 BALGOL OBJECT PROGRAM LOADER DECK, FOLLOW WITH OBJECT DECK
@@ -53,7 +53,7 @@
6 0048 0200463023102006630202020086301730100065001500000300016
6 0049 0000031000802000650008000003000040200065001000000300013
6 0050 0100064000200000300000010016201150100862014405401260080
6 (BLANK CARD - MUST BE PRESENT AFTER OBJECT LOADER)
6 (BLANK CARD - MUST BE PRESENT BEFORE OBJECT DECK)
1 0000 0000000000040950290200000003002210000030040000000102960
1 0001 0000040295900000440218000003002090000010296000000122959
1 0002 0000040295900000132958011113102120000036021400001330214

View File

@@ -84,11 +84,11 @@
6 6 0012244004656592000000000080000440033800003000292594562645326300495353
6 6 0018220444546492554544004625659000000800004600428000044003380000300031
6 6 0024000000000002004159496324854456349243005665452594653566680001400042
6 6 0030000034500008041240003680000420053000502900336110644010060037300100
6 6 0036000003000360000000000000000000000000000000000000000000000000000000
6 6 0030000034500008041240003680000420053000502900336110644010040000040000
6 6 0036600373001000000030003600000000000000000000000000000000000000000000
6 6 0042000000000000000000000000000000000000000000000000000000000000000000
6 6 0048050000000000000000000000000000000051100000000000000000080000000037
6 1 005440000990000
6 6 0048000000000000500000000000000000000000000000000511000000000000000000
6 2 00548000000003740000990000
2SQRT,REAL(REAL)
2ERROR=01
6 6 0000000044500008000042000010000360000800013300348081040003682310400037

View File

@@ -1907,7 +1907,7 @@ START PASS 1
020 00 0 2839 LOD1 DEFN * THIS PROGRAM IS RELOCATED TO
020 01 0 2839 *Q NOP 8 J++1 LOCATION 0100 AT OBJECT TIME
020 02 0 2840 *R CLB 8 I+ AND CUASES THE PRINTING OF
020 02 0 2840 *R CLB 8 I+ AND CAUSES THE PRINTING OF
020 03 0 2841 BUN 8 *+3 THE FOLLOWING LIST
020 04 0 2842 *A LDB 8 B+
020 05 0 2843 IBB 8 C+,1
@@ -4489,7 +4489,7 @@ START PASS 2
020 00 0 1903 2839 LOD1 DEFN * THIS PROGRAM IS RELOCATED TO
020 01 0 1904 2839 8 0000 01 3000 *Q NOP 8 J++1 LOCATION 0100 AT OBJECT TIME
020 02 0 1905 2840 8 0004 45 3011 *R CLB 8 I+ AND CUASES THE PRINTING OF
020 02 0 1905 2840 8 0004 45 3011 *R CLB 8 I+ AND CAUSES THE PRINTING OF
020 03 0 1906 2841 8 0000 30 2844 BUN 8 *+3 THE FOLLOWING LIST
020 04 0 1907 2842 8 0000 42 2971 *A LDB 8 B+
020 05 0 1908 2843 8 0001 20 2846 IBB 8 C+,1

View File

@@ -1902,7 +1902,7 @@
020 00 0 2839 LOD1 DEFN * THIS PROGRAM IS RELOCATED TO
020 01 0 2839 *Q NOP 8 J++1 LOCATION 0100 AT OBJECT TIME
020 02 0 2840 *R CLB 8 I+ AND CUASES THE PRINTING OF
020 02 0 2840 *R CLB 8 I+ AND CAUSES THE PRINTING OF
020 03 0 2841 BUN 8 *+3 THE FOLLOWING LIST
020 04 0 2842 *A LDB 8 B+
020 05 0 2843 IBB 8 C+,1

View File

@@ -1902,7 +1902,7 @@
1 REM 019 99 0
1 LOD1 DEFN * THIS PROGRAM IS RELOCATED TO 020 00 0
1 *Q NOP 8 J++1 LOCATION 0100 AT OBJECT TIME 020 01 0
1 *R CLB 8 I+ AND CUASES THE PRINTING OF 020 02 0
1 *R CLB 8 I+ AND CAUSES THE PRINTING OF 020 02 0
1 BUN 8 *+3 THE FOLLOWING LIST 020 03 0
1 *A LDB 8 B+ 020 04 0
1 IBB 8 C+,1 020 05 0

View File

@@ -6,47 +6,59 @@ prepared for the retro-220 emulator.
Unless otherwise specified, all files are in standard Windows text
format, with carriage-return/line-feed delimiters.
Loadable object decks can be executed by loading them into Card Reader
1, clicking Start on the reader, Clearing the processor on the Control
Console, entering 1000 60 0000 into the C register, setting the Execute
Toggle, and finally clicking Start on the Control Console.
Loadable object decks can be executed by loading them into card reader
unit 1, clicking START on the reader, clearing the processor on the
Control Console, entering 1000 60 0000 into the C register, setting the
Execute Toggle, and finally clicking START on the Control Console.
BAC-220-Compiled-Object-Dump-Callout.card
BAC-220-Object-Dump-Callout.card
Loadable object deck for a utility that will dump a compiled program
to cards from an object tape (unit 1) produced by the BAC-220
Compiler. Requires the Compiler tape on unit 2. See Appendix B of
the Compiler reference manual.
to either cards or paper tape from an object tape (on magnetic tape
unit 1) produced by the BAC-220 Compiler. Requires the compiler tape
on unit 2. Program Control Switches 3 and 4 are used to control the
form of output. See Appendix B of the compiler reference manual.
BAC-220-Compiled-Object-Program-Callout.card
BAC-220-Object-Program-Callout.card
Loadable object deck for a utility that will load and run a compiled
program from an object tape (unit 1) produced by the BAC-220
compiler. See Appendix B of the Compiler reference manual.
program from an object tape (on magnetic tape unit 1) produced by
the BAC-220 compiler. Follow this deck with any data cards for the
program. See Appendix B of the Compiler reference manual.
BAC-220-Compiled-Object-Program-Loader.card
Loader deck for card decks punched by the BAC-220-Compiled-Object-
Dump-Callout.card program. This deck consists of the BAC-220-
Compiled-Object-Program-Loader-Bootstrap.card program, followed by
the program loader deck that is punched by the BAC-220-Compiled-
Object-Dump-Callout.card program when Program Control Switch 4 is
on, followed by the required blank card at the end.
BAC-220-Object-Program-Card-Loader.card
Loader deck for object card decks punched by the BAC-220-
Object-Dump-Callout.card program. This deck consists of the BAC-220-
Compiled-Object-Program-Loader-Bootstrap.card program below,
followed by the Program Loader deck that is punched by the BAC-220-
Compiled- Object-Dump-Callout.card program when Program Control
Switch 4 is on, followed by the required "blank" card at the end.
To use, load this deck into card reader 1. Then load the object deck
for the compiled BALGOL program you wish to run, followed by its
data cards, if any, then start the processor as described above.
BAC-220-Compiled-Object-Program-Loader-Bootstrap.card
Loadable bootstrap deck for the object program loader that is
punched by the BAC-220-Compiled-Object-Dump-Callout.card program
BAC-220-Object-Program-Loader-Bootstrap.card
Loadable bootstrap deck for the Object Program Loader that is
punched by the BAC-220-Object-Dump-Callout.card program
when Program Control Switch 4 is on. This bootstrap expects the
object deck for the program loader to follow it immediately.
object deck for the Program Loader to follow it immediately. This
deck has already been inserted into BAC-220-Object-Program-
Card-Loader.card above.
BAC-220-Compiled-Object-Program-Loader-Callout.card
Loadable bootstrap deck for the object program loader. This will
load the loader from the compiler tape to memory, but will then halt
with 0757 00 7250 in the C register. You must manually execute the
loader. This bootstrap deck is specifically intended for use when
loading compiled object programs from paper tape.
BAC-220-Object-Program-Card-Loader-Callout.card
Loadable bootstrap deck for the Object Program Loader to load a
program from cards. Follow this deck with the object deck for the
compiled program and any data cards for the program. This callout
will load the loader from the compiler tape on magnetic tape unit 2
to memory, which will then load the object deck to memory and
execute it.
BAC-220-Object-Program-PaperTape-Loader-Callout.card
Loadable bootstrap deck for the Object Program Loader to load a
program from paper tape. Follow this deck with any data cards for
the program. This callout will load the loader from the compiler
tape on magnetic tape unit 2 to memory, which will then load the
object tape from paper tape unit 1 to memory and execute it.
BAC-220-Compiler.tape
Loadable BAC-220 Compiler tape produced by the BAC-220-Generator-
@@ -83,6 +95,12 @@ BAC-220-Generator-Callout-10K.card
Bootstrap card deck and configuration statements for
generating the BAC-220-Compiler-10K.tape file above.
BAC-220-Loader-Blank-Card.card
A "blank" card containing a "6" in column 1. This can be used in
places where the Object Program Loader requires a blank card before
the object program deck or the data deck, depending upon the way the
program is being loaded.
BALGOL-Build-Notes.txt
Notes for bootstrapping the BALGOL Generator and Compiler programs
from source code and generating loadable tapes for each one.