FSIO(1)

NAME
fsio - Foreign File System I/O

SYNOPSIS
fsio [ -qv ] [ cmdfile ]

DESCRIPTION
fsio is a utility for manipulating foreign file systems within container files used by various emulators such as SIMH. If cmdfile is given, commands will be read and executed from the command file otherwise it will prompt the user for commands with fsio>

-q     - Be quiet, do not output unsolicited text during processing

-v     - Echo each command as it is read from a command file

Each command occupies one line and has a common format:

    verb [switches] args ...

The following verbs are supported:
    mount - make a container file available to fsio
    umount - remove knowledge of a container file from fsio
    newfs - create and new container and empty file system
    set - set parameters on a mounted file system
    info - display information about the container file system
    dir - list a directory
    dump - dump a file in hex or octal
    copy - copy a single file
    type - type a file on the terminal
    delete - delete a file
    status - display currently mounted file systems
    do - echo and execute commands from a file
    help - display help on using fsio
    exit - terminate fsio (quit is an alias for exit)

The following commands are only accepted by file systems which are on magtape devices:
    rewind - position the tape to the start of the data stream
    eom - position the tape to the end of the data stream
    skipf - position the tape by skipping forward over files
    skipr - position the tape by skipping backward over files

COMMANDS

mount [-dfrx] [-t type] dev[:] file type
    Make the container file available to fsio.
        -d - generate debug output on stdout
        Use environment variable FSioDebugLog to
        override stdout
        Only available if built with DEBUG enabled
        -f - bypass home block validation (RT-11 only)
        -r - mount file system read-only
        -t type - specify optional disk type
        -x - dosmt will use extended filenames when writing
        dev[:] - user supplied name for the mount
        file - name of the container file
        type - type of container file system

umount dev[:]
    Remove knowledge of the container file from fsio.
        dev[:] - name supplied on a previous mount

newfs [-t type] [-e count] file type
    Create an new container with an empty file system.
        -t type - use alternate, file-system dependent size
        -e n - Specify extra space for directory entries (RT11, OS/8)
        file - name of the container file
        type - type of container file system

set dev: args ...
    Set parameters on a mounted file system.
        dev: - name supplied on a previous mount
        args ...- arguments are passed on to the file system

info dev:
    Display information about the file system(s) within the container file.
        dev: - name supplied on a previous mount

dir [-fn] dev:dirspec
    List the contents of a specific directory.
        -f - display a full (vs. brief) directory
        -n - don't rewind tape before listing directory
        dev: - name supplied on a previous mount
        dirspec - filespec to display, may include wildcards

dump [-bcdnwx] dev:filespec
    Dump the contents of the file in octal, hex or characters.
        -b - dump byte (8-bits) at a time
        -c - dump in character format
        -d - dump double-word (32-bits) at a time
        -w - dump word (16-bits) at a time
        -x - dump in hex format (default is octal)
        -n - don't rewind magtape before looking for file
        dev: - name supplied on a previous mount
        dirspec - filespec to dump

copy [-anpc blks] dev1:srcfile dev2:dstfile
    Copy a file.
        -a - copy in ASCII mode (translates line endings)
        -p - pad the file with NULLs
        -n - don't rewind magtape before looking for input file
        -c blks - make contiguous file of specified size
        dev1: - name supplied on a previous mount
        srcfile - source file to copy
        dev2: - name supplied on a previous mount
        dstfile - destination file to copy

type [-n] dev:filespec
    Types the contents of the file on stdout.
        -n - don't rewind magtape before looking for file
        dev: - name supplied on a previous mount
        filespec- filespec to type

delete dev:filespec
    Deletes the specified file.
        dev: - name supplied on a previous mount
        filespec- filespec to delete

status
    Displays the currently mounted file system(s).

do [-q] cmdFile
    Echo and execute commands from a file.
        -q - don't echo commands as they are read
        cmdFile - file containing fsio commands

help
    Displays help text on stdout.

exit
    Causes fsio to exit (the quit command has the same effect).

rewind dev:
    Positions the device to the start of the tape.
        dev: - name supplied on a previous mount

eom dev:
    Positions the device to the end of the tape.
        dev: - name supplied on a previous mount

skipf dev: n
    Positions the device by skipping forward over files.
        dev: - name supplied on a previous mount
        n - # of files to skip (must be > 0)

skipr dev: n
    Positions the device by skipping backward over files.
        dev: - name supplied on a previous mount
        n - # of files to skip (must be > 0)

NOTES
If the "dev:" prefix is not present on a file specification, a file in the host file system is used. It is also possible to use the "local:" prefix to reference local files.
The -c switch on the copy command is used to determine the number of contiguous blocks allocated to the destination file before starting the copy. This function depends on the value of blks:
0 - Use size of source file, if 0 then default to 1 block
!=0 - Use larger of blks and size of the source file

SUPPORTED FILESYSTEMS
dos11 - DOS/BATCH-11 on RF11, RK05 or RP03
rt11 - RT-11 including large drives with multiple partitions
dosmt - container file in DOS-11 magtape format
os8 - OS/8 on RX01, RX01 or RK05

SEE ALSO
fsio-dos11(1), fsio-rt11(1) fsio-dosmt(1) fsio-os8(1)

AUTHOR
John Forecast, <john@forecast.name>