Dell UNIX Lives Again!

(please note that this is a guest post from Antoni Sawicki)

Dell UNIX is so ultra rare among rare Unix species that it doesn’t even have a Wikipedia entry. I have been hunting this elusive but important piece of computer history for well over 15 years now. Fortunately thanks to Charles H. Sauer and his excellent blog post I was finally able to lay my hands on disk and tape images and the restoration process begun.

The install tape

The system can be installed from either a tape or network server (presumably NFS). Unfortunately no virtualization software can emulate a tape drive. Hopes for a network install are even slimmer since the required network support floppy disk has been lost and chances of suitable Ethernet driver working in Bochs or Qemu are equal to that of finding the lost floppy disk.

I have decided to try a hard disk image from a readily pre-installed system. The original Dell 486 workstation had a 1GB SCSI hard disk. Unfortunately neither Dell UNIX supports LBA mode nor Qemu/Bochs support the Adaptec 154x controller required by the OS.

As all normal install options have been exhausted, the only option left was to use a second hard disk image as source of cpio archive files. Booting from the two install floppies and attaching two disk images was a snap. The next step was to inject the tape “file” in to a right place on the disk, so it can be read by cpio command. A hard disk in Dell UNIX is pretty much unusable without a valid SysV partition and VTOC. Fortunately dellsetup command does it all for you. Once VTOC was put in place I’ve attached the transfer disk image as a loopback device in my host OS. In couple of iterations I was able to aim the host os dd if=file1 of=/dev/loop0 bs=512 seek=offset at the right place, which you work out using prtvtoc /dev/rdsk/1s0 command. Then cpio -ict < /dev/dsk/1s1 was able to list contents of the emulated tape… with errors…

In my infinite wisdom, for some unknown reason I’ve assumed that LBA addressing is required above 540MB. So to be on a safe side I have made the hard disk images 512 MB. What a mistake it was! I have lost several hours trying to figure out cpio header errors coming from the disk… By pure coincidence, while the tape archive was installing (with errors) I was researching for this very blog article and found that LBA starts at 504 MB… Recreating the hard disk images just few MB smaller took all tape and prior boot problems away!

Once the cpio archive was extracted I have made few final touches taken from the original tape install script. After a reboot Dell UNIX booted perfectly. You can experience this by using the firstboot image file. The final part of installation was injecting the second tape file containing System V PKG file to the transfer disk image and running pkgadd -d /dev/dsk/1s1. This is what’s included on allsoft.img.

Dell Unix at First Boot

Some final notes on running the OS:

  • To enable mouse to work:
    • Qemu just add “-chardev msmouse,id=msmouse -device isa-serial,chardev=msmouse” to the launch arguments.
    • Bochs add to the config file:
      mouse: type=serial, enabled=1      
      com1: enabled=1, mode=mouse
      then you have to kill mousemgr process and prevent from starting by deleting /etc/rc2.d/S25mse
      then edit /usr/lib/X11/Xconfig:
      disable Xqueue      
      enable Microsoft Mouse
  • To enable keyboard to work correctly in VirtualBOX start with Num Lock OFF.
  • You can use qemu-img utility to convert the image to VMware vmdk to use in VirtualBox.
  • To run X window type startx

X11 and all its glory

  • To attach it to internet use SLIP as there is no working Ethernet driver.  Contrary to most UNIXen of the time, the command is not slattach, but rather slipattach.  Thankfully it does work the same way.  I have found that running Dell Unix with VirtualBOX, along with Windows NT 4.0 I was able to connect into the Dell Unix VM, and get network access.  Just set the two VM’s up for a named pipe (\\.\pipe\dellunix) and make one of them a server, and start that VM 1st.  The steps to prepare Windows NT have been outlined before.

Telnet via SLIP

Legal disclaimer: Dell UNIX is a commercial software and should not be distributed without manufacturers permission. However as the operating system has been dead for 20 years and with a long tradition from Unix Heritage Society and Bitsavers I’m publishing this in good faith under abandonware category. If Dell or any other copyright holder wishes this software removed, please let me know.

