Scott Hanselman

Running BBS Door Games on Windows 10 with GameSrv, DOSBox, plus telnet fun with WSL

January 20, 2018 Comment on this post [14] Posted in Open Source
Sponsored By

Example of a BBS home screenI continue to enjoy seeing what can be done with WSL (Windows Subsystem for Linux) but even more fun is combining CMD.exe (the Windows console), Ubuntu on Windows (WSL), and DOSBox (an x86 emulator that lets you run OLD programs in original DOS that no longer run natively on Windows). What kind of cool stuff can I do today?

I did a lightning talk this week at NDC London where I started with a text file that included a CR/LF, Git autocrlf, then talked about typewriters, what a Carriage really is, then the Teletype Model 33, the Altair 8800, the ASCII chart, then ANSI art, and finally moved on to BBS's and BBS Door Games. I'll do a more extensive post later and I'm going to turn this into a full conference talk, but for the demo I ran a few BBS Door Games under Windows 10. Why? Because it's awesome and history is lovely.

You can try setting up what I'm going to describe in this post, or you can try telnet'ing to a BBS like the CaveBBS here: telnet://cavebbs.homeip.net. You might also want to telnet://towel.blinkenlights.nl for ASCII-based Star Wars! Originally we would call (like literally dial-up one to one) a BBS but ubiquitous internet added telnet as a nice option that persists today. Door Games were ASCII/ANSI games that the BBS would shell out to, passing the connection over. When the game extended, the BBS picked up the phone and kept the connection. TradeWars is/was the most well-known Door Game and we'd play it for months. TradeWars was the Elite Dangerous of the BBS set. ;)

So the question is, could we play DOS-based 16-bit Door Games today? Yes.

GameSrv can be used to bring your old DOS based BBS server into the new millennium. It'll act as a front-end and accept telnet connections before passing them off to the DOS BBS software.

Rick Parrish has a BBS door game server for Windows and Linux that he's written in open source C# called GameSrv. You may know Rick from his fTelnet browser based app. fTelnet lets you connect to Bulletin Board Systems from the comfort of your browser. A locally-run cross-platform option for connecting to BBS's is SyncTERM.

Go get SyncTerm, Rick's GameSrv Full, as well as DOSBox 0.73. You'll be able to telnet into your BBS with Ubuntu's (Bash on Windows/WSL) built in Telnet but you may run into issues with local echo (you'll want to Ctrl-] then type "mode char") as well as some missing extended ASCII characters that BBS's loved to draw menus with. While WSL's ANSI support is good, these missing characters cause hiccups. SyncTerm is totally custom with a whole host of Bitmapped fonts and a lot of custom work around extended control sequences. You should also try out EtherTerm, Qodem and NetRunner as other cool BBS-friendly terminal options.

NOTE: One of the major challenges of the conhost (console host - the thing that paints the console window and hosts and paints text and handles keyboard input for bash/cmd/powershell) is that while there's lots of great console fonts, those fonts don't often include some of the obscure extended ASCII DOS characters that BBS's used to draw their menus. In order to find and render those glyphs, consoles will use "font fallback" and follow a tree of fonts, looking for the best glyph. As I understand it (I could be wrong) the current conhost - lovely as it is - doesn't yet support this. I think it should in order to be a complete and effective solution for telnet/ssh/etc.

Run GameSrvConsole and it will listen on localhost by default. You could setup a VM in Azure and run it there to make your BBS and Door Games available to the public if you'd like! Then, either "telnet localhost" or run "syncterm localhost" to access your BBS. You can "ALT-ENTER" to put Sync Term full screen, which is awesome.

Your new BBS

Once you sign up for your BBS with a new account, you can try out the Door Games menu. Selecting a Door Game will cause GameSrc to launch DOSBox and run the Door, while brokering the output back to your telnet client.

Running a Door Game - Ambroshia Test of Time

