History: DOS, Soft & Hard

Published: 04-Jan-2022

With the framework of the client coming along quite nicely, it was time to step back and rethink the networking layer. As anyone who has tried to use a network card in DOS knows, network drivers and free memory do not mix.

The solution? Ditch the network card. Wait. Card? That's right - I'm now targeting actual DOS hardware along with DOSBox Staging and DOSBox-X!

To accomplish this, I'll be building an IPX-to-Serial driver for real DOS machines and pairing it with a custom wifi softmodem. Don't panic. The required hardware will be inexpensive and easy to obtain.

But in DOSBox? It uses TCP/IP for emulated serial ports and modems. This is fine for connecting to BBSs or gaming over a local network. Across the internet? I think it can do better!

Enter ENET! A reliable UDP library. Using enet provides all the desired features of TCP - reliable delivery, in-order packet arrival, etc. without any of the added overhead of TCP.

The problem? DOSBox doesn't support it. Or at least it didn't, until now! Taking a break from client development, I added enet support to DOSBox Staging and it was then ported to DOSBox-X!

So now, out of the box, DOSBox is ready to connect to the new server software and DOS hardware will be following shortly!