C***************************************************************************** C C Timer Support Function Test Controller C C----------------------------------------------------------------------------- C C Program : Test Timer Support/ TTimer.For C Author : John Malcolmson C Date : June 1986 C Language : Fortran 77 C Notes : The program is chained to by the Libtst program. C C***************************************************************************** Program TTimer C--------------------------------- IMPORT -----------------------------------) C C FROM TIMER IMPORT AS Integer*4 TstCvttim, TstGtim, TstIcmkt, TstIsched Integer*4 TstIsdttm, TstIsleep, TstItimer, TstItwait Integer*4 TstIuntil, TstJtime, TstMrkt, TstSecnds Integer*4 TstTimasc, TsTime, TstJjcvt C END IMPORT C C----------------------------------------------------------------------------) Character*80 st Character*80 st2 Integer*4 AStat(15) Character*6 Alabl(15) Integer*2 res Integer*2 Config, BFbit, Sysgen, MTbit DATA Config /"300/ DATA Sysgen /"372/ DATA BFbit /"1/ DATA MTbit /"2000/ ! Bit 10 of Offset 372 Include 'SRC:Tbegin.for' IF (page) Call SetPage( 'Timer Support Functions\', Pnum ) J = ISPY(Config) JJ = ISPY(Sysgen) IF (( J .AND. BFbit) .EQ. 0 ) THEN c SJ Monitor. Check if Timer Support is available IF (( JJ .AND. MTbit) .EQ. 0 ) THEN c No SJ Timer Support Call CenterString( '-===============================-\') Call WriteLn Call CenterString( '?TIMER-I-CANNOT Perform The Tests in 1 The Timer Test Class!\') Call WriteLn Call WriteLn Call CenterString( 'The SJ Monitor Must Have Timer Support 1 To Run This Test Class!! \') Call WriteLn Call CenterString( '-===============================-\') Call WriteLn Goto 999 END IF END IF res = Ispy( '300'O ) IF (res .eq. (res/2)*2) THEN res = Ispy( '372'O ) / 2**10 IF (res .eq. (res/2)*2) THEN st = '-- Timer Support Is Not Turned On! --\' Call CenterString(st) Call WriteLn c st2 = '-- SJ DOES NOT HAVE TIMER SUPPORT!! --\' c Call CenterString(st2) c Call WriteLn Rprt = 0 Goto 999 END IF END IF Call Iqset( 5 ) Astat(01) = TstCvttim() ALabl(01) = 'CVTTIM' Astat(02) = TstGtim() Alabl(02) = 'Gtim' Astat(03) = TstIcmkt() Alabl(03) = 'ICMKT' Astat(04) = TstIsched() Alabl(04) = 'ISCHED' Astat(05) = TstIsdttm() Alabl(05) = 'ISDTTM' Astat(06) = TstIsleep() Alabl(06) = 'ISLEEP' Astat(07) = TstItimer() Alabl(07) = 'ITIMER' Astat(08) = TstItwait() Alabl(08) = 'ITWAIT' Astat(09) = TstIuntil() ALabl(09) = 'IUNTIL' Astat(10) = TstJtime() ALabl(10) = 'JTIME' Astat(11) = TstMrkt() ALabl(11) = 'MRKT' Astat(12) = TstSecnds() ALabl(12) = 'SECNDS' Astat(13) = TstTimasc() ALabl(13) = 'TIMASC' Astat(14) = Tstime() ALabl(14) = 'TIME' Astat(15) = Tstjjcvt() ALabl(15) = 'JJCVT' 200 st = '===== Timer Support Function Error Report Summary =====\' Call CenterString( st ) Call WriteLn Rprt = Report( Astat, Alabl, 15 ) st = '===== End of Timer Support Function Report =====\' Call CenterString( st ) Call WriteLn 999 Call WriteLn Include 'SRC:Tend.for'