English Amiga Board


Go Back   English Amiga Board > Support > support.WinUAE

 
 
Thread Tools
Old 27 October 2006, 20:38   #1
kirk
Zone Friend
 
Join Date: Oct 2006
Location: uk
Posts: 148
smooth scrolling.is it possible?

can anyone suggest why games that scroll silky smooth on my amiga,jerk a little bit in winuae.ive tried various settings(sometimes running at 60fps smooths a few games out,but also increases the game speed/music etc).my cpu is 3ghz.
is it because pc monitors/tfts refresh at 60fps,and if so how to get my monitor to refresh at 50?.
cheers.
kirk is offline  
AdSense AdSense  
Old 27 October 2006, 20:44   #2
keropi
.
 
Join Date: Oct 2004
Location: Ioannina/Greece
Posts: 5,038
make the refresh rate 100Hz. that will fix this.
edit: now I see u have a TFT monitor. I don't think u can change that....
keropi is offline  
Old 27 October 2006, 21:05   #3
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,779
Unfortunate PC hardware limitation. You need either 50Hz or 100Hz to get smooth scrolling. (or 56Hz/60Hz but everything speeds up as you have already noticed)

Some TFTs will sync down to 50Hz (which is nice because you won't get any flicker like with CRTs)
Toni Wilen is online now  
Old 27 October 2006, 21:24   #4
amiga
Registered User
 
Join Date: Aug 2004
Location: Amiga_land
Posts: 444
@kirk:

attach your PC to a PAL TV.
amiga is offline  
Old 27 October 2006, 21:48   #5
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,779
Quote:
Originally Posted by amiga
@kirk:

attach your PC to a PAL TV.
Real Amiga is better solution in this case
Toni Wilen is online now  
Old 14 November 2006, 01:27   #6
P-J
EAB veteran... Honest!
P-J's Avatar
 
Join Date: Mar 2001
Location: Warwickshire, England
Age: 37
Posts: 1,144
Send a message via MSN to P-J
Hey guys.

I've been interested in this thread. Is the benefit of using a TV the ability to get the vertical refresh at 50hz, and does this really help with smooth scrolling?

If so I'll have to get myself an S-Video to SCART adapter

On a somewhat unrelated note... If you have a SCART switchbox and two inputs from two PCs with nVidia cards it, do you know if they will both be able to recognise that they are connected to a TV even if only one of them is 'switched' at any one time?

I know the last part is off-topic but anyone with experience could help
P-J is offline  
Old 14 November 2006, 03:34   #7
Sune Salminen
Dinamáquina
Sune Salminen's Avatar
 
Join Date: May 2002
Location: BH/Brasil
Age: 43
Posts: 364
Quote:
Originally Posted by P-J
If you have a SCART switchbox and two inputs from two PCs with nVidia cards it, do you know if they will both be able to recognise that they are connected to a TV even if only one of them is 'switched' at any one time?
I'm not sure, but if not, the driver control panel has an option to force TV detection.
Sune Salminen is offline  
Old 14 November 2006, 11:26   #8
alexh
Thalion Webshrine
alexh's Avatar
 
Join Date: Jan 2004
Location: Oxford
Posts: 11,895
I know this would probably be a lot of work for Toni, but would it be possible to detect the Windows / Monitor frame rate and then interpolate between Amiga frames?

Such a technique would keep scrolling smooth but increase the memory overhead of the buffering (as you now need sub-pixel accuracy) and obviously hit the cpu power required to interpolate.

I would imagine 75Hz would be possible? 1.5x frame rate?
alexh is offline  
Old 14 November 2006, 17:21   #9
rare_j
Zone Friend

rare_j's Avatar
 
Join Date: Apr 2005
Location: London
Posts: 751
That would be cool. My monitor will only do 60, 75, or 85Hz.
rare_j is offline  
Old 14 November 2006, 17:26   #10
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,779
Quote:
Originally Posted by alexh
I know this would probably be a lot of work for Toni, but would it be possible to detect the Windows / Monitor frame rate and then interpolate between Amiga frames?

Such a technique would keep scrolling smooth but increase the memory overhead of the buffering (as you now need sub-pixel accuracy) and obviously hit the cpu power required to interpolate.

I would imagine 75Hz would be possible? 1.5x frame rate?
Please explain how this can make scrolling smooth. Interpolation would in my opinion make it even worse.
Toni Wilen is online now  
Old 14 November 2006, 20:46   #11
alexh
Thalion Webshrine
alexh's Avatar
 
Join Date: Jan 2004
Location: Oxford
Posts: 11,895
Bear with me and I will explain what I think causes jerky scrolling. I may very likely be wrong.

When the refresh rate of the PC is a match to (or whole multiple of) the Amiga refresh rate, the moving images spend an equal amount of time on each pixel of the screen. (Assuming that the original Amiga scroller was smooth). This equal amount of time on each pixel (together with how many pixels you move the graphics by per frame) is what gives scrollers their smoothness.

Are we agreed so far?

If you increase the PC refresh rate to 75Hz and increase ALL emulation timings by the same amount (I dont think this is currently possible with WinUAE?) the scrolling will still stay smooth, moving images will still spend an equal amount of time on each pixel of the screen, BUT the emulator speed is increased which will result in sound playback issues (it will sound faster / higher pitch).

If you wanted to increase the refresh rate to say 75Hz but keep the emulation timings at 50Hz you (in my mind) "hold" 50% of frames. That is you display 50% for 1x frames and 50% for 2x frames?

It is this repeating of frames (or rather "variable frame time") which I thought was responsible for the "jerky scrolling".

In order to get around this jerky scrolling I was suggesting an alternative to displaying frames for variable lengths of time. Instead create interpolated frames which (at 75Hz) would be half way between the current and next and displaying that instead. You would have 75 different frames per second and that (in my mind) will eliminate the jerky scrolling.

Do you not think so?

I admit that compensating for "ANY" refresh rate my prove a nightmare, but I think for the "easy" example of 75Hz it should work.

It is possible that I have made a basic "faux pas" and you are going to throw this right back at me.

Last edited by alexh; 14 November 2006 at 21:06.
alexh is offline  
Old 14 November 2006, 21:43   #12
rsn8887
Registered User
rsn8887's Avatar
 
Join Date: Oct 2006
Location: USA
Posts: 729
Here's my little remark:

100 Hz is _second_ best to 50 Hz (which sadly most monitors/gfx cards don't support). At 100 Hz however, you will _still_ see more jerkiness than at 50 Hz. While scrolling is smooth, you will see the last frame a bit like a shadow(check with e.g. poing on WB, you will see the ball twice at certain speeds instead of once like in 50 Hz). This is because each frame is displayed twice instead of once. Even though it happens at a high frequency, somehow the eye will pick this up and register this little bit of jerkiness when directly compared to 50 Hz.

This was also a problem on the first 100 Hz TVs that came out. It manifested itself on the scrolly text, e.g. on the weather channel. It made some of the text unreadable at certain scroll-speeds. The companies that produced those TVs added some weird complicated digital processing to get rid of the effect on 100 Hz TVs, if I remember the story right....

But apart from that, 100 Hz is definitely the way to go. The little program called "refreshlock" might help you fiddeling with refresh rates, especially on other emulators like winvice, that don't have auch a nice manifold of options that WinUAE has.
rsn8887 is offline  
Old 14 November 2006, 23:17   #13
P-J
EAB veteran... Honest!
P-J's Avatar
 
Join Date: Mar 2001
Location: Warwickshire, England
Age: 37
Posts: 1,144
Send a message via MSN to P-J
Quote:
Originally Posted by Toni Wilen
Real Amiga is better solution in this case
Akira may be absent, but his spirit lives on
P-J is offline  
Old 15 November 2006, 09:00   #14
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,779
Quote:
Originally Posted by alexh
In order to get around this jerky scrolling I was suggesting an alternative to displaying frames for variable lengths of time. Instead create interpolated frames which (at 75Hz) would be half way between the current and next and displaying that instead. You would have 75 different frames per second and that (in my mind) will eliminate the jerky scrolling.
Perhaps but what about parts that don't scroll or animate (scrore/time) or move to different direction (enemies, player) Try to interpolate that without making it look terrible
Toni Wilen is online now  
Old 15 November 2006, 10:17   #15
alexh
Thalion Webshrine
alexh's Avatar
 
Join Date: Jan 2004
Location: Oxford
Posts: 11,895
Quote:
Originally Posted by Toni Wilen
Perhaps but what about parts that don't scroll or animate (scrore/time) or move to different direction (enemies, player) Try to interpolate that without making it look terrible
Hmmm, I see where you are going... I'll have a think about it.

As an experiment would in be possible in WinUAE to sync ALL aspects of the emulation to the vsync? Increase the speed of the emulation, all timings etc. to the refresh rate. Most flat panels will do 56Hz, would an 11% speed increase be an acceptable compromise for the benefits of smooth scrolling?

Side-Line:

I never owned an NTSC Amiga, but what happens with Euro-Demos and games on a 60Hz NTSC Amiga? Do they have poor-scrolling / glitches?
alexh is offline  
Old 15 November 2006, 12:02   #16
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,779
Quote:
Originally Posted by alexh
As an experiment would in be possible in WinUAE to sync ALL aspects of the emulation to the vsync? Increase the speed of the emulation, all timings etc. to the refresh rate. Most flat panels will do 56Hz, would an 11% speed increase be an acceptable compromise for the benefits of smooth scrolling?
WinUAE has always done it this way. (since vsync was implemented, and also fps adj. does the same)
Toni Wilen is online now  
Old 15 November 2006, 13:49   #17
spiff
Oh noes!
spiff's Avatar
 
Join Date: Mar 2003
Location: Neverland
Posts: 660
Quote:
Originally Posted by Toni Wilen
Perhaps but what about parts that don't scroll or animate (scrore/time) or move to different direction (enemies, player) Try to interpolate that without making it look terrible
OK, apart from all the not so small problems of implemententation in UAE

But won't this be about the same thing as interpolation of NTSC (NTSC telecine)? 3progressive/2 blended frames. It will look just fine on things that don't scroll.. and will blend on scrolling objects but should be relatively OK unless you pause on a blended picture or vertical res is interlaced.
spiff is offline  
Old 15 November 2006, 14:55   #18
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,779
I still can't see it working (and if it can work, why it isn't it implemented in any existing emulator?)
Toni Wilen is online now  
Old 15 November 2006, 16:42   #19
alexh
Thalion Webshrine
alexh's Avatar
 
Join Date: Jan 2004
Location: Oxford
Posts: 11,895
Quote:
Originally Posted by Toni Wilen
WinUAE has always done it this way. (since vsync was implemented, and also fps adj. does the same)
I will have to experiment. I tried it last night and it sort of works (I see the increase in speed etc.) but the results (i.e. smooth scrolling) were not quite what I expected.

Perhaps my graphics card (Geforce 2 MX 400) & driver doesn't accurately report VSYNC interrupts to WinUAE?

Quote:
if it can work, why it isn't it implemented in any existing emulator?
Memory / CPU overhead? Most emulators I know of were started a long time ago. When these things were at a premium.

I am going to have a think about it and try and work out all the "gotchas". I'll also run it by Lord of Emulators, David "Sparcade" Spicer, if anyone will know it will be him.
alexh is offline  
Old 15 November 2006, 17:04   #20
DamienD
Global Moderator

DamienD's Avatar
 
Join Date: Aug 2005
Location: London / Sydney
Age: 41
Posts: 9,527
Quote:
Originally Posted by alexh
I'll also run it by Lord of Emulators, David "Sparcade" Spicer, if anyone will know it will be him.
Sorry, bit off topic...

I remember David Spicer... Hmmm, don't think he still works on Sparcade anymore though? This was one of the first arcade emulators I tried
DamienD is online now  
AdSense AdSense  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
LCD and smooth scrolling (not a 50Hz or a vsync problem) aidenn support.Other 26 16 April 2010 19:20
smooth scrolling sink support.WinUAE 3 20 July 2007 02:16
Smooth scrolling with WinUAE? Tony Landais support.WinUAE 13 30 May 2007 04:55
Smooth scrolling in 100Hz Kintaro support.WinUAE 21 27 February 2003 16:55
Just can't get smooth scrolling Bobbin support.WinUAE 0 23 November 2002 01:52

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 21:49.


Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Page generated in 0.29412 seconds with 12 queries