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.
Well as luck has it there is a SIMH emulator! James C. Bevier has a project on github where he’s building his SEL32 emulation on SIMH!
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
Sadly I don’t find much on Altavista other than this & this. It only offers this terse comment:
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?
Wikipedia: In some versions of SINIX (5.2x) the user could emulate the behavior of a number of different versions of Unix (known as universes).
If hack does not compile why not use original rogue? It appears Jim installed “date” that I modified for current century. There is a bin dist for /usr/games/rogue too.
I was more interested in stuff that was ‘off the shelf’ publicly available source and see what kind of things build and ‘just work’..
And to see how things go outside of GCC land since the SEL32 never hit that critical mass.
It’s always strange to me how many vendors refused to do whitebox/i386 ports even though it was so evident that commodity hardware was the way out. Even CSRG got caught up in that trap.
Who knew? I did and many students from mid 80s know. By the way: UTX did not run on Concept/32 but on PowerNode 6000 and 9000. Only on the V6 and V9 processors that supported virtual memory.
I386: why were trains powered by steam in the first place?
Encore designed 88000 based systems as successors of the sel32 line.
I’m glad you knew. Too bad they didn’t evangelize at all in local Broward schools. Oh well I guess that’s on them for doing a lousy job in letting local kids know they even existed.
It’s still amazing how so many didn’t see the 386 as the way to spread to the LCD, instead hiding in the ‘far superior’ i860/88000 paths to the RISC paradise. It’s still astonishing Itanium was even allowed to happen.
I found on SysIII PDP-11 /usr/games/sky
I think a lot of games have undiscovered source code because systems were configured to allow admins to turn on and off access to games. If a user had the source code to the game they could get around that. So source code was kept secret.
/usr/games/sky is a stripped PDP-11 binary.
If you run strings on it a few interesting things are visible:
main: open of sat
main: open of stars
sat: time too early
“sat” is probably satellite position data and startab star position data.
/usr/jfo is a home directory.
/dev/vt0 may be the VT11 is a calligraphic display-file device used in the GT4x series of workstations (PDP-11/04,34,40 based), which is in sims.