I am writing a game engine for the MS-DOS.

Kenneth0

Member
Joined
Nov 7, 2025
Messages
5
Reaction score
25
Age
23
Location
Toronto, ON
Website
kennetho.bearblog.dev
Gold
592
Pronouns
he/him
Hello everyone, I wanted to announce that I am writing a game engine for the MS-DOS , so far it's capable of some colour register tomfoolery, rendering bitmapped fonts, loading and displaying images, and loading sprites (in progress). it will be capable of 3D rendering and loading 3D objects/files in the future (hopefully by the end of the month).

DOSBox will be what I will be using to test the engine since I can't afford a actual DOS computer yet, but if there's anyone who has access to one please contact me.

The name of the engine is SCHONKY, I know it's a very weird name but I got it by combining the names of my best friend's cats (she has two).

I will be posting updates and demos on here and I hope I don't forget about this thread.

- why am I making this for the MS-DOS and not something modern? Well, I thought it would be a cool learning experience and I have "tried" some vulkan and wow I am too stupid to do anything with it.
- I might try making a small game with it.

And if you have any questions about the project feel free to ask, I don't bite.

Thank you for reading.

The below image was created using a software called theDraw with a small program that is able to display the output ANSI file, all running on DOSBox.
SCHONKY.webp
 
Hello, it has been a long while. I was fixing an issue with the PCX image loader in the game engine. It was properly loading some images and it would completely crap itself while loading other images, which was very weird.

I had myself looking at hex dumps of the offending images for a long while to see if I could somehow find out why they weren't loading properly.

"maybe they got corrupted somehow, but they display properly on my windows machine",
"maybe the image converters messed up somehow? but I have a converted image that works properly but the rest don't"

I got really exhausted and I tried just doing other things instead, I had some fun with the TRS-80 Model III, I tried using the ELIZA program on it (early "AI") but it really sucked, I might talk about it at some point lol. From time to time I would go back and try a bunch of experiments to see what the problem was, I got windows95 and windows98 to install PC paintbrush to directly convert the images and I was still getting the same image errors. No luck sadly.

Today, I saw a twitter post recommending an application called "IrfanView", I had never heard of the application before but apparently it was really good and ohhhhh boy that person was very correct. The thing that surprised me the most about this application, was that you can straight up convert image files to whatever format (a lot of formats), and of course I tried converting my images to PCX but........it produced the same result.
But something caught my eye while I was trying to select another image, I would display the properties of the image, yes, I am so stupid I didn't try comparing the properties of the images (the ones that worked and the ones that didn't).

It turns out that the images that displayed properly had a color depth 8bpp and the ones that didn't had a color depth of 24bpp, and I heard a voice in my head when I saw that: KENNETH YOU DUMB ASS EACH PIXEL ON THE VGA IS 8 BITS LONG, WHY WERE YOU LOADING IMAGES WITH 24 BITS ON EACH PIXEL, THAT'S A LOT OF COLORS.
Note: BPP = Bits per pixel

This took me 2 weeks to fix by the way 😭

lucky for me IrfanView has a way of reducing the color depth of any image, all the way down to 1bpp (black/white), after reducing the color depth of the images, they were able to load correctly, of course lol.

This is what happens when you try getting the VGA to display a 24bpp image (looks funky eh):
pcxdem_003.webp


And this is what happens when you load an image into the engine with the right color depth:
Screenshot 2025-11-24 162830.webp
He's name is Norris, but we call him CHONKY, lol


Anyway, I am pretty tired and very happy, Like I can actually progress with this stuff lol. the next feature is a sprite loader and a 2D animation engine.

And it would be much appreciated if anyone had any questions about any of this.

Note: This was tested on DOSBox-X

Thank you,
Kenneth.
 
hate it when the issue take weeks resolving but it's staring right at you all this time... what languages are you using to make DOS programs?
I know it can feel very bittersweet, like you solved the problem but damn it took weeks to fix and it's a really simple fix too 😭. And for the languages I am using, Assembly language (for speed) and C. I wanted to try out pascal but that would be for much later, probably by next year.
 
Back
Top