/DIR VERSION 3(2) /DIRECTORY WITH WILD-CARDS IN A COMPACT FORM, FOR XTS/8.24. /MADE BY PETER MOLDAVE /SYSTEM MANAGER ON THE XTS/8.24 AT NMUSD SCHOOL DISTRICT / /STARTED: MARCH 30, 1974 /FINISHED: DECEMBER 21, 1974 / ACCSTK=3200 TTYBUF=3000 /TTY INPUT STORED HERE UFDBLK=4000 /UFD LOADED HERE PAGE 0 *0 JMP I .+1 START HALT, CRLF HLT JMP .-1 *10 AUTO1, 0 /AUTO INDEX REGISTAR ONE AUTO2, 0 /AUTO INDEX REGISTAR TWO *20 TEMP, 0 /FOR TEMPORARY STORAGE TEMP2, 0 /FOR MORE TEMPORARY STORAGE TEMP3, 0 /YET MORE TEMPORARY STORAGE! TEMP4, 0 NMEPTR, 0 /NAME POINTER NONSW, 0 NNUM, 0 THISAC, 1 COMASW, -1 EXTEN, 0 /EXTENSION OF CURRENT FILE NSEGS, 0 /NUMBER OF SEGS THIS ACC NFILES, 0 TSEGS, 0 /TOTAL SEGS TFILES, 0 /TOTAL FILES ACCNTS, 0 /#OF ACCOUNTS OUTPUTED SLHOP, /SLASH OPTIONS GO HERE FAST1, 0 NOLIST, 0 /ONLY TWO RIGHT NOW SYSTAT, 0 /SYSTAT OPTION FNAME, 1200 /GUESS WHAT THIS IS 0 /GIVE UP? 0 /ITS WHERE THE FILE NAME REQUEST IS STORED! FEXT, 1200 /AND THIS IS WHERE THE EXTENSION 0 /REQUEST IS STORED (BOTH IN EXCESS-40) ACCNUM, 0 /ACCOUNT NUMBER ACCMSK, 0 /AND MASK FOR "?" CONSTURCTION LFTNUM, 0 /FOR FIGURING THE ABOVE OUT LFTMSK, 0 /DITTO GETOPX, 0 /FOR GET OPTION ROUTINE GETOPY, 0 GETOPZ, 0 MFDOPE, 0 /FOR OPENING THE MFD 3 /ACCOUNT 3 4143 /"ACCNTS" 4356 6463 MFDRED, 0 0 -400 /400 WORDS MAX ACCSTK /INTO ACCOUNTS STACK 0 0 UFDFIL, 0 /FOR OPENING THE UFD 1 /ACCOUNT 1 ACCNT, 0 0 0 RBLOCK, 0 0 0 0 0 0 /SOME SUBROUTINES ARE USED AGAIN AND AGAIN (SUCH AS THE /DECIMAL OUTPUT ROUTINE, AND ASCII OUTPUT ROUTINES). /TO SIMPLIFY THINGS, EACH OF THEM IS GIVEN A CALL WORD /WHICH IS EQUAL TO A SUBROUTINE CALL TO THAT ROUTINE. / PUTNUM=JMS I . NUMBER /NUMBER OUTPUT ROUTINE PUTCHR=JMS I . ASCOUT /ASCII OUTPUT ROUTINE OUTPUT=JMS I . PAKOUT /SPECIALIZED 6-BIT OUTPUT ROUTINE TYPE=JMS I . TYPER SPACE=JMS I . SPACER PUTDAT=JMS I . DATER BSW=JMS I . BSW1 CRLF=JMS I . CRLF1 PAGE START, CLA CLL IAC RAL SRA /^C=HALT TAD (247 KSB /BREAK=RET, LF, RBOUT, ^CHAR UND /SO HE DOESN'T MESS UP THE LISTING TAD (TTYBUF-1 DCA TEMP2 DCA TEMP DCA TTYBUF /SO IF NOTHING IS INPUT, WE DON'T GET TAD (TEMP /GARBAGE. INPUT STUFF KSF SKP /ONLY INPUT IF SOMETHING IS ALREADY KSR /THERE DCA I TEMP2 TAD (TTYBUF-1 DCA GETOPX /SET UP CHARACTER POINTER TAD (FNAME DCA GETOPY STA DCA COMASW GETOP, TAD (-6 DCA NNUM DCA GETOPZ STA DCA NONSW GETOP2, ISZ GETOPX TAD I GETOPX TAD (-240 SPA JMP GOTOP TAD (-77 SMA CLA JMP GOTOP TAD (BRNSTK-1 DCA AUTO1 TAD I AUTO1 SNA JMP GETOP3 TAD I GETOPX SZA CLA JMP .-5 TAD AUTO1 TAD (OPOINT-BRNSTK DCA TEMP TAD I TEMP DCA TEMP JMP I TEMP GETOP3, TAD GETOPZ TAD NNUM SMA CLA JMP GETOP2 TAD GETOPZ RAR CLA TAD I GETOPX TAD (-240 SZL BSW ISZ NONSW TAD I GETOPY DCA I GETOPY TAD GETOPZ RAR SZL ISZ GETOPY CLA ISZ GETOPZ JMP GETOP2 GETEXT, TAD (FEXT DCA GETOPY TAD (-3 JMP GETOP+1 GETSLH, ISZ GETOPX /GETS SLASH OPTIONS TAD I GETOPX DCA TEMP TAD (OPSTK-1 DCA AUTO1 GETSL2, TAD I AUTO1 SNA JMP ILGOP TAD TEMP SZA CLA JMP GETSL2 TAD AUTO1 TAD (SLHOP-OPSTK DCA TEMP2 CLA IAC DCA I TEMP2 JMP GETOP2 GETACT, TAD THISAC SNA CLA JMP SNTXER DCA THISAC JMP GETAC2 GOTOP, CRLF JMP GETMFD PAGE GETAC2, ISZ GETOPX TAD I GETOPX SNA JMP SNTXER TAD (-"] SNA JMP GETAC4 TAD ("]-"* SNA JMP GETAC5 TAD ("*-", SNA CLA JMP GETAC6 TAD ACCNUM RTL CLL RAL DCA ACCNUM TAD ACCMSK RTL CLL RAL DCA ACCMSK TAD I GETOPX TAD (-"? SNA CLA JMP GETAC3 TAD I GETOPX AND (7 TAD ACCNUM DCA ACCNUM JMP GETAC2 GETAC3, TAD (7 TAD ACCMSK DCA ACCMSK JMP GETAC2 GETAC4, TAD ACCMSK ISZ COMASW AND [77 TAD LFTMSK CMA DCA ACCMSK TAD ACCNUM TAD LFTNUM DCA ACCNUM JMP GETOP2 GETAC5, CLA CLL CMA DCA ACCMSK JMP GETAC2 GETAC6, ISZ COMASW JMP SNTXER TAD ACCMSK AND [77 BSW DCA LFTMSK DCA ACCMSK TAD ACCNUM AND [77 BSW DCA LFTNUM DCA ACCNUM JMP GETAC2 IDOUT, 0 SPACE 2 TAD (MSGDSK OUTPUT TAD ACCNT BSW AND [77 PUTNUM S 2 TAD (", TYPE TAD ACCNT AND [77 PUTNUM S 2 TAD (MSGDS2 OUTPUT JMP I IDOUT GETMFD, TAD (MFDOPE OPEN SZA CLA JMP HALT TAD (MFDRED RFILE TAD MFDFRM DCA ACCPT JMP DIROUT MFDFRM, ACCSTK PAGE DIROUT, JMP GETUFD TAD FNAME TAD [-1200 SNA CLA JMP .+6 TAD NMEPTR JMS CHECK FNAME 6 JMP GETFIL CLA IAC CLL RTL TAD NMEPTR DCA TEMP3 TAD I TEMP3 AND [7600 BSW DCA EXTEN TAD FEXT TAD [-1200 SNA CLA JMP .+7 TAD EXTEN TAD [EXTENS JMS CHECK FEXT 3 JMP GETFIL CLA IAC TAD TEMP3 DCA TEMP4 TAD I TEMP4 TAD NSEGS DCA NSEGS ISZ NFILES TAD NOLIST SZA CLA JMP GETFIL TAD NMEPTR PUTCHR P T 6 SPACE 2 TAD EXTEN TAD [EXTENS PUTCHR P T 3 TAD FAST1 SZA CLA JMP GETFIL-5 TAD I TEMP4 PUTNUM S D 4 TAD (TXT1 OUTPUT TAD I TEMP3 AND (37 PUTNUM S 2 TAD (TXT2 OUTPUT ISZ TEMP4 TAD I TEMP4 PUTDAT STA TAD NFILES SNA CLA JMS IDOUT CRLF GETFIL, CLA IAC CLL RAL CML TAD NMEPTR DCA NMEPTR TAD I NMEPTR SNA JMP GETFI2 TAD [UFDBLK DCA NMEPTR JMP DIROUT+1 GETFI2, TAD NSEGS SNA CLA JMP GETUFD ISZ ACCNTS TAD (NSEGS JMS OUTINF JMS IDOUT CRLF TAD NSEGS TAD TSEGS DCA TSEGS DCA NSEGS TAD NFILES TAD TFILES DCA TFILES DCA NFILES GETUFD, JMP GETNUM TAD ACCNT SNA JMP ENDIT AND ACCMSK CIA TAD ACCNUM SZA CLA JMP GETUFD GETUF2, TAD (UFDFIL OPEN SZA JMP GETUFD CLA IAC /AC_-7777 DCA RBLOCK+2 TAD (UFDBLK-1 DCA RBLOCK+3 DCA RBLOCK+5 TAD (RBLOCK RFILE TAD [UFDBLK DCA NMEPTR JMP GETFIL PAGE GETNUM, CLA TAD THISAC SNA CLA JMP .+7 DCA THISAC STA DCA ACCMSK ACT DCA ACCNT JMP GETUF2 ISZ ACCPT TAD I ACCPT DCA ACCNT JMP GETUFD+1 ACCPT, ACCSTK-1 ENDIT, STA TAD ACCNTS SNA CLA JMP HALT TAD TSEGS SNA CLA JMP NOFIL TAD (MSGGND OUTPUT TAD (TSEGS JMS OUTINF JMP HALT NOFIL, TAD (MSGNFL OUTPUT JMP HALT OUTINF, 0 DCA TEMP TAD (MSGTO1 OUTPUT TAD I TEMP PUTNUM S D 4 ISZ TEMP TAD (MSGTO2 OUTPUT TAD I TEMP PUTNUM S D 3 TAD (MSGTO3 OUTPUT JMP I OUTINF PAKOUT, 0 DCA PAKOUZ DCA PAKOUY TAD PAKOUY RAR CLA TAD I PAKOUZ SNL BSW AND [77 SNA JMP I PAKOUT TAD (-40 SPA TAD (100 TAD (240 TYPE TAD PAKOUY RAR SZL CLA ISZ PAKOUZ ISZ PAKOUY JMP PAKOUT+3 PAKOUY, 0 PAKOUZ, 0 TYPER, 0 TLS CLA JMP I TYPER SPACER, 0 CLA TAD I SPACER CIA DCA TEMP TAD (240 TYPE ISZ TEMP JMP .-3 ISZ SPACER JMP I SPACER ILGOP, CLA TAD (MSGILP OUTPUT JMP HALT SNTXER, CLA TAD (MSGSNX OUTPUT JMP HALT PAGE NUMBER, 0 DCA NUM0 TAD I NUMBER CLL RTL CLA CML RAL DCA ZSUPRS TAD I NUMBER AND (7 TAD (-5 DCA NUMSUP TAD I NUMBER SPA CLA TAD (DECCON-OCTCON TAD (OCTCON JMS NUMOUT ISZ NUMBER JMP I NUMBER NUMOUT, 0 DCA NUMPTR NUMOU2, DCA TEMP2 TAD NUM0 CLL TAD I NUMPTR ISZ TEMP2 SZL JMP .-4 DCA NUM0 TAD I NUMPTR CIA TAD NUM0 DCA NUM0 STA TAD TEMP2 JMS NUMOU3 ISZ NUMPTR TAD I NUMPTR SZA CLA JMP NUMOU2 IAC DCA ZSUPRS TAD NUM0 JMS NUMOU3 JMP I NUMOUT NUMOU3, 0 DCA TEMP2 ISZ NUMSUP TAD NUMSUP SPA CLA JMP I NUMOU3 TAD TEMP2 SZA JMP .+4 TAD ZSUPRS SNA CLA JMP .+4 ISZ ZSUPRS NOP TAD (20 TAD (240 TLS CLA JMP I NUMOU3 NUM0, 0 NUMPTR, 0 ZSUPRS, 0 NUMSUP, 0 OCTCON, -1000;-100;-10;0 DECCON, -1750;-144;-12;0 S=2000 D=4000 PAGE CHECK, 0 DCA CHECKZ TAD I CHECK DCA CHECKY ISZ CHECK TAD I CHECK CIA DCA CHECKX ISZ CHECK DCA CHECKW CHEC2, JMS CHEC5 TAD I CHECKZ JMS CHEC4 DCA TEMP JMS CHEC5 TAD I CHECKY JMS CHEC4 TAD (-37 SNA JMP CHEC3 TAD (37 CIA TAD TEMP SZA CLA JMP I CHECK CHEC3, JMS CHEC5 SNL JMP .+3 ISZ CHECKY ISZ CHECKZ ISZ CHECKW ISZ CHECKX JMP CHEC2 ISZ CHECK JMP I CHECK CHEC4, 0 SZL JMP .+4 CLL RTR;RTR;RTR AND (77 JMP I CHEC4 CHEC5, 0 TAD CHECKW RAR CLA JMP I CHEC5 CHECKW, 0 CHECKX, 0 CHECKY, 0 CHECKZ, 0 PAGE P=4000 T=2000 ASCOUT, 0 DCA CHRPTR STA TAD I ASCOUT SZA CLA JMP .+6 TAD CHRPTR TLS CLA ISZ ASCOUT JMP I ASCOUT TAD I ASCOUT AND [77 CIA DCA OUTCNT TAD I ASCOUT SPA CLA JMP UNPACK TAD I CHRPTR TLS CLA ISZ CHRPTR ISZ OUTCNT JMP .-5 OTCEXT, CLA ISZ ASCOUT JMP I ASCOUT UNPACK, TAD I ASCOUT RTL CLA SZL TAD (40 DCA ASCCON NPCK1, TAD I CHRPTR RTR; RTR; RTR JMS EXPAND ISZ OUTCNT SKP JMP OTCEXT TAD I CHRPTR JMS EXPAND ISZ CHRPTR ISZ OUTCNT JMP NPCK1 JMP OTCEXT ASCCON, 0 EXPAND, 0 TAD ASCCON AND [77 DCA SIXBIT TAD SIXBIT AND (40 SNA CLA TAD (100 TAD (200 TAD SIXBIT TLS CLA JMP I EXPAND SIXBIT, 0 CHRPTR, 0 OUTCNT, 0 CRLF1, 0 CLA TAD (215 TLS TAD (-3 TLS CLA JMP I CRLF1 PAGE DATER, 0 DCA DATDAY DCA DATYR DATE1, TAD DATDAY SMA CLA JMP DATE2 ISZ DATYR TAD DATDAY TAD (-564 DCA DATDAY JMP DATE1 DATE2, DCA DATMON TAD DATDAY TAD (-37 SPA JMP .+4 ISZ DATMON DCA DATDAY JMP .-6 CLA ISZ DATDAY TAD DATYR TAD (112 DCA DATYR DATE3, TAD DATMON TAD (-14 SPA JMP .+4 ISZ DATYR DCA DATMON JMP DATE3 CLA TAD DATDAY JMS NUMBER S D 2 TAD ("- TLS CLA TAD DATMON CLL RAL TAD (MONTHS JMS ASCOUT P 3 TAD ("- TLS CLA TAD DATYR JMS NUMBER S D 2 JMP I DATER DATDAY, 0 DATMON, 0 DATYR, 0 BSW1, 0 DCA BSWZ TAD BSWZ AND [77 RTL CLL RTL RTL DCA BSWY TAD BSWZ RTR CLL RTR RTR AND [77 TAD BSWY JMP I BSW1 BSWY, 0 BSWZ, 0 MONTHS, TEXT /JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC/ PAGE /MESSAGES MSGSNX, TEXT '? SYNTAX ERROR' MSGNFL, TEXT '% NO FILES IN SEARCH LIST' MSGDSK, TEXT 'DSK:[' MSGDS2, TEXT ']' TXT1, TEXT ' <' TXT2, TEXT '> ' MSGGND, TEXT 'GRAND ' MSGTO1, TEXT 'TOTAL OF ' MSGTO2, TEXT ' SEGMENTS IN ' MSGTO3, TEXT ' FILES' MSGILP, TEXT '? ILLEGAL OPTION' BRNSTK, -"[ -"/ -240 -", -". 0 OPOINT, GETACT GETSLH GETOP2 SNTXER GETEXT OPSTK, -"F -"N 0 EXTENS, 6351 /.SI 0000 4163 /.ASC 4300 6341 /.SAV 6600 4251 /.BIN 5600 4241 /.BAS 6300 4241 /.BAC 4300 4643 /.FCL 5400 6455 /.TMP 6000 6351 /.SI 0000 4441 /.DAT 6400 4344 /.CDM 5500 4456 /.DN4 2400 6351 /.SI 0000 6351 /.SI 0000 6351 /.SI 0000 6351 /.SI 0000 /NOW FOR SOME TRICKY EXTENSIONS 6041 /.PAL 5400 4154 /.ALG 4700 4624 /.F4 0000 4457 /.DOC 4300 6470 /.TXT 6400 6371 /.SYS 6300 4162 /.ARK 5300 4342 /.CBL 5400 4341 /.CAL 5400 4160 /.APL 5400 5766 /.OVL 5400 5463 /.LST 6400 6351 /.SI 0000 6351 /.SI 0000 6351 /.SI 0000 6351 /.SI 0000 $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$ $$$$$$$$$$