A downloadable tool for Windows

This is just a slightly modified version of the standard DOSBOX emulator. I have just hacked in my own shader which emulates some aspects of old CRT monitors, as I prefer to play emulated games with such a filter, and the built-in dosbox filters are not to my taste. I made this because I wanted it myself, but since I have it I thought I'd share it. There's probably lots of things which could be done better, but it's good enough for my needs right now, so leaving it like this for now. The source code is available here: https://github.com/mattiasgustavsson/dosbox-crt

I am not a DOSBOX expert, so I won't be able to help you get games working in the emulator or things like that, but if you have questions about my CRT shader, feel free to DM me on twitter, @Mattias_G.

This release comes with a handful of games bundled with it, to make it quick and easy to try the filter out with some real content. All of them are playable demo versions rather than full games, to make the package size smaller and also as to not infringe any copyrights. You can buy full versions of some DOS games on gog.com, and some games are available on sites like abandonia.com, dosgamesarchive.com or archive.org.

You can run dosbox by running the DOSBOX.BAT file in the root of the package. This will load up a DOS menu for easy launch of the game demos. Pressing Ctrl+X will exit the menu and take you to the DOS prompt, and you can use the normal DOS commands to launch things.

StatusReleased
CategoryTool
PlatformsWindows
Rating
Rated 4.9 out of 5 stars
(12 total ratings)
AuthorMattias Gustavsson

Download

Download
DOSBOX-CRT.zip 23 MB

Comments

Log in with itch.io to leave a comment.

Hey total DOS newbie here, if I wanted to run GOG DOS games in this program how I would go about doing it? I barely know how to mount stuff for reference

(4 edits)

Just replace the dosbox.exe in a GOG game folder with this one. Also make sure to set in the DOSBox config file for every game these parameters:

fullresolution=desktop

output=openglnb

aspect=false

scaler=normal3x

autofit=false

Note that you shouldn't copy the config file provided with DOSBox CRT, as every DOS game on GOG comes with its own optimized config file. You just need to change some of the lines.

I have a question: Considering this is a standalone modified version of DOSBOX, is there a way to insert this game into something like Heroic (or that specifically in this case) for games that come from GOG and use DOSBOX to run?

Or should I then just use this one outside of Heroic, download the game from GOG and run it on this one?

Do note that I'm on Linux-distro, so I'm kinda throwing my hands up there, as I do rely on programs (like Heroic) to do things for me. I'm not sure, if this customized version of DOSBOX is meant to run under Windows, how to use things like Wine to run it separately. It might be simple, but I just don't know as of now.

Still, if anyone happens to know if I can insert this in Heroic to have it use this customized DOSBOX instead of the vanilla one, I'd appreciate it.

I am not familiar with Heroic, but maybe someone else knows. This version of dosbox is for windows only, and I don't know if it is possible to run it with Wine or similar. 
When I buy DOS games from GOG, to play on windows, it is usually not a problem to locate the bundled dosbox.exe and replace it with my modified one (just rename it) 

Hello, I tried to open a github issue on this but had no success

Trying to compile dosbox-crt on debian 11 returns a million "narrowing conversion" errors

And finishes with a bunch of other errors, not compiling at all


Is there a workaround?

Thanks.

sorry, I only made the modification for windows platform, I don’t know Linux…

(-1)

Oh, bummer

Thank you anyway, have a nice week.

Hi Mattias, I really love this version of DOSBOX and now use it for most of my GOG DOSBOX games. Games now look so much better. I would love it even more if you would create this CRT shader effect for a more updated version of DOSBOX, like DOSBOX ECE or DOSBOX Staging which have a lot more updated features than the older DOSBOX. Anyway, great work and thanks!

(1 edit) (+1)

I absolutely love DOSBox-CRT and use it with every DOS game I have on GOG. But one of them, PowerSlave that is, isn't working properly. Namely, the music doesn't work, although it works fine with the bundled DOSBox. Any idea what's causing this? I think I've tried everything.

Dosbox games can be a pain to get working, that's why I now use the excellent DOSBOX frontend DBGL as it makes configuring games so much easier and enables you to test various graphics & sound settings. Check it out on the Vogons forum if you haven't already. :)

