|
Post by Jim Brain on Apr 1, 2004 2:20:12 GMT -5
I have posted version 0.1 of my tcp modem emulator to www.jbrain.com/pub/linux/serial/tcpser.tar.gz. The code needs to be cleaned up and modularized, but it's available for use. To use, download gcc -o tcpser tcpser.c To run tcpser -d /dev/ttyS0 -s 38400 -p 6502 -d is device -s is speed -S is speed you want modem to report -p is port -D inverts DCD line You can set emualte multiple modems attached to one TCP port by denoting the additional ports on the command line: tcpser -d /dev/ttyS0 -d /dev/ttyS1 ALl parameters except for -p, -d and -D are cumulative. To set all serial ports to 57600bps: tcpser -s 57600 -d /dev/ttyS0 -d/ /dev/ttyS1 Coupled with this is a null modem cable recommendation. (Can't seem to get tables to work) Linux Target SND <-> RCV RCV <-> SND CTS <-> RTS RTS <-> CTS DTR <-> DCD DSR <-> DTR DCD <-> DTR ------- DTR to ------- DSR
The last item means loop the target DSR to the target DTR. Have fun.
|
|
|
Post by Dr. Video/ADDiXiON on Apr 1, 2004 13:49:59 GMT -5
I may replace my Windows box with a FreeBSD mini-itx box down the road, so I'd need an equivalent program to BBS Server. Sounds like this is the ticket?
|
|
|
Post by Jim Brain on Apr 2, 2004 3:14:58 GMT -5
Well, it works fine with Centipede, tested here. If you don't sue the SL, you have to bypass RTS/CTS, or turn on SW flow control.
Just called your BBS with the 64 here. All was fine, but could not get transfers to work.
JIm
|
|
|
Post by Dr. Video/ADDiXiON on Apr 2, 2004 13:20:51 GMT -5
I didn't quite understand your reply.
How must I physically wire up my null adapter (a DB25F to DB9F) so that it works with my DB25M-DB25M cable? I wish to use this for dialout purposes only with BBS Server. Should the cable be identical to the one used by the BBS? In my case, I have a cable that Leif wired up for me and it is being used by the BBS. I do not want to take it apart to see how he did it for obvious reasons!
I'd like to solder up the adapter tonight and start using Novaterm to call telnet boards.
I used a standard null cable that I bought from 8bit designs, and attached a DB25M -> DB9F adapter (a non-cross over adapter). After novaterm dials out, it says connected, but no characters are sent/receive, and BBS Server detects no activity on COM1.
I believe I have one of 3 problems:
1. My cable is not wired correctly. 2. My COM1 port is defective 3. I configured Novaterm incorrectly.
If you could post a pinout of how I need to wire this adapter up to work with my DB25 straight cable, that will be most helpful!
|
|
|
Post by Jim Brain on Apr 2, 2004 15:18:24 GMT -5
Seems strange that NT dials out and connects when no chars come over the wire. If you are using a null modem cable with a SL/T232 and Leif's SW, and have the advanced Tab/Disconnection tab entry called "Re-enable DTR and CTS..." unchecked, the SL/T232 will not operate. Why? BBS Server normally drops RTS and DTR when not in call. In a null modem cable, they are tied to the 64 CTS and DSR pins. When DSR or CTS is low, 6551 will not transmit. So, options: Enable the option. However, reception of incoming calls will suffer, because DCD line on 64 side will not go high... (In a normal cable, it is jumpered to DSR, which is hooked to PC DTR line) Make a cable like Leif's. However, such cable will not work well at speeds above 2400, since it does not have HW flow control. Have Leif modify his app to separate that option into 2 pieces (DTR and RTS). Then, enable RTS re-enable, and take (make) a null modem cable with all pins connected as per a std cable EXCEPT have the 64 side DSR pin tied to 64 side DTR pin. Use tcpser with cable as noted above (all pins except 64 DSR/DTR regular) (If you want to go this route, I need a day or so to compile tcpser for Win32. You also don't get Leif's award winning UI, mine is command line) www.nullmodem.com/NullModem.htmwww.loop-back.com/null-mod.htmlI hope that helps. Jim
|
|
|
Post by Dr. Video/ADDiXiON on Apr 2, 2004 15:37:43 GMT -5
Ok, my setup is a VIC-1011A with a C64C.
For quick trial and error, I have some RJ45 - RS232 adapters. These connect CAT 5 between serial ports. I can change out the wires at each end to try different combinations.
To get hardware flow control working (so I can run higher than 2400), can I just cross RTS/CTS, then enable HW flow control on the com port and in Nova Term?
I think the only other lines needed to be crossed is RX/TX, right? What do I hookup to DCD?
|
|
|
Post by Jim Brain on Apr 2, 2004 16:47:17 GMT -5
From a wiring perspective, you could just cross RTS and CTS, but...
Leif's app does not currently support handshaking at all. Somewhere, a MSComm.Handshaking=2 (for RTS/CTS, 1 for XOn/Xof, 3 for both, though 1 and 3 will disrupt binary transfers, as I recall) needs to be added, but I'm not sure where. Also, calls to set RTS low or high might need to be removed to disabled.
However, once that is done, HW flow control should work. Last week, when I got my telnet negotiation code done (I didn't have pretty pictures like Leif did, so he gets the glory), I had installed a switch on my RTS/CTS wires to turn it on or off. When turned off, a ls -al on Linux spews all over, but with it on, Novaterm faithfully draws me a screen of 100 directory entries (in color, as Leif showed). It makes a huge difference at higher speeds. It could even make a different at 2400 during file transfers and such things.
Jim
|
|
|
Post by Dr. Video/ADDiXiON on Apr 3, 2004 4:10:38 GMT -5
Partial Success! I took Leif's cable and plugged it into the C64, and it worked perfectly.
So I have to delicately examine it this weekend and make another one.
Now, what I want to do though, is enhance it to support hardware flow control, because 2400 BPS sucks!
Jim, if I understand you correctly, you are saying that to get hardware flow control working, I have to cross the RTS/CTS lines, just like the RX/TX lines are crossed. I would also then change the COM port settings in windows to say 9600 with HW flow control. (and set novaterm to those settings).
But the problem is that BBS Server will NOT work with hardware flow control. Would a WIN32 version of your program work?
I don't know if Leif plans to support hardware flow control.
Am I understanding you correctly?
Jeff
|
|
|
Post by Jim Brain on Apr 3, 2004 12:18:30 GMT -5
You don't have to examine Leif's cable. He put the schematic on this board. Check under the "How does one handle CD line" thread for the schematic.
You understood correctly. To make a common null modem cable, cross SND/RCV, RTS/CTS and DTR/DSR. CD is hooked to DTR from other side...
If you plan to use a SL/T232, you'll need to make a small mod, as I've indicated above.
you could set HW flow control in Windows to HW. Then, I would try BBS Server. It might work. (More probable if you are not using a SL, I think you are using a VIC1101...)
Can't hurt to try...
Leif should be able to easily add HW flow control to his app. Mine would also work, but Leif can probably add code to his quicker (I could as well, but my VB is a bit rusty...) I'd rather not rush a Win32 version in this case (You'd be a guinea pig...) Mybe Leif is listening and can quickly deal with any issues. Maybe, it'll work fine. My comments about it not working are slanted towards SL/T232 usage, and I think you are using a VIC1101. I think that interface is more forgiving of the signals...
JIm
|
|
|
Post by Dr. Video/ADDiXiON on Apr 3, 2004 14:37:35 GMT -5
Wow, Mike succeeded in uploading CCGMS using Punter to my bbs last night!
I noticed a few data-verrun messages were logged by BBS server this morning while I was reading stuff online. I think that could be avoided with hardware flowcontrol.
Anyway, this stuff gets better every day!
|
|
|
Post by Voyager on Apr 3, 2004 14:39:37 GMT -5
What I use to call out is a C64 running ccgms and Tom Stocks hayes emulator on the PC end. I have a radio shack null modem adaptor between the two. I was able to upload to Dr. Videos BBS this morning using punter, there were a few bad blocks but I think it went OK
Mike
|
|
|
Post by Jim Brain on Apr 3, 2004 21:08:46 GMT -5
What speed were you going at?
2400?
Jim
|
|
|
Post by Voyager on Apr 4, 2004 10:12:50 GMT -5
I was going at 2400 baud. I tried to d/l the same program I uploaded last night and it did not work, it just kind of stoped.
Jeff said the bbs did not crash but I was getting nothing on my end. The program that was saved is bigger then the original. I tried it and it started to run then stooped, I may try it again, maybe did not have the best connection.
Mike last stand bbs laststandbbs.net
|
|
|
Post by Dr. Video/ADDiXiON on Apr 4, 2004 13:57:12 GMT -5
I managed to upload a 120 blk program from my Novaterm via BBS Server to a Cbase 64 bbs in Sweden. Only 1 error was reported, and the resulting file was 120 blks.
So I think we can say it's not likely an issue with BBS server causing the problem. BTW, I did that xfer with PUNTER!
|
|
|
Post by Jim Brain on Apr 4, 2004 20:34:51 GMT -5
Maybe not, but I think we need to verify at higher speeds. A 128 will have little trouble keeping up at 2400 bps. 38400 is a different matter.
jim
|
|