DEFINE SETSW $ (NAME,DEFVAL) < IFNDEF NAME$SW, <> <0;>DEFVAL > NAME$SW__NAME$SW > DEFINE ONOFSW $ (NAME) < IFN NAME$SW,<NAME$SW__-1> ;MAKE IT NICE FOR  AND  > DEFINE DEFSW $ (NAME) < DEFINE NAME, DEFINE NO$NAME, > DEFINE MAKESW(NAME,VAL) < SETSW(NAME,VAL) ONOFSW(NAME) DEFSW(NAME) > MAKESW(STAN) MAKESW(DEC) MAKESW(CMU) MAKESW(ITS) MAKESW(III) DEFINE STANFO, ;LONG FORM FOR HYSTERICAL RAISINS DEFINE CHECK $ (SITE,VAR) > IFE STANSW!DECSW!CMUSW!ITSSW!IIISW,< ;IF NO SITE SET MANUALLY ABOVE, WE MUST DECIDE FOR OURSELVES WHERE WE ARE CHECK(ITS,.IOT) CHECK(CMU,CMUDEC) CHECK(STAN,SPWBUT) DECSW__-1 > DEFINE MOR (A) > IFN TMPSW> DEFINE MWL, ;THIS IS WL DEFINE MPC, ;NOT PC DEFINE MD, ;OR D DEFINE MDPC, MAKESW(ROUTE,-1) ;WIRE WRAP ROUTER -- OPTIMIZES RUNS NODEC, MAKESW(VIROS,-1) MAKESW(USAGE,-1) ;FREE STORAGE USAGE COUNTERS MAKESW(DECOS,DECSW!CMUSW!IIISW) ;SITE HAS DEC LIKE OPERATING SYSTEM MAKESW(TTYBT,DECOSSW) ;SITE CAN SET TTY BREAK TABLE MAKESW(ESCMP,DECSW!CMUSW!IIISW) ;MUST MAP ESCAPES FROM TTY INTO ALTMODES ;YOU ONLY NEED THIS IF 176, 175, AND 33 ARE ALL ALTMODE MAKESW(SKEY,DECSW!IIISW) ;SKEYSW=1 FOR STANDARD ASCII KEYBOARDS WHICH ;REQUIRE TRANSLATING ALTMODES TO CTRL AND META ;AC DEFS EXTERNAL .JBFF,.JBSA,.JBSYM,.JBREL,.JBDDT,.JBOPC,.JBREN,.JBHRL ;AC0 FLAG BITS FLAG__1 ;TEMPORARY FLAG BIT ASCFLG__2 ;=1 ASCII INPUT =0 FULL WORD INPUT PCNOTD__4 ;READING PC FILE, NOT D CONLY__10 ;CONNECTOR INTERCONNECTIONS NEEDED ONLY ISBACK__20 ;IS BACK PANEL LIST WE ARE DOING ;40 AVAILABLE DOBEQ__100 ;DOING BACK PANEL EQUIVALENCES DOALLC__200 ;DO ALL CARDS AT TTY PRINT DOERRS__400 ;DOING ERROR SUMMARY DOWIE__1000 ;DOING OUTPUT OF WIRE LIST INPUT ERRORS DOGIN__2000 ;INVENTING PIN NAMES FOR "U" PINS IN SIMPLE FILE DOPRTL__4000 ;DOING PARTS LIST, NOT STUFF LISTING DOPWR__10000 ;DO ALL PWR IN BSIMPLE ROUTE, REFLAG__200000 ;DO REFERENCE HACK IN 'WL' FILE PETIT__400000 ;SPACES ARE SIGNIFICANT - PETIT SWITCH ;LEFT HALF BITS NOT__1 ;NOT IN T NOTT__2 ;NOT IN TT TFLG__4 ;TEMPORARY FLAG SEMFLG__10 ;SEMI COLON SEEN IN TILDANOT NOFF__20 ;NO FORM FEED NEEDED WHEN HEADER GOES OUT ASKHIM__40 ;ASK FLAG DEC, ;ANY LINE OUTPUT SHOULD BE A COMMENT LINE ;I.E. PRECEEDED BY "/" SIMTAB__100000 ;SIMULATE TABS WITH SPACES DOLC__200000 ;DO LOADING AND COUNTS IN GATHER BAKGAT__400000 ;TELLS GATHER THIS IS A BACK PANEL WIRE LIST A_1 B_2 C_3 D_4 E_5 F_6 G_7 H_10 L_11 ;CURRENT ID LIST W_12 ;CURRENT CARD LIST T_13 TT_14 TTT_15 TTTT_16 P_17 ;Parameters ;MAX NUMBER OF PADDLES FOR UML OUTPUT MAXPAD__=64 ;OPDEFS OPDEF PUTSTR[1B8] ;OUTPUT STRING (VARIOUS TYPES) OPDEF PUTSIX[2B8] ;PUTSIX [''] OPDEF PUTBYT[3B8] ;PUTBYT CHAR OPDEF ASK[4B8] ;ASK [ASCIZ //] - SKIPS TWICE ON Y OPDEF ERRSTR[5B8] ;ERRSTR #,[ASCIZ //] CMU,< OPDEF CMUDEC [CALLI -2] OPDEF DECCMU [CALLI -3] >;CMU ITS,< OPDEF CALL [ 40B8] OPDEF INIT [ 41B8] OPDEF CALLI [ 47B8] OPDEF OPEN [ 50B8] OPDEF TTYUUO [ 51B8] OPDEF RENAME [ 55B8] OPDEF IN [ 56B8] OPDEF OUT [ 57B8] OPDEF SETSTS [ 60B8] OPDEF STATO [ 61B8] OPDEF GETSTS [ 62B8] OPDEF STATZ [ 63B8] OPDEF INBUF [ 64B8] OPDEF OUTBUF [ 65B8] OPDEF INPUT [ 66B8] OPDEF OUTPUT [ 67B8] OPDEF CLOSE [ 70B8] OPDEF RELEASE [ 71B8] OPDEF MTAPE [ 72B8] OPDEF UGETF [ 73B8] OPDEF USETI [ 74B8] OPDEF USETO [ 75B8] OPDEF LOOKUP [ 76B8] OPDEF ENTER [ 77B8] OPDEF UJEN [100B8] OPDEF PTYUUO [711B8] OPDEF PTWR1S [PTYUUO 7,] OPDEF PTWRS9 [PTYUUO 12,] OPDEF PTJOBX [PTYUUO 16,] OPDEF DSKPPN [CALLI 400071] OPDEF SWAP [CALLI 400004] >;ITS NOSTAN,< OPDEF RESET[CALLI] OPDEF DEVCHR[CALLI 4] OPDEF CORE[CALLI 11] OPDEF EXIT[CALLI 12] OPDEF DATE[CALLI 14] OPDEF MSTIME[CALLI 23] OPDEF GETPPN [CALLI 24] OPDEF INCHRW [TTYUUO 0,] OPDEF OUTCHR [TTYUUO 1,] OPDEF INCHRS [TTYUUO 2,] OPDEF OUTSTR [TTYUUO 3,] OPDEF INCHWL [TTYUUO 4,] OPDEF INCHSL [TTYUUO 5,] OPDEF GETLIN [TTYUUO 6,] OPDEF SETLIN [TTYUUO 7,] OPDEF RESCAN [TTYUUO 10,] OPDEF CLRBFI [TTYUUO 11,] OPDEF CLRBFO [TTYUUO 12,] OPDEF INSKIP [TTYUUO 13,] OPDEF SETACT [TTYUUO 15,] >;NOSTAN DECOS, ;ALL THE SPECIAL FORMS OF PUTSTR OPDEF PUTSIG[PUTSTR 1,] ;OUTPUT, BUT CHECK FOR A/P OPDEF PUTCOM[PUTSTR 2,] ;OUTPUT COMMENT ONLY OPDEF BINSTR[PUTSTR 3,] ;OUTPUT TO FILE OPDEF BINSIG[PUTSTR 4,] ;OUTPUT SIGNAL NAME (WITH A/P) TO FILE OPDEF BINSGU[PUTSTR 5,] ;OUTPUT TO FILE, PREFIX GLOBAL CHARACTER DEC, ;DEC MUST FIX SIGNAL NAME NODEC, ;STANFORD AND ITS CAN JUST PRINT OPDEF PUTXGP[PUTSTR 7,] ;IMAGE OUTPUT TO XGP ;Simple macros DEFINE CRLF < PUTSTR[BYTE(7)15,12] > ;HAS TO BE EXACTLY 1 INSTRUCTION DEFINE DIPCHECK<> ;JUST A MARKER ;For commenting things out DEFINE NIL SUBTTL BITS ; BODY ENTRY (BBIT) BTMP1__400000 ;TEMP MARK BIT PRX2ND__200000 ;SECOND OCCURENCE OF THIS PRPX POINTER BPACKP__100000 ;PACKAGE PROP OTHER THAN DEFAULT WAS SEEN BWILD__1000 ;THIS IS A WILD CONNECTOR BEDGE__400 ;EDGE PIN BODY CBODY__BEDGE!BWILD ;CON BODY BITS BANYPOS__200 ;INDICATES XPOS AND YPOS ARE VALID BXPOSL__3 ;3 BITS WORTH BXPOSB__4 ;4 FROM RIGHT BYPOSL__2 ;2 BITS WORTH BYPOSB__2 ;2 FROM RIGHT ;BITS FROM D WHICH MUST BE STORED IN BODY BITS ABOVE ;BITS IN PIN ENTRY IN WIRE LIST (PBIT) PTMP1__400000 ;MARK BIT PTMP2__200000 ;ANOTHER TRMBTS__140000 ;TERMINATOR RULE BITS (FOR CON ONLY) TRMBSZ__2 ;NUMBER OF BITS TRMBPS__3 ;LOW ORDER BIT CANYPOS__20000 ;17400 POS BITS CXPOSL__3 CXPOSB__12 ;DISTANCE FROM RIGHT EDGE OF HALFWORD CYPOSL__2 CYPOSB__10 ;DISTANCE FROM RIGHT EDGE OF HALFWORD DUP__200 ;THIS PIN IS A DUPLICATE OF ANOTHER PIN IN RUN PIDPIN__100 ;NO PIN #, USED PID! PSHARE__40 ;THIS INPUT LOAD IS ALREADY SHARED WITH ANOTHER PIN INVENT__20 ;THIS IS AN INVENTED POWER OR GROUND PIN ;QBITS USED ONLY ON BP PINS QBITS__37 ;BIT MASK TO GET QUALIFIER LETTER FROM THIS HALFWORD ;LSB OF BIT MASK MUST EQUAL 17 ; IS FOR TABLE TEST INSIDE SIGSUB ;POINT BITS FROM DRAWING PROG ('WD' FILE) DEFPIN__4000 ;THIS PIN IS DEFAULTED, NOT EXPLICIT (BODY PINS ONLY) CPNBTS__6000 ;BITS FOR TERMINATOR RULES (CPINS ONLY) CPNBPS__7 ;LOW ORDER BIT POS CPNBSZ__2 ;# OF BITS ;BITS IN DPBIT, TBIT, AND CBIT (TYPE BITS) INLD__400000 ;INPUT LOAD OUTLD__200000 ;OUTPUT LOAD NULLD__100000 ;NO LOADING AT PRESENT GND__40000 ;GROUND CONNECTION PWR__20000 ;POWER CONNECTION VPWR__=500 ;TTL POWER TRI__10000 ;TRI-STATE OUTPUT SHARE__4000 ;SHARE INPUT LOAD BIT (OR EXTRA OUTPUT) OPENC__2000 ;OPEN COLLECTOR OUTPUT PULL__1000 ;THIS OUTPUT IS A PULLUP ECL__400 ;ECL PIN TTL__200 ;TTL PIN CLK__100 ;CLK SEEN AS FIRST 3 CHARS OF USE TERM__40 ;TERMINATOR PIN FFOUT__20 ;FLIP-FLOP OUTPUT DRVREQ__10 ;DRIVE REQUIRED FOR THIS INPUT FFIN__4 ;FLIP-FLOP INPUT ANYCON__1 ;THERE IS A CONNECTOR IN THIS RUN (NOT USED IN DPBIT) ;BITS FROM OLD VERSION DIP FILE VEE__200 ;-5.5V ECL POWER VEEVLT__-=520 OTTL__100 ;OLD TTL BIT VBB__40 ;-1.5V ECL THRESHOLD VBBVLT__-=150 VTT__20 ;-2V ECL TERMINATORS VTTVLT__-=200 OCLK__10 ;OLD CLK BIT ALLTYP__INLD!OUTLD!NULLD!GND!PWR!TRI!SHARE!OPENC!PULL!TERM ;ALL TYPE BITS INBITS__INLD!SHARE!NULLD ;ALL INPUT BITS ;BITS IN WBIT (WIRE BITS) SNC__400000 ;THIS WIRE HAS THE NAME "NC" SHI__200000 ;THIS WIRE HAS THE NAME "HI" SPWR__100000 ;THIS WIRE HAS THE NAME "VCC" SGND__40000 ;THIS WIRE HAS THE NAME "GND" SCANON__20000 ;THIS SIGNAL IS THE CANONICAL +5.00V CABRUN__400 ;PUT C QUALIFIER ON EDGE PINS WNULL__200 ;COMPLETELY NULL WIRE WSINGL__100 ;WIRE WITH ONLY 1 PIN GLB2__40 ;THIS IS THE SIGNAL TO COME OUT IN THE SIMPLE FILE GLB1__20 ;THIS IS ONLY SIGNAL TO GO TO BACK PANEL GENSIG__10 ;THIS IS A GENERATED SIGNAL WTMP1__4 ;TEMP MARK BIT FOR WIRE HEADER SIG1__2 ;THIS SIGNAL BLOCK IS THE FIRST OF A SET OF EQUIVALENT NAMES NAM2ND__1 ;INTERNAL WIRE HEADER BIT FOR SECOND NON-EQUIVALENT NAME OF SIGNAL SIGBIT__SNC!SHI!SPWR!SGND ;WIRE TYPE BITS ;RUN BITS FROM DRAWING PROG ('WD' FILE) CABBDY__1 ;"CABLE" BODY PIN ON RUN ROUTE,< ;BITS IN PNTBL WORD USED BY ROUTER RPGPIN__400000 ;THIS IS A POWER OR GROUND PIN, IT IS NOT IN WIRE LIST RERPIN__200000 ;THIS PIN IS IN ERROR IN SOME WAY, DON'T WIRE IT! ROUMRK__100000 ;MARK BIT FOR ROUTER ;BITS 5-14 ORDER # ;BITS 15-17 "SCT" CHARS >;ROUTE ;BITS IN PROPERTY VALUE BLOCKS DEFPRP__400000 ;THIS IS THE DEFAULT PROPERTY AT THIS LEVEL PARTNM__200000 ;THIS IS A PART NUMBER BLOCK PNUSED__100000 ;THIS PART NUMBER BLOCK IN USE NULVAL__40000 ;THIS IS A NULL VALUE STRING AND SHOULDN'T NORMALLY BE PRINTED PRTMP1__1 ;TEMP MARK BIT ;BITS IN PLBK FOR PARTS LIST THREAD PL2ND__400000 ;THIS IS SECOND OCCURENCE OF SAME PART NUMBER