Category: bbs

WWiV

I have been quietly running a telnetable BBS for some time over at bbs.nitemarecafe.com for awhile now, without really advertising it anywhere. I’m barely active in any of the networks I’ve joined so far, and it’s just not as fun as it used to be. Part of this is because I miss the local flavor of running a dial-up BBS back in the day, and part is that I really miss modding the hell out of my BBS to make it completely unique. And while there’s something to be said for how far WWiV has come in the 5.xx series, I’m really considering going back to 4.24a. First thing will probably be to mod in fossil support from 4.30, and then add it most of the FMD mods. If I’m running the BBS based on nostalgia, I might as well take that nostalgia up a notch and do it right 😉 Also, I have TWC’s digital home phone service, which is a VoIP service, and some have had at least marginal success in running dial-up over VoIP, so I may attempt to offer a dial-up node on top of the telnet nodes.

Nitemare Cafe (the BBS)

I’ve recently been working on getting a BBS version of Nitemare Cafe back up and running on the current version of WWiV. I haven’t gotten everything configured yet, but I’ve also been working on a companion website at http://bbs.nitemarecafe.com. The BBS isn’t accepting new users yet, but check back soon!

More on WWIV under Linux

Every time I turn around, one bug or another is biting me in my Linux WWIV setup, so I think I’ve decided to use my knowledge of how to get DOS doors running to run the DOS version of WWIV from back in the day, so it’ll be at least fairly stable while I work out some bugs. Since the Linux version is file-compatible, I’ll be able to move back to it pretty seamlessly at some point. Since I decided to run the DOS version, I thought I’d check to see availability of the source of the old versions, since it was commercial software. I went to bbs.wwiv.com via telnet (that’s the official WSS BBS) and, since I registered back in the day, Trader Jack gave me access to those file areas, so it will be a modded board fairly quickly 😉 I’m attempting to do virtual networking between dosemu and Linux as well, but keep managing to drop my network interface while I’m connected from remote 😉 I’ll sort that out later, though, since it’s a minor convenience thing 😉

Doors under WWiV

As promised, here is how to set up doors under WWIV for Linux. It took a lot of trial and error, and pouring over documents and howtos for other BBS packages, but I finally found the solution at Daydream BBS software support. I was going to provide an actual walk-through, but then I realized that I didn’t deviate from those instructions. So, follow the directions there to a tee, and you’ll have no issues at all. My external maintenance script is run via cron and uses pretty much the exact same setup, except I do not pass -u virtual to dosemu, as it will fail because that script does not run from a vty, and serial { virtual com 1 } assumes that you’re running from a vty.

You could also write separate scripts instead of using the door_script that’s provided, but that’s not really needed except in cased like tedit (for TW), as it runs from the TW folder. So I just modified a copy door_script to hard-code the door name and folder. You could do this for every door if you wished, but I find it just as easy to use the single script.

If anyone needs any specific help, please ask.

Thoughts on WWiV on Linux

Here are some of my thoughts on running WWiV 5 under Linux. First, it’s fairly simple, especially if you do your initial 4.30 setup under dosemu instead of DosBox. The difference between the two is that DosBox creates Linux filenames which are all upper case, while dosemu creates them lower case. WWiV 5 under Linux requires them in lower care, in general. Directory names are defined via WWiV’s init (or, initlite) so can be either. Some of the menus need to be upper case because they are called that way from other menus, but the extensions should be lower case. The main menu files should be lower case, but the menu editor might choke on them, so ln -s each file to an upper case filename with lower case extension. This might be required to get editing to work on the other menus as well, but I don’t recall.

Aside from upper/lower case filename issues, there are a few bugs I’ve noticed which appear in the current build under Linux, but not Windows. First, the time left always displays as 0, which is a problem primarily for the door dropfiles. The problem appears to be that IsUserOnline() never returns true under Linux for some reason. The fix was to open utility.cpp and, within the function double nsl(), find the first if statement, and add ” || 1″ to the first if statement so that it always evaluates to true, instead of to false.

