#!/bin/sh
#
# mcheck [ <DOS drive letter> ]
#
# Read every file on an MS-DOS formatted disk to make sure they're good.
#
# Requires: mdir and mread utilities from mtools in user's path.
#
# 1994/02/19    DCN    Created
# 1994/??/??    ALK    Added case statement for results of mdir
# 1994/09/24    DCN    Cleanup (5 minutes on top of the 30 seconds creating it)
# 1994/12/01    DCN    Better comments, notices to stderr
#
# Copyright (C) 1994 David C. Niemi (niemi@tuxers.net)
# The author requires that any copies or derived works include this
# copyright notice; no other restrictions are placed on its use.
#

set -e
set -u

DRIVE=${1:-'A:'}
mdir ${DRIVE}'*'
case $? in
2)
    echo "No files on disk." >&2
    exit 0
    ;;
1)
    exit 1
    ;;
0)
    ;;
esac

echo >&2; echo "Verifying files on drive ${DRIVE}..." >&2
if mtype -/ ${DRIVE}\* > /dev/null; then
    echo "Disk in drive ${DRIVE} is OK." >&2
    exit 0
else
    echo "Disk in drive ${DRIVE} has errors." >&2
    exit 1
fi

## NOTREACHED ##