ASMB HED . *** T M S T I M E R *** NAM $TTMS,7 92903-16100 REV.1913 781215 SPC 3 ********************************************************************** * * * NAME: $TTMS TMS TIMER * * SOURCE: &$TTMS 92903-18108 * * BINARY: %$TTMS ----NONE--- PART OF %TMSLB 92903-16100 * * * * PGMR: FRANCOIS GAULLIER * * * ********************************************************************** SPC 2 * ************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1978. ALL RIGHTS * * * RESERVED. NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, RE- * * * PRODUCED, OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITH- * * * OUT THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY. * * ************************************************************** SPC 3 EXT RMPAR,EXEC,PNAME ENT $TTMS SUP A EQU 0 B EQU 1 SPC 3 * THIS PROGRAM IS A PART OF THE TERMINAL MONITOR SOFTWARE (TMS), * IT IS USED BY TMS TO PROVIDE A TIMER. WHEN TMSYS NEEDS A TIME * INTERVAL, IT PUT THAT PROGRAM IN THE TIME LIST FOR THE PERIOD OF * TIME, AND WHEN 'TTMS' IS SCHEDULE FROM THE TIME LIST, IT RETURN * A MAIL BOX TO 'TMSYS' TO SIGNAL THAT THE TIME IS PASSED. SPC 4 LU NOP ECLAS OCT 0 EXTERNAL CLASS I O WORD ABTCD DEC 17 ABORT CODE TIMCD DEC 19 TMS TIMER CODE MES ASC 13, /XXXXX: ILLEGAL SCHEDULE ASC 5,REQUEST ! .MES1 DEF MES+1 IP BSS 5 IB BSS 8 IBLEN DEC -16 * SCODE EQU IB STKPT EQU IB+7 SPC 2 $TTMS JSB RMPAR RETREIVE PRG PARAMETERS DEF *+2 DEF IP * LDA IP INIT LU WITH PARAM 1 STA LU * CMA,INA IF(LU<3 OR LU>63) LU=1 ADA D3 CMA LDB LU CMB,INB ADB D63 IOR B LDB D1 GET DEFAULT LU SSA OK ? STB LU NO, SET DEFAULT LU SPC 1 JSB EXEC GET STRING REQUEST DEF *+5 DEF D14 STRING RQ DEF D1 GET DEF IB BUFFER DEF IBLEN BUFFER LENGTH SZA GET OK ? JMP TTM70 NO, CHECK IF FROM TIME LIST LDA SCODE YES, CHECK REQUEST CODE SZA,RSS INITIALIZATION ? JMP TTM50 YES, GO INIT CPA ABTCD IS IT ABORT ? JMP TTM60 YES, TERMINATE PROGRAM JMP TTM90 IF NOT REPORT ERROR SKP * TMSYS INITIALISE THIS PROGRAM: * SAVE LOCALLY THE CLASS I/O WORD, AND * TERMINATE WITH 'SAVE SUSP. POINT' OPTION. * TTM50 LDA STKPT RECALL STKPT CPA =B100001 IS IT OK ? RSS YES CONTINUE JMP TTM90 NO, REPORT ERROR LDA ECLAS VERIFY THAT THE CLASS IS NOT SZA ALREADY DEFINED JMP TTM80 THE CLASS WAS DEFINED ! ERROR LDA IP+1 RECALL 2ND PARAM STA ECLAS TO INIT THE CLASS I/O WORD JMP TTM95 AND TERMINATE 'SAVE SUS. PT' IF OK SPC 2 * TMSYS STOP THE APPLICATION: * TERMINATE THIS PROGRAM WITHOUT ANY OPTION. * TTM60 LDA IP+1 TMSYS REQUEST TO STOP APPL., CHECK CPA ECLAS IF CLASS STILL OK ? JMP TTM99 YES, TERMINATE WITH NO OPTION JMP TTM90 NO,REPORT ERROR SPC 3 * SHEDULE WITHOUT STRING PASSING: * MUST BE FROM THE TIME LIST ! * TTM70 LDA ECLAS CHECK THE CLASS WORD SZA,RSS CLASS WORD DEFINED ? JMP TTM99 NO, TERMINATE THE PROGRAM FOR EVER LDA IP+1 YES, CHECK IF FROM CPA DM2 TIME LIST ? RSS YES, CONTINUE JMP TTM90 NO, REPORT ERROR SPC 1 JSB EXEC SEND INFO TO TMSYS DEF *+8 DEF NAB20 WRITE/READ NO ABORT DEF D0 DEF IP DEF D1 BUFFER LEN DEF D0 DEF TIMCD DEF ECLAS CLASS WORD JMP TTM80 ERROR RETURN !! SPC 1 TTM75 JSB EXEC TERMINATE PROGRAM DEF *+6 WITH 'SAVE SUSPENSION POINT' OPTION DEF D6 DEF D0 DEF D1 DEF D0 DEF DM2 SPC 1 ********************************************************************* SPC 1 JMP $TTMS RESTART FORM BEGINING HED ERROR PROCESSING TTM80 CLA RESET THE CLASS I/O WORD STA ECLAS * TTM90 LDA .MES1 REPORT ERROR STA T.001 JSB PNAME DEF *+2 T.001 DEF T.001,I LDA MES+3 MERGE THE ":" IOR A: STA MES+3 JSB EXEC PRINT ERROR MESSAGE DEF *+5 DEF D2 DEF LU DEF MES DEF D18 * TTM95 LDA ECLAS TERMINATE PROGRAM WITH CURRENT OPTION SZA CALL I/O WORD DEFINED ? JMP TTM75 YES, TERMINATE 'SAVE SUSP. PT.' SPC 1 TTM99 CLA RESET THE CLASS I/O WORD STA ECLAS IN CASE OF PROGRAM BEING CORE RESIDENT JSB EXEC DEF *+2 DEF D6 SPC 2 A: OCT 72 ":" NAB20 OCT 100024 * DM2 DEC -2 D0 DEC 0 D1 DEC 1 D2 DEC 2 D3 DEC 3 D6 DEC 6 D14 DEC 14 D18 DEC 18 D63 DEC 63 END