• Please review our updated Terms and Rules here

Unix on a Z80 machine

Ok, let me rework ziloo's question by asking: "Which operating system on a Z80 computer would be easiest to learn and use for someone who really likes how UNIX works and ideally wants something that can be controlled by a similar set of commands and methods of operation?"

Of course it may depend a little on which Z80 based computer one is aiming at, and whether it should be a system one might've used 25-30 years ago or something that just happened to be released last month. I'm also making parallels to that discussion a couple of weeks ago about which operating systems are available today for both Commodore 64 and modern X86 PC's. In that case it was an user who would like the same or very similar user interface for both types of computers, in order to only learn one way of operation even though a multi-core, gigahertz boosted PC of today is capable of so much more and so much different things than a C64 can do. While I must admit having a bit of trouble understanding why one would want to run an ill supported OS on the C64 and an equally ill supported and greatly limiting system on your PC, the question still holds some legitimicity.

And yes, before we know it there will be someone who has set up their ZX-81 with a web server. Probably not a stock '81, but rather one with a turbo boosted Z80, additional RAM and storage options. As seen in other threads, there are people still developing upgrades and add-ons that at least to a small amount expands on this very simple platform, never really designed to be a workhorse.
 
30 years ago, if you were thinking of running a UNIX-like operating system you would have the money to install "appropriate" hardware, which would have been an S100 system conforming to the ieee 696 standard, this standard allowed for one bus master and up to 16 slave processors, which could have been 6Mhz z80s or 8086s or a mix of processor types.
Each slave processor would have had its own on-board memory and 2 serial ports making it a complete single board computer, you would assign one or two tasks to each processor.
S100 systems could have a colour graphlcs board on the bus but most systems would have used monochrome alphanumeric terminals connected to the serial ports, it was also possible at the time to buy very expensive colour graphics terminals.
Such a system would also have used a hard drive or two for storage.
You could build such a system today using new or old cards, but it is cheaper to emulate the whole thing on a PC.
 
Hi, one of my hopes for the S100computers.com and N8VEM S-100 project is to get a Unix or Linux type OS running on the S-100 68K CPU board. Unix type OS generally need an MMU and one of the builders made exactly that for an early version of the S-100 68K CPU board. Currently the S-100 68K CPU board is in its third round of prototype board and not ready for build and test quite yet. However, it is fully IEEE-696 compatible and designed to work as a multi-processor.

In theory at least you could boot your S-100 system using the S-100 Z80 CPU board then switch over to S-100 68K & MMU board running a Unix/Linux type OS. This is not *exactly* what the OP is asking for but getting closer. Actually I suspect the recent S-100 8086 CPU board could run a ucLinux type OS which is even closer.