I'm heartened to see 20 year old BBS Door Games come to live on Windows 10. I'm going to see if my 10 and 12 year olds get a kick out of some of these adventure games.

An adventure door game

Finally, and slightly related, try "curl wttr.in/portland" in a large WSL (Linux) console. Lovely. I love stuff like this. Perhaps I'm easily impressed, or I just miss ASCII art.

image

Head over to https://github.com/rickparrish/GameSrv and STAR his GitHub Repository and if you like GameSrv and appreciate the work involved, you can donate to Rick as well. I have!


Sponsor: Get the latest JetBrains Rider for debugging third-party .NET code, Smart Step Into, more debugger improvements, C# Interactive, new project wizard, and formatting code in columns.

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

facebook twitter subscribe
About   Newsletter
Hosting By
Hosted in an Azure App Service
January 20, 2018 3:32
As a former MajorBBS Sysop (that was a day job gig, yeah, I was a paid sysop, how cool was that!), I love this! Great post Scott :)
January 20, 2018 5:46
There goes my weekend. Trade Wars, Mutants, MajorMUD. So much nostalgia. My parents really hated that modem noise every time they picked up the phone.
January 20, 2018 13:10
Oh, this cries out for containerization. There goes my weekend, too.
January 21, 2018 11:56
Takes me back to South Africa's BBS scene back in the day. So good. Miss it so much. Some interesting info at http://bbs.hmvh.net/ if anyone's interested.
January 22, 2018 19:49
The future of BBS gaming, indeed! :)
January 22, 2018 21:13
So much nostalgia y Miss it so much
January 23, 2018 22:10
Cool idea, too bad it seems to be abandoned (no git commits since May 2016 and the latest binaries on the website are from Aug 2014. Anyone interested in picking this up and maintaining it, or at least releasing a new build?
January 24, 2018 0:47
Heck yeah! I run a Python BBS and still actively draw ANSI/ASCII art. Glad to see the scene getting a little exposure on your blog, Scott!
January 24, 2018 7:58
I had a BBS running on a raspberry pi not to long ago, on a USB modem. Now seems a good time to pull that out and get my fidonet node back up.
January 24, 2018 17:35
Oh boy... souvenir souvenir. The BBS and my C=64
January 26, 2018 21:37
I'm not especially interested in playing old BBS Door games (and wasn't back when I called BBSes), but I am a fan of DOSBox. I date from the original IBM PC days, and still have some ancient DOS software that DOSBox lets me run. On the desktop, I run a DOSBox fork called vDOS Plus, which is intended for running character mode business applications, and strips out the specialized graphics and sound support needed for games.

I can run the same applications under Android using an Android port of DOSBox. (There are several - my preference is Magic DOSBox Free, which passes Ctrl-key combos through to the underlying app. Since one of the apps I run in a WordStar clone called VDE, that's a necessity.)

There are two DOSBox limitations. One is that it doesn't support drivers loaded via CONFIG.SYS (but does support DOS TSRs loaded in AUTOEXEC.) The other is that the DOSBox shell is minimal, and implements just enough of COMMAND.COM functionality to type the name of a program at the command line and run it. But the missing functionality can be added back by running the FreeDOS COMMAND or 4DOS COMMAND.COM replacement beneath it.)

The fact that someone has made it possible to run old BBS door games under DOSBox is a tickle.
January 26, 2018 21:40
@Patrick McGuire: get my fidonet node back up

Where would you get a feed? I was on Fido back when, but the US seems to be pretty much a Fido free zone these days.
January 28, 2018 17:36
You can check Video Statusfor whatsapp and facebook.
January 29, 2018 6:46
Great article! Yes back in the day my Son got me hooked on Telearena Gold using a C=64. Finally upgraded to a 486. We(I)spent so much on credits I decided to buy the worldgroup software in 1996. So hooked on Tele-Arena I heavily modified mine with all 8 runes. I still have the server up today...its still a blast.

Comments are closed.

Disclaimer: The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.