VOGONS


First post, by ludicrous_peridot

User metadata
Rank Member
Rank
Member

Continuing a past series of topics (including this one) where @ReignerDeustcher was prominently present, sharing details for a renderer tweak I am planning for Tartar - have eventually decided to take on widescreen resolutions... but without any serious changes in the code.

So the resolutions remain the same (320x200, 640x400), but there is an option to adjust rendered frame size and internal renderer zoom so that the image appears as if rendered for a 16:10 or 16:9 screen size. Combined with Tartar's own optional scaling this allows to fill 320x200 and 640x400 screen fully while accounting for non-square to square pixels translation.

Here's an example comparing how this type of output looks in 640x400 with scaling on (top, unmodified) compared to "conventionally" rendered screen in the same resolution (bottom, adjusted to square pixels in graphics editor). Scaling of font glyphs and weapon sprites is less appealing in 320x200, that's why I am using higher resolution for the example, but the gist is that with a 16:10 monitor the image no longer looks "flattened" when running in DOS with these options on.

The attachment wide_640x400.png is no longer available

For 640x480, 1280x1024 resolutions and also for 16:9 geometry Tartar is unable to fill the screen fully (it still only has x2x2 and x4x4 integer scaling and can add x1x1.2 vertical scaling for pixel size correction on top), but these are still handy for adapting to actual attached display size while using an emulator (as long as it allows customization of video output's scaling/cropping). Here is a video of Tartar running in 1280x1024 resolution with 16:10 option selected, output scaled and cropped by RetroArch for playing fullscreen on a 1920x1200 display.

https://www.youtube.com/watch?v=uPrYismnPE4

GA-G41M-Combo G41/ICH7 - Core 2 Quad Q9550 - DDR3 1033 - Radeon RX570 - YMF744 (Cobra) - X3MB (Buran)
Beetle/M/i815+ICH2 - Celeron 566Mhz - Opti 924 (Typhoon Media)

Reply 1 of 7, by uridium

User metadata
Rank Newbie
Rank
Newbie

That looks rather good 😀 Nice WIP.

Reply 2 of 7, by ludicrous_peridot

User metadata
Rank Member
Rank
Member

Thanks. I put together a description of what's available as part of that: https://www.moddb.com/mods/tartar/tutorials/t … en-capabilities

GA-G41M-Combo G41/ICH7 - Core 2 Quad Q9550 - DDR3 1033 - Radeon RX570 - YMF744 (Cobra) - X3MB (Buran)
Beetle/M/i815+ICH2 - Celeron 566Mhz - Opti 924 (Typhoon Media)

Reply 3 of 7, by zyzzle

User metadata
Rank Member
Rank
Member

That's outstanding, and an elegant solution to this issue which plagues all modern monitors in the DOS environment. Wish more programs or games did your very ingenious method at accomodating 4:3 resolutions "stretched" to a 16:9 / 16:10 display.

The problem is so bad and annoying I have kept a couple of the last laptops which actually had a 4:3 monitor (from circa 2005-06 timeframe) just for DOS usage.

I really, REALLY wish some company would create a "modernish" system (say, i5/i7 8th or 9th gen chip which still had non-borked VESA modes on its onboard video and could support MTRRs and had BIOS / CSM support, with an OLED 4:3 display for great and fast DOS usage baremetal. Forget UEFI only / 16-bit emulation, too slow and cumbersome.

Reply 4 of 7, by ludicrous_peridot

User metadata
Rank Member
Rank
Member

Since:
* I have been tinkering with DOSQuake lately, and
* thus have found out that on my laptop, the Intel onboard chip actually repots 1366x768 native resolution of the panel via VESA API
I have also done a small hack on Quake to achieve something similar, albeit only in actual widescreen modes.
In this case, though, it is only horizontal FOV correction for already square pixels.
Also patched an old version of Hammer of Thyrion I am tinkering with in the same fashion.

GA-G41M-Combo G41/ICH7 - Core 2 Quad Q9550 - DDR3 1033 - Radeon RX570 - YMF744 (Cobra) - X3MB (Buran)
Beetle/M/i815+ICH2 - Celeron 566Mhz - Opti 924 (Typhoon Media)

Reply 5 of 7, by zyzzle

User metadata
Rank Member
Rank
Member

Will this build a Quake.exe file which has native VESA support for 1366x768 and 1920x1080 modes? The DOS port of Hexen 2: Hammer of Thryon already supports (eg, recognizes) 1366x768 and 1920x1080 on the builds I have, but of course the original Quake v. 1.09 I have only recognizes up to 1280x1024 and has no 16:9 VESA modes displayed / detected.

Your code appears to account for FOV aspect-ratio correction on square pixels, but I'm not sure if it modifies the VESA lists and / or table to enable the non 4:3 widescreen VESA modes in baremetal DOS.

Reply 6 of 7, by ludicrous_peridot

User metadata
Rank Member
Rank
Member

The build of Quake 1.09 in linked github repo is extended to support up to 1600x1200. The binaries published dont't have the latest changes I have linked to though, but I can also share as attachment if there's interest.

As for Hammer of Thyrion, I am experimenting locally with v1.4.3 which was the first DOS port release, as I would like for myself to have something less remote from original Hexen 2 source code release, slimmer and also build directly in DOS on the machine I am using. That version was also constrained to 1280x1024, so I gave it a similar treatment.

You have given me an idea to see if my machines report higher VESA resolutions, so will try that.

GA-G41M-Combo G41/ICH7 - Core 2 Quad Q9550 - DDR3 1033 - Radeon RX570 - YMF744 (Cobra) - X3MB (Buran)
Beetle/M/i815+ICH2 - Celeron 566Mhz - Opti 924 (Typhoon Media)

Reply 7 of 7, by zyzzle

User metadata
Rank Member
Rank
Member
ludicrous_peridot wrote on Yesterday, 08:59:

The build of Quake 1.09 in linked github repo is extended to support up to 1600x1200. The binaries published dont't have the latest changes I have linked to though, but I can also share as attachment if there's interest.

As for Hammer of Thyrion, I am experimenting locally with v1.4.3 which was the first DOS port release, as I would like for myself to have something less remote from original Hexen 2 source code release, slimmer and also build directly in DOS on the machine I am using. That version was also constrained to 1280x1024, so I gave it a similar treatment.

You have given me an idea to see if my machines report higher VESA resolutions, so will try that.

There is great interest, indeed. Please share latest changes in a binary attachment if possible, for both Quake and Hammer of Thyrion.