The second bug has to do with filenames as well. in printfile.cpp, the function printfile() doesn’t build the filename.ext based on the user’s ANSI settings, and only displays the filename exactly how it is passed to it. Because filenames are quite often passed without an extension so that non-ansi users will get filename.msg while ansi users will get filename.ans, this causes quite a few menus/help items to be broken by default. My solution for this was to temporarily remove the extensions from those files that are passed to printfile() without one. This means no separate ansi/non-ansi files, unfortunately. But most modern telnet clients should support ansi, so that’s not a huge deal. The bigger issue is the telnet client not using the correct upper-ascii character set. FWIW, this is CP437, and is supported in both the Linux and Windows versions of putty.

In a future post, I will detail how I got DOS doors to work. This took a lot of trial and error, but ultimately worked great 🙂

WWiV 5 on Linux

Just thought I’d let everyone know what I’ve been up to of late – working on WWiV 5 on Linux. So far, it’s installed and (somewhat) functional, but, because I am compiling it natively, and not running under DOSbox or dosemu (which I *have* contemplated using 4.24a instead), I am having problems with doors. I have to run them under dosemu, and it doesn’t appear that the dosemu autoexec.bat is running. When I telnet in, and go to the doors, I launch a DOS door, and it hangs at “Launching…” until I press CTRL-C, then it drops me back at the door menu. I feel like I’m pretty close to cracking that nut, though, at which point I’ll work on some networking (WWiVnet, Fidonet, and Usenet… Maybe Dovenet) and let everyone know how to access it once those are done. Very, very close. 🙂

Cyberspace

Does anyone remember an old door game back in the BBS days called Cyberspace? It was almost more of an engine than an actual door, because once you set it up, it was up to you and your users to /dig new rooms, /describe them, define exits, create objects to populate them, etc. There were commands to make objects move from room to room, give them classic RPG character attributes, etc, so you could, essentially, create a game within the door of Cyberspace. I was considering finding the user docs for this door and recreating it in PHP. What does everyone think? Could be kind of interesting?

BBS

I am currently working on bringing the BBS back. Currently, I have Synchronet running on a laptop, but I really miss my WWIV days. I have several conflicting ideas, starting with what package to use. My options are WWIV 5.x, WWIV 4.x (I still have my reg code), Synchronet, and Major BBS. All of them are trivial to run under Windows, but I’m seriously considering Linux. I kinda want to gut an old external modem and put a Raspberry Pi inside of it. I could even repurpose the modem LEDs for different indicators. My favorite idea is to use WWIV 4.x, but because each node would need it’s own instance of DOSbox, I’m not sure how viable it is. Filesystem caching is easily overcome by telling it you’re mounting a floppy disk (but it never reports that there’s more than 1.4MB free space, even if you have gigs), but DOSbox itself it a bit resource intensive for the Pi. I’m not sure if it can be tweaked enough to get several instances to run at once. Maybe if I tell each instance it’s a 286 with text-only video? For the record, I also have a proof-of-concept single node running on my Pi, but DOSbox has not been tweaked. Maybe I’ll do some tweaking before deciding for sure.

Color Computer BBS attempt

From my original CoCo page (some links are likely broken atm):

Hi, welcome to my hastily assembled CoCo page. The sidebar may contain some items of interest, such as the CoCo Serial # Database, ADOS, and files used in my CoCo telnet BBS project. For a progress report on that project, continue reading.


08-26-2008: Since this is my first entry, a little background information might be in order. About a year ago, there was some discussion on the CoCo mailing list about CoCo BBSes, and I decided that I would make one available via telnet. Since I knew it could be done (there are many Apple ][ and C64 BBSes out there via telnet), the original plan was to purchase a Lantronix UDS-10 to emulate a modem, learn OS/9, and set up RiBBS.
Then my wife and I bought a house and moved, and the CoCo was mothballed yet again.

Fastforward to just a week or two ago. I found myself with some spare time on my hands and decided to resurrect the project. Only I’ve since discovered a program for Windows that does basically the same thing as the Lantronix hardware and is used by some in the Commodore community. The Commodore BBS Server webpage has a link to the program, but I’ve included it in the sidebar as well.

A little testing of the software with some PC-based BBS software and a null-modem cable going between the PCs com ports verified that this software was a viable alternative to the Lantronix, with the bonus of being free. Time for the real fun to begin…

At this point, I set my CoCo3 back up, only to discover that three of my four 5 1/4″ floppy drives are bad. Thanks to the guys on the mailing list for the many pointers on how to ressurect the drives, but that’s not really that important at the moment. My goal at this point is to get a CoCo-based BBS available via telnet, since it doesn’t appear to have been done yet.

