Z80 Pack with Linux


Introduction to the Z80 Pack with Linux

In this post, I’ll discuss the Z80 Pack with Linux. This should work with other operating systems such as BSD, OSX, and Windows with Cygwin. The purpose of this post is to simply show you some packages that are in the Z80Pack. There are a lot of good posts that show in detail how to install each package. Basically, the Z80 Pack gives you the experience of working with home computers from the 70’s era. This pack contains emulators for older systems such as the Altair, IMSAI, Z80 Computer, as well as CP/M.

Originally, without a physical terminal, you program the Altair and IMSAI via front panel switches. However, if you had a terminal, it was definitely a luxury at the time.

Download the Z80 Pack

Currently, you can download the Z80 Pack from: https://www.autometer.de/unix4fun/z80pack/ftp/. In this case, I’m using version 3.5. Once you download the emulator in Linux, you can extract it using tar xzvf (filename).

There are already good instructions on the internet for compiling the source of the Z80 pack. I’ll post some good links below in each section to get you started.

After you extract the z80 pack, simply rename it to “z80Pack”, and move it to your home directory. After that you’ll have a good start on setting up each type of emulator.

CP/M under the Z80 Pack with Linux

While in your linux terminal, you will need to build the source code. Basically, you simply go into the srcsim, and srctools directory within the cpmsim folder. After that, you can build the files to make the cp/m emulator work.

Lawrence Woodman wrote some good articles at TechTinkering, and you can follow his instructions at this link.

Another good article is by Kenneth Boone on how to run Zork1 under CP/M. This is a good game to set up just to ensure your CP/M is working under Linux. However, if you start cpmsim using the “work” script in the previous link, be sure you understand where your “i” drive is located.

Altair and IMSAI Simulators

The Z80 Pack also contains simulators for the Altair 8800 and IMSAI 8080.

In order to use these, you will want to compile the frontpanel code which is in a separate folder. In this case, I had a hard time getting the Altair 8800 to power on. I quickly realized that I had to click the word “ON” and not the power switch itself.

Again, TechTinkering has a good article on how to compile this code. Once you get the hang of one of the packages, you’ll be able to compile the others without the need to follow many instructions.

The IMSAI simulator works in much the same way.

As you can see, the IMSAI simulator has a 3d mode if you wish to use it. You can actually spin the model around to see every side of the IMSAI 8080.

Z80 Simulator

The Z80 Simulator compiles in much the same way as the others. With all of these different emulators available, you will get a feel for how computing was in the 70’s and early 80’s.

Summary

In short, to get the Z80pack working, you simply download and extract it. After that you compile whatever sections you wish to use. Together, these emulators give you a good understanding of how computers actually do work. In today’s world, computers tend to use a lot of “smoke and mirrors” to make things easier for the programmer. These emulators will help you to understand that computers are simply a list of memory addresses. Each address contains either a command or data. The data can either be a value on it’s own, or it can point to another variable memory location that contains a value. Each processor contains instructions that allow your program to execute. These are simply represented by an opcode in your program.

If you are interested in building a physical emulator of a computer from the same era, you might start with the Kim Uno. This simply uses an arduino pro mini. Sometimes, you might find a kit on ebay. Alternatively, can download the gerber files, or simply build the board by hand!

— Ricky Bryce

For Customized automation training, visit my employer's website at http://atifortraining.com!

Leave a comment

Your email address will not be published. Required fields are marked *