MTS, the Michigan Terminal System, is an operating system running on IBM System/360 compatible mainframes dating from the 1960s. It ran at a number of universities in the US, UK and Canada until the late 90s, It provided batch and interactive access with a large number of programs and tools included in the standard distribution.

It's now possible to run MTS without having your own mainframe, thanks to two projects:

  • The Hercules S/390 emulator ( runs on Linux, Windows and Mac and simulates the hardware and peripherals such as disks and tapes needed to run MTS.

  • The complete source code, object code and a wealth of documentation is freely available under the Creative Commons Attribution 3.0 license (CC BY 3.0) at

So why should you try MTS today?

  • Learn how mainframes were operated and the experience of being a user on a large shared system with limited resources.

  • Experiment with some of the programming languages available in the distribution - eg Algol. APL, BCPL, MAD, Plus, PL/1, SNOBOL.

  • History is often neglected in computer science - by learning more about the past we get a better understanding of why things are like they are today. Compared to today, where there is only really Windows and Unix derivatives (Linux, BSD, Mac), back in the 60s and 70s there was an explosion of new operating systems and ideas and it's important to get a flavour of what was going on then.

Learning more about MTS

First read the wikipedia article and items linked from there.

Next go to the MTS Archive - this site has done an amazing job of finding and uploading manuals, tutorials, memos and newsletters about MTS. I had never used MTS before this year and the information on this site was sufficient to understand the system and get it running.

Then grab a copy of Hercules, a 3270 terminal emulator and the D6.0A distribution of MTS and get it working on your PC.

The Up and Running guide on this blog goes through the process in more detail.

This blog

In this blog I will provide tips and tricks for using MTS and share what I have discovered running the system. There are four main sections.

  • Up and Running - how to install and run MTS for the first time.
  • Using MTS - a tour of MTS commands, input/output and using tapes.
  • MTS System Admin - a closer look at configuring MTS and its services.
  • Programming Languages - a review at many of the programming languages installed with MTS, including language features and creating simple programs.

I'd love to have your feedback, so if you have any suggestions, questions or corrections please leave a comment.