ASMB,L,R,C HED FLOAD 91740-16135 REV 1740 * (C) HEWLETT-PACKARD CO. 1977 NAM FLOAD,7 91740-16035 REV 1740 770602 SPC 1 ****************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1977. 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. * ****************************************************************** SPC 2 SPC 1 ********************************************** * *FLOAD SUBROUTINE TO DO FORCED DOWN LOAD OF * ABSOLUTE PROGRAM TO RTE-M SYSTEM. * *SOURCE PART #: 91740-18035 REV 1740 * *REL PART # 91740-16035 REV 1740 * *WRITTEN BY: LARRY POMATTO * *DATE WRITTEN: 8-23-74 * *MODIFIED BY: JEAN-PIERRE D. BAUDOUIN * DAN GIBBONS * *DATE MODIFIED: JULY 1976 * FEBRUARY 1977 * *********************************************** SPC 1 SUP * EXT D65MS,.ENTR,D65AB SPC 1 ENT FLOAD SPC 1 A EQU 0 B EQU 1 SPC 1 * * CALLING SEQUENCE * JSB FLOAD * DEF *+6 TO *+10 * DEF PROGRAM FILE NAME * DEF CRN * DEF FILE NODE # (=>0) * DEF DESTINATION NODE * DEF ERROR CODE * DEF FILE SECURITY CODE (OPTIONAL) * DEF PARTITION # (OPTIONAL) * DEF PARTITION SIZE IN PAGES (OPTIONAL) * DEF 3 WORD ERROR MESSAGE BUFR (OPTIONAL) SKP FNAM NOP CRN NOP FNOD NOP FLU NOP FERCD NOP ISECU NOP PNUM NOP PSIZE NOP FERMG NOP SPC 2 ENTRY POINT FLOAD NOP JSB .ENTR PRMSA DEF FNAM * LDA FERCD ERROR RETURN SPECIFIED? SZA,RSS JMP EXIT NO, GET OUT QUICK * LDA FLU,I GET DESTINATION STA RQBUF+3 * * LDA D3 SET STREAM TYPE STA RQBUF LDA D9 SET ICODE FOR STA RQBUF+4 SCHED-WITH-WAIT. * LDA APNAM MOVE "APLDR" NAME LDB PNAMA MVW D3 * LDA FNAM MOVE THE FILE NAME LDB NAMA MVW D3 * LDA CRN,I STA RQBUF+14 * LDA FNOD,I STA RQBUF+15 * CLA (IN CASE ISECU MISSING) LDB ISECU,I SET ISECU OR 0 STB RQBUF+13 INTO REQST BUFR. * * FORMAT 1ST APLDR SCHED PARAM * LDB PNUM,I SET FUNCTION CODE TO 1 IF BOTH CLE,SZB,RSS PNUM & PSIZE ARE MISSING OR 0, LDB PSIZE,I ELSE 2. INCLUDE REMOTE BIT & LDA REM1 SET INTO REQST BUFR. SZB CCE,INA STA RQBUF+8 * * FORMAT 2ND APLDR SCHED PARAM * CLA,SEZ,RSS WERE PNUM & PSIZE MISSING? JMP SETP2 YES, SET SCHED PARAM TO ZERO LDA PSIZE,I NO, SET PNUM INTO BITS 0-5, ALF,ALF PSIZE INTO BITS 10-14. ALS,ALS IOR PNUM,I SETP2 STA RQBUF+9 * JSB D65MS CALL MSTER TO SEND REQ DEF *+8 DEF CNWD DEF RQBUF DEF D16 LENGTH OF RQBUF DEF * DUMMY DATA BUFR ADR DEF D0 NO DATA ASSOCIATED WITH REQST DEF D0 OR REPLY. DEF D16 MAX REQST-REPLY LENGTH JMP LNERR LINE ERROR SPC 2 LDA RQBUF+7 GET APLDR ERROR CODE STA FERCD,I PASS IT TO USER LDA FERMG SEE IF WE MOVE OPTIONAL NAME SZA,RSS JMP EXIT NO LDA ERRA LDB FERMG PASS THE ERROR MESSAGE BACK TO THE USER MVW D3 JMP EXIT RETURN SPC 3 LNERR DST ERMS SAVE ERROR MESSAGE FROM A & B REG. CPA ASDS IS IT A "DSXX"ERROR ? JMP DSER YES JSB CLR NO, SYSTEM ERROR. CLEAR PARAM AREA LDB MSER FOR NEXT TIME & ABORT USER. LDA ERADD GET MESSAGE @ AND ERROR @ JSB D65AB WE DO NOT RETURN FROM THIS JSB * * WE WILL DECODE THE XX PART OF THE ERROR MESSAGE * AND MAP IT AS A NEGATIVE ERROR CODE FOR THE USER * & PASS THE ASCII ERROR MESSAGE TO USER IF WANTED. * DSER LDA ERMS+1 GET THE XX PART AND B17 GET VALUE OF THE LS DIGIT STA LCHAR SAVE LDA ERMS+1 GET VALUE AGAIN ALF,ALF SWAP CHARACTERS AND B17 GET UPPER CHARACTER'S VALUE MPY D10 WEIGHT IT ADA LCHAR WE NOW HAVE THE ERROR # CMA,INA MAKE IT <0 ADA DM50 MAP IT STA FERCD,I PASS IT TO THE USER * LDA FERMG IF THE USER WANTS IT WE WILL PASS HIM SZA,RSS THE ERROR MESSAGE JMP EXIT HE DOES NOT WANT IT, RETURN DLD ERMS GET THE MESSAGE DST FERMG,I PASS IT ISZ FERMG ISZ FERMG STEP TO LAST WORD LDA BLNK GET AN ASCII DOUBLE BLANK STA FERMG,I PASS IT * EXIT JSB CLR CLEAR PARAM AREA FOR NEXT TIME JMP FLOAD,I RETURN TO USER CLR NOP SUBR TO CLEAR PARAM AREA LDA DM9 CLEAR THE PARAMETER STA CNTR AREA BEFORE RETURNING. CLA LDB PRMSA CLR1 STA B,I INB ISZ CNTR JMP CLR1 JMP CLR,I RETURN SPC 3 D9 DEC 9 D11 DEC 11 D10 DEC 10 D16 DEC 16 D0 DEC 0 D3 DEC 3 DM9 DEC -9 DM50 DEC -50 B17 OCT 17 REM1 OCT 100001 REMOTE BIT / FUNC = 1 LCHAR NOP MSER DEF ERMS ERMS BSS 2 PNAMA DEF RQBUF+5 NAMA DEF RQBUF+10 ERRA DEF RQBUF+8 APNAM DEF *+1 ASC 3,APLDR BLNK ASC 1, ASDS ASC 1,DS ERADD NOP CNWD OCT 140000 D65MS CONWD (NO ABORT, LONG TIMEOUT) CNTR EQU ERMS USE AS COUNTER BEFORE EXIT SPC 1 RQBUF BSS 16 REQUEST-REPLY BUFR END