DOSContainer logo DOSContainer

Loading configuration files in Rust

📅 2025-05-11  · ✍️ Bas v.d. Wiel  ·  🏷 design

Loading and parsing configuration files is a key component of DOSContainer. The chosen file format for configuration is TOML, for simplicity. Rust’s community produced a crate specifically to read and write this format, so yay! But unfortunately for me, this is far from ideal. One of my project’s base principles is that I only want to write code if I absolutely have to. If I can borrow functionality from a community crate, that’s what I’ll do.

Read more...

Why so many dependencies?

📅 2025-05-10  · ✍️ Bas v.d. Wiel  ·  🏷 design

The main reason why I picked Rust to write DOSContainer is because I wanted to learn it. The second reason is the fact that Rust has a large ecosystem of code that is easy to pick up and use. Some years ago I started coding in C++ and while libraries are indeed nothing new, managing them was like getting your teeth pulled by a toddler with a claw hammer. Rust has cargo, and I’m using a lot of it in DOSContainer!

Read more...

Audio device configuration

📅 2025-05-08  · ✍️ Bas v.d. Wiel  ·  🏷 design

One of the most complicated aspects of DOS gaming used to be the support for a whole forest of different audio hardware. Initially the PC came with nothing beyond a simple speaker that was intended to produce simple square wave bleeps as a means of auditory feedback, like system alerts. As computers found their way into markets IBM had not envisioned, like gaming and music, lots of add-ons appeared that would readily slot into the supplied ISA-slots of the PC. DOSContainer intends to support the most relevant such hardware, primarily for gaming. If you think something important is missing, drop me a note!

Read more...

Welcome to DOSContainer

📅 2025-05-07  · ✍️ Bas v.d. Wiel  ·  🏷 announcement

So what is DOSContainer? It’s a software project aimed at those who build and maintain collections of games and applications for the DOS platform. DOS, an abbreviation for Disk Operating System, is a class of operating systems that were popular in the 1980’s and 1990’s for use on IBM-PC and compatible hardware that would go on to grow into the Windows platform we have today. DOS was quite a basic operating system that was command-line driven. The fact that there were dozens of versions from different vendors paired with wildly different hardware platforms didn’t make things easier on the systems’ owners. DOSContainer aims to take the complexity out of the maintenance of large libraries of DOS software.

Read more...