SRDLST.MAC;2/AU=SRDLST.MAC;1 \ -/.IDENT/,. .IDENT -6.3- ; 01-JUN-83 .ENABL LC -/THEN CREATE/ ;- ; ; MODIFICATIONS: ; ; BT001 - 01-DEC-81 ; IMPLEMENT /ZE SWITCH TO FIND ZERO USED BLOCK FILES; ; WHEN HEADER ATTRIBUTES SHOW 0 BLOCKS ALLOCATED, CALCULATE VALUE ; FROM RETRIEVAL POINTERS, AND INCLUDE IN DIRECTORY TOTAL ; ; RBD001 13-JUL-82 ; Lower case messages for 'M Version 4.0 fans ; ; BT002 - 18-May-83 ; Merged in /SM, /HD, and /BK switches from Glen Everhart's ; Fall 1982 version; ; Correct bug which caused version number selection to fail ; to list the proper files in many cases. ; ; CEF001 - 1-June-83 ; ADD .PSECT FOR DATA & CODE ; % -/SYSTEM MACRO CALLS/,,/;CEF001/ ; .PSECT SRDATA,D,RW,LCL,REL,CON ; -/QBF1$:/,.,/;RBD001/ QBF1$: .ASCII <15><12><11>"Are you sure [Y/N] ? _"<10> ; GO VERIFICATION MSG -/.EVEN/,,/;CEF001/ .PAGE .SBTTL SRDLST GENERATE LISTING - CODE .PSECT SRDCOD,I,RO,REL,CON,LCL ; -/UNPACK:/,,/;BT002/ -/1$:/ -/YES--DON'T/ BIT #SMSW,SWMS3$ ; WAS THE /SM SUMMARY SWITCH SELECTED? BEQ 21$ ; IF EQ NO - DON'T OUTPUT THE SUMMARY -/CVAS:/ -/30$:/ -/CALL...$CBOMG/ CLRB (R0) ; INSERT NULL AFTER VERSION NUMBER -/CKDATE:/,,/;BT001/ -/#,SWMS2$ ; SELECT CONTIG, LOCKED, MULTI- ; ; HEADER, OR ZERO-USED-BLOCKS? -/CKCLM:/ -/BR...CKD1/,. BR CKZE ; PROCEED -/BEQ...CKD1/,. BEQ CKZE ; PROCEED -/REJECT:/ CKZE: BIT #ZESW,SWMS2$ ; ZERO USED BLOCKS FILE SWITCH SET? BEQ CKD1 ; NO - PROCEED MOV #HDBUF$+H.UFAT,R1 ; USER ATTIBUTES AREA TST F.FFBY(R1) ; FIRST FREE BYTE ZERO? BNE REJECT ; IF NE NO - REJECT FILE TST F.EFBK(R1) ; ANY USED BLOCKS INDICATED (HIGH ORDER)? BNE REJECT ; IF NE YES - REJECT FILE MOV F.EFBK+2(R1),R1 ; GET USED BLOCKS (LOW ORDER) BEQ CKD1 ; IF EQ - 0 BLOCKS USED DEC R1 ; WAS THE VALUE 1? BNE REJECT ; IF NE NO - REJECT FILE -/5$:/ -/BLO...UNPK0/,. BLO 100$ ; IF LO NO - IGNORE THIS ONE -/BNE...UNPK0/,. BNE 100$ ; IF NE NO - IGNORE THIS ONE -/LSTENT:/+1,.,/;BT002/ BEQ 2$ ; IF EQ NO - LIST IT JMP LSTE1 ; OTHERWISE, BRANCH AROUND 2$: -/PTNAM:/ -/BEQ...15$/ BIT #HDSW,SWMS3$ ; /HD HEADER SWITCH SPECIFIED? BEQ 15$ ; IF EQ NO - OMIT COMMAND LINE -/SIZECV:/,,/;BT001/ -/10$:/ -/MOV...