keirf / amiga-stuff

The Unlicense
259 stars 26 forks source link

Enhancement: Some new feature ideas for the Video test menu on ATK #48

Open richud opened 3 years ago

richud commented 3 years ago

Sorry for another post :), I am sure you are busy with tons of other things but just some suggestions....

More than happy to test & help in any way I can!

keirf commented 3 years ago

What would you want for the overscan test card? The existing test card is not overscan but does accurately show the usual Amiga NTSC/PAL boundaries using a white bounding box. Anything outside the box would be overscan.

richud commented 3 years ago

from the monitors actual resolution, these are the maximal for a demo/game I have come across;

PAL #720x288 PALi #720x576 NTSC #720x240 NTSCi #720x480

I was thinking perhaps a single pixel bounding box at the given dimension, maybe with a few inside rectangles, less 8 pixels each time (720x , 712x, 704x ) , with some label text of axis size ? This would also be good for screen centring.

So as an example I have found the 'Monster' demo pic from the 'Rebels-Infestation44' demo disk [attached] the current best test overscan screen.

Demos_Monster_DMS.zip

I have attached 3 demo's which contain it, as they display it in different positions onscreen, and it is also different position on the same demo A500 to A1200 [Need Skick/relokick on A1200 with mixed luck as to if they work at all, emulated A1200 they are ok.] If you try all three you should be able to see the actual extents the picture should be displayed at!

As a game in overscan I think the 'largest' is 'The Settlers' in game screen, and perhaps the intro in 'Agony'.

Maybe also some ideas from this (the second pic down with explanations) ? https://en.wikipedia.org/wiki/Indian-head_test_pattern

keirf commented 3 years ago

Like I say, the existing "RGB gradients and PAL/NTSC extents" is good for screen sizing and centering. If you put the PAL box as large and centered as you can, the overscan should take care of itself.

There are a lot of weird overscan sizes I found on Amiga titles. I settled on a sensible average as about 16px each left and right, and 12px each top and bottom. But if this is centered like so, then the normal PAL bounding box is also centered, and you minimise risk of seeing the overscan boundary by making that box as large as possible... And you can already do that, right?

keirf commented 3 years ago

Ok here's a build for you with the 50/60Hz switch on the main menu.

https://github.com/keirf/Amiga-Stuff/suites/3277780324/artifacts/76393468

keirf commented 3 years ago

I tried the interlaced checkerboard, but on an LCD monitor of course it looks a right mess. Even weirder, my Dell LCD monitor now has an interlace/checker shimmer on all input sources! I have no idea why... Since it flickers it can't be persistence. A testcard that may freak out LCD monitors is not great :)

EDIT: The shimmer is apparently fading off. Maybe it was persistence of a sort? Clearly high contrast interlace fields + OSSC + U2715H monitor is a sad combination.

keirf commented 3 years ago

For now I've done a new release with all the new features and fixes so far.

Some scroll tests in future would make sense.

richud commented 3 years ago

50/60 toggle works perfectly on my 1200 and 500, [could it be possibly be a global button that works on all screens? sorry to keep asking for things, it is great as it is if not!]

I am trying to draw an overlay to existing gradients screen for a few suggestions , I tried writing it and it just sounded a lot more complicated than it is.

Yes I get interlace shimmer residual effect if the screen is static for long on one LCD monitor, powering it off for a few minutes seems to reset it otherwise it can persist for a long time. PAL Interlace looks wrong on most LCD's as the field invert is set wrong in their firmware (NTSC interlace should look correct if so, although will still flicker)

keirf commented 3 years ago

I may revisit the interlace screen. I need to really bring in a CRT and test on that. I did enough to kind of prove it can work and it's not too hard. Is it actually that useful? I don't know. Maybe it's tuneable but untuned via OSSC it looks like sh*t!

Global 50/60Hz switch? Probably not unless I hide it away on another key perhaps, but then it wouldn't be clickable on every screen.

Yes a drawing of the new improved gradient screen might make sense!

richud commented 3 years ago

lcd and crt interlace should look the same if field invert is right on the lcd, clear but flickering. Simplest test I have found thus far is MasterBlaster load menu screen as interlaced and lots of small text. (Amiga monitor crt with long phosphor persist should have almost no flickering). Yes useful, to me at least, both gradient and checkerboard in Interlace PAL and Interlace NTSC would be perrfect! cheers!

richud commented 3 years ago

hopefully this will make sense!

First two pics are current PAL and NTSC with a wide screen res [using emulator here but pretty sure was same on real hardware, been a while since I was fiddling with it]. Centring seems askew as the horizontal white bar lengths are different. In the NTSC the bottom surround bar is missing too.

PAL NTSC

Perhaps this is a solution, without having to change much? I have played around with various ideas and this may be the simplest ?

It should be pretty easy to see at a glance how centered in H and V plane and to what amount of overscan the screen has?

PAL2

keirf commented 3 years ago

It is normal that the "non overscan" display is right of centre: https://eab.abime.net/showthread.php?t=85490 But yet that is what you'd want to centre on whatever real display you are viewing on: the vast majority of games (and Workbench) use these viewport settings.

The bottom surround bar is the PAL surround for normal PAL viewport. NTSC/60Hz display (even in full overscan) does not include all the scanlines required to view the bottom of the PAL surround bar.

richud commented 2 years ago

just wondering if it was possible to get your interlace test version to try please? (presume nothing further in the works on it?) thanks very much.