Reply 60 of 62, by aVd
Falcosoft wrote on 2026-02-23, 15:39:BTW, here is the modified version that works in both 32 and 24-bit modes regardless of the bytes per scanline value:
You can add your modifications to it as you like. The relevant changes are in GHX.H, GFX.C and CRAY32.C. All changes are related to the new function 'get_scanline_bytes()'.
I had some troubles with DOSBox-Staging for Linux... I don't like those snaps, flatpacks etc., but there's no deb-packages or official repository for normal install. I tried snap-package with latest DOSBox-Staging version and it gave me "Illegal instruction" error 🙁 At the end I downloaded last version, which supports win7 x64, and of course it's not the latest version of DOSBox-Staging. Is win7 x64 so obsolete?
Anyway, after the success with win7 version, I ran my C-Ray32 code with added your new function get_scanline_bytes() for latest 24-bit patch and now it works fine with most of the VESA modes. I had to change "vesa_modes=compatible" setting in DOSBox-Staging config file to "vesa_modes=all" in order to run the benchmark in 320x200 32-bit mode, but 320x200 24-bit is still a miss. All other standard resolutions up to 1024x768 (including) work fine in both 24 and 32-mode. So I can confirm, that your latest patch works fine, and that the original DOSBox and it's DOSBox-X fork are not that good in video modes emulation. So, thank you very much for the 24-bit mode C-Ray32 code fix and for pointing me to DOSBox-Staging (it really seems like ancestor of original DOSBox)!
And here is my latest variant of C-Ray32 bencmark based on Zoltan's 24-bit + 32-bit videomodes fixes:
EDIT: The newer version of C-Ray32 1.1_mod3 based on latest Zoltan's 24-bit videomodes fixes is here.
DOS fan :: artificial "intelligence" (chat) bots - not a fan... not a fan at all :: is freeware a lie, when human freedom is a fundamental lie?