VOGONS

Common searches


[pics]Dosbox Hercules mode VS real hercules

Topic actions

  • This topic is locked. You cannot reply or edit posts.

First post, by tulbo

User metadata
Rank Newbie
Rank
Newbie

001hv.jpg
001op.png
002ml.jpg
002bdc.png
003dz.jpg
003rh.png
005ce.jpg
005a.png
006zb.jpg
006y.png
007pzw.jpg
007alh.jpg
008dxc.jpg
008y.png
010lsq.jpg
010uy.png
011ho.png
011a.png
012vac.jpg
012ak.png
013erw.jpg
013ape.jpg
014zd.jpg
015al.jpg

dosbox 0.74 openGL hercules mode

I found real hercules pics.

I use to think dosbox hercules mode is too sharp than real hercules.

real hercules pics are more smooth and soft than dosbox hecules mode.

dosbox hercules mode seem dark and have vertical line

I know realdos is CRT dica shot and dosbox is screenshot

so somebody compare them please

Reply 1 of 37, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Putting aside the differences from phosphor color and brightness/contrast adjustments of real monochrome monitors, the way the pixels can blend together to create intensity is interesting.

I tried an experiment starting with a DOSBox screenshot of Monkey Island (the older EGA version that also supports hercules):

monkey1.png

I used Paint Shop to make a copy of the image, shifted all the pixels in the copy over by one pixel, and then used what Paint Shop calls "image arithmetic" to additively combine the pixels in the original and copy. This process resulted in three colors instead of two: black, low intensity, and high intensity - depending on how the original and shifted pixels combine.

miblend.png

It looks similar to the pictures of the real monitor. Dunno how hard it would be to have DOSBox render like this in real time. Hmm, maybe could be done with a shader for D3D output with Gulikoza's build...?

Another before and after that compares favorably with the real monitor shots.

gpc1.png

gpc2.png

Seems to give nice results with a smoother display in addition to the intensity.

Last edited by ripsaw8080 on 2010-10-07, 15:19. Edited 1 time in total.

Reply 3 of 37, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

I made an implementation of the process described in my previous comment. I'm calling it horizontal blending because I couldn't come up with anything better. Use alt-F11 to toggle the feature (mentioned on the shell's welcome screen with machine=hercules). I think it's a nice effect, and it appears to capture some of the behavior of the real monitor pictures above.

A sample of what it looks like with Test Drive:

tdanim.gif

The patch is against current source, and a Win32 build of current source with the patch is also attached for anyone interested in trying it with their hercules games.

Attachments

  • Filename
    dosbox_hercblend.zip
    File size
    1.13 MiB
    Downloads
    458 downloads
    File comment
    Test Build
    File license
    Fair use/fair dealing exception
  • Filename
    hercules_blend.diff
    File size
    3.66 KiB
    Downloads
    374 downloads
    File comment
    Patch
    File license
    Fair use/fair dealing exception

Reply 7 of 37, by red_avatar

User metadata
Rank Oldbie
Rank
Oldbie

Yeah if there's one thing that DOSBox lacks at the moment, it's accurate emulation of these older display modes. I used to think games just looked that horrible but it's pretty cool to see how nice they actually looked - much better than the result we get on any PC since 1994.

It seems it would be very easy to mimic real Hercules with a filter, though, but from looking at these images, I see that there's also some things DOSBox could improve.

Your screenshots, however, are not "pixel perfect" due to the type of output you picked (I prefer openglnb for screenshots since there's no distortion).

I'll see if I can use Photoshop to find the ideal way to mimic the real thing (handy for screenshots too).

Reply 8 of 37, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Which screenshots are you referring to? There's a lot of them here. 😀

With aspect correction there is no such thing as "pixel perfect". openglnb will give you pixel blocks of varying height rather than blending, that's the only difference. Either introduces a form of distortion.

For characterizing the way the display lets pixels sort of blend together along the raster lines, I've already mentioned one way to do it with Paint Shop, for which I'm sure there is an equivalent in Photoshop. It's also interesting to see the effect in motion with the patch.

Last edited by ripsaw8080 on 2011-02-17, 17:12. Edited 1 time in total.

Reply 9 of 37, by red_avatar

User metadata
Rank Oldbie
Rank
Oldbie

Ah but I don't use aspect correction - the idea is to get a pixel perfect result - no distortion, no added pixels, no blurring around the edges (which there is in your screenshots). When I go full screen, my Nvidia settings are such that it does not stretch anything so I have to set DOSBox to use the right resolution at full screen.

I'm curious - you didn't use DOSbox to take those screenshots did you? Because DOSBox normally outputs the correct resolution without any such softening nor aspect correction.

Reply 12 of 37, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

The GPC screen I posted is from a DOSBox screencap, which has no aspect correction. The shots tulbo posted appear to be using DOSBox's 1.5 pixel aspect ratio, so apparently are made by some other process and not by DOSBox.

Viewing screens without aspect correction could also be called inaccurate compared to real monitors when the pixels on real monitors are not square. It's a matter of preference: distorted aspect with clean pixels, or correct aspect with distorted pixels.

Reply 13 of 37, by red_avatar

User metadata
Rank Oldbie
Rank
Oldbie
ripsaw8080 wrote:

The GPC screen I posted is from a DOSBox screencap, which has no aspect correction. The shots tulbo posted appear to be using DOSBox's 1.5 pixel aspect ratio, so apparently are made by some other process and not by DOSBox.

Viewing screens without aspect correction could also be called inaccurate compared to real monitors when the pixels on real monitors are not square. It's a matter of preference: distorted aspect with clean pixels, or correct aspect with distorted pixels.

DOSBox screencaps don't output filters and corrections anyway I believe?

Anyway, the reason I mentioned it, was because the soft edges make them unsuitable to "doctor" - not to mention trying to determine how exactly they differ between the original and what DOSbox is making of it.

Reply 15 of 37, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

DOSBox screencaps are not corrected for aspect. You can either make your own for "doctoring" purposes, or the GPC title screen I posted has no aspect correction. Further than the horizontal blending process I've described, what kind of doctoring do you have in mind?

Reply 16 of 37, by Mau1wurf1977

User metadata
Rank l33t++
Rank
l33t++
red_avatar wrote:

the idea is to get a pixel perfect result - no distortion, no added pixels, no blurring around the edges

It's one or the other.

Fact is that pixels on a real CRT and a modern LCD have a different shape.

Best compromise IMO is DOSBox normal2x and normal3x scaler, as it's basically a "nearest neighbour" resize which keeps things "blocky".

Here two examples:

Pixel correct, but because LCD pixels hae a different shape, the image is stretched:

mi2.png

Aspect Ratio corrected image (Nearest Neighbour Scaler):

mi2aspectcorrect.png

Bottom line: As long as you use normal2x or normal3x you will get nice "blocky" pixels AND an aspect corrected image.

Reply 18 of 37, by Mau1wurf1977

User metadata
Rank l33t++
Rank
l33t++
ripsaw8080 wrote:

If you're using aspect correction (aspect=true), you will get some vertical blending of pixels unless you use output=openglnb ("nb"=no blending), and that is regardless of what scaler you use.

I don't think this is 100% correct.

output=ddraw and overlay works just fine.

It's really only opengl that blurs things, which is well documented anyway...

PS: Surface doesn't support aspect ratio correction

And also openglnb stands for "non bilinear". not "no blending".