Michael Brutman
brutman.com · Personal blog · on HN since 2009
Michael Brutman builds TCP/IP software for DOS PCs, including mTCP, and writes about the IBM PCjr and other vintage hardware.
What HN saysHN admires that he serves his site from a PCjr running his own DOS network stack, and praises mTCP and his PCjr forum.
26HN people shared it
16linked it in comments
13stories submitted
326story points
7 months agolast shared
2009people per year2026
Most-shared posts
- 1MTCP: TCP/IP applications for your PC compatible retro-computers6 people · 5 points · first shared 2009 · discussion on HN
- 2mTCP: TCP/IP applications for DOS PCs4 people · 141 points · first shared 2016 · 42 comments on HN
- 3MTCP NetDrive – The power of cloud storage for DOS3 people · 3 points · first shared 2023 · 1 comments on HN
- 4The DOS 3.3 sys.com bug hunt2 people · 72 points · first shared 2025 · 42 comments on HN
- 5Mike's PCjr Page2 people · 2 points · first shared 2016 · discussion on HN
- 6MTCP HTTPServ2 people · first shared 2022
- 7Building a Stratum 1 Time Server for 16 bit DOS1 people · 50 points · first shared 2021 · 14 comments on HN
- 8Notes on the Xircom PE3 parallel port Ethernet adapter1 people · 46 points · first shared 2016 · 21 comments on HN
- 9The FAT12 File Truncation Bug1 people · 5 points · first shared 2025 · discussion on HN
- 10Make your own paper hex calculator [pdf]1 people · 1 points · first shared 2025 · discussion on HN
- 11Hunting a 34 year old pointer bug in EtherSlip (DOS Networking)1 people · 1 points · first shared 2026 · 1 comments on HN
- 12Hands On BASIC front.jpg1 people · first shared 2016
- 13IRCjr1 people · first shared 2020
- 14MTCP Performance1 people · first shared 2023
- 15Pcjr keyboard handling1 people · first shared 2018
What HN people wrote when they linked it
accrual · 2023-12-22
Michael B. Brutman runs a website from DOS on an IBM PCjr. He wrote the whole stack himself and created a bunch of nice DOS networking tools.
https://www.brutman.com/
IceCreamJonsey · 2023-07-28
Mike also runs the best PCjr forum! It's been invaluable for help as I got my recently purchased PCjr running with mods and flash media.
https://www.brutman.com/forums/index.php
mbbrutman · 2023-07-15
486? Nah. 4.77Mhz NEC V20, which is just slightly faster than an 8088.
This should tide you over: http://www.brutman.com/PCjr/pcjr_web_server.html
The main page is the best link. You might want to try back later after the initial rush; the machine is getting pounded.
Shivetya · 2018-06-30
Having owned all three of these; I grew up in an IBM house hold but later on I had two different Tandy 1000 series PCs (EX and the bastardized TX which had an 80286 on a XT board). We had a PC from early days complete with the large hard bound manuals, single sided diskettes, and text only.
Now the regardless of processor the PCjr was seriously impacted in that that the keyboard interrupt was not there but actually had to be handled by the processor. See https://www.brutman.com/PCjr/pcjr_keyboard_handling.html for a good description of what this incurred.
(now for the rambling part)
The Tandy was great for their 16 color hack and better sound which made games so much more enjoyable. (star flight being my favorite game ever and it used two 360k diskettes for a persistent environment)
fwiw, even before dedicated graphics we had cool games. Even Wizardry which I had on my Apple was available for the PC and I played it with the ASCII character set being used to create the halls in 3D (think plus sign, bars, and minus signs). All the text based games many reminisce about are from this era
vram22 · 2016-12-27
If anyone is interested in doing TCP/IP networking on DOS (and it may work on FreeDOS [1]), read on:
Reading this thread, I just remembered that I used to have an old IBM PC Jr that ran DOS (years earlier), a great machine hardware-wise (though it was not a marketing success, I've read). And some time back I had written this post about it:
Lissajous hippo, retrocomputing and the IBM PC Jr.:
https://jugad2.blogspot.in/2012/09/lissajous-hippo.html
While looking up info about the PC Jr. for that post, I came across Mike Brutman's PC Jr. page (mentioned in my blog post):
http://www.brutman.com/PCjr/
He was an IBM employee for a long time and so had access to good info about the PC Jr. - both hardware and software, and his page above is one he maintains about that machine - a sort of retrocomputing site about the Jr.
We then talked some on email, and he told me he had built a TCP stack for DOS and was running it on his Jr. That page is here:
http://www.brutman.com/mTCP/mTCP.html
He says others are also using mTCP, for fun, work and even business.
Here's an excerpt from his overview section about mTCP:
[1]:
[ mTCP should run on all variants of DOS including IBM PC-DOS, Microsoft MS-DOS, DR-DOS and FreeDOS. All of these applications will run well on the oldest, slowest PC that you can find - I routinely use them on an IBM PCjr made in 1983 because nothing beats the fun of putting a 30+ year old computer on the Internet.
People are using mTCP for goofing off and for…
32bitkid · 2016-07-18
My father bought the first family computer, an IBM PCjr, when I was 4 or 5. Donkey.BAS made a huge impact on me, although its easy to overlook as a crap game these days. Sure, there were "better" games that I played on that system: my older brother purchased Sierra's Black Cauldron–which I played the shit out of. My uncle wanted me to grow up to be a pilot, so MS Flight Simulator was in order, too. Jordan Mechner's Karateka is still, to this day, mind blowing to me. And lest we forget some Broderbund and Microprose classics.
But donkey.BAS was, which all those other things weren't, is my _first_, real introduction to programming. I was too young at the time to really recognize the value in being able to not only consume, but read the code, change it, learn from it. Unlike more polished games, I learned way more about programming from changing, breaking, and subverting donkey.bas than anything else on the PCjr. Sure, it wasn't _the best_, but it was the first time that someone pulled back the curtain and I was afforded a glimpse at what was possible, and what computers could _do_. Between that, pouring through the "Hands On Basic" book[0], and typing in basic programs COMPUTE magazine, I'm not sure that I'd be a programmer today, as hyperbolous as that sounds...
And some overly nostalgic part of me kind of misses doing PEEKs and POKEs in physical memory and the summer I spent learning binary math because I didn't understand the relationship between the AH and AL registers…
yjftsjthsd-h · 2025-03-04
> To get the big picture of performance evolution over time, I downloaded all 52 releases of fastDOOM, PCDOOMv2, and the original DOOM.EXE, wrote a go program to generate a RUN.BAT running -timedemo demo1 on all of them, and mounted it all with mTCP's NETDRIVE.
I'm probably not the real target audience here, but that looked interesting; I didn't think there were good storage-over-network options that far back. A little searching turns up https://www.brutman.com/mTCP/mTCP_NetDrive.html - that's really cool:)
> NetDrive is a DOS device driver that allows you to access a remote disk image hosted by another machine as though it was a local device with an assigned drive letter. The remote disk image can be a floppy disk image or a hard drive image.
anthk · 2024-04-19
Gopher might be far more apt for DOS:
https://gopherus.sourceforge.net/
Also, there are lots of sites as gopher://magical.fish and such, even gopher://gopherddit.com and gopher://hngopher.com as gateways.
What I miss it's something akin to the News Waffle from gemini://gemi.dev but for Gopher. That would make lots of legacy systems usable. IRC already does work under DOS, and with Bitlbee (there are public TLS-less servers out there) you can connect to tons of chat protocols.
Also, mTCP it's a must for a DOS user with Ethernet (or serial->wifi with ESP32): https://www.brutman.com/mTCP/mTCP.html
EvanAnderson · 2023-09-08
Have you taken a look at mTCP[0]? There would be some good example code there. The TSR portion wouldn't be included in the mTCP code, but there is definitely code there for a webserver.
[0]: http://www.brutman.com/mTCP/mTCP.html
bdowling · 2023-07-15
Somehow this is even more interesting after reading that OP is a Site Reliability Engineer for Google. http://www.brutman.com/Michael_Brutman_resume.pdf
fps_doug · 2022-08-10
> Getting files to the PC is an interesting challenge.
I just put a NIC in mine and use the mTCP utilities. Easy as pie :-))
https://www.brutman.com/mTCP/
einr · 2020-08-03
I see your 386 and raise you an 8088 at 4.77 MHz and 256K of RAM (or less, I'm not sure what the actual requirements of ircjr is if you want to push it): http://www.brutman.com/mTCP/IRCjr.html
Really, it's just text, it doesn't matter. Literally any general purpose computer will run IRC if it can do TCP/IP and someone bothers to write a client.
amiga-workbench · 2019-06-04
I mistook this for http://www.brutman.com/mTCP/, but I suppose there are limited naming choices when it comes to TCP stacks.
iforgotpassword · 2019-06-04
Not to be confused with mTCP, a TCP/IP library for DOS focused on low memory footprint and efficiency so that it's usable on IBM XT class machines. Includes a bunch of applications like IRC HTTP FTP clients and servers.
https://brutman.com/mTCP/
spc476 · 2009-05-14
Technically, the other PC isn't even needed, as you can get a TCP/IP stack for the PCjr: http://www.brutman.com/mTCP/ (and at one point, you could even telnet to this guy's PCjr, although that was for testing purposes).
andrewf · 2023-01-13
Looking further I'm not sure this is what's happening. Startup is http://floppy.museum/files/autoexec.bat, calling into http://floppy.museum/files/httpd.bat, which will try to start DESQview but alternately run HTTPD directly under DOS.
The HTTPD software is https://www.brutman.com/mTCP/mTCP_HTTPServ.html. "Up to 8 simultaneous requests can be serviced; an additional 8 requests can be queued."
The status page http://floppy.museum/status.htm is (under HN load :) consistently reporting 8 live connections.
I'd guess there's one HTTPD running and DESQview lets someone use/admin/etc the system without shutting the HTTPD down.