https://www.vogons.org/viewtopic.php?f=31&t=12915&start=1780

Latest DBGL Version can be downloaded here:

https://dbgl.org/beta

Does it have a similar CRT shader, though?

Yes! You can configure DBGL to use DOSBOX CRT or any other version of DOSBOX. I've also started using DOSBOX CRT for all my GOG games. :)

hi sir mattias, im a big fan of your shader work on shadertoy with MattiasCrt, im wondering if there is a way to edit it to remove the scanline crawl effect, not the horizontal lines crawling, the ripple effect that goes along with it... i tried myself but i have little experience. on the line 37 where you define the scans float, i tried messing with reducing the factor 0.35 to 0.15, it indeed reduces the visibility of the ripples but it is still there. do you know if it is possible to remove it? thanks really appreciated your work

I've been super bummed that I don't own a real CRT monitor these days (and am meaning to find one on craig's list or something.) I grew up with a 386/486 and really miss the look of all those old games, especially since much of the graphic work was made with CRT pixilation in mind. I'm so pysyched to try this out, as it's a perfect solution to my problem: I've got two or three huge cardboard boxes of old floppies and CD-ROMs from the 90s that I want to play, but that I know won't look or feel the same on my modern LED monitor! Now, they will! Woo!

(1 edit)

Amazing filter but my mouse doesn't seem to work at all.  When I go to window-mode and hover over the DosBox window, the cursor gets pushed the right side of the window every time.  CTRL-F10 doesn't make a difference. 

Anyone have any ideas for dealing w this?

(+1)

Any chance to implement this into SCUMMVM? Or is it already?

I haven’t seen any scummvm integrations of the shader. I think it would certainly be possible to do, but I have no idea how much work it would be, and I don’t have any plans to look into it myself. But the source code for the shader is available, so there’s always the hope that someone will implement it sometime.

Reshade now supports Scummvm using opengl, allowing you to use all kinds of CRT shaders and other effects. 

https://reshade.me/

Just downloaded today, this is exactly what I needed for my retro-pc games. Thank you! Any way to edit that intro menu? I would love to add my games to the menu as well. Great work!

This looks really well.

Is there any version of this shader to be used with OBS? So it's not only limited to DosBox? :)

i.e. with obs-shaderfilter

Thanks, I’m glad you like it!

I am not familiar with OBS shaders, but it might well be possible to integrate my shaders with that. It is not something I would do though, but the code is open source so maybe someone else will. 

I do have a standalone image viewer using the shader, and the code to that can be found here https://github.com/mattiasgustavsson/crtview

It might be a useful reference for anyone trying to use it for something else

It's been 10 years since I touched C for the last time xD but if I had the shader alone (like, vertex and fragment files) I could try something...

too bad I couldn't find them in that repo

(1 edit)

yeah, it’s not so straightforward  to find them - it’s implemented as a single-file library, so the shader code is embedded in the C code - you can find it here https://github.com/mattiasgustavsson/crtview/blob/de7897958ac1f346ca7fa3dbf5a57dab5fcc5bb3/source/crtemu_pc.h#L57

It’s a little more complicated than just a shader though - I use a couple of extra passes and buffers, to do a good gaussian blur with decent performance, and to accumulate pixel values over time, so there can be a visible blur trail when objects move. I don’t know how tricky it would be to recreate that for OBS...

I do have an earlier version of the shader here:

https://www.shadertoy.com/view/Ms23DR

It doesn’t use the extra buffers, it is just a plain pixel shader. So it does not have the blur trail, and it is also very GPU intensive due to the gaussian blur being done on the full resolution rather than on a smaller buffer.

Thanks for the info. appreciated!
Probably a similar effect can be achieved by combining several simple shaders... I'll try to play with it!

(+1)

I'd love to see an OBS shader/filter integration as well! If anyone ever does end up doing it, please let me know!

I like it - most other builds come with many experimental parts that only cause compatibility issues. Only thing that I would like, is for the PNG used to be external so you can modify it.

I love this!  Is there a way I can replicate this shader as a GLSL, CG, or SLANG?  This is the closest to my old monitor from the 90s that I've seen!

Thanks :) I’m glad you like it!

The code for just the shader can be found here https://github.com/mattiasgustavsson/crtview

It is written in OpenGL