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:
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
@@ -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)
|
||||
@@ -0,0 +1 @@
|
||||
6 (BLANK CARD - MUST BE PRESENT BEFORE OBJECT OR DATA DECK)
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -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
|
||||
|
||||
|
||||
|
||||
@@ -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
|
||||
@@ -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,
|
||||
@@ -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
|
||||
@@ -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.
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -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
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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.
|
||||
|
||||
Reference in New Issue
Block a user