/*** TSS/8 QUOLST *** VERSION 1 ***\ /BY JOHN YOUNG (NHHS) / *0000 CRLF TAD RESTRT SRA /RESTART TO HALT UND JMP I .+1 INIT *0010 AUX1, 0 RESTRT, .+1 CLA TAD DCTRC /"^C" PUTMES EXIT, CRLF CMA CLOS /DON'T FORGET TO CLOSE UP SHOP! CRLF HLT PUTMES=JMS I . /PAL-TEXT OUTPUT PRINT0 PUTNUM=JMS I . /NUMBER OUTPUT NUMOUT CRLF=JMS . CRLF0, 0 CLA TAD P15 TLS TAD N3 TLS CLA CLL JMP I CRLF0 SPACE=JMS I . SPACE0 ERROR, CLA CLL TAD MSG12 PUTMES CRLF JMP RESTRT+1 MSG1, MG1-1 MSG2, MG2-1 MSG3, MG3-1 MSG4, MG4-1 MSG5, MG5-1 MSG6, MG6-1 MSG7, MG7-1 MSG8, MG8-1 MSG9, MG9-1 MSG10, MG10-1 MSG11, MG11-1 MSG12, MG12-1 DCTRC, CTRC-1 RFDT, .+1 0 0 -3 UFDCNT-1 4 0 WHOBLK, UFDBLK+3 UFDBLK, .+1 0 /FILE 0 1 /[0,1] 0 /ACCOUNT # OF UFD 0 0 QUOBLK, .+1 1 /FILE 1 4 /[0,4] 6165 /QU 5764 /OT 4100 /A DTA0, 0 DTA1, 0 DTA2, 0 SEGCNT, 0 UFDCNT, 0 ONLINE, 0 OFLINE, 0 POINT, 0 COUNT, 0 ACOUNT, 0 OFKEEP, 0 P2000, 2000 N2000, -2000 P7700, 7700 P15, 15 P40, 40 P77, 77 P100, 100 N3, -3 *0200 INIT, SEGS DCA SEGCNT TAD SEGCNT PUTNUM /PUT OUT # OF FREE SEGS S D 3 TAD MSG1 /TELL HIM THAT'S WHAT PUTMES /IT IS CRLF TAD WHOBLK /MAKE SURE WE GET THE RIGHT ACCOUNT #! WHO TAD UFDBLK+3 DCA ACOUNT /MAKE SURE TO SAVE ACCT # TAD UFDBLK OPEN /OPEN IT SZA CLA /ERROR? JMP ERROR /BUMMER TAD RFDT /READ IT IN RFILE TAD RFDT+6 /EOF IS ONLY LEGAL ERROR CLL RTR SZA CLA JMP ERROR OPNQUO, TAD QUOBLK /OPEN QUOTA.DAT[0,2] OPEN SZA CLA /HOPE NO ERROR JMP NONDTA /IF QUOTA ISN'T FOUND, UNLIMITED DTA QUOTAS IAC DCA RFDT+2 /FOR FILE # STL RTR DCA RFDT+3 /READ 2 CMA CLL RAR DCA RFDT+4 /ADDER-1=3777 DCA RFDT+5 /START DISK ADDR 0 TAD RFDT RFILE /DO IT!!!!!!!!!!!---- TAD RFDT+6 CLL RTR SZA CLA JMP ERROR STL RAR /SET BUFF POINT TO 4000 DCA POINT TAD UFDBLK+3 SPA /GROUP #'S ARE >3777, PRIVATE, <4000 AND P7700 /WE'RE ONLY LOOKING FOR DCA UFDBLK+3 /PROJECT #'S SKP DTALOP, ISZ POINT /INCRE POINT TAD I POINT /GET PROJ # SNA /IF ZERO, COUNT IT JMP ONOFF /IF ZERO THIS GUY HAS CIA /NO DTA QUOTA'S TAD UFDBLK+3 SZA CLA JMP DTALOP JMS INCPNT DCA DTA0 JMS INCPNT DCA DTA1 JMS INCPNT DCA DTA2 JMP ONOFF INCPNT, 0 TAD POINT TAD P100 DCA POINT TAD I POINT TAD P2000 SMA TAD N2000 JMP I INCPNT NONDTA, STL RAR /HIS PROJECT # NOT FOUND DCA DTA0 /THIS MEANS HE HAS NONE! STL RAR DCA DTA1 STL RAR DCA DTA2 JMP ONOFF ONOFF, TAD ONLINE /IF ONLINE OR OFFLINE SPA /QUOTAS ARE -#'S THEN STA CLL RAR /THEY ARE TAKEN AS UNLIMITED DCA ONLINE TAD OFLINE DCA OFKEEP TAD OFLINE SMA JMP RALPH CLA TAD ONLINE RALPH, DCA OFLINE JMP I .+1 START *0400 START, CLA CLL /FIGURE OUT HOW MUCH ONLINE TAD UFDCNT /QUOTA LEFT CIA /IF: ---- TAD ONLINE /FREE DISK