File KUNOT.FT (FORTRAN source file)

Directory of image this file is from
This file as a plain text file

	COMMON IFORM,IHALB,ISTA,ISTB,ISTD,ISTE,ISTF,ISTG,ISTL,ISTM
	COMMON LANF,IANF,IZFE,IZFA,N,I,I2
	DIMENSION NOTE(25,50),L(149),KARTE(16),IFACH(13),DATEI(3)
	DIMENSION N(67)
	ISPA=7+2*(IFORM+911)
	ISPB=(IHALB+928)/64
	ISPAL=ISPA+ISPB
	CALL RTAPE(1,ISTL,149,L)
	LANF=L(149)
	DATEI(1)='HILFE1'
	DATEI(2)='HILFE2'
	DATEI(3)='HILFE3'
	IZAEHL=1
280	IF(L(149)-99) 10,10,20
10	IEND=50
	GOTO 30
20	IEND=149-L(149)
	IF(IEND) 150,150,30
30	DO 40 K=1,IEND
40	NOTE(1,K)=L(L(149)+K-1)
	IEND1=IEND +1
	DO 50 K=IEND1,50
50	NOTE(1,K)=0
	L(149)=L(149)+50
	CALL IOPEN('RKA1','FACH')
	DO 60 K=1,IEND
70	READ(4,100)(IFACH(M),M=1,11)
100	FORMAT(I3,10I3)
	IF(NOTE(1,K)-IFACH(1)) 70,80,70
80	DO 900 M=2,11
	IF(IFACH(M)/10-51) 90,95,90
95	IFACH(M)=IFACH(M)+20
90	NOTE(M,K)=IFACH(M)
900	CONTINUE
	NOTE(12,K)=100
	NOTE(13,K)=100
	DO 5 K0=14,25
5	NOTE(K0,K)=-1
60	CONTINUE
	CALL IOPEN('RKA1','NOTEN')
120	READ(4,110)(KARTE(M),M=1,16)
110	FORMAT(I3,3(I1,I2),5I2,I1,2I2,I1)
	IF(KARTE(1)) 130,130,140
140	DO 160 K=1,50
	IF(NOTE(1,K)-KARTE(1)) 160,170,160
170	NR=K
	GOTO 180
160	CONTINUE
	GOTO 120
180	KAFANR=10*KARTE(5)+KARTE(6)
	DO 190 K2=2,11
	IF(NOTE(K2,NR)-KAFANR) 1900,200,1900
1900	IF(NOTE(K2,NR)/10-KARTE(5)) 190,1905,190
1905	KF1=K2+1
	DO 1910 K3=KF1,11
	IF(NOTE(K3,NR)-KAFANR) 1930,1920,1930
1920	K0=K3
	GOTO 220
1930	IF(NOTE(K3,NR)/10-KARTE(5)) 1910,1940,1910
1940	KF2=K3
	KF1=KF1-1
	GOTO 1950
1910	CONTINUE
	KUFEHL=NOTE(KF1-1,NR)-10*KARTE(5)
	WRITE(1,1960)KARTE(1),N(KARTE(5)),KARTE(6),KUFEHL
1960	FORMAT('SCHUELER NR. ',I3,' HAT IN ',A2,' NICHT '
	1'KURS ',I1,' SONDERN ',I1,' GEWAEHLT.')
	K0=KF1-1
	GOTO 220
1950	IF(NOTE(KF1+12,NR)) 1970,1980,1980
1970	KUFEHL=NOTE(KF1,NR)-10*KARTE(5)
	WRITE(1,1960)KARTE(1),N(KARTE(5)),KARTE(6),KUFEHL
	K0=KF1
	GOTO 220
1980	IF(NOTE(KF2+12,NR)) 1990,2000,2000
1990	KUFEHL=NOTE(KF2,NR)-10*KARTE(5)
	WRITE(1,1960)KARTE(1),N(KARTE(5)),KARTE(6),KUFEHL
	K0=KF2
	GOTO 220
2000	WRITE(1,2001)(KARTE(L0),L0=1,16)
2001	FORMAT('KEINE ZUORDNUNG MOEGLICH FUER:'/16I3)
	GOTO 120
200	K0=K2
	GOTO 220
190	CONTINUE
	WRITE(1,210)KARTE(1),N(KARTE(5))
210	FORMAT(/'SCHUELER NR. ',I3,' HAT KEIN ',A2,' GEWAEHLT.')
	GOTO 120
220	IF(NOTE(K0+12,NR)) 224,222,222
222	NOTHIL=NOTE(K0+12,NR)
	GOTO 225
224	NOTHIL=-1
225	NT=(NOTHIL+30)/15
	IF(KARTE(3)/10-912-IFORM) 230,240,230
230	NOTE(K0+12,NR)=KARTE(ISPAL)
	GOTO (120,1200,1200),NT
240	IF(KARTE(14+ISPB)) 250,230,250
250	NOTE(K0+12,NR)=KARTE(14+ISPB)
	GOTO (120,1200,1200),NT
1200	WRITE(1,1201)KARTE(1),N(KARTE(5))
1201	FORMAT('DOPPELTE KARTE; BESSERE NOTE EINGETRAGEN BEI ',I3,
	12X,A2)
	IF(NOTHIL-NOTE(K0+12,NR)) 1210,120,120
1210	NOTE(K0+12,NR)=NOTHIL
	GOTO 120
130	CALL OOPEN('RKA1',DATEI(IZAEHL))
	DO 260 K=1,50
260	WRITE(4,270)(NOTE(K2,K),K2=1,25)
270	FORMAT(13I3,12I2)
	CALL OCLOSE
	IZAEHL=IZAEHL+1
	GOTO 280
150	IZAEHL=IZAEHL-1
	READ(1,300)FNAME
300	FORMAT('NAME FUER GESAMTDATEI:'A6)
	CALL OOPEN('RKB1',FNAME)
	DO 290 ID=1,IZAEHL
	CALL IOPEN('RKA1',DATEI(ID))
	DO 310 K=1,50
	READ(4,270)(NOTE(K2,K),K2=1,25)
310	WRITE(4,270)(NOTE(K2,K),K2=1,25)
290	CONTINUE
	CALL OCLOSE
	END



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search