• Please review our updated Terms and Rules here

Advanced Digital Corporation Super Six TurboDOS and TurboDOS x86 PC - can they communicate ?

retrogear

Veteran Member
Joined
Jan 29, 2014
Messages
1,124
Location
Minnesota
I've been gradually building up some TurboDOS systems. I now have a 3 terminal ADC S6 with 1 master and 2 slaves running Z80 TurboDOS and a 386 PC running TurboDOS PC.
The 386 has a traditional serial card set to COM1 which I have no clue if TurboDOS PC is even aware of it. I only have 3 functional serial rs232 paddles for the ADC which are all
running terminals. I was wondering about sacrificing one of those to use as a serial connection to the PC. No idea yet how to implement this. I have been posting these setups
on FaceBook groups but decided to jump back here for discussion. Here are some photos of my current TurboDOS cave. Crap, I have to reduce them, I guess ...vcf2.JPGvcf3.JPG vcf1.JPG
 
Wow, fantastic to see your setup! The answer to your question is yes, you can network TurboDOS processors over serial, the full protocol is supported, just like networking over the bus. Easier said than done though since there's no step by step guide. At a high level, what you need is the serial circuit driver CKTSER installed on both machines. Both machines will also need their regular serial drivers present and set to a matching baud rate. For the IBM PC the serial driver is SIOIPC.O The serial cables will need to support full handshake in both directions, pins 2,3,5,7,20 and pins 2&3 will need to be crossed. Both machines will also need the full complement of networking drivers in their OS's as specified in the TDOS manual.

The networking setup will be considered Master to Master processor, examples are provided in the TDOS manual. Also see Roger Breton's supplement to the Software 2000 manuals and the networking section... very helpful. You will need to modify the Circuit assignment table, Disk assignment table, and I think also need to define a Forwarding table in each machine's .par files.

You will have to make sure that there are no duplicate circuit numbers on the entire network. If you have Box A defined as the master of Circuit 1, then you cannot have Box B also defined as the master of Circuit 1. If Box A wants to talk to Box B, then define Box A as master of Circuit 1, and Box B as master of Circuit 2, and add the CKTSER driver as circuit 3 on each Box, give Box A's CKTSER driver a network address 3,1 and Box B's CKTSER driver a network address 3,2 If Box A wants to access Box B's C:\ drive, you will have to define the 3rd entry in Box A's Disk assignment table to be a foreign disk, and point it to Circuit 3,2. The Forwarding table comes into play here too I think, but I don't have it all in my head.

If you don't have CKTSER, you can get it here: https://drive.google.com/drive/folders/1jstmuAVYHzAOVtGDc6bAPmTPr8jaazBm?usp=sharing

It's going to take some fiddling, but it's possible, I'll be following with interest if you decide to give it a whirl.
 
I've verified the COM1 card installed in the 386 PC works by using Check-It connected via a serial cross-connect adaptor to a modem I still have. Since I only have 3 working serial paddles
for my ADC S6 I will begin by make it's master headless (which IIRC is by adding the CONREM.REL module and removing CON96.REL ?) then connect that serial paddle to the 386 PC COM1.
When I boot the master, I will lose prompt and character echo until the PC establishes connection which I don't remember how ? I did this in emulation back in 2015 or so. I have short term
memory loss which seems to get longer all the time :) I'll have to read thru more posts from BITD. I do have some notes on paper as well.

PS - I just remembered I will need an escape plan for the master which boots from hard drive since once I cut off it's head I will need a floppy booter to fix problems ...

Larry
 
Yes, replacing CON96.REL with CONREM.REL will allow you to access the Master processor remotely over the network, but you may want to simplify your setup while you work things out. Take your slave processors out of the Master's GEN/PAR files and just get a working Master to Master network going, between the SuperSix and the PC, then add the slaves back in. You should be able to have a physical console and a serial connection to the PC from your SuperSix.
 
I'm going to try the master to master serial network. I have CKTSER.REL added happy to my GEN on the z80 side and need to work on the PAR patches. I'm using the ADC S6 master channel A for local console
and channel B for serial network. I've added the SIOIPC.O module to my 386 PC side but get serial# violation. Now I need to remember the fix for that ? I think there was a utility to serialize but not sure on an x86 version ?

Larry G
 
It appears SERIAL.CMD can put serial# in object modules but not if it already has one. I looked with a hex editor
Yes, there is a re-serializer for the 16 bit object files, I will send it to you.
ah yes RS re-serializer. You sent me RS16.COM for .O objects ? But since it's a com is it supposed to run on the z80 box ? All my commands on my Turbodos PC are CMD
 
It appears SERIAL.CMD can put serial# in object modules but not if it already has one. I looked with a hex editor

ah yes RS re-serializer. You sent me RS16.COM for .O objects ? But since it's a com is it supposed to run on the z80 box ? All my commands on my Turbodos PC are CMD
Yes, RS16.COM is an 8-bit executable, but it operates on 16-bit .O files.
 
I'm not having any luck getting the two systems to communicate. I've set up the ADC S6 serial channel B to the 386 PC COM1 with a serial cross connect. Both are hopefully set to 1200 baud.
I used channel B on the ADC since channel A has a master terminal on it. I mapped the PC drive D: to remote ADC drive D:. When I do D: I get a prompt and <ret> gives another prompt but as soon as I do DIR it just locks.
I was getting network error but not after playing with par settings. I'm attaching both pars and gens to see if anything looks wrong. I'm not real sure on the circuit settings.

