VOGONS


First post, by DisChaotica

User metadata
Rank Newbie
Rank
Newbie

Star Trek A Final Unity is a latter-day DOS game and as such is somewhat unusual (albeit not unique) in that it used SVGA graphics. It runs well in DOSBox but it has one annoying quirk: the window size keeps changing whenever it switches between the full-motion-video and the regular gameplay.

I've configured DOSBox to run windowed mode (windowresolution=1280x960, output=openGL, scaler=2xsai, aspect=true) and it starts up in a usual 1280x960 window. The game itself runs at a 640x480 resolution, and during normal gameplay this is correctly scaled up to fill the full 1280x960 window. However, whenever a video plays, the window switches to (I believe) a 640x480 size. I think the video itself was originally 320x240.

Aside from being harder to see anything in the smaller box, the switch itself is very disconcerting. Is there any way to force DOSBox to use a fixed window size even if the program itself switches resolution? I've tried changing different outputs and scalers but nothing has worked.

I'm not that worried about visual quality but I'd really like DOSBox to stick to using only the 1280x960 window regardless of whether or not the game changes its resolution. Heck, I'd even be satisfied if it kept the 1280x960 window and played the video in corner, just so long as it stops switching window sizes.

Reply 1 of 17, by leileilol

User metadata
Rank l33t++
Rank
l33t++

There's two reasons:

- Dosbox doesn't scale up hi-color video modes in surface output (Final Unity has them as 15bpp IIRC)
- You've picked a high resolution for video playback in the setup

apsosig.png
long live PCem

Reply 2 of 17, by kode54

User metadata
Rank Member
Rank
Member

The whole purpose of video mode selection for that game was because many older video cards did not support 640x480x15 or x16bpp.

Fun fact, the demo version that was released, that only contained a trailer video and some UI screen shots, seemed to support 24bpp, but not in a way that worked with most video cards that I could tell at the time.

With Scitech Display Doctor, it also supported 320x240x15 or 16, which ran faster on old systems that actually got bogged down by the software pixel doubling.

Reply 3 of 17, by DisChaotica

User metadata
Rank Newbie
Rank
Newbie

Well, your hint about the number of colors seems to be spot on. "A Final Unity" has options to play in 256 colors, 32768 (15-bit) color and 65,536 (16-bit) color. If I select 15- or 16-bit color, the window switches size every time the video plays; this doesn't happen when I use 256 color.

The video itself plays in 320x240 while the game can play at up to 640x480. However, this doesn't seem to effect the issue; if I choose the lower resolution, the gameplay window scales up to 1280x960, but the videos still cause the window to drop down in size. So it seems to be the color-space that's the issue, not the resolution

Honestly, with a game this old the video is so pixelated and muddy that the difference between 256 colors and 65,536 colors is minimal; I found the changing window sizes far more annoying than a minuscule difference in picture clarity. I've set the game to run at 256 colors. Maybe we can put "scale 16-bit SVGA video" onto the DOSBox wishlist for some far-future release, but for the time being I'm satisfied with the fix. Thanks for your assistance, everybody.

Reply 4 of 17, by koverhbarc

User metadata
Rank Member
Rank
Member

Wow, can't be many DOS games that used >256 colors, but if it was only for the pre-rendered video that makes a bit more sense. Can you run it fullscreen? - from what I know this would fix the problem, if it worked.

Reply 5 of 17, by kode54

User metadata
Rank Member
Rank
Member

The actual game also had the semi-annoying video mode switches, which were more annoying on hardware since they involved a display card and monitor switching modes.

Another DOS game that used >256 colors, and didn't switch modes: NETZone. As well as the Surface Tension, another Compro Games title. Naturally, it had horrible frame rates on low spec hardware, even though it rendered alternating scanlines, both for FMV and for in-game graphics.

NETZone used 640x480 high color or true color graphics for the in-game, without scanlines, primarily because it was designed to allocate a large virtual framebuffer, then pan and scan around it, while performing minimal changes to it for sprite and animation painting. On a period machine, it was possible to get fluid smooth scrolling in DOS, but not really in the Windows / DirectDraw version.

Reply 7 of 17, by koverhbarc

User metadata
Rank Member
Rank
Member
kode54 wrote:

The actual game also had the semi-annoying video mode switches, which were more annoying on hardware since they involved a display card and monitor switching modes.

The mode switches are doubly annoying because those two VESA modes should have the same timings and not require a monitor switch. But it still happens - when I run a fullscreen program at the same resolution as my desktop, I still get a switch. I assume this was only solved with digital monitor cables, if that.

Reply 8 of 17, by kode54

User metadata
Rank Member
Rank
Member

They could have different timings, since they have different settings for the DAC rendering the exact pixels. Theoretically, it would require half or quarter timing for 16bpp or 32bpp, while still clocking more VRAM, and not using the palette.

Reply 9 of 17, by koverhbarc

User metadata
Rank Member
Rank
Member

Yes but the monitor should not see any DAC-specific timings. It should not need to switch if the horizontal and vertical rates remain the same, as does the resolution (and we all should know 320x240 = 640x480).

