|
||||||||
|
|
|||||||
![]() |
|
|
Thread Tools | Display Modes |
|
#1
|
|
Google newsgroups had quite a few hits on the subject of telnet and serial
communications, but I couldn't quite find a topic specific to my sitation. Here is my objective: Host a telnet session on my linux box, and transparently route the user to my C64 BBS (subsequent telnet connection requests are blocked until the serial port is free again). Data going to the BBS is converted from the telnet protocol to the rs-232 protocol (according to the parameters specified by this specialized telnet server). Data coming back from the BBS is converted from rs-232 protocol to telnet. This is done over an RS-232C null modem cable. Programs to handle this exist for Windows (BBSLink), but I'm not aware of any for Linux. The C64 only speaks RS-232 (RS-232C with my V-1011A interface). I figure I'm going to have to write this in C (it'd be a good learning exercise!), but in my excitement to get the thing working quickly, I thought I'd ask if the software already exists. I have my own ideas for customization, but I'd like to see what is out there first. I don't need to emulate for the client, it's expected the client will be using a C64 emulation telnet program (such as CBMTerm), or using standard ASCII. Any and all help (links, etc) is MUCHO appreciated! microman |
|
#2
|
|||
|
|||
|
>>>>> "microman" == microman <(E-Mail Removed)> writes: microman> microman> Google newsgroups had quite a few hits on the subject of microman> telnet and serial communications, but I couldn't quite find microman> a topic specific to my sitation. Here is my objective: microman> microman> Host a telnet session on my linux box, and transparently microman> route the user to my C64 BBS (subsequent telnet connection microman> requests are blocked until the serial port is free again). microman> Data going to the BBS is converted from the telnet protocol microman> to the rs-232 protocol (according to the parameters microman> specified by this specialized telnet server). Data coming microman> back from the BBS is converted from rs-232 protocol to microman> telnet. This is done over an RS-232C null modem cable. microman> microman> Programs to handle this exist for Windows (BBSLink), but I'm microman> not aware of any for Linux. The C64 only speaks RS-232 microman> (RS-232C with my V-1011A interface). microman> microman> I figure I'm going to have to write this in C (it'd be a microman> good learning exercise!), but in my excitement to get the microman> thing working quickly, I thought I'd ask if the software microman> already exists. I have my own ideas for customization, but microman> I'd like to see what is out there first. microman> microman> I don't need to emulate for the client, it's expected the microman> client will be using a C64 emulation telnet program (such as microman> CBMTerm), or using standard ASCII. microman> microman> Any and all help (links, etc) is MUCHO appreciated! I'm not sure you have to write any code to do this. First, connect the linux and C64 machines with a serial cable, and make sure that on the linux machine you can start up the program "minicom" and talk to the C64 BBS program. You will have to select which serial port, the baud rate, stop bits, etc. Just try different things until it works if you don't know for sure about the C64 settings. Once you get it right, save the settings as defaults, so minicom starts up that way every time. Once you have that working, there are a huge number of ways to share this accross the internet. You can start by making a shell account that someone can ssh into (better than telnet, but you can allow that too) and then they can run minicom at the command line. You can make it start minicom automatically by putting the command .login or another startup script. If you want to make sure the users can't do anything on your linux machine, can only connect to the C64, you might experiment with making the BBS user's shell be "/usr/bin/minicom". The shell is the program that starts when the use logs in, to handle user interaction, and when it exits the user is logged out. You can probably use kermit instead of minicom. Making sure only one user at a time is on the serial interface will be taken care of automatically. If you start a minicom talking to /dev/ttyS0 ( serial port 1 in linux ), and then try to start a second minicom talking to that serial port, it will give the error message "Device /dev/ttyS0 is locked." Now, the second person attempting to log in may not actually see that message before the ssh (or telnet) exits, we might have to test that. If you are worried about the people who you give accounts to having access to the linux machine itself, you have to investigate the fact that minicom and kermit may contain ways to escape a command from being sent to the C64 and send it instead to the linux machine. I am interested in this project and I would like to see it working when you do get it up. Feel free to email me with any questions and I will help you if I can. --Rob P.S. If you do want to write code, just to learn, you might look at the source code to minicom and to kermit and then write a simple program that will access your BBS. Then you can make that program the shell of the BBS users. You can also find some examples here: http://www.tldp.org/HOWTO/Serial-Pro...WTO/index.html If you write your own shell that interacts with the BBS, you may be able to better assure yourself that users aren't able to run things on the linux box itself. My personal feeling would be to make an account per person, and that way I could delete an abusive account with out inconviencing the other users. If you have a single BBS user, you have to take more care. |
|
#3
|
|||
|
|||
|
Wow, thanks for all that helpful info! I've saved your email address, will
keep in touch as I get it set up! -Jeff |
|
#4
|
|||
|
|||
|
microman wrote:
<bbs stuff> damn this brings back memories! I had my PCBoard 4.15 BBS running soooo like Ami-X is was wicked. In fact, I've just gone and downloaded System-X 1.5 (they never released newer versions the bastards! .. or of Desire Boardsystem). Wonder if that old Pascal (IIRC) program will run under WinXP ? ![]() heh. I rememer running PCBoard under DOSEmu/Linux at one point ;-) was a touch slow though on my DX2/66. those were the days.. warez warez warez :-) "Sysop is breaking-in for a chat.." memories... my school teacher never believed me when I said the reason for my tiredness was a bulletin board system! |
|
#5
|
|||
|
|||
|
Thanks for reminding my school days. That was a Commodore 128 ....
pretty neat! and using BBS through that was really amazing .... yes, minicom will be a good choice on linux terminal. raqueeb hassan bunia, DRC |
![]() |
| Tags |
| >, commodore, linux, rs232, server, telnet |
| Thread Tools | |
| Display Modes | |
|
|