Larry G
 

Attachments

  • m2m.zip
    5.3 KB · Views: 4
I made some changes to your files, but I don't have high confidence that it's 100% yet. One thing to note, when you are networking 2 masters together, all circuit numbers need to be unique to the network. You will see that I updated the ADC Master to be owner of circuit 0100 and circuit 0200, and the IBM PC is owner of circuit 0300. I also mapped local disk D: on the PC to Remote Disk E: on the ADC Master. Other changes were to the serial driver buffer sizes and assigning CKTSER network driver to the ADC serial channel B.
 

Attachments

  • m2mv1.zip
    8.3 KB · Views: 2
No joy yet. There were some things I had to change. On the ADCS6, CKSCHB CKSBRB and CKSEQB are all undefined. Suffix A works so I set CKSCHA = 1 for B channel and used suffix A on the rest.
Also MCDSS has to be included even if master only or no commands work at the prompt. It took me a long time to figure out that one. NMBCKT =2 is needed to define CKTDRA and CKTDRB.
I have the source code for S6SIO.MAC and S0IBSZ, S1IBSZ are present but no S0OBSZ or S1OBSZ exist.

On the PC 86 side, S0IBSZ is undefined. I tried S1IBSZ but also undefined.

I'm wondering if my serial cross connect is done right. I read in a VCF forum somewhere that a 9 to 25 pin adaptor can have 2 and 3 already crossed? I see there pin definitions are reversed.
I have a battery powered breakout box with lights. It's odd that when the ADC is plugged in a few lights are on but when I plug in the PC side, all lights go out and nothing ever toggles. It's almost
like a voltage level has changed? The PC COM port passes all diagnostics when hooked to a modem and tested with checkit so the port is just fine.

Larry G
 
Ok, I found some errors that I made as well in the files I posted. Can you post your current GEN/PAR's and I will revise some more.
 
I just finished proving that the channel B port on the ADC S6 master board is good. Channel A is console to my Televideo, channel B is connected thru the RS232 paddle direct 25 thru a LED breakout box then 25 to 9 adaptor (no crossover)
to the 9 pin COM1 port on my Dell laptop running ProComm Plus on Windows XP, setting 9600 8N1 (I had to use 9600 for this to work). When I boot CPM 2.2 on the ADCS6 the bios reports console is serial port 1 and printer is serial port 2.
On the DB25 breakout box CTS pin 5, DSR pin 6 and DCD pin 8 all light up. When I boot ProComm on the laptop RTS pin 4 and DTR pin 20 light up. Then using the ADCS6 running cp/m A>PIP LST:=FILENAME.ASM causes RD pin 3 to light up and the file echos normally to the ProComm terminal. Again, I had to set ProComm to 9600 8N1 to work. 1200 baud showed gibberish. I'll post my GEN and PAR again. I might not have time tonight. I spent quite a bit getting this transfer
to work.
 
my current GEN and PAR files (hopefully the correct ones this time) does the ADC need some kind of circuit definition for the 0300 remote ?
 

Attachments

  • m2m_r2.zip
    5.5 KB · Views: 4
Yes, that's correct, the ADC needs to have a 0300 circuit definition, here's the scenario from the perspective of a user on the PC trying to get to the disk on the ADC Super 6:

The OSMASTER operating system on the PC references Drive D:
NetMGR checks the disk assignment table (DSKAST) and sees that drive D: is remote and is the 4th entry at the remote location, and the remote location is 0301.
0x84,(0x0301) ;Drive D: is E: remote ckt 3 node 1
It formats a message to be sent to 0301 and submits that message to the circuit driver that is assigned to circuit 0300 in the circuit assignment table. In our case CKTDRA = CKTSER because it is the first circuit driver that's listed in the OSMASTER GEN file.
CKTAST = (0x0300),CKTDRA ;Circuit assignment
CKTDRA will see that node 01 is not local and will will transmit the network message over the serial cable.

Here's an updated GEN/PAR for you to try.
 

Attachments

  • m2m_r3.zip
    5.6 KB · Views: 3
Still no go. I'm sure wondering about the SIOIPC driver. When I boot TurboDOS on the ADC, CTS, DSR and DCD all light on my breakout box but then booting on the PC, no lights change like RTS and DTR do with ProComm.
You gave me source code with more modern serial drivers for the pc. Would those assemble with TASM ?
 
After consulting an expert, here is another set of GEN/PAR files to try. The changes are as follows:
ADC Super 6:
GEN/PAR files now have the Super Slave circuit drivers on circuit 0. There were times when the vendor supplied circuit driver for slave processors was poorly written and required them to be on circuit 0, not a TurboDOS requirement. Make this change just in case the ADC slave circuit driver requires it. MCDSS is now CKTDRA

CKTSER driver is now the second driver in the system and will be CKTDRB, and is assinged to circuit 01, node 00

Default destination ID DEFDID for the ADC Super 6 is now 0000

IBM PC:
CKTSER driver is assigned to circuit 01, node 01

Default destination ID DEFDID for the IBM PC is now 0100

Disk assignment table now references remote drive E: on circuit 01 node 00
0x84,(0x0100) ;Drive D: is E: remote ckt 1 node 0

Still using the original SIOIPC serial driver.
 

Attachments

  • m2m_r4.zip
    5.6 KB · Views: 3
Back
Top