Close
0%
0%

STEM

A File Manger for Altair 8800 and CP/M 2.2 written in 8080 Assembler

Similar projects worth following
89 views
0 followers
Programming like it's 1975! This is a simple TUI file manager for an Altair 8800 or similar computer running CP/M 2.2. I wrote it entirely in 8080 assembly language, just for fun (as one does). Current capabilities include listing files on all valid drives; copy files from one disk to another, from one user area to another on the same disk, or to a new named file on the current disk; delete files; rename files; display binary and ASCII files; and display disk information. Full details in the github repo

This project is a file manager for an Altair 8800 running CP/M 2.2.

By file manager, I mean something like XTreeGold, Midnight Commander, etc.; a text interface based utility to list files on disks and perform operations such as copy, delete, display and rename. Of course, there are CP/M "built-in" commands to do most of these things, and PIP to do the rest, but I miss my days of XTree on DOS.

My goal was the refresh my assembler skills.  I also wanted to go out of my way to clearly document the code as a way of helping others who may be interested in learning assembly code.

The program name is STEM because CP/M doesn't have subdirectories, so anything with "tree" in the name would be kind of dumb :)

STEM.ASM

asm - 131.00 kB - 10/11/2026 at 23:28

Download

  • Version 0.9.7 released!

    Matt Brugman • 3 days ago • 0 comments

    Functionality of this release includes:

    • Copy files:
      • copy to another disk
      • copy to another CP/M User Area
      • copy to a different filename on current disk
    • Delete files
    • Rename files
    • Display ASCII or Binary files
    • Display disk information

    A couple of bug fixes:

    • Filename display did not mask off attribute bits
    • Removed limitation that drives only be in the range of A: to D:, now all 16 possible drives are accessible (A: to P:)

    Release on Github is here

  • Version 0.9.3 released!

    Matt Brugman • 09/03/2026 at 20:28 • 0 comments

    Head on over to the Release tab on Github to grab the release.  This version includes:

    • Delete one or more files
    • Copy one or more files (same disk or to a different disk)
    • Rename one or more files
    • Display one or more files (best guess as to whether display paged hex dump or paged ascii text)
    • Help information

  • File rename is now implemented

    Matt Brugman • 08/26/2026 at 20:58 • 0 comments

    The latest in github includes code to rename files! :)

View all 3 project logs

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates