|
Post by Sysop Fox1 on Feb 4, 2004 18:57:52 GMT -5
Just to inform you I'm busy to modify the Telnet tool to work on Atari 8-bit BBS systems. Requires some work as I have to emulate a modem. Not that easy for me as I never programmed even just one line of VB code in my life. Right now the modifications involve renamed INI files and sending a CONNECT string to the BBS with right after it the baudrate. The baudrate that has to be reported to the BBS can be configured in a dropdown-box I added to the Advanced Setting menu and is stored in the INI file. Baudrates from 75 up to 460800 baud are possible, but everything above 57600 is pretty useless I guess :-) Right now I only need 19200 baud and after some modifications on the Atari hardware maybe 57600...
Grtx, Sysop Fox-1 Thunderdome, the Atari 8-Bit BBS, NL
|
|
|
Post by Jeff Ledger on Feb 4, 2004 19:20:53 GMT -5
:)Welcome to the forum...
What software are you using to send data to the Atari?
Jeff
|
|
|
Post by Sysop Fox1 on Feb 4, 2004 21:19:55 GMT -5
What software are you using to send data to the Atari? I'm using Leif's C64 Telnet server software but it will not do in it's native form since the server does emulate RS232 signals in stead of a real modem. Since my BBS software (BBS Express! Professional 5.0b) makes heavy use of modem-commands I need to add modemhandling in the server-software. The problem is I don't know a thing of Visual Basic, so it's not that easy as I thought it would be. Right now I can connect at 19200 baud with Telnet to my Atari, connected by nullmodem to my Win2K PC, but as soon as I see the first BBS prompt it'll hang-up, like the carrier suddenly has dropped, or the DTR line did go "low". It's not that easy to dig in someone else his code to find out what is doing what and why and when... Grtx, Sysop Fox-1 www.fox-1.nl
|
|
Sysop Fox-1
Newbie
Thunderdome Atari 8-Bit BBS -- http://thunderdome.fox-1.nl
Posts: 16
|
Post by Sysop Fox-1 on Feb 9, 2004 13:38:17 GMT -5
An update:
I modified the Visual Basic source to send the same strings to the BBS as a real modem would do when some is calling. Also modified the "serial-reset" routine to enable the DTR and RTS lines as default when it exits as this is required for my BBS sofware. Connecting and using the BBS on 19200 works like a charm. A hang-up sent by the BBS (as when legally logoff) also works. One thing that doesn't work yet is when someone breaks the telnet connection without logging off from the BBS. Then it'll just wait untill it's timed out. I have no idea what to send to the BBS to let it know that a connection was lost. Dropping the DTR and RTS line doesn't seems to work and emulating a carrier-lost error seems not possible.
Another thing what's not implemented yet are routines to detect if the BBS picked-up the hook by itself. Every hour, and right after every user that logs off, an event-scheduler is run. The first thing it does it taking the modem offhook to give a busy signal in case a user calls the BBS. The line will be hold to busy untill the BBS finishes it's housekeeping. I have absolutely no idea how to implement this into the telnet server source without having to check for Hayes AT commands like ATZ, ATH0 or ATH1. The problem is that these commands will vary, like an ATH1 command can be "hidden" in a longer string of commands, as in ATS0=1M0H1 for example. The only imported part in this string for my need is ATH1, but it takes a h*** of an uninterupted manipulition of strings to do it that way, so there have to be other ways to do this.
|
|
|
Post by Riktronics on Mar 2, 2004 20:28:28 GMT -5
An update: I modified the Visual Basic source to send the same strings to the BBS as a real modem would do when some is calling. Also modified the "serial-reset" routine to enable the DTR and RTS lines as default when it exits as this is required for my BBS sofware. I'd be interested in seeing what you did on that... I'm having similar problems with Image on a Commodore. When Image boots it tries to initialize the modem, by sending ATE0V0H0X1M0 and ATS0=0S2=27S7=25. If I have CGTerm connected through the BBS server while the BBS is booting and manually type OK each time it sends a string it will actually get past the modem init. From there when I try to connect the BBS answers and after a second drops connection. I think I could figure out how to make the program answer OK when it gets one of those strings, but I have no idea why it won't stay connected... Any help would be aweseome! Good luck on your project!
|
|
Sysop Fox-1
Newbie
Thunderdome Atari 8-Bit BBS -- http://thunderdome.fox-1.nl
Posts: 16
|
Post by Sysop Fox-1 on Mar 4, 2004 21:13:36 GMT -5
I'd be interested in seeing what you did on that... As far as connecting to the BBS, I only added some code in the "Connect_C64" procedure.... (inserted directly after the "raise RTS" routine) --------------------------------------------------- If (MSComm1.DTREnable) Then MSComm1.DTREnable = True AddMessage "DTR enabled on COM" & MSComm1.CommPort End If MSComm1.Output = vbCrLf MSComm1.Output = "RING" & vbCrLf ' Send RING string to BBS Sleep (2500) MSComm1.Output = vbCrLf & "CONNECT " & Advanced.ConnectionBaudrate & vbCrLf --------------------------------------------------- The "DTREnable" thingy checks if DTR is enabled, and if not it will be enabled anyways. Then it does send "CrLf", "RING" and "CrLf" to the BBS as text, as this is what a real modem would do. The BBS will reply with "ATA", but I couldn't get the ATA detection to work, so for now I use the "Sleep(2500)" instruction, which will just pause the program for 2500 milliseconds. This is not the way to go, but it'll do for now. Then I send the connection string, which is a variable in my modified version. In my case the variable will read "19200", so the connection string will translate to "CrLf", "CONNECT 19200", "CrLF". #nosmileys
|
|