Reply 10 of 17, by kode54

User metadata
Rank Member
Rank
Member

But we all know video card vendors are/were too lazy to program their VESA BIOS to perform the minimum amount of reconfiguration on video mode changes. Hell, most of them were even too lazy to bother to include full 2.0+ implementations, or support a large number of video modes. SciTech Display Doctor was the only solution that did everything, and it eventually ceased to exist, and stopped adding newer devices.

Reply 11 of 17, by Radio

User metadata
Rank Newbie
Rank
Newbie

Why would you want to play it in Window mode? Try this dosbox.conf, it works like a charm in full screen and it looks better with the SuperEagle scaler. Just don't set the cycles to auto or max because in tactical mode the game will go really fast and the buttons won't respond.

Attachments

  • Filename
    dosbox.conf
    File size
    1.17 KiB
    Downloads
    138 downloads
    File license
    Fair use/fair dealing exception

Reply 12 of 17, by Radio

User metadata
Rank Newbie
Rank
Newbie

By the way, OpenGL doesn't work well with DosBox. Most games will crash if you set them to OpenGL. The only game I know that didn't crash and had it's graphics greatly improved with OpenGL was Darklight Conflict.
Personally I prefer using either Ddraw or Overlay. I use Overlay with games that have FMV, like Phantasmagoria 2, because with Ddraw the video will look like this!

Clipboard01.jpg
Filename
Clipboard01.jpg
File size
216.41 KiB
Views
3136 views
File license
Fair use/fair dealing exception

As for scaler I suggest either normal2x, or hq3x and supereagle. Normal if you want the original experience and hq3x - supereagle if you don't like it pixelized.

Reply 13 of 17, by Radio

User metadata
Rank Newbie
Rank
Newbie
koverhbarc wrote:
kode54 wrote:

The actual game also had the semi-annoying video mode switches, which were more annoying on hardware since they involved a display card and monitor switching modes.

The mode switches are doubly annoying because those two VESA modes should have the same timings and not require a monitor switch. But it still happens - when I run a fullscreen program at the same resolution as my desktop, I still get a switch. I assume this was only solved with digital monitor cables, if that.

Tell me more about this switch mode.
Like I said in here Windows 10 Dosbox I'm having a weird switch between cutscenes and gameplay. Odd because that didn't happen with my old Core Duo - Windows Vista 32bit machine. Switch mode and DosBox exit had a smooth flow, but now with my I7 - Windows 10 64bit I'm having this.

For example:
When I'm in the middle of a battle and I'm losing, if I choose the Warp Away tactic Picard says "Get us out of here Number One". In the middle of the sentence there's this 2 second pause to switch to the video that shows the Enterprise warping away and while the video is playing it completes the sentence. It's kinda annoying and I'm still looking for a way to solve this.
Disabling Desktop Composition could provide a solution but I have no idea how to force DosBox to do that, since Windows 10 doesn't have that option anymore.

Reply 14 of 17, by Serious Callers Only

User metadata
Rank Member
Rank
Member

Isn't it a bug that dosbox doesn't scale up 15/16 bpp surfaces like it does 256 colors ones? At first i thought this was a windows only limitation but after reading topics like this where it happens in some dosgames i think it's just a plain bug. It may murder performance or something, but i find that idea sort of unbelievable.

Reply 15 of 17, by Silanda

User metadata
Rank Member
Rank
Member
Serious Callers Only wrote:

Isn't it a bug that dosbox doesn't scale up 15/16 bpp surfaces like it does 256 colors ones? At first i thought this was a windows only limitation but after reading topics like this where it happens in some dosgames i think it's just a plain bug. It may murder performance or something, but i find that idea sort of unbelievable.

Yeah, it's a bug, and a solution was suggested nearly 5 years ago: https://sourceforge.net/p/dosbox/bugs/385/

I've got a number of games that this affects, as well as Windows 3.1, so I've been building my own versions with the fix. As far as I can tell, the fix works perfectly, so I'm not sure why it hasn't been applied to the official source.

Reply 17 of 17, by wick422

User metadata
Rank Newbie
Rank
Newbie

Everything appears to be fixed as far as DosBOX goes. Here are my settings and I have full screen cutscenes:

DosBox Settings:

[sdl]
fullscreen=true
fulldouble=false
fullresolution=3840x2160 <---------|these should be your desktops resolution settings 1920x1080 or whatever your host desktop is.
windowresolution=3840x2160 <----|
output=ddraw
autolock=true
sensitivity=100
waitonerror=true
priority=higher,normal
mapperfile=mapper-0.74-3.map
usescancodes=true

[render]

frameskip=0
aspect=true
scaler=hq3x

These are the only ones I've changed.

in game setup I selected to Auto Detect and it went to 640x480 65k colors
Turned on Fullscreen Mode and when I did this the preview image of the Enterprise D filled up the screen with the exception of the tops and bottoms (like black bars) and the fact that it was in 4:3 ratio. Sure would be nice if someone could find the original videos or somehow extract them and make them sharper but I'm probably asking a lot. 😁