The key here is to get the S-100 68K CPU third prototype board out of dry dock and into the builders for build and test. That will be a while since the PCB is a mess after the revisions to support IEEE-696 TMI modes. :-( We'll see how this turns out.

Thanks and have a nice day!

Andrew Lynch
 
I did some reading. Cromemco calls the Z80 Cromix "Unix-like" and Cromix Plus "Cromemco Unix". So at least they weren't shy about the relationship.

Cromix it is, then.
 
Would it at all be possible Cromemco bought some license from AT&T or in other ways made a deal that actually allowed them to market and sell a Unix inspired system without being compliant to the by-then specification?
 
That's very likely. Until 1982, AT&T could not legally sell Unix for a profit, as it was a regulated monopoly, prohibited from engaging in business not associated with telecommunications. The 1982 consent decree's purpose was to allow AT&T to sell computers (that worked out well, didn't it?) in exchange for giving up their monopoly position. Up until then, AT&T stock was one of the soundest and most reliable investments one could make. Bell Labs in Murry Hill, NJ was where several groundbreaking technological advances in science and technology occurred. That's all gone now.

For example, in the late 70s and early 80s, if you wanted to use BSD, you had to obtain a Unix license from AT&T.

Bottom line is, after 1982, AT&T was no better at selling Unix than they were at selling computers. Very notable was their attempt at a per-seat license fee for Unix.
 
Would it at all be possible Cromemco bought some license from AT&T or in other ways made a deal that actually allowed them to market and sell a Unix inspired system without being compliant to the by-then specification?
Quite possibly; that's exactly what they did with CP/M, although of course in that case there was no 'porting' involved.

They bought a licence from DR, added some system calls, made the UI a little friendlier, and called it CDOS:

"The Cromemco Disk Operating System (CDOS) is an original product designed and written in Z80 machine code by Cromemco Inc.... Cromemco is licensed by Digital Research, the originator of CP/M, for use of the CP/M data structures and user interface..."

That meant that you could run CP/M programs in CDOS (and Cromix) but you couldn't necessarily run CDOS programs (if you could find any ;-) )in CP/M. Unfortunately, whether due to licence restrictions or whatever, Cromemco did not keep up with CP/M revisions so programs that took advantage of the features of CP/M 2.2 and later needed third-party software to run in Cromix.

Since Cromix copied the UNIX concepts (and names) of inodes, pipes, root/group/user privileges etc. (before 1982), I would think that there was also some sort of arrangement with AT&T at the time
 
Last edited:
How Unix-like is Xenix? I have this for my Lisa 2. I must play around with it sometime.

Xenix is not only "unix-like", but also it is "unix-descendant".

I think Xenix for the Apple Lisa is derived from UNIX System III. Quite primitive and limited (by today's standards), but a real true UNIX nonetheless.
 
Hi friends out there !

Is anyone willing to implement any kind of UNIX / UCLINUX or other ..IX on this Z80 machine: http://www.train-z.de/train-z/index.html

From your discussion I'm reasoning that it is possible. Since I'm a better hardware guy than a programmer I'd be glad if someone gets challenged by this idea :)

cheers Mario
 
I'm beginning to wonder if the op was, in fact, a very subtle troll (genius, z!). If I had a nickle for every flame-war I've started in usenet with such 'simple' questions...some of which might be found to still smolder to this day (if I were interested enough to look).

--T
 
I don't know. But as to the original question, if you've got a Z80 with 64K and a timer interrupt, you can probably run UZI, which is a real implementation of a honest to gosh Unix V5.
 
thanks for the link. That seems the right direction. I'll send the machine to the one who gives it a try :)
cheers from Germany
 
I don't know. But as to the original question, if you've got a Z80 with 64K and a timer interrupt, you can probably run UZI, which is a real implementation of a honest to gosh Unix V5.

Hello Chuck(G) and thanks for the UZI info. It may be a good start to try and port something like that(when I have some spare time) on one of my Z80 machines as I already own a Willem programmer.
 
Uzix 1 Technical information
Written by Adriano C. R. da Cunha


How it works:

UZIX uses MSX2 memory mapper to achieve multiprocessing. On PC UZIX use additional PC memory for swapping. In both cases UZIX use 64K of virtual address space (full Z80 space or one full segment on PC).
UZIX itself occupies the upper 32K of address space, and the currently running process occupies the lower 32K.
UZIX does need some additional hardware support. First, UZIX uses system clock that provide a periodic interrupt. Also, the current implementation uses an additional real-time clock to get the time for file timestamps, etc. The current TTY driver assumes an polling-driven buffered keyboard, which should exist on most systems.

How UZIX is different than real UNIX:

UZIX implements almost all of the 7th Edition AT&T UNIX functionality. All file I/O, directories, mountable file systems, user and group IDs, pipes, and applicable device I/O are supported. Process control (fork(), execve(), signal(), kill(), pause(), alarm(), and wait()) are fully supported. The number of processes is limited only by the swap space available, with a maximum of 31 processes (total of 1024k memory). As mentioned, UZIX implements UNIX well enough to run the Bourne Shell in its full functionality. The only changes made to the shell's source code were to satisfy the limitations of the C compiler.

Here is a (possibly incomplete) list of missing features and limitations:

* The debugger- and profiler-related system calls do not exist.
* The supplied TTY driver is bare-bones. It supports only one port.
* Inode numbers are only 16-bit, so filesystems are 32MB or less.
* File dates are not in the standard format. Instead they look like those used by MS-DOS.
* The 4.2BSD execve() was implemented. Additional flavors of exec() are supported by the library.
* The necessary semaphores and locking mechanisms to implement reentrant disk I/O are not there. This would make it harder to implement interrupt-driven disk I/O without busy-waiting.


from http://msxland.blogspot.com/2010/03/uzix-1-technical-information.html
 
I recall when this was discussed here before, someone mentioned UZI (Unix Z80 Implementation) which is a real albeit tiny Unix. More about it here, including the source http://www.dougbraun.com/uzi.html
Personally I'd love to get LSX or Mini Unix running on my 11/05 someday :)

Steve.

EDIT: OOps never mind, posted to the beginning of this thread from the 'Whats New' stream, when this _was_ the thread that discussed UZI. ...Brain FAIL today ;)
 
EDIT: OOps never mind, posted to the beginning of this thread from the 'Whats New' stream, when this _was_ the thread that discussed UZI. ...Brain FAIL today ;)

It's okay--I was wondering the other day if anyone was actually running UZI now. Part of the problem is that nowadays, the emphasis is more on applications availability than OS.
 
Back
Top