10

I just spent an enjoyable day at the local ham fest with my father - digging through boxes of other peoples junk. I'm a sucker for weird electronics, especially when it's in the free pile, and so I am now the proud owner of two Parallel to Serial interface boards and I'm left wondering what they originally came out of.

The boards are populated with some intriguing chips (which is why I nabbed them); assuming my quick googling is correct - an EF6809P (an 8-bit MC6809 CPU), an EF6850P ACIA, three EF6821P PIAs, and an AMD AM9128-20PC static RAM.

So obviously the chip complement seems to support the board label as some kind of a parallel to serial interface, but to what? Below are some snapshots to hopefully help identify the board.

First a view of the component side of the board (note the 50 pin connector J4) component side

Next, the assembly number and board description (sorry for the lack of definition here, the camera simply wouldn't pick up the silver grey lettering) board description and assembly number

The CPU, ACIA, RAM, one PIA an an unidentified chip (26A1063/A) AM2716DC EPROM. chips

And finally, the edge of the board (probably 2 RS-232? and 1 Parallel?) connectors

So, anyone having any brain-waves?

  • 5
    Looks like a full-blown computer rather than just an interface. The labelled chip is most likely an EPROM. The logo is vaguely familiar, too – scruss Oct 5 '19 at 21:42
  • 1
    The EF6809P is a 6809 CPU, not a 6800. Those are very different, and that will be especially important if there's a ROM there to disassemble, as U32 appears to be. – cjs Oct 6 '19 at 0:18
  • 3
    Since based on the socket size, use and configuration U32 appears to be a ROM, I would start by dumping that. (You can do that quite easily with an Arduino.) Start by scanning it for strings, remembering to clear all the high bits for that scan, and that alone may tell you exactly what the board is. – cjs Oct 6 '19 at 0:28
  • 1
    If there’s a possibility it’s a whole computer, maybe try connecting a terminal to each of the serial ports and check for a prompt? – Tommy Oct 6 '19 at 15:04
  • 1
    It's seems likely to me that it is in fact a "Parallel to Serial In" board, what it seems to say in the second picture. It would have been used to connect serial printers to computers with parallel interfaces. – Ross Ridge Oct 7 '19 at 5:40
5

The boards are essentially "serial to parallel converters," but probably not of any type anybody here is familiar with. A manual has been found that describes two devices, the MSD-1 Multiple Status Display and the MDC-2 Multiple Direct Command Option, used with the Moseley Associates Inc. MRC-2 system, a microprocessor-based system for monitoring and control of equipment such as radio and TV transmitters.

Hardware

The board is a fairly basic SBC, with a 6809 CPU, 2 KB ROM, 2 KB RAM, a 6850 ACIA for serial input and some parallel I/O.

On one of the DB-25 connectors the the system receives RS-232 serial input at 300 or 1200 bps (based on the switch setting). I am guessing that this serial signalling is passed through (via hardware, not an ACIA) to the other DB-25 connector for connection to further similar boards so that they can see the same data stream. The firmware itself never generates any serial output.

The board's output is 32 digital signals on the DB-37 connector. Presumably these signals were used to control something, but there's no indication of what. The output is handled by a pair of 6821 PIAs, U25 and U26, together referred to as "P32" in the disassembly.

There is a third PIA, U27 ("P16" in the disassembly) that is used for things like reading the switches and signalling that the system is alive and/or restarting.

Function

The board receives a stream of characters on the serial port and, based on what it receives, sets bits on the 32-bit digital output. This appears to be designed so that one stream of serial data can be passed to multiple boards; each one has an address from 0-15 (probably set by the rotary switch) that determines which characters it will take as commands to change its digital output and which it will ignore.

The protocol is not like anything I've seen before and is probably proprietary. It's not a simple case of specific characters toggling specific bits on the digital output (e.g., "set bit 5"), but instead there's some sort of obscure processing determining how the outputs are set.

Without knowing the purpose of the board the protocol itself doesn't seem terribly interesting, but you can read through the state machine code that processes the input and updates the output if you want to start to dig into the details.

Alternative Designs

As Ross Ridge mentions in the comments on the question, yes, this board is a bit overkill on the hardware side. The hardware couldn't reasonably be as simple as just an ACIA and 74xx logic, given that it needs to interpret (and, for the switch unit, generate) a standard serial protocol used by various other devices, but certainly cheaper CPU, RAM and PIA options could have been used.

From the filename of the catalogue below, the system was designed no later than 1981. I probably would have suggested a 6508 microprocessor, which included 256 bytes of RAM (plenty for this application) and an 8-bit PIA. Five bits of the PIA would be used for input from the switches and the other three for shift registers (74LS595 or similar) for the data outputs and switch inputs. Using pricing from an advert in the February 1981 issue of BYTE Magazine, this would have replaced the $38 6809 with an MPU possibly even cheaper than the $12 6502 and completely dropped three 6821 PIAs at $6.50 each, for something like a $50 saving on the BOM.

That said, I suspect that these boards were used in other (possibly more sophisticated) designs as well, and the code is clearly re-using parts of a standard framework for more sophisticated systems. (See how the interrupt-handling code works, for example.) So it's probably not unreasonable to re-use existing, tested resources even at the cost of a more expensive BOM.

Resources

The MRC-1 Catalogue gives an overview of the full system in which the accessories containing these boards were used. MRC 2 Microprocessor Remote Control System, Volume One is the manual for that system, and MRC 2 Microprocessor Remote Control Options, Volume Two is the manual for the products that used these boards. You can see a picture of an installation including the MRC 2 and these two options (at the lower right) at Alice@97.3 Transmitter.

The rcse-mystery-board repository on GitLab contains high-resolution photos of the board, a dump of the ROMs (two, since they were somewhat different between the two examples of this board) a disassembler and framework to run it, and an info file for the disassember that produces a very heavily commented, but not entirely complete, disassembly of one ROM. (There's also a bit of disassembly of the other ROM, particularly the common parts.)

The README gives details of what's there and how to use the tools, and if you walk foward through the commit history from the start you'll see how I built the tools and did the disassembly, step by step. (The commit messages generally contain detailed commentary on this.)

  • 3
    If you google for ASSY 20D2844 you get one single result. It's a PDF file here : steampoweredradio.com/pdf/moseley/manuals/… – Scott Earle Feb 6 at 7:04
  • 2
    @Scott, your google-foo is strong. I never found that PDF, but scanning through it briefly reveals a diagram on page 3-22 that looks very much like the mystery board. I did indeed pick up the boards at a HAM fest, so that reinforces the idea the board served some purpose related to radio. I'm looking forward to digesting the PDF in greater detail. Thanks for the great find! – Geo... Feb 6 at 13:33
  • 2
    Curt did an amazing job digging into the board and puzzling around it's secrets. I just wanted to send him a warm thank-you for all his effort. It was great fun dumping the ROMS and taking some pics so he could go all-in trying to figure this thing out. – Geo... Feb 6 at 13:36
  • 1
    @ScottEarle I just got a chance to skim through that PDF and, yeah, that looks like it all right. I wish I'd had the Google-fu to find that when I'd started my analysis! (I'll grab a copy of that document and commit it to the repo tomorrow, and update the README.) – cjs Feb 6 at 14:51
  • 1
    Based on the manual Scott Earle linked the board is used in either the MSD-1 Multiple Status Display or MDC-2 Multiple Direct Command option chassis. The two serial ports are for daisy chaining these units, one port is the upstream connection the other is the downstream connection. The internal 50-pin connector is used to connect to a front panel module of either 32 LEDs (MSD-1) or 16 switches and 16 LEDs (MDC-2). The external 37-pin "parallel" port receives the state of these LEDs/switches, and isn't an Centronics printer port. – Ross Ridge Feb 6 at 20:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.