Attached are:

  • firstboot image
  • all (pkg) software installed
  • setup instructions if you wish to install from scratch.

Download:

You may also be interested in my post about a sister System V operating system – Interactive UNIX:

52 thoughts on “Dell UNIX Lives Again!

  1. Interesting. 🙂 Never had my hands on Sys V. I’ll have to try it out. 🙂

    Do you know any other commercial unices (of the past time) running on PC?

    • There once was so many, although SCO & Microsoft seemed involved in them all… Xenix, OpenServer, UnixWare, and of course the Unix v7 clone Coherent. Sun had an i386 ages ago, but it wasn’t PC compatible, but there was their Solaris for x86 (now x64) I’ll have to look at the tree to see the rest, but there has to be more (not even thinking of the BSD’s).

  2. after setting msmouse, you should query mice from qemu monitor:
    “info mice” ; after then select “mouse_set 0” (replace “0” to the serial of serial mouse)

    At aixps2 in bochs has the similar network setup solution as dell unix’: I connected bochs’ and qemu’s serial ports with a _raw_ tcp socket, the qemu was a gateway, and bochs’ guest was aixps2.

    Is there an easily deployable solution for connecting a slip/cslip/ppp*/whatever serial tcp/ip to the internet from a vm that only has a serial2tcp socket? (*n*x host solutions are preferred, I mean some kind of tcp socket bridging could be a hint)

    • I think what you want is “qemu -serial pty” and maybe bind it to a random pty which you can slattach to… Although I recall something about ‘modern’ systems not liking the lower MTU’s of ancient UNIX systems, where as NT 4.0 did….

  3. Hello it will be great if you can post the QIC tape image made with dd. I have tapes and device and would like to install it on real machine.

  4. this *is* truly awesome.

    now, not that i’m complaining, but..

    the boot.img and system.img mentioned in the readme are not in the archive (also missing are the BIOS-bochs-latest and VGABIOS-lgpl-latest files configured in the bochsrc.txt, but those are obtainable from the net).

    on a slightly different note, i got a set of floppies for SVR4.2 from vetusware and managed to install them in bochs. sadly, there are no manpages or c compiler.. maybe the gcc package for this one could work.. dunno. you should check it out, it’s worth a look. here’s the link: http://vetusware.com/download/AT_T%20UNIX%20System%20V%20Release%204%202.1.4
    if you’d like, i can share the installed system to spare you the hassle of swapping some 25 floppy images in bochs. 🙂

    lastly, is that middle picture (showing bochs) taken on centos? 🙂

    cheers,
    bamdad

  5. one more thing: if you could point me in the right direction on how to use slip, it would be really appreciated. i am totally clueless how to do it on qemu.

    • love the window title… lol but yeah I got that ahead of time….. Qemu would do that periodically, I had better luck with virtualbox, just hit numlock and caps a bunch of times to sort out the CAPLOcK thing.

  6. As for posting the QIC tape images and missing floppy disk images. I have obtained them from Charles H. Sauer for the sole purpose of bringing it back to life under a virtual machine. I would talk to him to obtain it for other purposes. Also I was hinted that a different version of Dell Unix has surfaced on beta archive.

  7. I’m also wondering the same thing as bamdad. The boot and system.img aren’t in the archive. And bochs is giving me the message “FATAL, no bootable devices”. Can anyone point me to the boot.img and system.img file? I’m new to this os, and had never dealt with a tape image.

    • You don’t need the boot.img and system.img. They are only needed for installation. You need to set Bochs or Qemu to boot from hdd/c.

  8. came back to dell unix after days of fooling around with amix (i actually got an ancient version of gcc to compile – it took more than 8 hours), and i was wondering two things:

    1, is the original installation media available (i mean the tapes)? i might have a box laying around that could run the os natively..

    2, have you ever gotten the mouse to work under vmware/virtualbox?

    thanks,
    bamdad

  9. I haven’t built it, but I suspect the only way to really deal with AMIX in this day/age is to cross compile from a modern machine… Although building config scripts is always a pain in the butt.. I imagine it supports NFS.. Not that I have tried, I was happy doing IRC and ftp.

  10. yeah, cross-compiling would make a lot more sense, but i was just fooling around. in its current state, the emulation under winuae is anything but stable. i’m surprised it somehow managed to stay alive for more than 8 hours..

    by the way, my questions above were about dell unix, but never mind, lol, i suppose the distribution of original installation media is a sensitive topic to bring up in a public comment..

  11. You can find the media yourself if you do a bit of search. You can try to get from the original source where I got mine. Also AFAIK slightly different version surfaced on Beta Archive.

  12. i know this is an old post, but has anyone got the mouse to work in virtualbox/vmware? serial mouse emulation is out of the question, and playing with /usr/lib/mousetab didn’t help either. intriguing, since mousemgr does support ps/2 mice – at least in theory.

    also, i wouldn’t advise anyone to try installing this on actual hardware. the supported controllers and peripherals are so hard to come by, it’s near impossible. believe me, i’ve contacted the original source of this system, who kindly sent me the detailed hardware requirements.

  13. I have tried it with qemu,boot ok
    and recognize also ethernet card(ne2k_pci or rtl8139)
    Configure eth0 works
    ifconfig eth0 192.168.0.155 netmask 255.255.255.0 up
    ping eth0 ok
    but how to route?
    I have try route add default 192.168.0.1 1
    but no way..no ping,and arp incomplete.

    • I don’t think you can use ethernet with Dell Unix. What we tried was SLIP. Does it actually recognize the network card correctly? Can you send some screenshots? How did you configure qemu to route packets?

      • I didn’t think the NE2000 or RTL8139 would work… It has been forever and I don’t recall about adding routes, but some SYSV’s TCP/IP’s are BSD based so you have to put in the metric for the gateway….

        route add default 192.168.0.1 1

        man route will tell you all kinds of things, although not sure if it is terribly useful, grep through the /etc directory and see if there is anything.

        I thought this thing only supported ancient ISA 3com cards & Token Ring.

    • if you type
      netstat -i you weel see:
      Name Mtu Network Address Ipkts Ierrs Opkts Oerrs Collis
      lo0 2048 loopback localhost 0 0 0 0 0
      eth0 1500 192.168 amnesia.UUCP 0 0 0 0 0

      It is not Ethernet interface, just UUCP

    • I think it would be quite miraculous if Dell Unix recognized rtl8139, because that NIC chip was launched in 1997. Five years after the last release of the OS…

      Pretty much the same applies to ne2k_pci, because the very first version of PCI got into manufacturing in 1992. I think it’s more likely that Dell Unix supported ISA NE2K and 3Com cards, as neozeed mentioned.

  14. If anyone is still interested in this!
    You can instal on both Virtual;Box and VMware Workstation

    The secret is select eCommStation as your machine type, I used 128mb ram and a 256mb hdd it installed without issue, I don’t know if it will work with more ram or HDD as I got bored quite quickly as I had no software to speak of, and I’m quite familiar with UNIX and Linux but nowhere near this old so not very proficient but hey! it works so great for studying UNIX and how it has evolved.

    Hope this is useful to someone else!

  15. Preinstalled dell unix vm image’s url is broken :'( Please fix it! Anyway, got it before, and configured slip well and working under linux host and qemu. At least, telnet $URL 80 \ GET / 1.0 # worked fine 😉

  16. Dell Unix was something I didn’t know about until I started working at Dell around 1993? It’s been a while but you could still get a copy if you worked there. I installed it from tape and it worked great on my 486 machine, no X11 drivers for a high resolution screen though.

    I worked in the server group that actually designed server level hardware (like sluggo the SCSI card and mr hand the admin card along with the server cases and hardware).

    At one meeting a hardware vendor came in and offered to make all the hardware Dell needed and convinced Michael Dell that the server group wasn’t needed… so with the writing on the wall I left.

    Unfortunately a couple years later Dell stock took off big time and even the janitor walked out of there a millionaire.

    I still managed to retire early.. but I would have retired 15 years earlier if had stayed.. that’s what you get for following my dream not opportunity.

    On thing that is often looked over is.. Dell actually licensed the Next OS from Next… which everyone seems to have forgotten.

    • I’ve never heard of Dell getting NeXT, I know at one point in desperation they were licensing to all kinds of people, including IBM and SUN.

      All I could find was this passage, which makes it sound like Dell and Compaq were interested, but ended up not licensing. But of course NeXT press releases make it sound more exciting.

      Strange that everyone got cold feet on NeXT.

      • There was a Dell box with a specialized video card (named Jaws?) it hung directly off the 486 bus for faster framebuffer access. I may have been tasked with fixing some bugs in the driver, it’s been a very long time since then.

        Next banged relentlessly on the swap drive, there just wasn’t enough memory.

        • JAWS! I remember reading about that in the trade magazines at the time, how Dell was building killer workstation class machines. Didn’t Dell also have a MIPS NT class machine like Acer?

          Mach is strange in that it’s #1 feature of the era was effective swapping. I think we were all trying to run 64Mb worth of stuff on 8Mb of RAM.

          As close to a free version of NeXTSTEP as we can get is Darwin… I thought it was interesting that 0.1 and 0.3 can use the distribution CD’s as a root.. although stuff like ifconfig and fsck have drifted too far to do anything useful. I have no idea how they made those CD UFS filesystems.. it’d be fun and time consuming to see if it could be patched with Darwin.

          • Dell had a DEC Alpha machine that ran NT, Michael Dell became worried about allocations from Intel he cancelled the project. It was SO much faster than the early Pentium systems.

            JAWS was unaccelerated, it was a dumb framebuffer card with a video DAC.. fast for its time but not much. The DAC / video controller was the same one used on transputer video boards from STMicroelectronics.

            More trivia.. I designed the first Weitek 8720 card for VESA local bus, it won Zeos Computer the PC Magazine computer of the year with a 100 M winmark. The average winmark was around 8-10 M, the magazine editors contacted me and explained that they decided not to shorten our bar in the score because it really stood out but make all the rest of the video cards look.. well average. Zeos later bought the card as the P9000 from STB.

            • wow never knew they had anything with an Alpha… I guess you have one branch of Digital trying to get their chips everywhere, and of course the enterprise folks trying to keep the Alpha/VMS dream alive by walling it off.

              Must have been great to do something that blows everyone out of the water performance wise!

  17. Hello. I ran your ova virtual machine on VirtualBox, and it seems to be working splendidly! Thank you very much.

    Now, to get into the machine, I tried to use VirtualBox’s feature to associate a COM port to a TCPIP port. The funny thing is, the telnet application does connect to the port I chose, and when I run “echo ‘a’ > /dev/tty00a” the letter a pops up in the telnet screen.

    Strangely, nothing I type into the telnet screen seems to be acknowledged by the OS. I don’t get a login prompt or anything else indeed. Do you have an idea what I’m doing wrong? Maybe I need to enable the serial port for login somewhere?

    To make matters stranger: I also tried using a named pipe to connect to the VM through the emulated serial port. With the help of Named Pipe TCP Proxy (http://shvechkov.tripod.com/nptp.html), I can also use my telnet client to connect to it. It shows just the message “attaching console,wait …connected!” and nothing else! I can’t type into the telnet screen, but “echo ‘a’ > /dev/tty00a” works as usual…

    Thank you for any help!

      • Actually, I played further with the virtual machine yesterday, and got telnet to work!

        You have to run sysadm, and then follow the menus:
        ports -> quick terminal -> add
        Then type /dev/term/00s
        And then hit F3 to save the configuration.
        An error pops up about not being able to rebuild the kernel, but the port was setup. I suppose that means you have to redo these steps every time you reboot the VM.

        Then to exit sysadm, you can hit F7 and select exit.

        Cheers!

Leave a Reply

Your email address will not be published.

Notify me of followup comments via e-mail. You can also subscribe without commenting.