The NEW Build Your Own Arcade Controls

Software Support => GroovyMAME => Topic started by: LazyAce on May 26, 2018, 01:08:03 pm

Title: Slowdown on interlaced games on 5450
Post by: LazyAce on May 26, 2018, 01:08:03 pm
As above. I know half-speed was an issue, however this doesn't seem to be remedied for me as my card still half-speed all interlaced stuff - is there a fix yet? Many thanks
Title: Re: Slowdown on interlaced games on 5450
Post by: Doozer on May 27, 2018, 11:56:18 am
As above. I know half-speed was an issue, however this doesn't seem to be remedied for me as my card still half-speed all interlaced stuff - is there a fix yet? Many thanks

Hi LazyAce,

Could you indicate on which operating system you encounter this behaviour? Under Linux, there is a remedy to this issue by patching the kernel to allow the vblank to be fired at each frame (odd and even fields). Normally, Groovymame contains the mentioned fix.
Title: Re: Slowdown on interlaced games on 5450
Post by: bjt42 on December 03, 2018, 05:47:34 am
Under Linux, there is a remedy to this issue by patching the kernel to allow the vblank to be fired at each frame (odd and even fields).

Hi Doozer, would you be able to point me towards this patch please. Thanks
Title: Re: Slowdown on interlaced games on 5450
Post by: Doozer on December 04, 2018, 03:00:53 pm
Hi Doozer, would you be able to point me towards this patch please. Thanks

Plz dot not flood the forum with same question everywhere ;-) You got PM
Title: Re: Slowdown on interlaced games on 5450
Post by: bjt42 on December 06, 2018, 04:33:25 am
Doozer's patch solved this problem for me, running a 5450. Here is a 4.10.11 kernel compiled with the 15khz patches and this interlaced vblank fix. It matches the kernel supplied with the 2017 live CD and doesn't suffer from the video playback freezing seen in later kernels.

linux-custom-4.10.11-1-x86_64.pkg.tar.xz: https://drive.google.com/open?id=1i3guHlHfWPNrEhwlz6XF2Xs9Ut9-DUmf (https://drive.google.com/open?id=1i3guHlHfWPNrEhwlz6XF2Xs9Ut9-DUmf)
linux-custom-headers-4.10.11-1-x86_64.pkg.tar.xz: https://drive.google.com/open?id=19hxL-5RAmNwprpk6ItMDc3A-SegFrit5 (https://drive.google.com/open?id=19hxL-5RAmNwprpk6ItMDc3A-SegFrit5)

Install as root as follows:

pacman -U linux-custom-headers-4.10.11-1-x86_64.pkg.tar.xz
pacman -U linux-custom-4.10.11-1-x86_64.pkg.tar.xz

Then modify /boot/syslinux/syslinux.cfg to point towards the linux-custom kernel and initrd.

Title: Re: Slowdown on interlaced games on 5450
Post by: cobalt666 on December 07, 2018, 02:13:14 pm
Hi Doozer, would you be able to point me towards this patch please. Thanks

Plz dot not flood the forum with same question everywhere ;-) You got PM

Hi Doozer, could you please send me this patch as well? I would really appreciate that.
Title: Re: Slowdown on interlaced games on 5450
Post by: Doozer on December 08, 2018, 07:19:14 am
Yes, sure. The patch is already somewhere on the forum and used inside the GA CD. I enclose it here. It applies up to 4.19.x.

The patch is very simple, it takes all VSYNC interrupts fired by ATI gpu into account. In the stock kernel, the interlaced mode only account the interrupt for a sequence of odd and even fields and has a mechanism to not count int multiple times. ATI sync register is very stable and no overrun occurs since I use it. Let me know if some people have issues.

Code: [Select]
--- linux-4.12_64/drivers/gpu/drm/drm_irq.c     2017-07-02 23:07:02.000000000 +0000
+++ linux-test-4.12/drivers/gpu/drm/drm_irq.c   2017-08-15 08:33:14.318147395 +0000
@@ -243,8 +243,9 @@
                      pipe, vblank->count, diff, cur_vblank, vblank->last);
 
        if (diff == 0) {
-               WARN_ON_ONCE(cur_vblank != vblank->last);
-               return;
+// AWK         WARN_ON_ONCE(cur_vblank != vblank->last);
+// AWK         return;
+               diff = 1;
        }
 
        /*