ASMB,R,L * NAME: $BMON * SOURCE: 92002-18008 * RELOC: 92002-12001 * PGMR: A.M.G. * * *************************************************************** * * (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. * * *************************************************************** * NAM $BMON,7 92002-12001 REV.2001 791022 ENT $BMON $BMON OCT 0 * * ******************************************************** * * NOTE: $BMON = 0 FOR RTEII,III, AND IV-A * * * = 1 FOR RTEIV-B * * * * * ******************************************************** * END ASMB,R,L,C HED FMGR - RTE FILE MANAGER MAIN * NAME: FMGR * SOURCE: 92002-18008 * RELOC: 92002-16008 * PGMR: G.A.A. * * *************************************************************** * * (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. * * *************************************************************** * NAM FMGR,3,90 92002-16008 REV.1901 760627 EXT CLOS.,EXEC,MSS. ENT IFLG.,CAD.,FM.AB,D.,CUSE.,PARS. ENT SEG.R,P.SEG,INI1.,INI2.,I.BUF,O.BUF ENT N.OPL,P.RAM,TTY.,NO.RD,NOCM.,ACTV. ENT J.REC,J.NAM,G0..,JRN.,.IDAD ENT TL.P,TM.VL,L.SEG,GT.JB,.R.E.,SCR. SUP SPC 3 O.BUF BSS 144 GENERAL OUTPUT DCB I.BUF BSS 144 GENERAL INPUT DCB ORG I.BUF PUT INITIALIZE CODE IN DCB FMGR LDA XEQT GET THE ADA .12 FIRST TWO LDA A,I CHARACTERS OF PGMS STA SEG NAME AND SET FOR SEGMENT CALLS. JMP ITCAL GO LOAD THE INITILIZE SEGMENT INI1. JSB MSS. INIT SEGMENT COMES HERE IF DEF *+2 SYSTEM INITILIZE IS NEEDED DEF IFLG. SEND FMGR 00X (5 OR 3) MESSAGE LDA AS1BL SET TO LOAD JMP PSEGC AND LOAD THE PARSE SEGMENT INI2. CPB ASIN SEGMENT RETURNS HERE AFTER JMP SEGLD READING AND PARSING-EXPECTED INPUT JUMP CPB AS?? WAS ?? INPUT? JMP CAL?? YES -GO SET UP AND CALL ?? ROUTINE JSB MSS. NO! ILLEGAL RESPONCE DEF *+2 SEND FMGR 004 DEF .4 JMP INI1. TRY AGAIN CAL?? LDA .4 ?? CALL FROM INIT-SET MS TO 4 STA MS TO FOURCE FMGR 004 MESSAGE JMP SEGLD GO TO GENERAL CALL ROUTINE SPC 1 INIT2 LDA MS HERE AFTER INIT CALL ON IN SZA SKIP IF OK JMP INI1. NO - TRY AGAIN SPC 1 ITCAL CLA SET UP TO CALL THE INITIALIZE STA CAD. ROUTINE LDA AS2BL FIRST ROUTINE IN SEGMENT TWO JMP PSEGC GO LOAD THE SEGMENT AND CALL IT SPC 1 GT.JB CLA STA CAD. LDA AS7BL JMP PSEGC SPC 1 AS?? ASC 1,?? ASIN ASC 1,IN AS2BL ASC 1,2 AS7BL ASC 1,7 .4 OCT 4 .12 DEC 12 TEST EQU I.BUF+128-* MAKE SURE ABOVE CODE IS IN O.BUF ORR FM.AB JSB CLOS. COMMAND LOOP - ENTRY DEF *+2 CLOSE DEF I.BUF INPUT FILE JSB CLOS. CLOSE DEF *+2 DEF O.BUF OUTPUT FILE INIT0 LDA AS1BL INITILIZE SEGMENT CALL ENTRY POINT CPA CUSE. IF PARSE SEGMENT STILL IN JMP P.SEG CORE THEN SKIP SEGMENT CALL PSEGC STA CUSE. ELSE SET UP SEGLD JSB EXEC AND L.SEG EQU SEGLD DEF *+3 LOAD DEF .8 PARSE DEF SEG SEGMENT P.SEG LDA J.REC IF NO MORE JOBS, SSA TERMINATE. JMP TERM P.SG1 CLA NORMAL PARSE SEGMENT RETURN POINT STA MS CLEAR THE ERROR FLAG JSB PARS.,I CALL TO READ & PARSE A COMMAND DEF *+1 SEZ,RSS E=I = SEGMENT ABSENT JMP CALLR E=0 = ROUTINE IN CORE JMP SEGLD SEGMENT ABSENT SO GO LOAD SEG.R ADA CAD. ALL SEGMENTS OTHER THAN PARSE LDA A,I STA CAD. RETURN HERE WITH A= DEF TABLE ADDRESS CALLR JSB CAD.,I CALL THE ROUTINE DEF *+4 PASSING DEF NOCM. THE NUMBER OF PARAMETRS DEF P.RAM THE TABLE ADDRESS DEF MS THE ERROR FLAG ADDRESS LDA MS IF THERE IS NO SZA,RSS ERROR THEN JMP IFTST JUMP JSB MSS. ELSE DEF *+2 PRINT DEF MS FMGR MS IFTST LDA IFLG. IF INITILIZE ROUTINE SZA IN CONTROL JMP INIT2 GO CONTINUE SYSTEM INITIALIZATION JMP FM.AB ELSE READ THE NEXT COMMAND TERM JSB EXEC TERMINATE DEF *+2 DEF .6 SPC 2 .6 DEC 6 MS NOP .IDAD NOP IFLG. NOP NO.RD NOP JRN. BSS 1 ACTV. DEC 0 J.REC DEC 0 J.NAM BSS 3 SCR. BSS 1 * * DO NOT REPOSITION THE FOLLOWING FOUR * ARRAYS! THE PARSE ROUTINE DEPENDS ON IT. * TTY. OCT 1 N.OPL BSS 10 P.RAM BSS 64 NOCM. NOP CAD. NOP PARS. NOP BSS 8 0S AND 1S G0.. BSS 40 0G THROUGH 9G DEC 3 10G BSS 5 1P THROUGH 5P .R.E. BSS 2 6P AND 7P .8 DEC 8 ENDMS ASC 3, $END SEG ASC 2,FMGR CUSE. ASC 1, AS1BL ASC 1,1 D. ASC 3,D.RTR TL.P OCT 0,0 TM.VL OCT 0,0 A EQU 0 B EQU 1 XEQT EQU 1717B SPC 3 ORG * LENGTH OF ROUTINE END FMGR ASMB,R,L HED FMGR0 * NAME: FMGR0 * SOURCE: 92002-18008 * RELOC: 92002-16008 * PGMR: G.A.A. * *************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1975. 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 FMGR0,5 92002-16008 740801 EXT SEG.R,CAD.,.IDAD SPC 1 FMGR0 STA .IDAD LDA TABL JMP SEG.R SPC 1 TABL DEF *+1 SPC 1 EXT PK.. DEF PK.. EXT CR.. DEF CR.. END FMGR0 ASMB,R,L,C HED FMGR1 * NAME: FMGR1 * SOURCE: 92002-18008 * RELOC: 92002-16008 * PGMR: G.A.A. * * *************************************************************** * * (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. * * *************************************************************** * NAM FMGR1,5 92002-16008 760929 EXT PARS.,.PARS,REA.C,IFLG.,INI2. EXT $BATM,C.BUF,ABT..,AB.. EXT NO.RD,.ENTR,P.SEG,SEG.R,TR..,.IDAD EXT TTY.,ECHF.,ACTV.,BRKF.,MSS.,IFBRK SUP FMGR1 STA .IDAD LDA PARSE SET THE PARSE ROUTINE ADDRESS STA PARS. IN THE MAINS ADDRESS WORD LDA IFLG. IF INITILIZE SZA,RSS SKIP JMP P.SEG ELSE RETURN TO THE MAIN JSB PAR INITILIZE SO CALL DEF *+1 TO READ AND PARSE THE STATEMENT JMP INI2. RETURN TO THE INITILIZE CODE SPC 2 PAR NOP READ AND PARSE ENTRY POINT JSB .ENTR DEF PAR FETCH RETURN ADDRESS PAR0 JSB IFBRK CHECK FOR BREAK PENDING DEF *+1 SZA,RSS IF NO BREAK JMP NOBRK SKIP MESSAGE * JSB MSS. ELSE SEND THE BREAK MESSAGE DEF *+2 DEF ZERO * NOBRK LDA BRKF. IF A BREAK WAS PROCESSED SZA THEN JMP ANBRK GO ANALIZE IT * PAR1 LDA NO.RD IF NO READ FLAG SET SZA THEN JMP PAR2 BY PASS THE READ CALL * JSB REA.C CALL TO READ A COMMAND DEF *+1 CCA SET THE ECHO NOT DONE FLAG STA ECHF. JSB .PARS PARSE THE COMMAND DEF *+1 JMP PAR,I AND RETURN * PAR2 CLB CLEAR THE NO READ CALL FLAG STB NO.RD STB ECHF. DON'T ECHO INTERNAL CALLS SSA,RSS JMP TRLD * CLB,INB SET TO INTERACTIVE INPUT LDA TTY. SAVE THE TTY FLAG STB TTY. SET IT FOR NOW STA TMPM PARS JSB .PARS PARS THE COMMAND DEF *+1 LDA TMPM RESTORE THE TTY FLAG STA TTY. JMP PAR,I RETURN TO THE MAIN TO CALL THE SEGMENT * TRLD LDA TR JMP SEG.R * ANBRK CLA CLEAR THE BREAK FLAG STA BRKF. LDB ACTV. IF NOT ACTIVE SZB,RSS THEN JMP PAR1 JUST IGNOR THE FLAG * LDB XEQT ELSE CHECK IF WE ARE IN BATCH ADB D20 LDB B,I SSB,RSS IF NOT IN BATCH JMP PAR1 IGNOR BREAK * STA NO.RD CLEAR THE NO READ FLAG DLD $BATM GET THE BATCH TIME CLA SET A FOR OPERATOR ABORT SSB,RSS IF TIME OUT LDA N2 RESET FOR TIME OUT MESSAGE STA TMPM SET FOR CALL JSB AB.. SET UP DEF *+3 AN "AB" COMMAND DEF TMPM DEF ABTM JMP PAR0 * XEQT EQU 1717B ABTM ASC 8, ABEND JOB LIMIT N2 DEC -2 TMPM NOP TR DEF * DEF TR.. TR+1 ASAB ASC 1,AB TR+2 D20 DEC 20 TR+3 ZERO NOP TR+4 PARSE DEF PAR TR+5 DEF ABT.. TR+6 A EQU 0 B EQU 1 ORG * END FMGR1 ASMB,R,L HED FMGR2 * NAME: FMGR2 * SOURCE: 92002-18008 * RELOC: 92002-16008 * PGMR: G.A.A. * * *************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1975. 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 FMGR2,5 92002-16008 760622 EXT SEG.R,CAD.,.IDAD SPC 1 FMGR2 STA .IDAD LDA TABL JMP SEG.R SPC 2 TABL DEF *+1 SPC 1 EXT IN.IT DEF IN.IT EXT IN.. DEF IN.. EXT MC.. DEF MC.. EXT RC.. DEF RC.. EXT PU.. DEF PU.. END FMGR2 ASMB,R,L HED FMGR3 * NAME: FMGR3 * SOURCE: 92002-18008 * RELOC: 92002-16008 * PGMR: G.A.A. * * *************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1975. 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 FMGR3,5 92002-16008 760720 EXT SEG.R,CAD.,.IDAD FMGR3 STA .IDAD LDA TABL JMP SEG.R SPC 2 TABL DEF *+1 SPC 1 EXT CS.. DEF CS.. EXT DL.. DEF DL.. END FMGR3 ASMB,R,L HED FMGR4 * NAME: FMGR4 * SOURCE: 92002-18008 * RELOC: 92002-16008 * PGMR: G.A.A. * * *************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1975. 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 FMGR4,5 92002-16008 760622 EXT SEG.R,.IDAD SPC 1 FMGR4 STA .IDAD LDA TABL JMP SEG.R SPC 1 TABL DEF *+1 SPC 1 EXT DU..,ST..,CO.. DEF CO.. DEF ST.. DEF DU.. EXT LL..,LO..,SV.. DEF LL.. DEF LO.. DEF SV.. END FMGR4 ASMB,R,L HED FMGR5 * NAME: FMGR5 * SOURCE: 92002-18008 * RELOC: 92002-16008 * PGMR: G.A.A. * * *************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1975. 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 FMGR5,5 92002-16008 760622 EXT SEG.R,.IDAD SPC 1 FMGR5 STA .IDAD LDA TABL JMP SEG.R SPC 1 TABL DEF *+1 SPC 1 EXT RP.. DEF RP.. EXT RU.. DEF RU.. EXT TL.. DEF TL.. EXT PA..,TE..,AN.. DEF PA.. DEF TE.. DEF AN.. EXT CNT. DEF CNT. END FMGR5 ASMB,R,L HED FMGR6 * NAME: FMGR6 * SOURCE: 92002-18008 * RELOC: 92002-16008 * PGMR: G.A.A. * * *************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1975. 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 FMGR6,5 92002-16008 740801 EXT SEG.R,.IDAD * FMGR6 STA .IDAD LDA TABL JMP SEG.R * TABL DEF *+1 EXT JO.. DEF JO.. EXT EO.. DEF EO.. EXT LG.. DEF LG.. EXT OF.. DEF OF.. EXT CN.. DEF CN.. END FMGR6 ASMB,R,L HED FMGR7 * NAME: FMGR7 * SOURCE: 92002-18008 * RELOC: 92002-16008 * PGMR: G.A.A. * * *************************************************************** * * (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. * * *************************************************************** * NAM FMGR7,5 92002-16008 760702 EXT SEG.R,CAD.,.IDAD FMGR7 STA .IDAD LDA TABL JMP SEG.R SPC 2 TABL DEF *+1 SPC 1 EXT NX.JB DEF NX.JB EXT ??.. DEF ??.. EXT SY.. DEF SY.. END FMGR7 ASMB,R,L HED FMGR8 * NAME: FMGR8 * RELOC: 92002-16008 * PGMR: G.A.A. * * *************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1975. 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 FMGR8,5 92002-16008 740801 EXT SEG.R,CAD.,.IDAD FMGR8 STA .IDAD LDA TABL JMP SEG.R SPC 2 TABL DEF *+1 SPC 1 EXT SP.. DEF SP.. EXT MS.. DEF MS.. EXT SA.. DEF SA.. END FMGR8 ASMB,R,L HED FMGR9 * NAME: FMGR9 * SOURCE: 92002-18008 * RELOC: 92002-16008 * PGMR: G.A.A. * * *************************************************************** * * (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. * * *************************************************************** * NAM FMGR9,5 92002-16008 760720 EXT SEG.R,CAD.,.IDAD FMGR9 STA .IDAD LDA TABL JMP SEG.R SPC 2 TABL DEF *+1 SPC 1 EXT LU.. DEF LU.. EXT CL.. DEF CL.. EXT LI.. DEF LI.. END FMGR9 ASMB,R,L,C HED CA.. ROUTINE * NAME: CA.. * SOURCE: 92002-18008 * RELOC: 92002-16008 * PGMR: G.A.A. * * *************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1975. 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 CA..,8 92002-16008 760513 ENT CA.. EXT N.OPL,.ENTR,.DFER,G0.. SUP * * THIS MODULE OF THE RTE FILE MANAGEMENT PACKAGE CACULATES * A VALUE AND STORES IT IN A GLOBAL LOCATION. IT IS CALLED * WHEN A STATEMENT OF THE FORM: * * :CA,#,OPERAND1,OPERATION,OPERAND2,OPERATION,OPERAND3...ETC. * * IS ENCOUNTERED. * * THE RESULT OF THE OPERATION WILL BECOME GLOBAL '#'. * * OPERATION CODES ARE: * * + ADD * - SUBTRACT (1-2) * / DIVIDE (1/2) * * MULTIPLY (1*2) * O OR (1 OR 2) * X EXCLUSIVE OR (1 XOR 2) * A AND (1 AND 2) * * THE ORDER OF THE RESULT WILL BE THE MAXIMUM OF THE ORDERS * OF THE OPERANDS. (THE ORDER IS 0=NULL,1=NUMERIC AND 3=ASCII) * IN ALL CASES EXCEPT / AND * THE CACULATION IS DONE INDEPENDTLY * ON THE THREE WORD VALUES OF THE OPERANDS. IN THE CASE OF * / AND * THE FIRST WORD OF OPERAND TWO IS USED FOR ALL * THREE WORD OF OPERAND ONE. * * EVALUATION PROCEEDS FROM LEFT TO RIGHT UNTIL A NULL OPERATION * CODE IS DETECTED. ANY OTHER PRECEDENCE MUST BE EFFECTED BY * MULTIPLE STATEMENTS. * COUNT NOP PRAM NOP ERR NOP CA.. NOP JSB .ENTR GET THE PRAMS DEF COUNT * * ISZ PRAM STEP TO GLOBAL # LDA PRAM,I GET IT LDB N.OPL GET POSSIBLE 'P' FLAG CPB "P" SET ?? JMP PTST YES GO TEST 'P' NUMBER * SSA,RSS CMA,INA,SZA,RSS IF 0 OR - JMP EREX TAKE GAS. * ADA .9 IF MORE THAN SSA 9 JMP EREX TAKE GAS. * LDB PRAM,I GET THE NUMBER BLS,BLS TIMES 4 PADD LDA DGLOB GET THE ADDRESS OF THE RAL,CLE,SLA,ERA GLOBAL ARRAY LDA A,I ADA B COMPUTE THE DESTINATION ADDRESS STA DESTT AND SET IT LDB PRAM SET UP THE TEMP ADB .3 STORE STB TDES ADDRESS STB PRAM * LOOP ADB .5 INDEX TO OP LDA B,I PICK UP OP CODE ADB .3 INDEX TO OP2 STB PRAM SET ADDRESS SZA,RSS IF NO CODE JMP EXOK THEN END OF LINE, GO EXIT * AND C377 KEEP FIRST CHARACTER CLB,CLE SET UP THE COMP LOOP STB COMP STB ADDR STB DMCD CPA MINUS SUBTRACT? CCE,RSS YES SET FLAG AND USE PLUS CPA PLUS ADD LDB ADA YES USE ADD INSTR CPA "O" OR? LDB IOR YES CPA "X" XOR? LDB XOR YES CPA "A" AND? LDB AND YES SZB ON OF THE ABOVE? JMP SETOP YES GO SET UP * CPA "/" DIVIDE? LDB DIV YES CPA TIMES *? LDB MPY YES SZB,RSS IF STILL NO GO JMP EREX THEN GO EXIT ERROR * STB DMCD SET *, / CODE LDB LDB SET A LDB BEFORE IT STB COMP AND LDB PRAM SET THE OP 2 ADDRESS CLE,INB AFTER THE DIV STB ADDR LDB ASR GET THE ASR INSTRUCTION * SETOP STB OPCD SET THE OP CODE LDA NEGAT IF - SEZ SET STA COMP A CMA,INA LDA N3 SET THE LOOP COUNT STA COUNT LDA TDES AND THE DESTINATION ADDRESS STA DES LDA A,I SET THE ORDER CODE NEGAT CMA,INA ADA PRAM,I TO THE LDB PRAM,I MAX SSA,RSS OF THE STB DES,I ORDERS PRESENT * CLOOP ISZ DES STEP DESTINATION ADDRESS ISZ PRAM AND SOURCE ADDRESS LDB DES GET ADDRESS TO B LDA PRAM,I OP2 TO A COMP CMA,INA /NOP /LDB B,I DO IT OPCD ADA B,I /ASR 16 DMCD NOP /DIV/MPY ADDR NOP /ADDR -PRAM STA DES,I SET THE RESULT AWAY ISZ COUNT DONE? JMP CLOOP NO DO NEXT WORD * LDB PRAM SET UP A FOR ADB N3 NEXT OP CODE JMP LOOP AND LOOP * PTST ADA .36 MUST BE IN RANGE -36<= X < 7 SSA,RSS IF NEGATIVE THEN < -36 CPA .36 DON'T ALLOW ZERO EITHER JMP EREX ERROR ZERO OR LESS THAN -36 * ADA N43 TEST FOR > 7 SSA,RSS OK? JMP EREX NO NUMBER TO BIG * LDB PRAM,I GET PRAM AND ADB .40 CACULATE THE ADDRESS OFFSET JMP PADD GO SET IT UP AND DO THE 'CA' * * EXOK LDA TDES,I AH - SWEET SUCCESS STA DESTT,I SET NEW PRAM IN DESTINATION ISZ TDES LDB N.OPL IF A CPB "P" P CACULATE JMP PSET GO RESET TO RIGHT THING * ISZ DESTT AND JSB .DFER THEN DESTT NOP TDES NOP EXP CLA,RSS EREX LDA BADPM ERROR EXIT STA ERR,I SET ERROR CODE JMP CA..,I EXIT * * PSET LDA TDES,I GET THE VALUE WORD STA DESTT,I AND SET FOR P JMP EXP GO EXIT * DES NOP DGLOB DEF G0.. BADPM DEC 56 ASR ASR 16 LDB LDB B,I ADA ADA B,I IOR IOR B,I AND AND B,I XOR XOR B,I DIV OCT 100400 MPY OCT 100200 "A" OCT 40400 "X" OCT 54000 "O" OCT 47400 "P" ASC 1,P P BLANK FOR P TEST MINUS OCT 26400 PLUS OCT 25400 "/" OCT 27400 TIMES OCT 25000 C377 OCT 177400 .3 DEC 3 .9 DEC 9 .5 DEC 5 .36 DEC 36 .40 DEC 40 N3 DEC -3 N43 DEC -43 A EQU 0 B EQU 1 ORG * END ASMB,R,L,C * NAME: C.TAB * SOURCE: 92002-18008 * RELOC: 92002-16008 * PGMR: G.A.A. * * *************************************************************** * * (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. * * *************************************************************** * NAM C.TAB,8 92002-16008 760720 ENT C.TAB * * SET UP SEGMENT AND ROUTINE NUMBERS. * R0 EQU 0 R1 EQU 400B R2 EQU R1+R1 R3 EQU R2+R1 R4 EQU R3+R1 R5 EQU R4+R1 R6 EQU R5+R1 R7 EQU R6+R1 R8 EQU R7+R1 R9 EQU R8+R1 R10 EQU R9+R1 SPC 2 S0 EQU 60B S1 EQU S0+1 S2 EQU S0+2 S3 EQU S0+3 S4 EQU S0+4 S5 EQU S0+5 S6 EQU S0+6 S7 EQU S0+7 S8 EQU S0+8 S9 EQU S0+9 * * THIS IS THE COMMAND DISPATCH TABLE FOR THE FMGR PROGRAM * EACH COMMAND ID IS FOLLOWED BY ITS ADDRESS. * FOR ROUTINES IN THE HOME SEGMENT THIS IS AN ADDRESS (DEF XX) * FOR ROUTINES IN OTHER SEGMENTS IT IS THE ASCII SEGMENT * SUFFIX IN THE LOW HALF OF THE WORD AND THE ROUTINE * NUMBER IN THAT SEGMENT IN THE HIGH HALF OF THE WORD. * .PARS BREAKS THESE APART BY THE ADDRESS BEING 0< ADD < 10000B * FOR SEGMENT ADDRESS. * * COMMANDS WITH THE SIGN BIT SET INDICATE THAT THE COMMAND * NEED NOT SATISFY ALL THE SYNTAX RESTRICTIONS IMPOSED ON * OTHER COMMANDS. * SPC 2 C.TAB EQU * NOP DEF TR.. ASC 1,PK ABS S0+R0 ASC 1,CR ABS S0+R1 ASC 1,EX EXT EE.. DEF EE.. ASC 1,TR EXT TR.. DEF TR.. ASC 1,MR EXT MR.. DEF MR.. ASC 1,SE EXT SE.. DEF SE.. ASC 1,IF EXT IF.. DEF IF.. ASC 1,AB EXT AB.. DEF AB.. ASC 1,CA EXT CA.. DEF CA.. OCT 142120 "DP" WITH SIGN BIT SET EXT DP.. DEF DP.. OCT 125052 "**" WITH SIGN BIT SET DEF COMM OCT 125000 "*" WITH SIGN BIT SET DEF COMM OCT 125040 "*" WITH SIGN BIT SET DEF COMM ASC 1,IN ABS S2+R1 ASC 1,MC ABS S2+R2 ASC 1,DC ABS S2+R3 ASC 1,PU ABS S2+R4 ASC 1,CS ABS S3+R0 ASC 1,DL ABS S3+R1 ASC 1,CO ABS S4+R0 ASC 1,ST ABS S4+R1 ASC 1,DU ABS S4+R2 ASC 1,LL ABS S4+R3 ASC 1,LO ABS S4+R4 ASC 1,SV ABS S4+R5 ASC 1,RP ABS S5+R0 OCT 151125 "RU" WITH SIGN BIT ABS S5+R1 ASC 1,TL ABS S5+R2 OCT 150101 "PA" WITH SIGN BIT ABS S5+R3 OCT 152105 "TE" WITH SIGN BIT ABS S5+R4 OCT 140516 "AN" WITH SIGN BIT ABS S5+R5 ASC 1,CN ABS S5+R6 ASC 1,JO ABS S6+R0 ASC 1,EO ABS S6+R1 ASC 1,LG ABS S6+R2 ASC 1,LS ABS S6+R2 ASC 1,RT ABS S6+R2 ASC 1,OF ABS S6+R3 ASC 1,RN ABS S6+R4 ASC 1,?? ABS S7+R1 OCT 151531 ASC SY WITH SIGN BIT SET ABS S7+R2 ASC 1,SP ABS S8+R0 ASC 1,MS ABS S8+R1 ASC 1,SA ABS S8+R2 ASC 1,LU ABS S9+R0 ASC 1,CL ABS S9+R1 ASC 1,LI ABS S9+R2 NOP * * COMM NOP LDA COMM,I JMP 0,I END