; TITLE "SDIR - Syslib 4.0" NAME ('DIRF') ;================================================================= ; The Libraries, Version 4, (C) 1989 by Alpha Systems Corp. ;----------------------------------------------------------------- ; Author : Harold F. Bower ; Derived from SDIR.Z80 Ver 1.5 by Richard Conn ; Date : 17 Sep 89 ; Version : 1.7 ; Module : SDIR ; Abstract: This module contains the General-purpose directory ; select routine DIRF which reads the directory of a specified ; drive and return with all entries satisfying specified sort ; parameters, in sorted order as an array in memory. It ; returns records which do NOT contain enough information to ; derive file sizes. It is faster than DIRFS which will ; return information for file sizing. ; Revision: ;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ; Module Entry Points PUBLIC DIRF ; From SYSLIB Get.. EXT DBUFFER, DIRLOAD, SELFLG, DIRF0 .Z80 CSEG ;=============================================================== ; NAME - DIRF (NO Sizing Data) ; Entry: HL - Points to Buffer starting address ; DE - Points to FCB for selection ; A - Contains Select flag as: ; Bit 7 - Select Non-System Files ; Bit 6 - Select System Files ; Bit 5 - Select All Users ; Bits 4-0 - User Number ; Exit : HL - Points to Fiest File in Buffer ; BC - Number of files in Buffer Array ; A = 0 and Zero Flag Set (Z) if TPA Overflow ; Else Zero Flag Reset (NZ) ; Uses : AF,BC,HL ; Special Requirements: None ;=============================================================== DIRF: PUSH DE ; Save ptr to FCB LD (SELFLG),A ; Save Select Flag for DIRSEL CALL DBUFFER ; Get ptrs CALL DIRLOAD ; Load Dir w/o sizing information (fast load) JP DIRF0 ; ..and continue in another module END