ASMB,R * * NAME: ON.. * SOURCE: 92070-18103 * RELOC: 92070-1X103 * PGMR: C.H.W.,H.L.C. * * **************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1979. ALL RIGHTS * * * RESERVED. NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, * * * REPRODUCED OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITHOUT * * * THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY. * * **************************************************************** * * NAM ON..,7 92070-1X103 REV.1941 791004 * * * * ACTION SUBROUTINE TO EXECUTE THE "ON" OPERATOR COMMAND * * COMMAND SYNTAX: * ON,NAME(,PASSED PARAMETERS) * * ENT ON.. * EXT $LIBR,$LIBX,$CON,$WORK,$NAME EXT $TADD,$TMSC,$TIME,$ALCS,$RQP8,$RQP9 EXT $XQT,$SUSP,ECH,$TMP1,$SBLN EXT $LIST,$PVCN,$XEQ,C.BUF * * ON.. NOP RETRY LDA ON.. ADA .2 2ND PARAMETER IS THE PARSE BUFFER ADDR LDB 0,I GET IT INB POINT TO PARAMETERS STB TMPAD INA LDA 0,I STA ERRTN SAVE ADDR OF ERROR PARAM LDA ON..,I STA RTN SAVE RETURN ADDR * JSB $LIBR GO PRIVILEGED NOP JSB $NAME GET ID SEG ADDR TMPAD NOP SZB,RSS NAME FOUND? JMP ER14 NO, ERROR SZA DORMANT? JMP ER18 NO, ERROR ADB .10 ID SEG WORD 11 STB TEMP0 SAVE ADDR OF B REG SAVE ADB .7 ID SEG WORD 18 STB TEMP1 ADB .11 ID SEG WORD 29 STB TEMP2 LDA TEMP1,I AND B160K ISOLATE RESOLUTION CODE SZA,RSS SPECIFIED? JMP ER36 NO, ERROR ADB N27 POINT TO ID SEG WORD 2 STB PRMPT STB TEMP3 LDA DC.BF STA $RQP8 STRING ADDR LDA ECH RAL STRING BYTE LEN STA $RQP9 LDB $WORK JSB $ALCS SZB JMP SUSP NOT ENOUGH SAM LDB PRMPT STB TEMP0,I B POINTS TO PRAMS LDB TMPAD LDA N5 SET TO MOVE STA TEMP0 5 PARAMETERS NPRM ADB .4 LDA 1,I GET PARSED PARAMETER STA PRMPT,I MOVE INTO ID SEG ISZ PRMPT ISZ TEMP0 MORE? JMP NPRM YES * LDA $CON,I AND B77 LOG LU OF FMGR LDB TMPAD ADB .3 LDB 1,I ANY PRAMS? SZB,RSS STA TEMP3,I NO, GIVE HIM LOG LU LDB 0 LDA TEMP2,I AND HIGH8 IOR 1 STA TEMP2,I ISZ TEMP1 DLD * CHECK TIME FOR NEG ZERO TEMP1 EQU *-1 XOR RS1 CPB RS2 SZA JMP ZCHK NOW DLD $TIME TIME=0, USE CURRENT DST TEMP1,I LDB $WORK JSB $TADD ADD TO TIME LIST LDB $WORK JSB $TMSC TIME SCHEDULE NOW EXIT JSB $LIBX DEF RTN * ZCHK SZB,RSS JMP NOW POSITIVE ZERO LDB $WORK NON-ZERO START TIME JSB $TADD ADD TO TIME LIST JMP EXIT * * ER14 LDA .14 REQUIRED ID SEG NOT FOUND JMP EREX * ER18 LDA .18 PROGRAM NOT DORMANT JMP EREX * ER36 LDA .36 NO TIME PARAMETERS SPECIFIED * EREX STA ERRTN,I STORE ERROR CODE JMP EXIT * * SUSP LDA DRTRY STA $SUSP,I SUSPEND FOR RETRY LDA $SBLN STA $TMP1,I SAVE AMOUNT OF SAM NEEDED LDB $XQT JSB $LIST SUSPEND CALLER OCT 61 FOR MEMORY CLA STA $PVCN CLEAR PRIV COUNT JMP $XEQ * * .2 DEC 2 .3 DEC 3 .4 DEC 4 .7 DEC 7 .10 DEC 10 .11 DEC 11 .14 DEC 14 .18 DEC 18 .36 DEC 36 N5 DEC -5 N27 DEC -27 B77 OCT 77 HIGH8 OCT 177400 B160K OCT 160000 * RS1 OCT 25000 RS2 OCT 177574 * DRTRY DEF RETRY DC.BF DEF C.BUF * TEMP0 NOP TEMP2 NOP TEMP3 NOP ERRTN NOP PRMPT NOP RTN NOP * END