This homebrew dual serial port board for the SS-30 bus provides:
When I upgraded my SwTPc system from the MP-A2 6800 CPU board to the MP-09A 6809 CPU board (in December 1980?), I needed a new serial card. I had been using an MP-C serial card with a bit-banged 6820/PIA, but the MP-09A's SBUG-E 1.5 monitor didn't support the MP-C, only boards that used the 6850/ACIA chip. I also modified my motherboard to support extended (20-bit) addresses, which meant the baud rate clock generator on the MP-09A had to be removed, leaving the 8 I/O slots without the 5 baud rate clock signals. As a result, a SwTPc MP-S card couldn't be used without providing some other source of clock signals.
The newer SwTPc motherboards had an MP-ID card that provided the baud rate clocks. Newer GIMIX motherboards had a slot for a separate baud rate generator board. I didn't know how other owners of SwTPc systems provided the baud rate clocks for their serial port cards when they upgraded to the 6809 and modified their older MP-B motherboards to enable extended (20-bit) addresses. Although many years later I did find mention that SwTPc had offered a baud rate generator card that plugged into the SS-30 bus, I have never seen either a picture or catalog listing of it. If you have, let me know.
I decided to solve both issues by building my own serial port card with a 6850/ACIA and its own baud rate clock generator. As a bonus, it would have not one, but two serial ports on the one card. All five RS-232 lines supported by each 6850 are present on the I/O connector: Tx Data, Rx Data, RTS, CTS, DCD, plus GND. A wiring harness connected the 12-pin Molex connector with two DB-25S connectors on the rear panel, although my wiring job with its rats nest of long, all green, folded, 22ga solid core wires was rather ugly! The baud rates were hardwired to 9600 bps for the first (console) port, and 1200 bps for the second (extra) port. I never finished installing header blocks that would have allowed changing these rates more easily.
However, using this card with a 6800 CPU board and SwTPc's SWTBUG monitor ROM would require modifying the SWTBUG code. Apparently having two 6850/ACIA chips at consecutive addresses $8004/5 and $8006/7 confuses SWTBUG's automatic detection of MP-C vs. MP-S cards. But I never used this card with the 6800.
In October 2021 I replaced the ugly rats nest wiring with shorter, colour-coded, stranded wires, a new 12-pin Molex connector, and a more modern DE-9S connector, but only for the first (console) port. This time I only used 3 wires (Tx Data, Rx Data, GND), while RTS is shorted to CTS at the DE-9S, and same for DTR to DSR. On the DACIA it looks like I had originally shorted RTS to both CTS and DCD, and I didn't change this, because it works well enough. Connecting this rebuilt port to my Windows PC via a Microchip MCP2200 USB-RS232 evaluation board, and using terminal emulation software, I communicated with my SwTPc system for the first time in over 23 years.
In May 2024 I finally scanned the old sheets of paper containing my hand-drawn component placement diagrams, 12-pin Molex connector pinout, parts list, and various wiring diagrams (see below). But some of the pencil lines are very faint, so are hard to see -- zooming in helps a bit. Obviously I need to learn to make various setting changes in the scanning software to improve the quality. The connector pinout drawing confirmed that the two ports are wired differently, for DTE vs. DCE. For some reason I called the console port at $8004/$E004 port B and the one at $8006/$E006 port A, which seems backwards. Also, some of the diagrams don't fully match how I actually built it, and some of the wire connections are not shown.
A few days later I installed a DE-9S connector for the second serial port, this time using 5 wires: Tx Data, Rx Data, RTS, CTS, GND. Then I added wires for RTS and CTS to the DE-9S connector for the first serial port, and made a few changes to the connections on the DACIA board. To document these changes I created a new, easier to read drawing showing the revised connections between the 6850/ACIA chips, RS-232 transmitter and receiver chips, Molex connector, and the two new DE-9S connectors.
I am now using the second port for my DSKdrv/DSKserv software, running at 38400 bps (the fastest supported by a 6850, i.e., not 68A50 or 68B50, for a 16x clock). Since I didn't connect a long cable to this port, but plugged one of my USB-XR-RS232 modules directly into the DE-9S connector, there was no need to replace the old 1488 and 1489 chips with faster MAX1488E and MAX1489E chips. Amazingly, the ancient (date code 7552) ceramic MC6850 is up to the task!
(Click on a picture for a larger version.)
Pictures of my dual-port serial card (prior to recent modifications). (497-824KB .jpg) |
DACIA schematics, component placement, and user notes
(original, and for recent modifications). (6.9MB .pdf scanned image) |
Last revised 2024-Jun-18 21:42 PDT.
Copyright 2021- David C. Wiens.