TITLE NODBAS-NODTBL HISEG DATAASE TWOSEG SEARCH JOBDAT,UUOSYM LOC .JBREN EXP NODREE RELOC 400000 T1=1 T2=2 ;THE FOLLOWING TWO REGISTER DEFINITIONS MUST AGREE WITH THE ;DEFINITIONS USED BY BLISS VREG=1 ;VALUE REGISTER FOR BLS36C P=17 ENTLEN=51 ;SIZE OF NODE BLOCK NTBLEL:: ENTLEN ;SIZE OF NODE BLOCK DIRECT:: SIXBIT'%HARD' ;DEFAULT ENTRY FOR HARD BLOCK ENTLEN-1 ;WIRED NODE DIALUP:: SIXBIT'%DIAL' ;DEFAULT ENRTY FOR DIALUP NODES BLOCK ENTLEN-1 NOD%ZE:: SEGEND:: 0 ;END OF DATABASE RELOC 0 SNODE:: BLOCK ENTLEN FREE:: MSKW6:: .CRASH:: POPJ 17,0 ;THIS ROUTINE CONVERTS AN OCTAL # PASSED TO IT AS AN ;ARGUMENT INTO THE NUMBER OF JIFFIES THAT THE # IS EQUAL TO TIMJIF:: MOVE T1,-1(P) ;GET THE ARG IDIVI T1,^D100 ;HOURS IN T1,MINS IN T2 IMULI T1,^D3600*^D60 ;# OF JIFFIES IMULI T2,^D3600 ;# OF JIJJIES ADD T1,T2 ;ADD THEM UP IFN , ;Return in VREG POPJ P, ;Return ;THIS ROUTINE CONVERTS A NUMBER OF JIFFIES INTO THE HOURS, ;MINUTES EQUIVALENT JIFTIM:: MOVE T1,-1(P) ;GET THE ARG IDIVI T1,^D3600 ;# OF MINUTES IDIVI T1,^D60 ;# OF HOURS IN T1 ;# OF MINS IN T2 IMULI T1,^D100 ;POSITION HOURS ADD T1,T2 ;ADD IN MINUTES IFN , ;Return in VREG POPJ P, ;SUBROUTINE TO CONVERT FROM TIME OF DAY OR RELATIVE TIME ;TO RELATIVE MINUTES FOR USE BY QUASAR TIMQUE:: MOVE T1,-1(P) ;GET THE ARG IDIVI T1,^D100 ;HOURS IN T1,MINS IN T2 IMULI T1,^D60 ;# OF MINUTES ADD T1,T2 ;ADD THEM UP IFN , ;Return in VREG POPJ P, ;SUBROUTINE TO CONVERT FROM MINUTES TO HHMM FOR TYPE OUT QUETIM:: MOVE T1,-1(P) ;GET THE ARG IDIVI T1,^D60 ;# OF HOURS IN T1 ;# OF MINS IN T2 IMULI T1,^D100 ;POSITION HOURS ADD T1,T2 ;ADD IN MINUTES IFN , ;Return in VREG POPJ P, NODREE: MOVEI 0,[SIXBIT /SYS/ SIXBIT /NODTBL/ EXP 0,0,0,0] GETSEG HALT .-2 MOVE 0,NTBLEL ;Check the entry length CAIE 0,ENTLEN ;It must be the same we're built for JRST [OUTSTR [ASCIZ " ?NODOVN Can't get node definitions from such an old NODTBL. ?NODRAN Run NODTBL and re-enter all nodes. Sorry. "] EXIT] HRRZ 1,.JBSA ;Now do regular start JRST (1) ;THE FOLLOWING MUST BE IN ALPHABETICAL ORDER DEFINE X(STR,ADDR) = <[ASCIZ/STR/],,ADDR> PRVTAB:: EXP 10 X(ADD,ADDNOD##) X(DELETE,DELNOD##) X(EXIT,EXITPG##) X(HELP,HELP##) X(LIST,LIST##) X(TYPE,TYPNOD##) X(UPDATE,UPDATE##) X(WRITE,WRITES##) NPRVTB:: EXP ^D4 X(EXIT,EXITPG##) X(HELP,HELP##) X(LIST,LIST##) X(TYPE,TYPNOD##) ;This is supposed to be in alphabetical order TBLTAB:: EXP TBLEND-TBLTAB X(ALTPHONE,PHON2%##) X(ALTQUE,QUE%DV##) X(CONTACT,CONTAC##) X(CONTIMEOUT,CON%TI##) X(FLAGS,FLAGS##) X(INACTIVE,INACTI##) X(LASTCONNECT,LAST%C##) X(LOCATION,LOCATI##) X(MAXFILESIZE,MAX%FI##) X(NODEID,NODEID##) X(OBJECTTYPE,OBJTYPE##) X(PASSWORD,PASSWO##) X(PHONE,PHON1%##) X(PROGRAMMER,PROGNO##) X(QUE,QUE%DE##) X(RECONNECT,RECONN##) X(REPLYTO,REPLY%##) X(REQUE,REQUE%##) X(ROUTE-THROUGH-NODE,ROUTE##) X(SCRATCH,SCRATC##) X(SIGNON,SIGNON##) X(SIGNOFF,SIGNOF##) X(SYSTEMTYPE,SYSTEM##) X(TASKNAME,TASKNAME##) X(TIMEDOWN,TIME%D##) X(TIMETOHOLD,TIME%T##) X(TIMEUP,TIME%U##) TBLEND: DEFINE X(STR,VAL) = <[ASCIZ/STR/],,VAL> FLGTAB:: EXP ^D14 X(DAS78,^D7) X(LRECEIVE,^D11) X(LTRANSMIT,^D12) X(NETSPL,^D15) X(NOLRECEIVE,^D3) X(NOLTRANSMIT,^D4) X(NOQRECEIVE,^D1) X(NOQTRANSMIT,^D2) X(NORRECEIVE,^D5) X(NORTRANSMIT,^D6) X(RRECEIVE,^D13) X(RTRANSMIT,^D14) X(QRECEIVE,^D9) X(QTRANSMIT,^D10) END