Despite Gould’s location being a few minutes drive from where I first arrived in America, I never had any idea they existed, were making their own exciting machines, or were even a Unix VAR. At a time during the Unix wars one was left to choose SYSV or BSD, but Gould had gone another direction with UTX with a ‘why not both’ approach. Truly an 80’s miracle of Unix.
Even better he’s included tape images, and working INI files which I was able to make into a working system! (after some help with a tape bug)
Boot File is COFF format -> section (.bss) size (177960) clearing at (0xcbc18) -> section (.text) size (724800) loading at (0x1200) -> section (.data) size (105176) loading at (0xb2140) Start 0x1200 UTX/32 2.1B (exp) #0: Mon Apr 10 19:46:05 GMT 1989 [email protected]:/usr.POWERNODE/src/src/sys/obj V6 CPUIPU(P) configuration (IPU not present) top of system = 0x400000 real mem = 8388608 End of kernel map 0x218464 avail memory = 7356416 using 256 buffers containing 262144 bytes of memory using 256 mirror buffer headers ioi: channel iop0 at 7e00 online ioi: channel dc0 at 800 online ioi: channel dc1 at c00 not present, dci cc=2 ioi: channel dc2 at 400 not present, dci cc=2 ioi: channel tc0 at 1000 online ioi: channel en0 at e00 online -- CHECK AND RESET THE DATE! swapping on the b partition dmmax 512 mbswap 3576 dumplo 11776 Checking root filesystem Check commented out, uncomment once you have edited /etc/fstab! Automatic reboot in progress... Mon Aug 30 05:35:46 CDT 2021 /etc/fsck -p /dev/rdk0d /etc/fsck -p /dev/rdk0e /etc/fsck -p /dev/rdk0f File systems OK Mon Aug 30 05:36:06 CDT 2021 Mounting file systems /dev/dk0d mounted on /usr.POWERNODE /dev/dk0e mounted on /home /dev/dk0f mounted on /usr/local Initializing loopback Starting line printer daemon Starting standard daemons: update cron. Adding swap partitions Standard setup functions Invoke local rc file Entering /etc/rc.local dumpdirectory: No such file or directory Starting Syslog Daemon Starting local daemons: inetd. Starting NFS/RPC daemons: portmap sund. Mounting NFS filesystems Leaving /etc/rc.local Starting mail Checking aliases file Preserving editor files Clearing /tmp - does not remove directories Clearing pseudo terminals Leaving rc Mon Aug 30 05:36:07 CDT 2021 GOULD UTX/32 2.1B (noname) (console) login:
It’s very BSD feeling on the boot and in the /usr directory there is 5bin 5lib
Sadly transferring stuff by just pasting on the console reveals that there is some IO issues in the simulator:
syncing disks... done dumping to dev 101, offset 11776 ioi: channel dc0 at 800 online dump succeeded
As a matter of fact doing anything too fast can/will panic the simulator. That goes for Ethernet and additional serial ports.
Interesting highlights of the platform:
Produced by hard-params version 4.1, CWI, Amsterdam Compiler does not claim to be ANSI C Char = 8 bits, signed Short=16 int=32 long=32 float=32 double=64 bits Char pointers = 32 bits Int pointers = 32 bits Alignments used for char=1 short=2 int=4 long=4 Character order: short: AB int: ABCD long: ABCD
Obvious issues with the platform is a lack of GCC. The PCC compiler while standard for early 80’s non PDP-11/VAX machines is a bit lacking as the years went on. I was unable to build gzip due to the following error:
# gmake cc -o gzip gzip.o zip.o deflate.o trees.o bits.o unzip.o inflate.o util.o crypt.o lzw.o unlzw.o unpack.o unlzh.o getopt.o ld: warning: near subsegments too big for static base spanning ld: gzip.o: no base for reloc of memref instruction at .nbtext+0x18 relative to symbol _progname ld: 1221 more 'no base ' errors gmake: *** [gzip] Error 4
The constraints on address space on a Gould are quite severe.
Bummer. Additionally neither Hack 1.0/1.03 or PDP-11 Hack will build either. Surprisingly bash-1.14.7, make-3.75 and ircii-2.5 compiled. Obviously with no networking IRC is kind of pointless.
It’s an interesting time capsule of life outside of AT&T/CSRG or SUN, going in a different direction. It seems like a larger lost opportunity to take their ‘it runs both’ approach software and not have it available on different platforms. Granted for a hardware company once the software leaves the compelling reason to buy the hardware evaporates. Hello NeXT.
If anyone wants to try to re-create it, download and build the SEL32 emulator from github, and I put my vague instructions here.
Or for like minded OS tourists, you can give it a spin here: UTX32_2.1B.7z. I included a ‘9346-UTX-blank.disk’ file which is already prepared if you don’t want to go through the 15 questions to prep a disk. Likewise I made a ‘9346-UTX-biga-blank.disk’ image which is just a single large ‘a’ partition as it’s trivial to just add a bunch of big disks these days.
Full 32bit Unix machines from Ft Lauderdale! Who knew?