• Please review our updated Terms and Rules here

finally, a STABLE IRCd for DOS

Mike Chambers

Veteran Member
Joined
Sep 2, 2006
Messages
2,621
started from scratch on this one 4 days ago... let me know what you think if you try it! make sure ya edit your IRCDLITE.INI file and MOTD.TXT if you run it.

:)

http://www.rubbermallet.org/ircdlite83008.zip

works on an 8088 with 2 seconds lag or so... 286 = almost no lag. and there is a simple built-in web server that spits out basic status info on the connection handles. you can change the port for that in the INI. i'm sure there are bugs let me know if you run into one, but it works without crashing it seems. DOSIRCd code was all convoluted i thought a fresh start would be good. i'm keeping it more simple as well. no services, at least for now... we'll see what happens.

and of course it's up and running live on an 8088 at irc.rubbermallet.org port 6667

we're all in #wtfpwnt


WHOOPS! important edit: if you download and run it, i forgot to mention that NTCPDRV has to be started like this to allow more than the default 8 connections or your IRCd event log will fill with endless errors:

NTCPDRV.EXE <ip_address> 20
 
Last edited:
oh yes... PING is still not implemented btw, along with WHO but everything else is there for a basic stand-alone IRC server. connections still die on their own after an extended timeout period.
 
How come? Is this one in C now, or something?

ha ha ha very funny...

but no, peter tattam gave me all the status codes for TCPDRV that for some reason weren't in his original spec sheet. :eek:

just for that i will post a pic of your favorite IDE

tcpip01.png
 
Actually, it was a fair question. I asked the same exact thing, but I did it on the IRC channel instead.

Writing good code is tough. I've been going back through my stuff looking for loose ends and trying to understand how it all works again. I've been able to do some cleanup, but I just keep finding more loose ends. There is a reason why Microsoft used somebody else's TCP code instead of doing their own from scratch. ;-0
 
maybe i am too defensive considering it's such an offensive language. i actually want to start working with TCP in turbo C. would you recommend your stack for a C beginner or something else?

i plan on just making a simple telnet client to begin my adventures. any queries about the language itself i should be able to find an answer to in the TC manual i hope.
 
Don't boil the ocean.

If I were you, I'd start with something you know. You already know NTCPDRV and you have already used it a lot in QB. Why not do a new app using NTCPDRV, but this time using C instead of QB? Or why not port one of your simpler older apps to C?

This lets you reuse some of what you know while starting on something new.

My TCP stack will be great for a beginner .. when it's done. I'm still adding function and fixing problems. I'm also going back over a lot of old code and scrubbing it. Writing a library is harder than writing an app because the library is supposed to be perfect .. it's bad enough when people make bugs in their own apps, the last thing they expect is a bug in the library they are using.
 
. . . i actually want to start working with TCP in turbo C. would you recommend your stack for a C beginner or something else?

I made my experiments with DOS-TCP/IP programming using Borland C version 3.1 and the WATTCP library from waterloo university. Unfortunately i haven't got the official documentation, but it comes with the complete sources, which are fairly well commented.

In addition there is quite a number of applications, which also come with sources, so you can look how others have done it and learn from their source code. You could start by simply re-compiling an already working application, then make minor modifications etc. until you feel suficciently comfortable to start your own project from scratch.
 
I made my experiments with DOS-TCP/IP programming using Borland C version 3.1 and the WATTCP library from waterloo university. Unfortunately i haven't got the official documentation, but it comes with the complete sources, which are fairly well commented.

In addition there is quite a number of applications, which also come with sources, so you can look how others have done it and learn from their source code. You could start by simply re-compiling an already working application, then make minor modifications etc. until you feel suficciently comfortable to start your own project from scratch.

i was thinking about WATTCP actually. i've able to do some pretty fun with with QB45/QB71 with NTCPDRV (check out the IRCd if you're interested, or my leetIRC client), but i'd really like to get into a language that isn't quite as limited and slow.

if you really want, you can get QB to do whatever you want with some ASM thrown it but it's tough and a PITA. if i used C i bet i could write an IRCd with half the lag time of this one I wrote in QB.
 
so has anybody tried this? i realize completely that people interested in running an irc server comprise a pretty small niche, but i'd love to hear any input on it.
 
Back
Top