OK BBS Time

If you have questions about any aspect of QBasic programming, or would like to help fellow programmers solve their problems, check out this board!

Moderators: Pete, Mods

Post Reply
Vesuvius
Newbie
Posts: 6
Joined: Fri Dec 22, 2006 10:02 am
Location: Ontario, Canada

OK BBS Time

Post by Vesuvius »

Alright, I've decided to create a BBS using QB. I'm not an advanced programmer by any means, but understand the concept of opening COM ports like files and handling the modem language (thanks for the tuts)

I read some earlier posts about people being able to have multiple callers and was wondering how this would be possible... can someone fill me in on the code needed for this please.
Vesuvius /~\
sid6.7
Veteran
Posts: 318
Joined: Tue Jun 21, 2005 8:51 am
Location: west USA
Contact:

Post by sid6.7 »

all i can remember is that QB can support com1-4 only...
so that could mean up to 4 lines MAX you could use using
different ports...

as com1 and com3 are the same and com2 and com4 are the same...

when i ran a BBS i had to use desqview to run 2 lines and a local node.
back in the old days anyways...

it has to do with SHARE command at some level i believe...for games
and such...although most door games back then only allowed
1 player at a time into them...
User avatar
burger2227
Veteran
Posts: 2466
Joined: Mon Aug 21, 2006 12:40 am
Location: Pittsburgh, PA

COM PORTS

Post by burger2227 »

You can only open COM 1 or 2. To open 3 or 4 you have to swap the port settings. COM 1 to COM 3 or COM 2 to COM 4.

Also there is usually only one COM that has a modem on it.

If you need to swap then let me know. Look in your Windows component settings to find the COM PORT or Modem port addresses.

XP needs a free program called PortTalk to access the ports.

Ted
Please acknowledge and thank members who answer your questions!
QB64 is a FREE QBasic compiler for WIN, MAC(OSX) and LINUX : https://www.qb64.org/forum/index.php
Get my Q-Basics demonstrator: https://www.dropbox.com/s/fdmgp91d6h8ps ... s.zip?dl=0
User avatar
Kiyotewolf
Veteran
Posts: 96
Joined: Tue Apr 01, 2008 11:38 pm

QB BBS

Post by Kiyotewolf »

If you are going to do support for multiple callers, (which is something I fear treading into..), you are going to have to take a page from a multiplayer game.

You are going to have to constantly poll your COM ports, either 2 or 4, however you code, and read in data from your user, and run simultaneous code to handle user requests that doesn't fight over resources, ie. able to handle things such as errors from a file being open at the same time.

You can consider coding a BBS as kinda like a text adventure, cause your BBS will have time to consider what your user wants in between commands to process the requests in the queue, (ie. other users responses at the same time,..), and you have to be able to let your user move from menu to menu, (place to place..), just as if you were operating a live video game, handling multiple buttons and enemy responses, and other things.

What I would consider doing would be to get a single user BBS coded first, debug it with some testers to call your BBS and attempt to hack it on purpose to find it's weaknesses, then double your code over to try to handle the multiple users at once.

I am actually going to code a BBS of my own soon, and have a callback system cause where I am going to be, my dial in line is going to be free long distance, which means, once users validate themselves, the BBS is going to do a bonus call back feature, which dials back and connects to the user free of charge. They only have to handle the long distance calling for the first week or however long I choose them to be in beta stages when I validate their user identity. Then, the system can receive an incoming call and then immediately terminate, wait X seconds, then call the user back on their number in their account and connect free for the user.

Using that strategy, I hope to gather more users than I would if the BBS users would have to pay for the long distance phone service all the time. By saving the cost for them, I think that I could gather more than the average user base in a quicker amount of time, and make it more inviting to the user to want to stay and come in the first place.

Make sure you use standards, such as XMODEM or ZMODEM for transferring files, and use the codes that signal things like buffer overflow and stuff so your BBS will handle long streams of data.

I miss the BBS's that used to be here..

~ goes and googles existing BBS's still in service ~
Banana phone! We need more lemon pledge. * exploding fist of iced tea! * I see your psycho cat and counter with a duck that has a broken leg, in a cast.
Post Reply