19 Sep 2024
I rescued, restored and archived this SMS DSX11 computer which is a DEC PDP-11/23 made by Scientific Micro Systems around 1986.
It turned out to be a PCB design station from Calay Systems.
I bought this system on Ebay in 2018 in my ongoing attempt to have an operating PDP-11 for software experiments - all my previous attempts at restoring old DEC hardware had failed. I only paid $100 for it but shipping was expensive because it weighs 75+ pounds.
The system survived shipping due to excellent packing from the seller and it turned out to be in very good condition for its age. After careful inspection a power-up revealed a completely dead machine.
After some testing I pulled the original power supplies but was unable to repair them and decided to just replace them with modern switchers - about $100. After that and a new fuse the system powered on and I could hear the drives spinning.
It took a while to find the console port and comm parameters but eventually I got a prompt asking for a boot device, but no booting. This confirmed the CPU, power supplies, bus, serial port, and some memory is working.
I decided to go deeper and pulled the drives. The Quantum Q2020 hard disk was mounted with isolation dampers that had decayed so I replaced those - about $30. I cleaned the SA851 floppy drive and tested it on my ImageDisk system.
I tried to boot media written by several helpful people on the internet and finally got the XXDP+ diagnostic disk to boot. Memory tested fine. That's huge progress but I was sorta stuck.
In a moment of final desperation I broke the tiny seal on the hard disk and moved the head arm with a tiny screw driver. After that the system auto-booted into RT-11 V4 with a Calay sign-on screen! I couldn't believe it, my first PDP-11, very excited.
It took some research to learn that Calay was a PCB software company in the 80's. One ad said this machine cost over $100k new.
My very first goal was to archive the software from the hard disk and to my delight the system was loaded with the Kermit-11 transfer program, but this turned out to be a long and painful journey. Kermit seemed to be working with TeraTerm on my Windows PC but I discovered bit 7 was always cleared which obviously destroys binary files. After spending 2 weeks trying every possible parameter and host software on the PC I proved that the console port always cleared bit 7 - probably a feature of the console driver. Eventually I found some .COM files referring to LINE 2 and when I tried using 2 ports - one for console and one for transfer - all files transferred correctly with their bit 7 intact. There is about 7MB of data on this drive and there were never any disk errors. See the archive of files below.
The 20MB hard disk has 500+ files including RT-11 V4 system files, utilities such as FWU.SAV and FWIT.SAV, Calay PCB files, and some circuit board files. Here is an archive of all the files in a .ZIP (About 2MB).
If you use these, please let me know how it went.
This SMS system is a PDP-11/23 QBus machine made to be an affordable alternative to a pure DEC system, and made for specific applications.
This particular system was offered by Calay Systems with custom software to design printed circuit boards (PCB).
The hardware includes an LSI-11/23 CPU, a 1M memory card, and 8 serial ports. Also included is a disk controller card that is cabled over to a large floppy/hard disk controller mounted to the hinged lid which is then cabled down to a Quantum Q2020 20MB hard disk and a Shugart SA851 8" floppy disk drive. The only thing truly DEC in this system is the CPU board.
There are a couple of unidentified boards which are possibly memory management and graphics or input controllers.
The cabinet is a large and heavy 19" wide by 10.5" tall (6U) rack-able monster. A front panel offers 3 rocker switches - enable/halt, LTC on/off, reset, along with power and run LEDs. The disk drives are mounted horizontally and the card cage is vertical. There is a hinged lid with the large disk controller board mounted to the underside.
There are two switching power supplies inside and dual rear-mounted fans with well-designed airflow out the front. Master power switch is in the back (lower left as viewed from the front).
The QBus backplane is a 22 bit SMS model with 8 slots of 4 connectors. I think it's Q/Q style.
Software includes DEC RT-11 V04.0 SJ (Single Job) along with many Calay programs and utilities. Also included are SMS utilities FWU and FWIT for the floppy and hard disks. Kermit-11 data transfer software is also installed.
10.5" high with hinged top.
Model # DSX01174, Assembly # 1002003-0011 D
Built in 1986.
Heavier than a big dog house.
Pictures -
label,
back,
front
OS251 switching power supplies by Optimal Systems Corporation.
No documentation found.
One powers the DEC backplane and one powers the drives.
+5, -12, +12, +24
Both supplies are bad and have been replaced with modern switchers.
Pictures -
original supplies,
replacement supplies
The backplane is made by SMS and has 8 rows of 4 connectors which means 16 QBus slots.
It has some circuitry on it that connects to the front panel.
Pictures -
backplane,
circuitry
This is an SMS FWD0101 disk controller system which consists of a QBus card, a large interface board mounted to the lid, and cables to the floppy and hard disk.
A 40-pin cable connects the QBus board next to the CPU to the large interface board mounted on the lid.
A 50-pin cable connects the large interface board to the SA851 floppy drive and Q2020 hard disk.
This cable also extends to a male 50-pin header mounted on the back of the machine for another floppy disk.
The hard disk has an additional 20-pin data cable from the interface board.
On this system configuration: FW0: is the floppy drive and FW2: is the hard disk.
Picture - top,
label
Here is a dump of the FW.SYS disk driver: DUMP/TERM/FW.SYS
And here is FW.SYS
Shugart SA851 8" double-sided floppy drive.
Pictures -
head side,
jumpers
8" Quantum 20MB Q2020 hard disk.
SA1000 Interface with a 50 pin connector and 20 pin data cable.
512 cyl, 4 heads, 32 sec/trk, precomp:256, landing 513, bytes/sec 256.
It would not operate until I
opened the seal and nudged the stuck heads.
Pictures -
bottom,
top,
board,
error map,
seal
Quantum Q2020 documents from
http://stason.org/TULARC/pc/hard-drives-hdd/quantum/Q-2020-17MB-8-0-FH-MFM-ST412.html
q2020a.png
q2020b.png
q2020c.png
q2020d.png
q2020e.png
q2020f.png
q2020g.png
q2020h.png
q2020i.png
q2020j.png
q2020k.png
q2020l.png
After reset, a boot prompt appears on the RS-232 port 4th from the top.
Serial parameters are 9600N81.
The RS-232 port on the top is the printer port, 9600N81.
DRV(W0, F0, T)? is asking to boot from Winchester, Floppy, Tape.
If there is no answer within a few seconds the machine will auto-boot RT-11 V4 from W0.
If I enter "F0" before that then the floppy drive will attempt to boot.
If booting fails then an octal address is displayed and the ODT (Octal Debugging Technique) prompt appears.
After booting to RT-11 SJ (Single Job) V4 the system operates like any RT-11 system. To run a program from the hard disk use "R " such as ".R KERMIT (enter)". To run a program from the floppy drive use "RUN "such as ".RUN FW0:BASBBC" and it will run .SAV files. Many commands such as DIR, RENAME, COPY are built-in and don't need the "R" command.
To use RT-11 see Intro to RT-11 V4 1980.
On this machine, FW0: is the floppy drive and FW2: is the hard disk.
Typical file types are different than DOS or CP/M:
.SAV = Executable files
.COM = Batch command files
.SYS = System binary files
.DOC = Documentation files
Here is the results of DIR/ALPHA (All 500+ files in alphabetical order)
Here are the .SAV files
Here are the .SYS files
Here are the .DOC files
Here is the results of SHOW ALL (System configuration)
Here is the results of HELP * (Help for all commands)
Here is STARTS.COM (Bootup file)
FWU.SAV and FWIT.SAV are disk utilities for the SMS disk hardware. In this system "FW" means Floppy/Winchester. The floppy disk drive in this system is an 8" double-sided Shugart SA851. Single-sided diskettes have their index hole near the center line of the diskette. Double-sided diskettes have their index hole shifted further from the center line of the diskette. FWU is simplier and I use it for doing a low-level format on floppies.
Invoke FWU with .R FWU then use the F command to format (upper case). Then select drive 0, then which disk type. It takes a couple of minutes to format and verify a diskette.
There are 4 disk type options for formatting and each can be used with RT-11 directories because of SMS's special disk controller --
► RX01 is single-sided, single-density, DEC RX01 format, 128B sectors, 250KB, 486 blocks of 512B.
► RX02 is single-sided, double-density, DEC RX02 format, 256B sectors, 500KB, 974 blocks of 512B.
► IBM1 is single-sided, single-density, standard IBM format, 128B sectors, 250KB, 486 blocks of 512B.
► IBM2 is DOUBLE-sided, double-density, standard IBM2, 256B sectors?, 1.2MB, 2394 blocks of 512B.
After this low-level format the disk needs a directory and file structure written to it so go back to RT-11 and use .INIT FW0: to do that. After this, you can do a DIR and copy files to it.
Notes on formats:
IBM1 is somehow different from DEC's RX01 format and I'm not sure of the technicals.
It offers the same space as RX01 and works the same on this system due to the custom SMS disk controller.
This mode is great for formatting 'standard' IBM1 disks for use with other machines.
IBM2 is a double-sided, double-density format and is not a DEC standard but gives 1.2MB space.
This requires a double-sided disk with the index hole further off center than single-sided disks.
The controller is smart enough to see this index hole and give errors for doing the wrong thing.
This mode is useful for formatting IBM2 disks in general.
RX01 and RX02 are DEC's standard formats with the RX02 being MFM encoding making it difficult to read on other systems like imagedisk.
Greaseweazle should be able to do it I think.
I was able to build a bootable RT-11 V4 floppy disk with this method.
In this system, FW0: is the floppy drive and FW2: is the hard disk.
Insert a blank 8" single-sided diskette.
Double-sided disks with the shifted index hole don't seem to work.
.R FWU (Low-level format. Use F command and select unit 0, then RX01 or RX02. All upper case.) .INIT FW0: (High-level format) .DIR FW0: (verify empty directory) .COPY/SYSTEM RT11SJ.SYS FW0: .COPY/SYSTEM FW.SYS FW0: (This disk driver has to be done before /boot) .COPY/BOOT RT11SJ.SYS FW0: (This makes it bootable) .COPY/SYSTEM TT.SYS FW0: .COPY/SYSTEM SWAP.SYS FW0: (Disk is bootable after this but needs more files to be useful) .COPY DIR.SAV FW0: .COPY RENAME.SAV FW0: .COPY PIP.SAV FW0: .COPY FWU.SAV FW0: (This is the floppy/winchester utility program) .COPY KERMIT.* FW0: (This is Kermit-11 file transfer programs)
After getting the HD to boot RT-11 by dislodging the stuck heads, I started poking around and found KERMIT.SAV which, obvious to old-timers like me, is the name of a well-known file transfer programmed used to send data back and forth between systems.
A DIR shows 503 files on the hard disk totaling 13,611 blocks which is about 7MB of this 20MB drive.
The Console port is set to 9600, 8 data bits, no parity. I confirmed the board was jumpered correctly by finding the Sigma SCD DLV11J quad serial board user guide from Bitsavers.org.
I used TeraTerm on my Windows machine along with a USB-RS232 adapter to emulate a terminal and make the connection.
Individual files transferred fine so I did a SEND *.* and let it churn for 5 hours. I was very excited this worked but after careful checking I learned that bit 7 of every byte of every file was 0 and I knew that couldn't be right. So I checked the jumpers again, checked parameter settings on both ends, nothing worked. Every time a file transferred bit 7 was set. This is fine for ASCII files, and there are a lot of them, but this destroys binary files.
For 2 weeks I tried every possible configuration and pouring through forum after forum. I proved that the USB-RS232 adapter would send bit 7 by doing loop-back tests and this indicated that the console port was unable or unwilling to transmit bit 7 regardless of Kermit settings or the board jumper settings, so it must be the console port driver doing that.
Digging further I found a reference to LINE 2 in the KERMIT.COM and decided to setup 2 serial connections with console on one TeraTerm session and Kermit transfer on the other. It took a while to figure out which of the 8 serial connectors on the back was line 2 because they are not in any logical order. Entering SEND *.* on the console session and activating a Kermit receive on the other transferred the files with bit 7 in tact. It took about 5 hours to do the transfer of all 503 files which included the Binary .SAV files. I also learned later that this version of Kermit-11 T2.18 will not transmit binary files over 7 bit connections but later versions will. Using a HEX editor plugin for Notepad++ I confirmed the binary files contained many bit 7 = 1 which is what I expected.
Step by step:
Setup 2 USB-RS232 converters to a Windows PC and connect them to the top connector (Line 2) and the 4th connector from the top (Console). Open up 2 TeraTerm sessions, each connected to a USB COM port (COM5 and COM6 on my PC) with parameters set to 9600 baud, 8 data bits, no parity, 1 stop bit, no flow control.
With this setup you should be able to see RT-11 on the TeraTerm connected to the Console port.
Now invoke Kermit within RT-11 with .R KERMIT
If not automatically set, do these
SET LINE 2
SET FILE BINARY
SET BLOCK 3
Ignore baud rate because that's set with jumpers on the serial card and Kermit can't control it.
Then send all the .SAV files, for example, using SEND *.SAV
Then on the 2nd TeraTerm session set your directory with FILE/CHANGE DIRECTORY
then to receive the files click FILE/TRANSFER/KERMIT/RECEIVE.
A pop-up window will show the files transferring.
Here is KERMIT.DOC (Kermit-11 T2.18)
Here is a Kermit SHOW ALL
Here is Kermit Help
Moving files from the internet to this machine is fairly easy using Kermit-11. Many of the files available on the internet are compressed into zip or some other archive format and you'll have to undo that on your PC to get the individual files.
Use 2 TeraTerm sessions as described in the section above for sending. One port will be the console and the other is the data transfer port. After running Kermit on the console, issue a "RECEIVE" command, then on the data session do a FILE/TRANSFER/KERMIT/SEND and pick the file(s).
I haven't found a utility to read CP/M directories in RT-11 yet but there is a utility called RT11.COM for CP/M to read RT-11 RX01 diskettes on a CP/M machine which I've used successfully on my Xerox 820/II computer with SSSD 8" drives.
In related news:
I used a utility called 22disk on an MSDOS 5.0 machine and an Adaptec 1542 controller and a Shugart SA800 8" floppy drive to read and write CPM files.
This, along with imagedisk gives me a lot of transfer options between the web, MSDOS, CP/M, RT-11 and my MDS800.
In more related news, this Fortran IV utility says it will read a SSSD CP/M Diskette on RT-11 RX01 drive but I failed at compiling it.
It is at the CP/M Archive - http://www.retroarchive.org/cpm/cdrom/SIMTEL/SIGM/VOLS100/VOL115/
CPMDEC.DOC,
CPMDEC.FOR,
CPMD2.FOR,
I've never found the exact documentation for this machine and hardware but some of these are close. If you have any SMS DSX11 or CALAY documentation from 1984-1986 time frame please let me know.
3000830A_MDX_System_OEM_Manual_Aug92.pdfIt's a shame there's so much bitrot on the webs and some of these links are dead.