Subversion Repositories SvarDOS

Rev

Rev 388 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 388 Rev 389
Line 19... Line 19...
19
 * /S Displays files in specified directory and all subdirectories.
19
 * /S Displays files in specified directory and all subdirectories.
20
 * /B Uses bare format (no heading information or summary)
20
 * /B Uses bare format (no heading information or summary)
21
 * /L Uses lowercases
21
 * /L Uses lowercases
22
 */
22
 */
23
 
23
 
24
#define cmd_dir_attr_ro   1
-
 
25
#define cmd_dir_attr_hid  2
-
 
26
#define cmd_dir_attr_sys  4
-
 
27
#define cmd_dir_attr_vol  8
-
 
28
#define cmd_dir_attr_dir 16
-
 
29
#define cmd_dir_attr_arc 32
-
 
30
 
-
 
31
 
-
 
32
static int cmd_dir(struct cmd_funcparam *p) {
24
static int cmd_dir(struct cmd_funcparam *p) {
33
  const char *filespecptr = "*.*";
25
  const char *filespecptr = "*.*";
34
  struct DTA *dta = (void *)0x80; /* set DTA to its default location at 80h in PSP */
26
  struct DTA *dta = (void *)0x80; /* set DTA to its default location at 80h in PSP */
35
 
27
 
36
  if (findfirst(dta, filespecptr, cmd_dir_attr_ro | cmd_dir_attr_hid | cmd_dir_attr_sys | cmd_dir_attr_dir | cmd_dir_attr_arc) != 0) return(-1);
28
  if (findfirst(dta, filespecptr, DOS_ATTR_RO | DOS_ATTR_HID | DOS_ATTR_SYS | DOS_ATTR_DIR | DOS_ATTR_ARC) != 0) return(-1);
37
 
29
 
38
  outputnl(dta->fname);
30
  outputnl(dta->fname);
39
 
31
 
40
  while (findnext(dta) == 0) outputnl(dta->fname);
32
  while (findnext(dta) == 0) outputnl(dta->fname);
41
 
33