File: PASS35.LS of Disk: V50/Source/Source-Listing-PAL-3
(Source file text) 


/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 1

		/OS/8 FORTRAN  (PASS THREE)
		/
		/ VERSION 5A WVDM 9-OCT-80
		/
		/	OS/8 FORTRAN IV COMPILER-PASS 3
		/
		/	BY: HANK MAURER
		/	UPDATED BY: R. LARY + M. HURLEY + WVDM
		/
		/
		/
	0005		VERSON=5
		/
		/	OS/8 V3C MAINTENANCE RELEASE FIXES:

		/1.	EXTENDED RANGE OF PAGE NUMBERS TO 99
		/2	INTERCHANGED CR/LF FOR HASSINGER
		/3	CHANGED VERSION NO. TO 305
		/5.	ADDED 'I' TO JMP (OFOO3
		/
		/
		/	CHANGES FOR OS/8 V3D AND OS/78 BY P.T.
		/	.CHANGED VERSION NUMBER TO 4A
		/	.PUT IN NEW DATE ALGORITHM

		/	ADAPTED FOR CCL DEVICE WVDM

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 2


		/ PAGE ZERO STUFF

	7000		OUDEVH=7000		/PUT OUDEVH AND OUBUF IN DIFFERENT
	6400		INDEVH=6400
	6000		INBUF=6000
	5400		OUBUF=5400		/SEGMENTS, STAN KNOWS WHY
	0010		X10=10
	0011		X11=11
	0012		X12=12
	0020		NCHARS=20
	0021		CHAR=21
	0022		TEMP=22
	0006		FILDEV=6
	0007		FILBLK=7
	0173		DEV1CE=173		/THROUGH 177
	0023		DEVH=23
	0024		LINENO=24
	0025		SEVCHR=25		/THROUGH 33

	7757		MREAD=7757
	7776		SBLOCK=7776
	7643		OS8SWS=7643

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 3


		/START OF PASS 3

	0400		*400			/DON'T LOAD INTO 0-377
000400  6211	SPASS3,	CDF	10
000401  1777		TAD I	(7666		/GET DATE
000402  3022		DCA	TEMP
000403  1776		TAD I	(OS8SWS+1
000404  0375		AND	(100		/WAS /R SET ?
000405  3023		DCA	DEVH		/YES, SET FRUN SWITCH TEMP
000406  1734		TAD I	LSTFIL		/COPY FILE NAME
000407  6201		CDF
000410  3735		DCA I	FILLST
000411  2334		ISZ	LSTFIL
000412  2335		ISZ	FILLST
000413  2336		ISZ	OFSIZE
000414  5200		JMP	SPASS3
000415  1023		TAD	DEVH		/IS IT FRUN ?
000416  7650		SNA CLA
000417  5222		JMP	.+3		/NO
000420  1374		TAD	(")&77+6300	/YES, SET '3)' FOR (A3) IN TITLE
000421  3773		DCA I	(SW36
000422  1173		TAD	DEV1CE		/FETCH HANDLER FOR OUTPUT FILE
000423  6212		CIF	10
000424  4772		JMS I	(200		/USR IS IN CORE
000425  0001		1
000426  7001	OH,	OUDEVH+1		/TWO PAGE HANDLER IS OK
000427  5771		JMP I	(OFOO3
000430  6212		CIF	10
000431  1173		TAD	DEV1CE		/OPEN THE LISTING FILE
000432  4772		JMS I	(200
000433  0003		3
000434  0174	OB,	DEV1CE+1
000435  0000	OS,	0
000436  5771		JMP I	(OFOO3
000437  1234		TAD	OB		/SAVE BLOCK NUMBER
000440  3770		DCA I	(OBLOCK
000441  1235		TAD	OS
000442  3767		DCA I	(OSIZE		/AND SIZE OF HOLE
000443  1226		TAD	OH		/SAVE HANDLER ADDRESS
000444  3023		DCA	DEVH
000445  1366		TAD	(NUMS-1		/SET UP NUMBER POINTER
000446  3765		DCA I	(NUM
000447  1022		TAD	TEMP		/GET THE DATE--FOR YEAR ROUTINE
000450  7450		SNA
000451  5764		JMP I	(PAJE		/NO DATE
000452  0363		AND	(7		/MASK OUT ALL BUT YEAR OFFSET BITS
000453  3337		DCA	YRTEMP		/INCREMENT FROM THE BASE YEAR
000454  3340		DCA	TEMP1		/HOLDS THE FIRST DIGIT OF THE YEAR
000455  1762		TAD I	(7777		/GET THE DATE EXTENSION BITS
000456  0361		AND	(1600		/MASK TO GET THE EXTENSION BITS
000457  7112		CLL RTR			/ROTATE THEM INTO BIT
000460  7012		RTR			/POSITIONS 7 AND 8
000461  1337		TAD	YRTEMP		/ADD IN THE YEAR OFFSET BITS
000462  3337		DCA	YRTEMP

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 3-1

000463  1337		TAD	YRTEMP
000464  1360		TAD	(-36		/100-70
000465  7700		SMA CLA
000466  1357		TAD	(-12
000467  3341		DCA	OFFSET
000470  1337		TAD	YRTEMP
000471  7100	CONVYR, CLL			/FIND THE YEAR IN DECIMAL
000472  1357		TAD	(-12		/KEEP SUBTRACTING 12
000473  7420		SNL			/ALMOST DONE
000474  5277		JMP 	SECDIG		/FIND THE SECOND DIGIT OF THE YEAR
000475  2340		ISZ	TEMP1		/FIND THE FIRST DIGIT OF THE YEAR
000476  5271		JMP	CONVYR		/TRY AGAIN

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 4


000477  1356	SECDIG, TAD	(72		/GET THE SECOND DIGIT OF THE YEAR
000500  7002		BSW			/AND MAKE IT SIXBIT
000501  3755		DCA I	(YEAR+1		/PUT IT IN THE PRINT LINE
000502  1340		TAD	TEMP1		/GET THE FIRST DIGIT
000503  1354		TAD	(5567		/MAKE IT SIXBIT
000504  1341		TAD	OFFSET
000505  3753		DCA I	(YEAR		/PRINT IT
000506  1022		TAD	TEMP		/GET THE DATE--NOW FIND THE MONTH/DAY
000507  7112		CLL RTR
000510  7010		RAR
000511  0352		AND	(777
000512  3022		DCA	TEMP
000513  1022	SIMPLE,	TAD	TEMP		/GET THE DAY
000514  0351		AND	(37
000515  1350		TAD	(DAYS-1		/THIS IS THE LAZY WAY
000516  3020		DCA	NCHARS
000517  1420		TAD I	NCHARS
000520  3747		DCA I	(DAY
000521  1022		TAD	TEMP		/GET THE MONTH
000522  7112		CLL RTR
000523  7012		RTR
000524  0346		AND	(36
000525  1345		TAD	(MONTHS-3
000526  3010		DCA	X10
000527  1410		TAD I	X10
000530  3744		DCA I	(MONTH
000531  1410		TAD I	X10
000532  3743		DCA I	(MONTH+1
000533  5764		JMP I	(PAJE		/WE GOT THE DATE

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 5


000534  7605	LSTFIL,	7605
000535  0173	FILLST,	DEV1CE
000536  7773	OFSIZE,	-5
000537  0000	YRTEMP, 0
000540  0000	TEMP1,  0
000541  0000	OFFSET,	0
000543  0722
000544  0721
000545  1244
000546  0036
000547  0720
000550  1207
000551  0037
000552  0777
000553  0723
000554  5567
000555  0724
000556  0072
000557  7766
000560  7742
000561  1600
000562  7777
000563  0007
000564  0600
000565  3706
000566  1011
000567  2077
000570  2011
000571  2203
000572  0200
000573  0716
000574  6351
000575  0100
000576  7644
000577  7666
	0600		PAGE

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 6


000600  5777	PAJE,	JMP I	(PRHDR		/PRINT THE FIRST HEADING
000601  7126		CLL CML RTL		/INITIALIZE LINE NUMBER
000602  3024		DCA	LINENO
000603  3277		DCA	TABCNT		/**
000604  1376	RDLUPE,	TAD	(SEVCHR-1	/SEVEN CHAR BUFFER
000605  3010		DCA	X10
000606  1375		TAD	(-6
000607  3020		DCA	NCHARS
000610  4774	RDLOOP,	JMS I	(ICHAR
000611  5347		JMP	RDACHO		/ECHO & IGNORE SHORT LINES
000612  1373		TAD	(-211		/IS IT A TAB ?
000613  7640		SZA CLA
000614  5224		JMP	NOTAB		/NO
000615  1372		TAD	(-2
000616  3277		DCA	TABCNT		/SET POINTER TO DO EXTRA SPACES LATER**
000617  1371		TAD	(240
000620  3410		DCA I	X10		/DO A TAB
000621  2020		ISZ	NCHARS
000622  5217		JMP	.-3
000623  5230		JMP	WHAT		/GO LOOK AT THE LINE
000624  1021	NOTAB,	TAD	CHAR
000625  3410		DCA I	X10		/SAVE THE CHAR
000626  2020		ISZ	NCHARS
000627  5210		JMP	RDLOOP
000630  1025	WHAT,	TAD	SEVCHR		/IS IT A COMMNET
000631  1370		TAD	(-303
000632  7650		SNA CLA
000633  5246		JMP	NOISN		/YES, NO INTERNAL STMT NUMBER
000634  1032		TAD	SEVCHR+5	/IS IT A CONTINUATION ?
000635  1367		TAD	(-240
000636  7640		SZA CLA
000637  5246		JMP	NOISN		/YES, NO ISN
000640  1024		TAD	LINENO		/NEITHER OF THESE
000641  4766		JMS I	(ONUMBR		/PRINT ISN
000642  1024		TAD	LINENO		/2.01/ PUT LINE NUM
000643  7421		7421			/2.01/ INTO MQ
000644  7200		CLA			/2.01/ CLA IF NO EAE
000645  2024		ISZ	LINENO		/BUMP LINE NUMBER

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 7


000646  1365	NOISN,	TAD	(211		/TAB
000647  4764		JMS I	(OCHAR
000650  1376		TAD	(SEVCHR-1	/PRINT FIRST SEVEN
000651  3010		DCA	X10
000652  1375		TAD	(-6
000653  3020		DCA	NCHARS
000654  1410		TAD I	X10
000655  4764		JMS I	(OCHAR
000656  2020		ISZ	NCHARS
000657  5254		JMP	.-3
000660  1277		TAD	TABCNT		/SEE IF A TAB WAS 1ST
000661  7700		SMA	CLA		/IF YES,NEED 2 MORE SPACES
000662  5270		JMP	NOTTAB
000663  3277		DCA	TABCNT		/WAS A TAB
000664  1371		TAD	(240
000665  4764		JMS I	(OCHAR
000666  1371		TAD	(240
000667  4764		JMS I	(OCHAR
000670  4774	NOTTAB,	JMS I	(ICHAR		/PRINT REST OF LINE
000671  5274		JMP	ENDLIN
000672  4764		JMS I	(OCHAR
000673  5270		JMP	.-3
000674  4763	ENDLIN,	JMS I	(CRLF		/END LINE
000675  4762		JMS I	(ERRCHK		/CHECK ERROR LIST
000676  5204		JMP	RDLUPE		/DO NEXT LINE
000677  0000	TABCNT,	0

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 8


000700  4040	HEADER, TEXT    '        FORTRAN IV  V50-A (A'
000701  4040
000702  4040
000703  4040
000704  0617
000705  2224
000706  2201
000707  1640
000710  1126
000711  4040
000712  2665
000713  6055
000714  0140
000715  5001
000716  0000
	0716		*.-1
000716  6651	SW36,	TEXT	'6)  '
000717  4040
000720  0000
	0720		*.-1
000720  4040	DAY,	4040
000721  4040	MONTH,	4040;4040
000722  4040
000723  4040	YEAR,	TEXT	'                PAGE  '
000724  4040
000725  4040
000726  4040
000727  4040
000730  4040
000731  4040
000732  4040
000733  2001
000734  0705
000735  4040
000736  0000
	0736		*.-1
000736  1716	PAGENO,	TEXT	'ONE'
000737  0500
000740  0000		ZBLOCK 7	/V3C ROOM FOR LARGE PAGE NUMBERS

000747  1365	RDACHO,	TAD (211
000750  4764		JMS I (OCHAR
000751  5761		JMP I (RDECHO
000761  1747
000762  2101
000763  1514
000764  2022
000765  0211
000766  1462
000767  7540
000770  7475
000771  0240
000772  7776
000773  7567

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 8-1

000774  1600
000775  7772
000776  0024
000777  1523
	1000		PAGE

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 9


001000  4040		TEXT	"         "
001001  4040
001002  4040
001003  4040
001004  4000
001005  1716	LOS,	TEXT	"ONE      "
001006  0540
001007  4040
001010  4040
001011  4000
		NUMS,/	2427;1740;4040
		/	2410;2205;0540
		/	0617;2522;4040
		/	0611;2605;4040
		/	2311;3040;4040
		/	2305;2605;1640
		/	0511;0710;2440
		/	1611;1605;4040
		/	2405;1640;4040
		/	0514;0526;0516
		/	2427;0514;2605
001012  2427		TEXT	"TWO@@@@@"
001013  1700
001014  0000
001015  0000
001016  0000
001017  2410		TEXT	"THREE@@@"
001020  2205
001021  0500
001022  0000
001023  0000
001024  0617		TEXT	"FOUR@@@@"
001025  2522
001026  0000
001027  0000
001030  0000
001031  0611		TEXT	"FIVE@@@@"
001032  2605
001033  0000
001034  0000
001035  0000
001036  2311		TEXT	"SIX@@@@@"
001037  3000
001040  0000
001041  0000
001042  0000
001043  2305		TEXT	"SEVEN@@@"
001044  2605
001045  1600
001046  0000
001047  0000
001050  0511		TEXT	"EIGHT@@@"
001051  0710
001052  2400

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 9-1

001053  0000
001054  0000
001055  1611		TEXT	"NINE@@@@"
001056  1605
001057  0000
001060  0000
001061  0000
001062  2405		TEXT	"TEN@@@@@"
001063  1600
001064  0000
001065  0000
001066  0000
001067  0514		TEXT	"ELEVEN@@"
001070  0526
001071  0516
001072  0000
001073  0000
001074  2427		TEXT	"TWELVE@@"
001075  0514
001076  2605
001077  0000
001100  0000
001101  2410		TEXT	"THIRTEEN"
001102  1122
001103  2405
001104  0516
001105  0000
001106  0617		TEXT	"FOURTEEN"
001107  2522
001110  2405
001111  0516
001112  0000
001113  0611		TEXT	"FIFTEEN@"
001114  0624
001115  0505
001116  1600
001117  0000
001120  2311		TEXT	"SIXTEEN@"
001121  3024
001122  0505
001123  1600
001124  0000
001125  2305		TEXT	"SEVENTEEN"
001126  2605
001127  1624
001130  0505
001131  1600
001132  0511		TEXT	"EIGHTEEN"
001133  0710
001134  2405
001135  0516
001136  0000
001137  1611		TEXT	"NINETEEN"
001140  1605
001141  2405

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 9-2

001142  0516
001143  0000
001144  4024	HIS,	TEXT	" TWENTY "
001145  2705
001146  1624
001147  3140
001150  0000
	1150		*.-1
001150  4024		TEXT	" THIRTY "
001151  1011
001152  2224
001153  3140
001154  0000
	1154		*.-1
001154  4040		TEXT	"  FORTY "
001155  0617
001156  2224
001157  3140
001160  0000
	1160		*.-1
001160  4040		TEXT	"  FIFTY "
001161  0611
001162  0624
001163  3140
001164  0000
	1164		*.-1
001164  4040		TEXT	"  SIXTY "
001165  2311
001166  3024
001167  3140
001170  0000
	1170		*.-1
001170  2305		TEXT	"SEVENTY "
001171  2605
001172  1624
001173  3140
001174  0000
	1174		*.-1
001174  4005		TEXT	" EIGHTY "
001175  1107
001176  1024
001177  3140
001200  0000
	1200		*.-1
001200  4016		TEXT	" NINETY "
001201  1116
001202  0524
001203  3140
001204  0000
	1204		*.-1
001204  1025		TEXT	"HUNDRED "
001205  1604
001206  2205
001207  0440
001210  0000

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 9-3

	1210		*.-1

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 10


001210  4061	DAYS,  4061;4062;4063;4064;4065;4066;4067;4070;4071
001211  4062
001212  4063
001213  4064
001214  4065
001215  4066
001216  4067
001217  4070
001220  4071
001221  6160		6160;6161;6162;6163;6164;6165;6166;6167;6170;6171
001222  6161
001223  6162
001224  6163
001225  6164
001226  6165
001227  6166
001230  6167
001231  6170
001232  6171
001233  6260		6260;6261;6262;6263;6264;6265;6266;6267;6270;6271
001234  6261
001235  6262
001236  6263
001237  6264
001240  6265
001241  6266
001242  6267
001243  6270
001244  6271
001245  6360		6360;6361
001246  6361
001247  5512	MONTHS, 5512;0116		/-JAN
001250  0116
001251  5506		5506;0502		/-FEB
001252  0502
001253  5515		5515;0122		/-MAR
001254  0122
001255  5501		5501;2022		/-APR
001256  2022
001257  5515		5515;0131		/-MAY
001260  0131
001261  5512		5512;2516		/-JUN
001262  2516
001263  5512		5512;2514		/-JUL
001264  2514
001265  5501		5501;2507		/-AUG
001266  2507
001267  5523		5523;0520		/-SEP
001270  0520
001271  5517		5517;0324		/-OCT
001272  0324
001273  5516		5516;1726		/-NOV
001274  1726
001275  5504		5504;0503		/-DEC

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 10-1

001276  0503
	1400		IFZERO .&100	<PAGE>

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 11


001400  1377	ENDX,	TAD	(-601		/2.02/ CLEAR END OF BUFFER
001401  3024		DCA	LINENO		/2.01/ FOR TV: REASONS
001402  1260		TAD	X232		/2.01/ OUTPUT ^Z
001403  4776		JMS I	(OCHAR		/2.01/
001404  2024		ISZ	LINENO		/2.01/
001405  5202		JMP	.-3		/2.01/
001406  6212		CIF	10		/CLOSE THE OUTPUT FILE
001407  1173		TAD	DEV1CE
001410  4775		JMS I	(200
001411  0004		4
001412  0174		DEV1CE+1
001413  0000	FILSIZ,	0
001414  5374		JMP	(OFOO3
001415  6211		CDF	10		/LOOK AT OPTIONS
001416  1650		TAD I	XSWS
001417  6201		CDF
001420  7710	M70,	SPA CLA
001421  5773		JMP I	(7605		//A MEANS DON'T CHAIN TO RALF
001422  6211		CDF 10
001423  1006		TAD	FILDEV		/SET UP RALF INPUT LIST
001424  3772		DCA I	(7617		/FILE SIZE AND DEVICE CODE
001425  2372		ISZ	(7617
001426  1007		TAD	FILBLK		/FILE START
001427  3772		DCA I	(7617
001430  2372		ISZ	(7617		/ZERO END OF LIST
001431  3772		DCA I	(7617
001432  1650		TAD I	XSWS		/IS IT /F (FULL LIST) ?
001433  0371		AND	(100
001434  7640		SZA CLA			/**
001435  5242		JMP	LISTIT
001436  1770		TAD I	(OS8SWS+1
001437  0367		AND	(20		/LET /T SWITCH THRU ALSO
001440  7650		SNA CLA
001441  3773		DCA I	(7605		/NO, INHIBIT RALF LISTING

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 12


001442  6201	LISTIT,	CDF 0
001443  1766		TAD I	(SBLOCK		/ON CCL-DEVICE
001444  6212		CIF	10
001445  4775		JMS I	(200		/LOOKUP RALF.SV
001446  0002		2
001447  2157		RALFNM
001450  7643	XSWS,	OS8SWS
001451  5374		JMP	(OFOO3
001452  1247		TAD	.-3
001453  3260		DCA	X232
001454  1765		TAD I	(MREAD-1	/ON CCL-DEVICE
001455  6212		CIF	10		/CHAIN TO RALF
001456  4775		JMS I	(200
001457  0006		6
001460  0232	X232,	232
001461  0000	NCNT,	0
001462  0000	ONUMBR,	0
001463  3022		DCA	TEMP		/OUTPUT ISN IN OCTAL
001464  1364		TAD	(-4
001465  3261		DCA	NCNT
001466  1022	OLOOP,	TAD	TEMP
001467  7106		CLL RTL			/ANYONE WHO CAN'T FOLLOW THIS
001470  7004		RAL			/SHOULDN'T BE A PROGRAMMER
001471  3022		DCA	TEMP
001472  1022		TAD	TEMP
001473  7004		RAL
001474  0363		AND	(7
001475  1362		TAD	(260
001476  4776		JMS I	(OCHAR
001477  2261		ISZ	NCNT
001500  5266		JMP	OLOOP
001501  5662		JMP I	ONUMBR
001502  0000	CONVRT,	0			/CONVERT TO ASCII AND PRINT
001503  0361		AND	(77
001504  7440		SZA
001505  1360		TAD	(-40
001506  7510		SPA
001507  1371		TAD	(100
001510  1357		TAD	(240
001511  4776		JMS I	(OCHAR
001512  5702		JMP I	CONVRT

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 13


001513  7777	LINECT,	-1			/EJECT FIRST TIME
001514  0601	CRLF,	PAJE+1
001515  1356		TAD	(215		/CR LF
001516  4776		JMS I	(OCHAR
001517  1355		TAD	(212
001520  4776		JMS I	(OCHAR
001521  2313		ISZ	LINECT
001522  5714		JMP I	CRLF
001523  1354	PRHDR,	TAD	(214
001524  4776		JMS I	(OCHAR
001525  1220		TAD	M70		/RESET COUNT
001526  3313		DCA	LINECT
001527  1353		TAD	(HEADER		/COPY HEADER OUT
001530  3022		DCA	TEMP
001531  1422	OHDR,	TAD I	TEMP
001532  7112		CLL RTR
001533  7112		CLL RTR
001534  7112		CLL RTR
001535  4302		JMS	CONVRT
001536  1422		TAD I	TEMP
001537  4302		JMS	CONVRT
001540  1422		TAD I	TEMP		/END YET ?
001541  2022		ISZ	TEMP
001542  0361		AND	(77
001543  7640		SZA CLA
001544  5331		JMP	OHDR
001545  1356		TAD	(215		/V3C SKIP EXTRA LINE AFTER TITLE
001546  4776		JMS I	(OCHAR
001547  1355		TAD	(212		/V3C
001550  4776		JMS I	(OCHAR		/FOR CENTRONICS
001551  5752		JMP I	(PUTNUM		/GET NEW PAGE NUMBER
001552  3677
001553  0700
001554  0214
001555  0212
001556  0215
001557  0240
001560  7740
001561  0077
001562  0260
001563  0007
001564  7774
001565  7756
001566  7776
001567  0020
001570  7644
001571  0100
001572  7617
001573  7605
001574  2203
001575  0200
001576  2022
001577  7177
	1600		PAGE

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 14


		/ OS/8 FILE INPUT ROUTINES

001600  0000	ICHAR,	0			/READ CHAR FROM INPUT FILE
001601  2240		ISZ	INJMP		/BUMP THREE WAY UNPACK SWITCH
001602  2310		ISZ	INCHCT
001603  5240	INJMPP,	JMP	INJMP
001604  1307		TAD	INEOF		/DID LAST READ YEILD END OF FILE ?
001605  7650		SNA CLA
001606  5211		JMP	INGBUF		/NO, DO ANOTHER READ
001607  4310	GETNEW,	JMS	INNEWF		/OPEN A NEW INPUT FILE
001610  5777		JMP I	(ENDX		/NO FILE TO OPEN
001611  1345	INGBUF,	TAD	INCTR		/BUMP RECORD COUNTER
001612  7101		CLL IAC
001613  7420		SNL
001614  3345		DCA	INCTR		/RESTORE IF IT HASN'T OVERFLOWED
001615  7430		SZL
001616  2307		ISZ	INEOF		/SET END OF FILE SWITCH
001617  4723		JMS I	INHNDL		/DO THE READ
001620  0200	INCALL,	200
001621  6000	INBUFP,	INBUF
001622  0000	INREC,	0
001623  5234		JMP	INERR		/HANDLER ERROR
001624  2222	INBREC,	ISZ	INREC		/BUMP RECORD NUMBER
001625  1376		TAD	(-601		/SET CHAR COUNT
001626  3310		DCA	INCHCT
001627  1203		TAD	INJMPP		/RESET THREE WAY JUMP SWITCH
001630  3240		DCA	INJMP
001631  1221		TAD	INBUFP		/RESET BUFFER POINTER
001632  3346		DCA	INPTR
001633  5201		JMP	ICHAR+1		/GO AGAIN
001634  2307	INERR,	ISZ	INEOF		/EITHER EOF OR BADDIE
001635  7700		SMA CLA
001636  5224		JMP	INBREC		/END OF FILE, DO NEXT FILE
001637  5775		JMP I	(OFOO3
001640  7402	INJMP,	HLT			/3 WAY CHARACTER UUPACK SWITCH
001641  5262		JMP	ICHAR1
001642  5256		JMP	ICHAR2
001643  1203	ICHAR3,	TAD	INJMPP		/RESET JUMP SWITCH
001644  3240		DCA	INJMP
001645  1746		TAD I	INPTR
001646  0374		AND	(7400		/COMBINE THE HIGH ORDER BITS
001647  7112		CLL RTR			/OF THE TWO WORDS
001650  7012		RTR
001651  1305		TAD	INTMP		/TO FORM THE THIRD CHAR
001652  7012		RTR
001653  7012		RTR
001654  2346		ISZ	INPTR		/BUMP WORD POINTER
001655  5263		JMP	ICHAR1+1	/DO SOME COMMON STUFF

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 15


001656  1746	ICHAR2,	TAD I	INPTR		/SAVE THE HIGH ORDER BITS
001657  0374		AND	(7400
001660  3305		DCA	INTMP		/FOR THE THIRD CHAR
001661  2346		ISZ	INPTR		/GO TO THE SECOND WORD
001662  1746	ICHAR1,	TAD I	INPTR		/GET THE LOW 8 BITS
001663  0373		AND	(377		/AND I MEAN ONLY 8 !!
001664  3021		DCA	CHAR
001665  1021		TAD	CHAR
001666  1372		TAD	(-232		/IS IT ^Z (END OF FILE)
001667  7450		SNA
001670  5207		JMP	GETNEW		/YES, LOOK FOR THE NEXT FILE
001671  1371		TAD	(232-212
001672  7450		SNA
001673  5201		JMP	ICHAR+1		/IGNORE LINE FEEDS
001674  1370		TAD	(212-215
001675  7450		SNA
001676  5600		JMP I	ICHAR		/RETURN ON CARRIAGE RETURN
001677  7001		IAC
001700  7650		SNA CLA
001701  5201		JMP	ICHAR+1		/IGNORE FORM FEEDS
001702  1021		TAD	CHAR
001703  2200		ISZ	ICHAR
001704  5600		JMP I	ICHAR		/RETURN TO THE CALLING WORLD

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 16


001705  0000	INTMP,	0
001706  7617	INFPTR,	7617			/POINTER TO INPUT FILE LIST
001707  0001	INEOF,	1
		INCHCT,
001710  7777	INNEWF,	-1			/FETCH HANDLER FOR NEXT FILE
001711  1367		TAD	(INDEVH+1	/THIS IS WHERE IT GOES
001712  3323		DCA	INHNDL
001713  6211		CDF	10
001714  1706		TAD I	INFPTR		/GET NEXT INPUT FILE INFO
001715  6201		CDF
001716  7450		SNA
001717  5710		JMP I	INNEWF		/NO MORE FILES
001720  6212		CIF	10
001721  4620		JMS I	INCALL		/CALL MONITOR
001722  0001		1			/FETCH HANDLER
001723  0000	INHNDL,	0			/ENTRY ADDR GOES HERE
001724  5775		JMP I	(OFOO3
001725  6211		CDF	10
001726  1706		TAD I	INFPTR		/GET LENGTH
001727  0366		AND	(7760
001730  7440		SZA			/A ZERO HERE MEANS >=256 BLOCKS
001731  1365		TAD	(17		/PUT IN SOME MORE BITS
001732  7132		CLL CML RTR
001733  7012		RTR
001734  3345		DCA	INCTR		/STORE LENGTH OF FILE
001735  2306		ISZ	INFPTR
001736  1706		TAD I	INFPTR		/GET STARTING RECORD NUMBER
001737  3222		DCA	INREC
001740  2306		ISZ	INFPTR
001741  3307		DCA	INEOF		/CLEAR EOF FLAG
001742  2310		ISZ	INNEWF
001743  6201		CDF
001744  5710		JMP I	INNEWF
001745  0000	INCTR,	0
001746  0000	INPTR,	0

		RDECHO,			/KEEP LINES WITH L.T. 6 CHARS OUT OF ISN COLUMN
001747  1364		TAD	(SEVCHR-1
001750  3012		DCA	X12
001751  1012	RDECLP,	TAD	X12
001752  7041		CIA
001753  1010		TAD	X10
001754  7650		SNA CLA
001755  5763		JMP I	(ENDLIN	/ONLY ECHO WHAT YOU READ
001756  1412		TAD I	X12
001757  4762		JMS I	(OCHAR
001760  5351		JMP	RDECLP
001762  2022
001763  0674
001764  0024
001765  0017
001766  7760
001767  6401
001770  7775

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 16-1

001771  0020
001772  7546
001773  0377
001774  7400
001775  2203
001776  7177
001777  1400
	2000		PAGE

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 17


002000  0000	OUDUMP,	0			/BUMP THE DUFFER
002001  1277		TAD	OSIZE		/ANY ROOM LEFT ?
002002  7001		IAC
002003  7450		SNA
002004  5777		JMP I	(OFOO3
002005  3277		DCA	OSIZE		/YES, ITS OK
002006  4423		JMS I	DEVH		/WRITE
002007  4200		4200			/CONTROL WORD
002010  5400		OUBUF			/BUFFER POINTER
002011  0000	OBLOCK,	0			/BLOCK NUMBER
002012  5777		JMP I	(OFOO3
002013  2211		ISZ	OBLOCK		/INCREMENT BLOCK NUMBER
002014  2776		ISZ I	(FILSIZ		/AND FILE SIZE
002015  1210		TAD	OBLOCK-1	/SET BUFFER POINTER
002016  3274		DCA	OUPTR
002017  1375		TAD	(-200		/SET DOUBLE WORD COUNT
002020  3276		DCA	OUWDCT
002021  5600		JMP I	OUDUMP
002022  0000	OCHAR,	0			/OUTPUT A CHAR TO THE RALF INPUT FILE
002023  0374		AND	(377
002024  3272		DCA	OUTEMP		/SAVE CHAR
002025  6031		KSF			/^C TEST
002026  5234		JMP	NOSTOP
002027  6036		KRB
002030  0373		AND	(177
002031  1372		TAD	(-3
002032  7650		SNA CLA
002033  5771		JMP I	(7605		/YES

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 18


002034  2235	NOSTOP,	ISZ	OUJUMP		/BUMP 3 WAY SWITCH
002035  5235	OUJUMP,	JMP	.
002036  5267		JMP	CHAR1
002037  5264		JMP	CHAR2
002040  1272		TAD	OUTEMP		/HIGH FOUR BITS GO INTO
002041  7106		CLL RTL			/THE HIGH ORDER BITS OF THE
002042  7006		RTL			/FIRST WORD OF THE TWO WORD PAIR
002043  0370		AND	(7400		/SEE NOTE * BELOW
002044  1673		TAD I	OUPOLD		/COMBINE WITH OTHER BITS
002045  3673		DCA I	OUPOLD
002046  1272		TAD	OUTEMP		/THE OTHER FOUR BITS OF THIS CHAR
002047  7112		CLL RTR			/GO INTO THE HIGH ORDER FOUR
002050  7012		RTR			/BITS OF THE SECOND WORD OF THE PAIR
002051  7010		RAR
002052  0370		AND	(7400
002053  1674		TAD I	OUPTR
002054  3674		DCA I	OUPTR
002055  1275		TAD	OUJMP		/RESET 3 WAY BRANCH
002056  3235		DCA	OUJUMP
002057  2274		ISZ	OUPTR		/BUMP BUFFER POINTER
002060  2276		ISZ	OUWDCT		/AND DOUBLE WORD COUNTER
002061  5622		JMP I	OCHAR		/BUFFER NOT FULL
002062  4200		JMS	OUDUMP		/DUMP IT
002063  5622		JMP I	OCHAR
002064  1274	CHAR2,	TAD	OUPTR		/SAVE FIRST WORD POINTER
002065  3273		DCA	OUPOLD
002066  2274		ISZ	OUPTR		/GO TO SECOND WORD
002067  1272	CHAR1,	TAD	OUTEMP		/STORE CHAR 1 OR 2
002070  3674		DCA I	OUPTR
002071  5622		JMP I	OCHAR
002072  0000	OUTEMP,	0
002073  0000	OUPOLD,	0
002074  5400	OUPTR,	OUBUF
002075  5235	OUJMP,	JMP	OUJUMP
002076  7600	OUWDCT,	-200
002077  0000	OSIZE,	0
002100  5000	ERRPTR,	5000

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 19


002101  0000	ERRCHK,	0
002102  6211		CDF	10
002103  1700		TAD I	ERRPTR		/ANY ERRORS FOR THIS LINE
002104  6201		CDF
002105  7040		CMA
002106  1024		TAD	LINENO
002107  7640		SZA CLA
002110  5701		JMP I	ERRCHK		/NO
002111  7144		CLL CMA RAL		/BACK UP POINTER
002112  1300		TAD	ERRPTR
002113  3300		DCA	ERRPTR
002114  1300		TAD	ERRPTR
002115  7001		IAC
002116  3022		DCA	TEMP
002117  6211		CDF	10
002120  1422		TAD I	TEMP		/GET CODE
002121  6201		CDF
002122  7041		CIA
002123  3022		DCA	TEMP		/SAVE NEGATIVE
002124  1367		TAD	(ERRLST-1
002125  3010		DCA	X10
002126  1410	FIND,	TAD I	X10		/LOOK FOR ERROR MESSAGE
002127  7440		SZA
002130  1022		TAD	TEMP
002131  7650		SNA CLA
002132  5335		JMP	.+3
002133  2010		ISZ	X10
002134  5326		JMP	FIND		/SKIP POINTER WORD
002135  7240		CLA CMA
002136  1410		TAD I	X10
002137  3010		DCA	X10		/POINTER TO MESSAGE
002140  1410	PMLOOP,	TAD I	X10		/GET TWO CHARS
002141  3022		DCA	TEMP
002142  1022		TAD	TEMP
002143  7012		RTR
002144  7012		RTR
002145  7012		RTR
002146  4766		JMS I	(CONVRT		/PRINT FIRST
002147  1022		TAD	TEMP
002150  4766		JMS I	(CONVRT		/PRINT SECOND
002151  1022		TAD	TEMP
002152  0365		AND	(77		/END OF MESSAGE ?
002153  7640		SZA CLA
002154  5340		JMP	PMLOOP		/NO, LOOP
002155  4764		JMS I	(CRLF
002156  5302		JMP	ERRCHK+1	/SEE IF ANY MORE FOR THIS LINE
002157  2201	RALFNM,	FILENAME RALF.SV
002160  1406
002161  0000
002162  2326
002164  1514
002165  0077
002166  1502
002167  2215

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 19-1

002170  7400
002171  7605
002172  7775
002173  0177
002174  0377
002175  7600
002176  1413
002177  2203
	2200		PAGE

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 20


002200  0304	X304,	304
002201  0305	X305,	305
002202  7605	X7605,	7605
002203  1200	OFOO3,	TAD	X304		/FATAL ERROR IN PASS 3
002204  4210		JMS	TTY
002205  1201		TAD	X305
002206  4210		JMS	TTY
002207  5602		JMP I	X7605
002210  0000	TTY,	0			/PRINT ON TTY
002211  6046		TLS
002212  6041		TSF
002213  5212		JMP	.-1
002214  7200		CLA
002215  5610		JMP I	TTY
		/ERROR MESSAGES
002216  0724	ERRLST,	0724;GT
002217  2367
002220  1124		1124;IT
002221  2451
002222  0504		0504;ED
002223  2701
002224  2227		2227;RW
002225  2401
002226  0317		0317;CO
002227  2417
002230  0530		0530;EX
002231  2463
002232  2123		2123;QS
002233  2474
002234  2114		2114;QL
002235  2512
002236  1106		1106;IF
002237  2536
002240  0417		0417;DO
002241  2567
002242  2316		2316;SN
002243  2607
002244  2404		2404;TD
002245  2626
002246  0204		0204;BD
002247  2646
002250  2224		2224;RT
002251  2721
002252  2204		2204;RD
002253  2740
002254  2324		2324;ST
002255  2762
002256  0314		0314;CL
002257  3004
002260  1517		1517;MO
002261  3021
002262  1017		1017;HO
002263  3041
002264  1515		1515;MM

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 20-1

002265  3066
002266  2323		2323;SS
002267  3102
002270  1720		1720;OP
002271  3123
002272  0123		0123;AS
002273  3134
002274  0401		0401;DA
002275  3142
002276  0410		0410;DH
002277  3153
002300  1514		1514;ML
002301  3204
002302  0405		0405;DE
002303  3226
002304  0223		0223;BS
002305  3244
002306  1424		1424;LT
002307  3257
002310  1105		1105;IE
002311  3266
002312  2010		2010;PH
002313  3313
002314  1513		1513;MK
002315  3346
002316  1724		1724;OT
002317  3362
002320  2004		2004;PD
002321  3406
002322  1524		1524;MT
002323  3430
002324  0726		0726;GV
002325  3447
002326  1411		1411;LI
002327  3506
002330  0420		0420;DP
002331  3535
002332  0414		0414;DL
002333  3560
002334  0101		0101;AA
002335  3613
002336  2306		2306;SF
002337  3652
002340  0406		0406;DF
002341  3666
002342  1111		1111;II
002343  2356
002344  0000		0;SYSERR
002345  2346

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 21


002346  2516	SYSERR,	TEXT	'UNDEFINED ERROR'
002347  0405
002350  0611
002351  1605
002352  0440
002353  0522
002354  2217
002355  2200
002356  1114	II,	TEXT	'ILLEGAL USE OF IF'
002357  1405
002360  0701
002361  1440
002362  2523
002363  0540
002364  1706
002365  4011
002366  0600
002367  0201	GT,	TEXT	'BAD GOTO STATEMENT'
002370  0440
002371  0717
002372  2417
002373  4023
002374  2401
002375  2405
002376  1505
002377  1624
002400  0000
002401  0201	RW,	TEXT	'BAD READ OR WRITE STATEMENT'
002402  0440
002403  2205
002404  0104
002405  4017
002406  2240
002407  2722
002410  1124
002411  0540
002412  2324
002413  0124
002414  0515
002415  0516
002416  2400
002417  0122	CO,	TEXT	'ARGS IN COMMON OR VAR IN TWO COMMONS OR SYNTAX BAD'
002420  0723
002421  4011
002422  1640
002423  0317
002424  1515
002425  1716
002426  4017
002427  2240
002430  2601
002431  2240
002432  1116
002433  4024

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 21-1

002434  2717
002435  4003
002436  1715
002437  1517
002440  1623
002441  4017
002442  2240
002443  2331
002444  1624
002445  0130
002446  4002
002447  0104
002450  0000
002451  0201	IT,	TEXT	'BAD IO LIST ELEMENT'
002452  0440
002453  1117
002454  4014
002455  1123
002456  2440
002457  0514
002460  0515
002461  0516
002462  2400
002463  0201	EX,	TEXT	'BAD EXTERNAL STMT'
002464  0440
002465  0530
002466  2405
002467  2216
002470  0114
002471  4023
002472  2415
002473  2400
002474  2331	QS,	TEXT	'SYNTAX ERROR IN EQUIVALENCE'
002475  1624
002476  0130
002477  4005
002500  2222
002501  1722
002502  4011
002503  1640
002504  0521
002505  2511
002506  2601
002507  1405
002510  1603
002511  0500
002512  2601	QL,	TEXT	'VARIABLE IS EQUIVALENCED MORE THAN ONCE'
002513  2211
002514  0102
002515  1405
002516  4011
002517  2340
002520  0521
002521  2511
002522  2601

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 21-2

002523  1405
002524  1603
002525  0504
002526  4015
002527  1722
002530  0540
002531  2410
002532  0116
002533  4017
002534  1603
002535  0500
002536  2410	IF,	TEXT	'THIS KIND OF STATEMENT NOT LEGAL AFTER LOGICAL IF'
002537  1123
002540  4013
002541  1116
002542  0440
002543  1706
002544  4023
002545  2401
002546  2405
002547  1505
002550  1624
002551  4016
002552  1724
002553  4014
002554  0507
002555  0114
002556  4001
002557  0624
002560  0522
002561  4014
002562  1707
002563  1103
002564  0114
002565  4011
002566  0600
002567  0201	DO,	TEXT	'BAD SYNTAX IN DO OR IMPLIED DO'
002570  0440
002571  2331
002572  1624
002573  0130
002574  4011
002575  1640
002576  0417
002577  4017
002600  2240
002601  1115
002602  2014
002603  1105
002604  0440
002605  0417
002606  0000
002607  1617	SN,	TEXT	'NOT LEGAL AS SUBROUTINE NAME'
002610  2440
002611  1405

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 21-3

002612  0701
002613  1440
002614  0123
002615  4023
002616  2502
002617  2217
002620  2524
002621  1116
002622  0540
002623  1601
002624  1505
002625  0000
002626  2331	TD,	TEXT	'SYNTAX ERROR IN TYPE STATEMENT'
002627  1624
002630  0130
002631  4005
002632  2222
002633  1722
002634  4011
002635  1640
002636  2431
002637  2005
002640  4023
002641  2401
002642  2405
002643  1505
002644  1624
002645  0000
002646  0411	BD,	TEXT	'DIMENSIONS TOO BIG, OR SYNTAX ERROR IN DIMENSION LIST'
002647  1505
002650  1623
002651  1117
002652  1623
002653  4024
002654  1717
002655  4002
002656  1107
002657  5440
002660  1722
002661  4023
002662  3116
002663  2401
002664  3040
002665  0522
002666  2217
002667  2240
002670  1116
002671  4004
002672  1115
002673  0516
002674  2311
002675  1716
002676  4014
002677  1123
002700  2400

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 21-4

002701  1114	ED,	TEXT	'ILLEGAL AS DO ENDING STATEMENT'
002702  1405
002703  0701
002704  1440
002705  0123
002706  4004
002707  1740
002710  0516
002711  0411
002712  1607
002713  4023
002714  2401
002715  2405
002716  1505
002717  1624
002720  0000
002721  0124	RT,	TEXT	'ATTEMPT TO RE-TYPE A VARIABLE'
002722  2405
002723  1520
002724  2440
002725  2417
002726  4022
002727  0555
002730  2431
002731  2005
002732  4001
002733  4026
002734  0122
002735  1101
002736  0214
002737  0500
002740  0124	RD,	TEXT	'ATTEMPT TO RE-DIMENSION A VARIABLE'
002741  2405
002742  1520
002743  2440
002744  2417
002745  4022
002746  0555
002747  0411
002750  1505
002751  1623
002752  1117
002753  1640
002754  0140
002755  2601
002756  2211
002757  0102
002760  1405
002761  0000
002762  1116	ST,	TEXT	'INTERNAL COMPILER ABORT NUMBER ONE'
002763  2405
002764  2216
002765  0114
002766  4003
002767  1715

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 21-5

002770  2011
002771  1405
002772  2240
002773  0102
002774  1722
002775  2440
002776  1625
002777  1502
003000  0522
003001  4017
003002  1605
003003  0000
003004  0522	CL,	TEXT	'ERROR IN COMPLEX LITERAL'
003005  2217
003006  2240
003007  1116
003010  4003
003011  1715
003012  2014
003013  0530
003014  4014
003015  1124
003016  0522
003017  0114
003020  0000
003021  1720	MO,	TEXT	'OPERAND EXPECTED, NONE PRESENT'
003022  0522
003023  0116
003024  0440
003025  0530
003026  2005
003027  0324
003030  0504
003031  5440
003032  1617
003033  1605
003034  4020
003035  2205
003036  2305
003037  1624
003040  0000
003041  1017	HO,	TEXT	'HOLLERITH COUNT WRONG, OR MISSING QUOTES'
003042  1414
003043  0522
003044  1124
003045  1040
003046  0317
003047  2516
003050  2440
003051  2722
003052  1716
003053  0754
003054  4017
003055  2240
003056  1511

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 21-6

003057  2323
003060  1116
003061  0740
003062  2125
003063  1724
003064  0523
003065  0000
003066  1511	MM,	TEXT	'MISMATCHED PARENTHESIS'
003067  2315
003070  0124
003071  0310
003072  0504
003073  4020
003074  0122
003075  0516
003076  2410
003077  0523
003100  1123
003101  0000
003102  2325	SS,	TEXT	'SUBSCRIPT OR ARGUMENT LIST ERROR'
003103  0223
003104  0322
003105  1120
003106  2440
003107  1722
003110  4001
003111  2207
003112  2515
003113  0516
003114  2440
003115  1411
003116  2324
003117  4005
003120  2222
003121  1722
003122  0000
003123  1114	OP,	TEXT	'ILLEGAL OPERATOR'
003124  1405
003125  0701
003126  1440
003127  1720
003130  0522
003131  0124
003132  1722
003133  0000
003134  0123	AS,	TEXT	'ASSIGN ???'
003135  2311
003136  0716
003137  4077
003140  7777
003141  0000
003142  0401	DA,	TEXT	'DATA STATEMENT ?'
003143  2401
003144  4023
003145  2401

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 21-7

003146  2405
003147  1505
003150  1624
003151  4077
003152  0000
003153  1017	DH,	TEXT	'HOLLERITH COUNT OR QUOTE ERROR IN DATA STATEMENT'
003154  1414
003155  0522
003156  1124
003157  1040
003160  0317
003161  2516
003162  2440
003163  1722
003164  4021
003165  2517
003166  2405
003167  4005
003170  2222
003171  1722
003172  4011
003173  1640
003174  0401
003175  2401
003176  4023
003177  2401
003200  2405
003201  1505
003202  1624
003203  0000
003204  2410	ML,	TEXT	'THIS LINE NUMBER IS ALREADY DEFINED'
003205  1123
003206  4014
003207  1116
003210  0540
003211  1625
003212  1502
003213  0522
003214  4011
003215  2340
003216  0114
003217  2205
003220  0104
003221  3140
003222  0405
003223  0611
003224  1605
003225  0400
003226  2722	DE,	TEXT	"WRONG WAY TO END A DO LOOP"
003227  1716
003230  0740
003231  2701
003232  3140
003233  2417
003234  4005

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 21-8

003235  1604
003236  4001
003237  4004
003240  1740
003241  1417
003242  1720
003243  0000
003244  1114	BS,	TEXT	'ILLEGAL IN BLOCK DATA'
003245  1405
003246  0701
003247  1440
003250  1116
003251  4002
003252  1417
003253  0313
003254  4004
003255  0124
003256  0100
003257  1411	LT,	TEXT	'LINE TOO BIG'
003260  1605
003261  4024
003262  1717
003263  4002
003264  1107
003265  0000
003266  1116	IE,	TEXT	'INPUT FILE ERROR, TAKEN AS END STATEMENT'
003267  2025
003270  2440
003271  0611
003272  1405
003273  4005
003274  2222
003275  1722
003276  5440
003277  2401
003300  1305
003301  1640
003302  0123
003303  4005
003304  1604
003305  4023
003306  2401
003307  2405
003310  1505
003311  1624
003312  0000
003313  2410	PH,	TEXT	'THIS FUNCTION / SUBROUTINE STATEMENT IS UNACCEPTABLE'
003314  1123
003315  4006
003316  2516
003317  0324
003320  1117
003321  1640
003322  5740
003323  2325

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 21-9

003324  0222
003325  1725
003326  2411
003327  1605
003330  4023
003331  2401
003332  2405
003333  1505
003334  1624
003335  4011
003336  2340
003337  2516
003340  0103
003341  0305
003342  2024
003343  0102
003344  1405
003345  0000
003346  3117	MK,	TEXT	'YOU MISPELED A KEYWURD'
003347  2540
003350  1511
003351  2320
003352  0514
003353  0504
003354  4001
003355  4013
003356  0531
003357  2725
003360  2204
003361  0000
003362  1114	OT,	TEXT	'ILLEGAL OPERAND TYPE FOR THIS OPERATOR'
003363  1405
003364  0701
003365  1440
003366  1720
003367  0522
003370  0116
003371  0440
003372  2431
003373  2005
003374  4006
003375  1722
003376  4024
003377  1011
003400  2340
003401  1720
003402  0522
003403  0124
003404  1722
003405  0000
003406  1116	PD,	TEXT	'INTERNAL COMPILER ABORT NUMBER TWO'
003407  2405
003410  2216
003411  0114
003412  4003

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 21-10

003413  1715
003414  2011
003415  1405
003416  2240
003417  0102
003420  1722
003421  2440
003422  1625
003423  1502
003424  0522
003425  4024
003426  2717
003427  0000
003430  1114	MT,	TEXT	"ILLEGAL VARIABLE TYPE MIXING"
003431  1405
003432  0701
003433  1440
003434  2601
003435  2211
003436  0102
003437  1405
003440  4024
003441  3120
003442  0540
003443  1511
003444  3011
003445  1607
003446  0000
003447  2601	GV,	TEXT	'VARIABLE IN ASSIGNED OR COMPUTED GOTO MUST BE INTEGER OR REAL'
003450  2211
003451  0102
003452  1405
003453  4011
003454  1640
003455  0123
003456  2311
003457  0716
003460  0504
003461  4017
003462  2240
003463  0317
003464  1520
003465  2524
003466  0504
003467  4007
003470  1724
003471  1740
003472  1525
003473  2324
003474  4002
003475  0540
003476  1116
003477  2405
003500  0705
003501  2240

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 21-11

003502  1722
003503  4022
003504  0501
003505  1400
003506  0530	LI,	TEXT	'EXPRESSION IN LOGICAL IF IS NOT TYPED LOGICAL'
003507  2022
003510  0523
003511  2311
003512  1716
003513  4011
003514  1640
003515  1417
003516  0711
003517  0301
003520  1440
003521  1106
003522  4011
003523  2340
003524  1617
003525  2440
003526  2431
003527  2005
003530  0440
003531  1417
003532  0711
003533  0301
003534  1400
003535  0417	DP,	TEXT	'DO PARAMETERS MUST BE INTEGER OR REAL'
003536  4020
003537  0122
003540  0115
003541  0524
003542  0522
003543  2340
003544  1525
003545  2324
003546  4002
003547  0540
003550  1116
003551  2405
003552  0705
003553  2240
003554  1722
003555  4022
003556  0501
003557  1400
003560  3117	DL,	TEXT	"YOUR DATA AND VARIABLE LISTS ARE OF DIFFERENT LENGTHS"
003561  2522
003562  4004
003563  0124
003564  0140
003565  0116
003566  0440
003567  2601
003570  2211

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 21-12

003571  0102
003572  1405
003573  4014
003574  1123
003575  2423
003576  4001
003577  2205
003600  4017
003601  0640
003602  0411
003603  0606
003604  0522
003605  0516
003606  2440
003607  1405
003610  1607
003611  2410
003612  2300
003613  2325	AA,	TEXT	'SUBROUTINES MAY ONLY HAVE SIX ARGUMENTS THAT ARE DIMENSIONED'
003614  0222
003615  1725
003616  2411
003617  1605
003620  2340
003621  1501
003622  3140
003623  1716
003624  1431
003625  4010
003626  0126
003627  0540
003630  2311
003631  3040
003632  0122
003633  0725
003634  1505
003635  1624
003636  2340
003637  2410
003640  0124
003641  4001
003642  2205
003643  4004
003644  1115
003645  0516
003646  2311
003647  1716
003650  0504
003651  0000
003652  0201	SF,	TEXT	'BAD STATEMENT FUNCTION'
003653  0440
003654  2324
003655  0124
003656  0515
003657  0516

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 21-13

003660  2440
003661  0625
003662  1603
003663  2411
003664  1716
003665  0000
003666  0201	DF,	TEXT	'BAD DEFINE FILE'
003667  0440
003670  0405
003671  0611
003672  1605
003673  4006
003674  1114
003675  0500

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 22


003676  0001	PAGEN,	1

003677  2276	PUTNUM,	ISZ PAGEN	/BUMP PAGE NUMBER
003700  1276		TAD PAGEN
003701  1377		TAD (-24	/LT 20?
003702  7700		SMA CLA
003703  5317		JMP OVER19	/YES
003704  1376		TAD (-5		/NO
003705  4352		JMS MOVE	/MOVE IN NUMBER
003706  0000	NUM,	0
003707  0735		PAGENO-1
003710  1306		TAD NUM
003711  1375		TAD (5
003712  3306		DCA NUM		/PT TO NEXT ONE
003713  5774		JMP I (CRLF+1

003714  0000	TENS,	0
003715  0000	ONES,	0
003716  0000	KNT,	0

003717  3314	OVER19,	DCA TENS	/CONVERT
003720  1276		TAD PAGEN	/PAGE NUMBER TO ONES AND TENS
003721  1373	O1,	TAD (-12	/DIVIDE BY TEN
003722  7510		SPA
003723  5326		JMP .+3
003724  2314		ISZ TENS
003725  5321		JMP O1
003726  1372		TAD (12
003727  3315		DCA ONES
003730  1314		TAD TENS
003731  7106		CLL RTL
003732  1371		TAD (HIS-10-1
003733  3343		DCA HIP		/POINT TO HIGH PART
003734  1315		TAD ONES
003735  7106		CLL RTL
003736  1315		TAD ONES
003737  1370		TAD (LOS-5-1
003740  3347		DCA LOP
003741  1367		TAD (-4
003742  4352		JMS MOVE
003743  0000	HIP,	0
003744  0735		PAGENO-1
003745  1376		TAD (-5
003746  4352		JMS MOVE
003747  0000	LOP,	0
003750  0741		PAGENO+4-1
003751  5774		JMP I (CRLF+1

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 23


003752  0000	MOVE,	0
003753  3316		DCA KNT
003754  1752		TAD I MOVE
003755  3011		DCA X11
003756  2352		ISZ MOVE
003757  1752		TAD I MOVE
003760  3012		DCA X12
003761  2352		ISZ MOVE
003762  1411		TAD I X11
003763  3412		DCA I X12
003764  2316		ISZ KNT
003765  5362		JMP .-3
003766  5752		JMP I MOVE

003767  7774
003770  0777
003771  1133
003772  0012
003773  7766
003774  1515
003775  0005
003776  7773
003777  7754
	4000		PAGE
	0000		FIELD 0
	0400		*SPASS3
			$

/OS/8 FORTRAN  (PASS THREE)		  PAL8-V50Y 18-JUL-20 PAGE 24

AA     3613      INDEVH 6400      OT     3362      X304   2200
AS     3134      INEOF  1707      OUBUF  5400      X305   2201
BD     2646      INERR  1634      OUDEVH 7000      X7605  2202
BS     3244      INFPTR 1706      OUDUMP 2000      YEAR   0723
CHAR   0021      INGBUF 1611      OUJMP  2075      YRTEMP 0537
CHAR1  2067      INHNDL 1723      OUJUMP 2035      
CHAR2  2064      INJMP  1640      OUPOLD 2073      
CL     3004      INJMPP 1603      OUPTR  2074      
CO     2417      INNEWF 1710      OUTEMP 2072      
CONVRT 1502      INPTR  1746      OUWDCT 2076      
CONVYR 0471      INREC  1622      OVER19 3717      
CRLF   1514      INTMP  1705      O1     3721      
DA     3142      IT     2451      PAGEN  3676      
DAY    0720      KNT    3716      PAGENO 0736      
DAYS   1210      LI     3506      PAJE   0600      
DE     3226      LINECT 1513      PD     3406      
DEVH   0023      LINENO 0024      PH     3313      
DEV1CE 0173      LISTIT 1442      PMLOOP 2140      
DF     3666      LOP    3747      PRHDR  1523      
DH     3153      LOS    1005      PUTNUM 3677      
DL     3560      LSTFIL 0534      QL     2512      
DO     2567      LT     3257      QS     2474      
DP     3535      MK     3346      RALFNM 2157      
ED     2701      ML     3204      RD     2740      
ENDLIN 0674      MM     3066      RDACHO 0747      
ENDX   1400      MO     3021      RDECHO 1747      
ERRCHK 2101      MONTH  0721      RDECLP 1751      
ERRLST 2216      MONTHS 1247      RDLOOP 0610      
ERRPTR 2100      MOVE   3752      RDLUPE 0604      
EX     2463      MREAD  7757      RT     2721      
FILBLK 0007      MT     3430      RW     2401      
FILDEV 0006      M70    1420      SBLOCK 7776      
FILLST 0535      NCHARS 0020      SECDIG 0477      
FILSIZ 1413      NCNT   1461      SEVCHR 0025      
FIND   2126      NOISN  0646      SF     3652      
GETNEW 1607      NOSTOP 2034      SIMPLE 0513      
GT     2367      NOTAB  0624      SN     2607      
GV     3447      NOTTAB 0670      SPASS3 0400      
HEADER 0700      NUM    3706      SS     3102      
HIP    3743      NUMS   1012      ST     2762      
HIS    1144      OB     0434      SW36   0716      
HO     3041      OBLOCK 2011      SYSERR 2346      
ICHAR  1600      OCHAR  2022      TABCNT 0677      
ICHAR1 1662      OFFSET 0541      TD     2626      
ICHAR2 1656      OFOO3  2203      TEMP   0022      
ICHAR3 1643      OFSIZE 0536      TEMP1  0540      
IE     3266      OH     0426      TENS   3714      
IF     2536      OHDR   1531      TTY    2210      
II     2356      OLOOP  1466      VERSON 0005      
INBREC 1624      ONES   3715      WHAT   0630      
INBUF  6000      ONUMBR 1462      XSWS   1450      
INBUFP 1621      OP     3123      X10    0010      
INCALL 1620      OS     0435      X11    0011      
INCHCT 1710      OSIZE  2077      X12    0012      
INCTR  1745      OS8SWS 7643      X232   1460      



ERRORS DETECTED: 0
LINKS GENERATED: 0