summaryrefslogtreecommitdiffstats
path: root/fs/fdos/fdos.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/fdos/fdos.c')
-rw-r--r--fs/fdos/fdos.c175
1 files changed, 0 insertions, 175 deletions
diff --git a/fs/fdos/fdos.c b/fs/fdos/fdos.c
deleted file mode 100644
index a29f43d978..0000000000
--- a/fs/fdos/fdos.c
+++ /dev/null
@@ -1,175 +0,0 @@
-/*
- * (C) Copyright 2002
- * Stäubli Faverges - <www.staubli.com>
- * Pierre AUBERT p.aubert@staubli.com
- *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- */
-
-#include <common.h>
-#include <config.h>
-
-#if (CONFIG_COMMANDS & CFG_CMD_FDOS)
-#include <malloc.h>
-#include "dos.h"
-#include "fdos.h"
-
-
-const char *month [] = {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};
-
-Fs_t fs;
-File_t file;
-
-/*-----------------------------------------------------------------------------
- * dos_open --
- *-----------------------------------------------------------------------------
- */
-int dos_open(char *name)
-{
- int lg;
- int entry;
- char *fname;
-
- /* We need to suppress the " char around the name */
- if (name [0] == '"') {
- name ++;
- }
- lg = strlen (name);
- if (name [lg - 1] == '"') {
- name [lg - 1] = '\0';
- }
-
- /* Open file system */
- if (fs_init (&fs) < 0) {
- return -1;
- }
-
- /* Init the file descriptor */
- file.name = name;
- file.fs = &fs;
-
- /* find the subdirectory containing the file */
- if (open_subdir (&file) < 0) {
- return (-1);
- }
-
- fname = basename (name);
-
- /* if we try to open root directory */
- if (*fname == '\0') {
- file.file = file.subdir;
- return (0);
- }
-
- /* find the file in the subdir */
- entry = 0;
- if (vfat_lookup (&file.subdir,
- file.fs,
- &file.file.dir,
- &entry,
- 0,
- fname,
- ACCEPT_DIR | ACCEPT_PLAIN | SINGLE | DO_OPEN,
- 0,
- &file.file) != 0) {
- /* File not found */
- printf ("File not found\n");
- return (-1);
- }
-
- return 0;
-}
-
-/*-----------------------------------------------------------------------------
- * dos_read --
- *-----------------------------------------------------------------------------
- */
-int dos_read (ulong addr)
-{
- int read = 0, nb;
-
- /* Try to boot a directory ? */
- if (file.file.dir.attr & (ATTR_DIRECTORY | ATTR_VOLUME)) {
- printf ("Unable to boot %s !!\n", file.name);
- return (-1);
- }
- while (read < file.file.FileSize) {
- PRINTF ("read_file (%ld)\n", (file.file.FileSize - read));
- nb = read_file (&fs,
- &file.file,
- (char *)addr + read,
- read,
- (file.file.FileSize - read));
- PRINTF ("read_file -> %d\n", nb);
- if (nb < 0) {
- printf ("read error\n");
- return (-1);
- }
- read += nb;
- }
- return (read);
-}
-/*-----------------------------------------------------------------------------
- * dos_dir --
- *-----------------------------------------------------------------------------
- */
-int dos_dir (void)
-{
- int entry;
- Directory_t dir;
- char *name;
-
-
- if ((file.file.dir.attr & ATTR_DIRECTORY) == 0) {
- printf ("%s: not a directory !!\n", file.name);
- return (1);
- }
- entry = 0;
- if ((name = malloc (MAX_VNAMELEN + 1)) == NULL) {
- PRINTF ("Allcation error\n");
- return (1);
- }
-
- while (vfat_lookup (&file.file,
- file.fs,
- &dir,
- &entry,
- 0,
- NULL,
- ACCEPT_DIR | ACCEPT_PLAIN | MATCH_ANY,
- name,
- NULL) == 0) {
- /* Display file info */
- printf ("%3.3s %9d %s %02d %04d %02d:%02d:%02d %s\n",
- (dir.attr & ATTR_DIRECTORY) ? "dir" : " ",
- __le32_to_cpu (dir.size),
- month [DOS_MONTH (&dir) - 1],
- DOS_DAY (&dir),
- DOS_YEAR (&dir),
- DOS_HOUR (&dir),
- DOS_MINUTE (&dir),
- DOS_SEC (&dir),
- name);
-
- }
- free (name);
- return (0);
-}
-
-#endif