Interactive File Managers on CP/M

CP/M has a number of interactive file managers that can be used to make it easier to handle common file operations rather than using the command line driven commands supplied with CP/M such as: DIR, ERA, PIP, REN, TYPE.

Early programs

One of the first interactive file management programs was CLEANUP. This was a very simple program that just went through each file in a directory and asked you whether you wanted to erase or view each file in turn.

After this came WASH, by Michael J. Karas of Micro Resources, which states in the accompanying documentation that it was inspired by CLEANUP. Like CLEANUP, WASH presents each file to the user in turn, but it does this in a circular list and also allows you to go back up the list. WASH adds some extra functionality as well such as the ability to rename and copy files as well as send files to a printer or punch device.

SWEEP, by Robert Fisher, uses the same basic circular file presentation as WASH. Its biggest addition is the ability to tag files so that you can mass copy or erase them. It also supports user areas allowing you to switch to different user areas and copy files back and forth between them.


Dave Rand created NSWEEP which is very similar to SWEEP, but it is much faster, smaller and generally more polished. It also adds a few extra features:

  • It can move files from one user area to another, using the rename function, without having to copy and delete
  • It can squeeze and unsqueeze files
  • It displays attributes in file listing by highlighting characters in a filename and allows you to change those attributes

NSWEEP is a great file manager with lots of features and was pretty popular at one time. However, v2.07 has a bug when used on CP/M Plus while copying a file to a disk that isn't ready as it will corrupt the source file and other parts of the source disk. This is a shame and there was an unofficial v2.08 release which purported to fix this, but apparently that introduced some other serious bug.


In the documentation for B29 Gary Conway, its author, states how much he liked NSWEEP but wanted to add a few extra things such as a real-time clock and better printing support. In the end he decided to write his own version of a SWEEP style program with the extra features that he wanted. The result is a program very similar to NSWEEP, that in its later versions also added support for .LBR files allowing you to view and extract its members.

B29 is a good alternative to NSWEEP but unfortunately it has a bug when you move a file from one user area to another, where it deletes the file in the source user area but doesn't move it to the new user area.


Frank Gaudé states in the documentation for DISK7 that it was based on common ideas presented in CLEANUP, WASH and SWEEP. This is a much smaller program than B29 or NSWEEP and therefore has less features. However, it presents a nice clean interface to the user and what it does do it does well.


VFILER, by Richard Conn, follows 'in the footsteps of SWEEP, CLEAN [sic] and DISK' and tries to make it more user friendly by using direct cursor control to create a screen oriented file manipulation utility. Instead of going from one file to the next as in the other utilities, VFILER presents a screen of file names that you can move between using Wordstar cursor control keys. It requires a Z80 processor to run and has features similar to DISK7.

Basic Information

Below is some basic information about each utility that you may find useful.

NameSize (Kb)8080 Compatible

Video of the Interactive File Managers

You can see these file managers in action below.

Creative Commons License
Interactive File Managers on CP/M by Lawrence Woodman is licensed under a Creative Commons Attribution 4.0 International License.

Share This Post


Related Articles

Modula-2 Compilers on CP/M

Modula-2 is a great language in general and is a good choice for programming on CP/M. There are three good compilers available for CP/M which all require a Z80 processor and we'll compare each in turn...   Read More

XCCP: A Shell Extension for CP/M

XCCP describes itself as an Extended Console Command Processor for CP/M. It supports the 8080 and v1.0 was released by Anton R. Fleig in 1984. Like EPEX, XCCP doesn't require installing so we can begi...   Read More

EPEX: An Environment Extension for CP/M

Epex is an evironment extension for CP/M. It stands for Environmental Processing EXecutive, and v1.1 was released by James H. Whorton in 1986. It can make using CP/M much more comfortable at the cost...   Read More

File Comparison Utilities on CP/M

There are many utilities available for CP/M to compare the differences between files and to distribute those differences. All the utilities in this article can be found on the Walnut Creek CD. Binary ...   Read More

Breakout Style Games on CP/M

Breakout style video games were pretty popular at one time both at Arcades and on home computers. The games are based on a simple concept where you have to destroy a group of 'bricks' at the top of t...   Read More