/13 LITTLE-USED DIRECTIVES OVERLAY 2 TO MACREL POST FT 1 / 7-MAR-78 INSTALLED PATCHES .INCLUDE MGLOB.MA .ASECT OVRB,LEVEL=1,OVERLAY=1 / / / / / / / / / /COPYRIGHT (C) 1977 BY DIGITAL EQUIPMENT CORPORATION / / / / / / / / / / /THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT NOTICE /AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT /CORPORATION. DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY /FOR ANY ERRORS THAT MAY APPEAR IN THIS DOCUMENT. / /THE SOFTWARE DESCRIBED IN THIS DOCUMENT IS FURNISHED TO THE PURCHASER /UNDER A LICENSE FOR USE ON A SINGLE COMPUTER SYSTEM AND CAN BE COPIED /(WITH INCLUSION OF DIGITAL'S COPYRIGHT NOTICE) ONLY FOR USE IN SUCH /SYSTEM, EXCEPT AS MAY OTHERWISE BE PROVIDED IN WRITING BY DIGITAL. / /DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR THE USE /OR RELIABILITY OF ITS SOFTWARE ON EQUIPMENT THAT IS NOT SUPPLIED BY /DIGITAL. / / / / / / / / / / .EXTERNAL ASEMLV,BACKUP,BRANCH,CREF,CRLF,DPRINT,ENTER,EOS,ERROR,EXPR .EXTERNAL FSCHEK,GETCHR,GETKAR,GETSYM,LETTER,LISTER,LOOKUP,ORIG,OUT,PARSYM .EXTERNAL PASS3,POP,PUSH,PUNBIT,PUTBIT,PUTSYM,PUXBIN,READLN,ROTL6,SCAN .EXTERNAL FINI,BEGIN .GLOBAL ER15,ER33,ER47,ER48,ER215 .GLOBAL $IF .GLOBAL $IFDEF,$IFNZRO,$IFNDEF,$IFZERO FIELD 3 *2000 /*** FOR UNNAMED SECT, ORIGIN TO 200 2 /OVERLAY NUMBER IFCOND, 0 TAD I IFCOND /GET CONDITION DCA COND /STORE IN-LINE JMS I QQBACKUP JMS I QQEXPR COND, HLT /SKIP IF CONDITION IS TRUE JMP I (SKIP /FALSE, SKIP TO CLOSE ANGLE BRACKET JMP I (CONDOK /TRUE, SKIP CONDITIONAL CODE $IFNZRO, JMS IFCOND SNA CLA / ------- $IFZERO, JMS IFCOND SZA CLA / ------- IFLE, JMS IFCOND SMA SZA CLA / ------- IFGE, JMS IFCOND SPA CLA / ------- IFPOSY, JMS IFCOND SPA SNA CLA / ------- IFNEGY, JMS IFCOND SMA CLA / ------- IFABSY, JMS IFCOND JMS ABSCHK / ------ IFRELY, JMS IFCOND JMS RELCHK / ------ ABSCHK, 0 /SKIP IF ABSOLUTE CLA TAD EXPREL SNA CLA ISZ ABSCHK JMP I ABSCHK RELCHK, 0 /SKIP IF RELOCATABLE CLA TAD EXPREL SZA CLA ISZ RELCHK JMP I RELCHK IFBLNK, JMS I QQSCAN TAD CHAR TAD (-74 SNA CLA JMP I (CONDOK /OK, NO ARGUMENT JMP I (SKOP /SOMETHING THERE, SKIP RANGE OF IF IFNB, JMS I QQSCAN TAD CHAR TAD (-74 SNA CLA JMP I (SKOP /NOTHING THERE, SKIP IF RANGE 2$: JMS I QQEOS JMP I (ER33 /GOT TO END OF STMNT AND NO OPEN ANGLE BRACKET JMS I QQGETCHR /MAYBE IT'S NEXT CHAR TAD CHAR TAD (-74 SZA CLA JMP 2$ /NOPE, KEEP SCANNING JMP I (CONDOK /AH, HERE IT IS ... IFDIF, JMS SCOM /COMPARE TWO STRINGS JMP I (CONDOK /SAME JMP I (SKOP /DIFFERENT IFIDEN, JMS SCOM /COMPARE TWO STRINGS JMP I (SKOP /SAME JMP I (CONDOK /DIFFERENT SCOM, 0 /STRING COMPARE (PRIMITIVE) JMS I QQSCAN /IGNORE SPACES TAD LINPTR DCA STR1 /POINT AT STRING 1 JMS GOTO MCOMA, -54 JMS I QQGETCHR /PASS IT JMS I QQSCAN /MORE SPACES IGNORED TAD LINPTR DCA STR2 /POINT AT STRING 2 /ASSUMES NO , OR < IN EITHER STRING JMS GOTO MBR, -74 L$: CDF 10 TAD I STR2 SNA JMP ER2A TAD MBR SNA JMP 3$ TAD (74 CIA TAD I STR1 CDF 0 SZA CLA JMP I SCOM /MISMATCH ISZ STR2 ISZ STR1 JMP L$ 3$: TAD I STR1 TAD MCOMA CDF 0 SNA CLA ISZ SCOM JMP I SCOM ER2A, CDF 0 JMP I (ER33 /*** GOTO, 0 JMS I QQBACKUP 1$: JMS I QQGETKAR JMP ER2A TAD I GOTO /COMPARE AGAINST ARGUMENT SZA CLA JMP 1$ /KEEP LOOKING ISZ GOTO JMP I GOTO STR1, 0 STR2, 0 IFRE, TAD NAME2 /CHECK THIRD CHARACTER JMS I QQBRANCH -'L@;IFRELY /L -'F@;IFREFY /F A USELESS OPTION 0 JMP I (ER215 PAGE $IFDEF, JMS CMN /SKIP IF SYMBOL FOUND JMP SKIP /NOT FOUND JMS I QQGETSYM /FOUND (BUT MAYBE NEVER DEFINED) TAD FLAG /THE GRAND OL' FLAG WILL KNOW SPA CLA /ASK IT JMP CONDOK /SALUTE. NOT DEFINED! SKIP, JMS I QQSCAN /SKIP THE RANGE OF THE CONDITIONAL TAD CHAR TAD M74 SZA CLA JMP ER33 SKOP, DCA ANGCNT IFLUP, TAD CHAR SNA JMP GTLIN JMS I QQBRANCH M74, -74;LTX -76;GTX 0 IFL2, JMS I QQGETCHR JMP IFLUP ANGCNT, 0 GTLIN, CLA IAC DCA PCFLAG CLA IAC DCA BNFLAG TAD I (LISTWD RAL SPA CLA JMP GTL9 TAD SWATOL AND (4 SNA CLA /DON'T PRINT LINE IF /J JMS I QQOUT GTL9, JMS I QQREADLN SKP JMP IFL2 ER15, JMS I QQERROR /PHASE ERROR *** JMP I (FINI LTX, CLA IAC SKP GTX, STA /DOESN'T CATCH 4096 OPEN ANGS TAD ANGCNT SNA JMP I (BEGIN DCA ANGCNT JMP IFL2 CMN, 0 /SKIP IF SYMBOL FOUND (AND CREF IT) JMS I QQSCAN JMS I QQLETTER JMP ER47 JMS I QQPARSYM JMS I QQLOOKUP JMP I CMN ISZ CMN JMS I QQCREF JMP I CMN IFDEF PLM < / IF CONDITIONS / POSITIVE COMPLEMENT ARGUMENTS ASSEMBLE BLOCK IF / EQ NE EXPRESSION EXPR=0 (OR NOT) / LT GE EXPRESSION EXPR<0 (OR GE 0) / GT LE EXPRESSION EXPR>0 (OR LE 0) / DF NDF SYMBOL SYMBOL IS DEFINED (UNDEFINED) / B NB STRING STRING IS BLANK (NON-NULL) / IDN DIF STRING,STRING STRINGS IDENTICAL (DIFFERENT) / REF NREF SYMBOL SYMBOL IS REFERENCED (OR NOT) / ABS REL EXPRESSION EXPR IS ABSOLUTE (OR RELOCATABLE) > ER47, JMS I QQERROR JMS I QQGETCHR JMP I (BYEX $IFNDEF,JMS CMN /SKIP IF FOUND JMP CONDOK /NOT FOUND JMS I QQGETSYM /GET FURTHER INFO TAD FLAG /WAS IT REALLY DEFINED? SPA CLA /OR MAYBE JUST REFERRED TO? JMP SKIP /DEFINED CONDOK, JMS I QQSCAN /CONDITION IS TRUE TAD CHAR TAD M74 SZA CLA JMP ER33 ISZ CONCNT JMP I (BEGIN ER48,/ JMS I QQERROR /4096 NESTED CONDITIONALS / JMP I (FINI ER33, JMS I QQERROR /TEMP JMP I (BYEX /*** TEST 'CONCNT' AT END OF EACH PASS IFREFY, JMS CMN /SKIP IF SYMBOL FOUND JMP SKIP /NOT REFERENCED JMP CONDOK /REFERENCED IFNREFY,JMS CMN /SKIP IF SYMBOL FOUND JMP CONDOK /NOT REFERENCED JMP SKIP /REFERENCED $IF, JMS I QQSCAN /IGNORE SPACES JMS I QQPARSYM /GET 'IF' CONDITION (OK IF STARTS WITH DIGIT) JMS I QQSCAN /PASS UP MORE SPACES TAD NAME1 JMS I QQBRANCH /BRANCH TO APPROPRIATE PLACE -'EQ;$IFZERO /EQ -'NE;$IFNZRO /NE -'DF;$IFDEF /DF -'ND;$IFNDEF /ND -'GT;IFPOSY /GT -'LE;IFLE /LE -'LT;IFNEGY /LT -'GE;IFGE /GE -'BL;IFBLNK /BL -'NB;IFNB /NB -'ID;IFIDEN /ID -'DI;IFDIF /DI -'RE;IFRE /RE -'NR;IFNREFY /NR -'AB;IFABSY /AB -'B@;IFBLNK /B 0 ER215, JMS I QQERROR /UNKNOWN IF CONDITION JMP CONDOK /PRETEND IT WAS SATISFIED PAGE /WANT: /GLOBAL 5 FLAG BITS 9-11 /EXTERNAL 6 /ZTERNAL 7 /ENTRY 4