Since the BBS Server software supports Hayes modem emulation and outgoing telnet, I decided to build a null-modem cable between the PC and CoCo, fired up Ultimaterm, and typed ATDT followed by the IP address of my web server, and I successfully logged into a Linux box via telnet from my CoCo3.
How awesome is that?!

Since my goal over the last year has gone from “Set up RiBBS under OS/9 and make it available via telnet” to “Set up the first ever (to my knowledge) telnettable CoCo BBS,” I headed over to the software page for the BBS Documentary to see what is available for DECB (since OS/9 would pose an additional learning curve). Unfortunately, only two packages are available. All Ram, by Allen Huffman, is a basic cassette-based BBS program for the CoCo which requires a 3rd-party terminal driver. CoBBS is a package by Richard Duncan which was featured in The Rainbow at some point, so there is bound to be some useful knowledge still floating around out there should I run into difficulty. The decision is more or less made by default.

The next step is to set CoBBS up on my CoCo3, at which point I discovered that it wouldn’t run on my 3. A little testing under an emulator verifies incompatibility between CoBBS and the CoCo3. A timely message to the CoCo mailing list confirms this incompatibility, andi through some creative Internet searching and combing through a ton of acquired CoCo floppies, I discover that the Nov ’88 issue of Rainbow contains patches for CoBBS to get it to run on a CoCo3. A replacement for COBBS.SYS and USER.SYS are on Rainbow-on-Disk for that month, and aside from that, I need to add three lines (containing POKEs) and modify another line from STARTUP.BAS.
Since CoBBS is freeware, these modifications will be included in the CoBBS.DSK image that I eventually make available in the sidebar.

With those modifications made, I run STARTUP.BAS and… partial success… It asks me for the date, day of week, time, and which verion of DECB I’m running. It puts the clock in the upper-right corner of the screen. Then… Nothing except the clock counting up in the corner of the screen… I suspect that I actually have to configure the thing before it’ll run 😉
I’m studying the source to see if I can figure out exactly how to do that 🙂

In the meantime, I discover REMOTE2.BIN, a terminal driver for the bit-banger port, on one of the floppies that was acquired. Because it might be kinda cool to have a cassette-based BBS on the Internet, I decide to give it a go. But I don’t feel like waiting on the cassette drive while I’m testing things, so I patch ALLRAM to use the floppy drive (simply by changing all #-1’s to #1’s in both ALLRAM.BAS and EDITOR.BAS) until I’m finished. I fire up REMOTE2.BIN, run EDITOR.BAS to create the neccessary files, and run ALLRAM.BAS. While I’m able to successfully connect via telnet, the connection dies in under two minutes and requires a reset of the CoCo. Not exactly a success. But Allen had mentioned using a different terminal driver, so if I find it, I’ll try it out and see if I have better success. I’ll eventually undo my patches so that ALLRAM uses the cassette drive again, and make an ALLRAM.DSK image available on the sidebar as well.

Sorry for such a long entry. It simply never occurred to me to document the process as I went, and since I’m in a bit of a lull, I thought it might be a good time to document. Future entries should be shorter, as they will (hopefully) be done as I go. If anyone has any pointers to get me unstuck (either software package), feel free to email me at rodDOTbarnhartATgmailDOTcom. wintermuteATnitemarecafeDOTcom works as well 🙂

PS – Please excuse the typos. I’m fixing them as I find ’em 🙂

Upcoming projects

Just a quick note to let everyone know about some projects I’m working on.

First, I’m working on a page dedicated to my 1999 Jeep Wrangler. The page will be mostly static, so once it’s complete it won’t take a lot of time to keep up to date. Most updates will be projects and/or pictures as they come up.

Next, I plan on putting together a page about the Tandy CoCo. I’ve been meaning to do this for quite some time, and it’s about time I got around to it. Again, it’ll be mostly static, but not completely.

Finally, there’s the BBS page. I’ve been wanting to set my board back up for quite some time, and I still plan on it. When I do, I’ll work on a matching website for it. I’ll probably write a program to take the last post in the “From the SysOp” sub and post it to the site, and maybe put some usage stats on the site as well.

Well, there you have it: the projects that I’ll work on when I’m not at work or at school, or busy with “real life” or my other blogs.