FORTRAN IV V02.04 Mon 20-Nov-78 16:25:30 PAGE 001 0001 PROGRAM HELLO C C HELLO, a program to set the RT11 system time and date C from the DIGITAL PATHWAYS TCU-50, TCU-50D, or C TCU-100 battery powered clock. This program C works ONLY under SJ monitor versions 2C, C 3, and 3B. C C Written by C Charles J. Morningstar C James R. Cutler C C SPACE PHYSICS RESEARCH LABORATORY C DEPARTMENT OF ATMOSPHERIC AND OCEANIC SCIENCE C UNIVERSITY OF MICHIGAN C ANN ARBOR, MICHIGAN 48109 C C In support of C NASA Contract NAS5-2805 C C C DEFINE THE TCU BASE ADDRESS HERE FOR YOUR INSTALLATION! C 0002 INTEGER*2 TCUBAS 0003 TCUBAS="170770 C C DEFINE THE YEAR SINCE TCU'S DON'T KNOW ABOUT THEM! C See also line 100 C 0004 INTEGER*2 YEAR 0005 YEAR=1978 C 0006 LOGICAL*1 IALPHA (4) 0007 DATA IALPHA/"33,"107,0,0/ 0008 INTEGER*4 TIME,DATE(12),NO 0009 INTEGER*2 IME(2) 0010 INTEGER*2 MONDAY,DAY,MON,HOR,MIN,HOUR,HORMIN,SEC,MONBAS,DATEWD 0011 LOGICAL*1 MOND(2),HORM(2) 0012 EQUIVALENCE (IME(1),TIME) 0013 EQUIVALENCE(MONDAY,MOND(1)) 0014 EQUIVALENCE(HORMIN,HORM(1)) C C Find the monitor C 0015 MONBAS=IPEEK("54) C C Get the month and day C 0016 MONDAY=IPEEK(TCUBAS) C C Make it into date word for system C 0017 DAY=MOND(1) 0018 MON=MOND(2) FORTRAN IV V02.04 Mon 20-Nov-78 16:25:30 PAGE 002 0019 MON=MON*"2000 0020 DAY=DAY*"40 0021 DATEWD=YEAR-1972 0022 DATEWD=DATEWD+MON+DAY C C This step is very dangerous! C 0023 CALL IPOKE(MONBAS+"262,DATEWD) C C Get the hour and minute C and then the seconds from the TCU C 0024 HORMIN=IPEEK(TCUBAS+2) 0025 SEC=IPEEK(TCUBAS+4) C C Sort out the components for JTIME call C 0026 MIN=HORM(1) 0027 HOUR=HORM(2) C 0028 CALL JTIME(HOUR,MIN,SEC,30,TIME) C C This is also very dangerous!!! C 0029 CALL IPOKE(MONBAS+"320,IME(1)) 0030 CALL IPOKE(MONBAS+"322,IME(2)) C C The system date and time are now set from the TCU. C Say hello to the user C 0031 WRITE(5,100)HOUR,MIN,SEC,MOND(1),DATE(MOND(2)) C C 0032 100 FORMAT(/,' Hello, it is ',I2,':',I2,':',I2,' on ',I2,' 1-',A4,'78.',/,/) C 0033 DATA DATE/'Jan-','Feb-','Mar-','Apr-','May-','Jun-',' 1Jul-','Aug-','Sep-','Oct-','Nov-','Dec-'/ C 0034 CALL EXIT C 0035 END FORTRAN IV Storage Map for Program Unit HELLO Local Variables, .PSECT $DATA, Size = 000136 ( 47. words) Name Type Offset Name Type Offset Name Type Offset DATEWD I*2 000122 DAY I*2 000104 HOR I*2 000110 HORMIN I*2 000072 Eqv HOUR I*2 000114 MIN I*2 000112 MON I*2 000106 MONBAS I*2 000120 MONDAY I*2 000070 Eqv NO I*4 000100 SEC I*2 000116 TCUBAS I*2 000074 TIME I*4 000064 Eqv YEAR I*2 000076 Local and COMMON Arrays: Name Type Section Offset ------Size----- Dimensions DATE I*4 $DATA 000004 000060 ( 24.) (12) HORM L*1 $DATA 000072 000002 ( 1.) (2) IALPHA L*1 $DATA 000000 000004 ( 2.) (4) IME I*2 $DATA 000064 000004 ( 2.) (2) MOND L*1 $DATA 000070 000002 ( 1.) (2) Subroutines, Functions, Statement and Processor-Defined Functions: Name Type Name Type Name Type Name Type Name Type EXIT R*4 IPEEK I*2 IPOKE I*2 JTIME I*2