File TIPSCH.FT (FORTRAN source file)

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

C PROGRAMM TIPSCH VON RMP
C TIP-RELAIS (BISTABIL) : ZAEHLUNG VON SCHAUERENTLADUNGEN
C BEFEHLE PDP/8-->RMP :
C   REGISTER/BIT 1/11 : 5326 B  START/STOP    (0 START,1 STOP)
C		 1/10 :    "	SLOPE A       (1 +,0 -)
C		 1/9  :	   "	MULTIPLIER 1  (0)
C		 1/8  :	   "	RESET         (0)
C		 1/7  :    "    REMOTE MODE   (0)
C		 4/11 : TIP-RELAIS 	      (1 ANZUG,0 ABWURF)
C		 4/10 : LED 		      (1 EIN,0 AUS)
C DATEN RMP-->PDP/8 :
C   BYTE/BIT     0/11...0/8 : 5326 B  COL1
C		 0/7....0/4 :	"     COL2
C		 1/11...1/8 :   "     COL3
C		 1/7....1/4 :   "     COL4
C		 4/11       : SCHALTER EIN-AUS
C		 4/10       : TASTE RELAIS-WECHSEL
C ANFANGSSTELLUNG    DUAL		DEZIMAL
C	REGISTER 1 : 000 011 100 011    227
C		 2 : 000 000 000 000    000
C		 3 : 000 000 000 000    000
C		 4 : 000 000 000 000    000
C		 5 : 000 000 000 000    000
C		 6 : 000 000 000 100    004
C FORTRAN II / OPTION (IOH)
C SR : AUS.FT / INIT.FT / EIN.FT / TCD4.FT / IBIT.SB
C      RMPBIT.FT / BELL.FT
C DA : TEM.DA
	WRITE(1,100)
100	FORMAT('TIP-KONTAKT : SCHAUERENTLADUNGEN ZAEHLEN')
1	WRITE(1,101)
101	FORMAT(40('-'))
2	READ(1,102)IR,IW
102	FORMAT('   WIEVIEL RELAIS ? : 'I3/'WIEVIEL
	1 MESSUNGEN ? : 'I4)
	READ(1,103)AG,AF
103	FORMAT('         AUSGABE-GERAET UND DATEI : 'A2'/'A6)
	READ(1,104)LIST
104	FORMAT('MESSWERTE DRUCKEN ? (JA=1,NEIN=0) : 'I1)
C REGISTER IN ANFANGSSTELLUNG SETZEN
3	IA1=227
	IA2=000
	IA3=000
	IA4=000
	IA5=000
	IA6=004
	I1=IA1
	I2=IA2
	I3=IA3
	I4=IA4
	I5=IA5
	I6=IA6
	CALL INIT(IA1,IA2,IA3,IA4,IA5,IA6)
C EIN-AUS-SCHALTER EIN ?
4	ID=RMPBIT(4,11,I6)
	CALL BELL
	N1=50
S	JMS SG
	IF(ID)4,4,5
C NACH CA .5 S TEST WIEDERHOLEN

5 CONTINUE N1=100 S JMS SG CALL INIT(IA1,IA2,IA3,IA4,IA5,IA6) ID=RMPBIT(4,11,I6) IF(ID)5,5,7 C ANZEIGE : BEREIT FUER MESSUNG 7 CALL SETB(I4,10) CALL AUS(1,4,I4) C TASTE RELAIS-WECHSEL EIN ? 8 ID=RMPBIT(4,10,I6) IF(ID)9,9,10 C SIGNAL GEBEN 9 N1=200 CALL BELL S JMS SG GOTO 8 C MESSUNG LAEUFT 10 CALL OOPEN('P1','TEM') WRITE(4,105)IR,IW 105 FORMAT(A2) DO 50 M=1,IR IF(LIST)21,21,20 20 WRITE(1,106)M,LEER, 106 FORMAT(' TIP #'I3' : 'I0) IMM=3 21 DO 40 N=1,IW C TIPRELAIS ANZUG-IMPULS CALL SETB(I4,11) CALL AUS(1,4,I4) S JMS MS4 C ZAEHLER START CALL SETB(I1,8) CALL ZBIT(I1,11) CALL AUS(1,1,I1) C TIPRELAIS ABWURF-IMPULS CALL ZBIT(I4,11) CALL AUS(1,4,I4) S JMS MS4 C ZAEHLER STOP CALL SETB(I1,11) CALL AUS(1,1,I1) C MESSWERT UEBERNEHMEN CALL TCD4(I6,IZ) C ZAEHLER RESET CALL ZBIT(I1,8) CALL AUS(1,1,I1) C MESSWERT AUSWERTEN WRITE(4,105)IZ IF(LIST)30,30,22 22 WRITE(1,107)IZ, 107 FORMAT(I4) IMM=IMM+1 IF(IMM-17)30,23,23 23 IMM=0 WRITE(1,199)LEER C MESSUNG ABBRECHEN ? 30 ID=RMPBIT(4,11,I6) IF(ID)51,51,40 40 CONTINUE
C RELAIS-WECHSEL ! IF(IR-M)45,48,45 45 N1=200 47 CALL BELL S JMS SG ID=RMPBIT(4,10,I6) IF(ID)47,47,48 48 IF(IMM)50,50,49 49 FINI 50 CONTINUE 51 CALL OCLOSE CALL INIT(IA1,IA2,IA3,IA4,IA5,IA6) WRITE(1,199)LEER CALL IOPEN('P1','TEM') CALL OOPEN(AG,AF) READ(4,105)IR,IW WRITE(4,105)IR,IW DO 90 I=1,IR DO 90 J=1,IW READ(4,105)IZ Z=IZ 90 WRITE(4,108)Z 108 FORMAT(A6) CALL OCLOSE READ(1,198)ID 198 FORMAT(' WEITERE MESSUNG ? (JA=1,NEIN=0) : 'I1) IF(ID)99,99,98 98 WRITE(1,199)LEER 199 FORMAT(I0) GOTO 2 99 CALL EXIT SMS4, 0 / 4 MS ZEIT-SCHLEIFE S CLA S TAD (K6000 S DCA CT SDEL, ISZ CT S JMP DEL S JMP I MS4 SCT, 0 SSG, 0 / N1*4 [MS] ZEITSCHLEIFE DO 1000 I=1,N1 S JMS MS4 1000 CONTINUE S JMP I SG 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