I have a couple of working Lexitron word processors that run the CP/M operating system. They use an unusual disk format for which i have no means of decoding or encoding. The only input that these machines have is the keyboard which is a somewhat tedious means of transferring programs and data. This has limited the applications that i have been able to transfer to these machines.
Documentation and the CP/M implementation both suggested that Lexitron produced a communications card that could do asynchronous serial communication but i had never seen one. Recently i did a search on ebay, and discovered a card that was likely to be the unicorn communication card so i snapped it up. It arrived from the UK within a couple of weeks.

It has a 8251 programmable communication interface (PCI), an 8253 programmable interval timer (PIT), a 8255A programmable peripheral interface (PPI), and an MM5307 baud rate generator (BRG). It has a lot of RS232 drivers/receivers so i suspect that a bunch of parallel port lines use them.
I couldn’t be sure that this was the right card for either the VT1303 or the VT202 but i crossed my fingers and took the lid off the VT202.
Looking at the relationship between the PCI and the drivers/receivers, the pinout on the DIP connector was consistent with the usual RS232 pinout. The connector allows for external transmit and receive clocks, but there is some logic which allows the PCI to also use the clock from the onboard baud rate generator.
The card seemed to be in good condition. I checked for shorts on the power rails but found none. The spare slots in the card frame a little different to the slots that are home to the other cards, but the affected pins were not in use by the communications card.
Unfortunately the card developed a short on power up, resulting in the -15V fuse blowing. After replacing the offending tantalum capacitor and the fuse, the system started up ok with the board present.
I ran the configuration program on the CP/M disk to set port to 9600, no parity, one stop bit, 8 data bits. I also set up pun: and rdr: to use the serial port. I tried to get it to transmit data using:
pip pun:=rdr:
Alas, there was nothing so i started checking things out – which is a little laborious without an extender or a schematic. I did confirm that the card accessed both the PCI and the PPI, which i took as a sign that it was the correct card.
The PCI transmit/receive clock was missing and this was because the BRG was not oscillating. Everything around it looks ok:
- Power lines
- Crystal connected
- Parallel control inputs from PPI changing as they should
- Capacitors values are plausible
Currently, i’m concluding that the IC is dead which is a shame because it’s not easy to get.

In the interests of progress i pulled the IC and provided my own clock from a lab waveform generator. Frequency= 9600 x16 = 153.6kHz.
Lo and behold, there was communication:



Although the BRG is disappointing the overall result is very good. I can either knock together an emulator or try to source a replacement.
Before charging in, i decided to see if it was just the oscillator that was at fault. It would make life easier if the divider was still a going concern. I configured it for an external oscillator – again provided by a waveform generator. This seemed to work ok. It is possible that the oscillator fault is due to the crystal and the IC is actually fine.
Given some uncertainty about the crystal characteristics, testing that hypothesis seemed more trouble than putting together a replacement oscillator. There are plenty of spare footprints on the board.
Oscillator modules at 2x 921.6kHz = 1.8432MHz so i settled on that frequency. A flip-flop will divide by 2.

The parts have arrived, and the job is queued.