Brian Callahan <bcal...@devio.us> wrote:
> 
> On 08/31/18 04:38, Martijn van Duren wrote:
> > So here's an updated diff that's been tried and tested.
> > I placed a comment in both the Makefile and the DESCR so that both users
> > and future ports maintainers see that it might not work on every system.
> >
> > OK?
> 
> I can't directly test this myself as you know. But if this works for 
> Intel GPUs then it's ok for me.
> 
> ~Brian
> 
> > martijn@
> >
> > Index: Makefile
> > ===================================================================
> > RCS file: /cvs/ports/games/fretsonfire/Makefile,v
> > retrieving revision 1.15
> > diff -u -p -r1.15 Makefile
> > --- Makefile        29 Sep 2015 10:52:12 -0000      1.15
> > +++ Makefile        31 Aug 2018 08:37:30 -0000
> > @@ -1,6 +1,7 @@
> >   # $OpenBSD: Makefile,v 1.15 2015/09/29 10:52:12 sthen Exp $
> >   
> > -BROKEN = fails at runtime "python2.7 in free(): error: modified 
> > chunk-pointer 0x..."
> > +# This port is known to generate errors on (some) radeon cards.
> > +# Intel cards appear to work fine.
> >   
> >   V =                       1.3.110
> >   COMMENT =         guitar hero clone
> > Index: patches/patch-src_Texture_py
> > ===================================================================
> > RCS file: /cvs/ports/games/fretsonfire/patches/patch-src_Texture_py,v
> > retrieving revision 1.1
> > diff -u -p -r1.1 patch-src_Texture_py
> > --- patches/patch-src_Texture_py    6 Apr 2014 21:10:25 -0000       1.1
> > +++ patches/patch-src_Texture_py    31 Aug 2018 08:37:30 -0000
> > @@ -1,6 +1,7 @@
> >   $OpenBSD: patch-src_Texture_py,v 1.1 2014/04/06 21:10:25 sthen Exp $
> > ---- src/Texture.py.orig    Sun Apr  6 18:28:33 2014
> > -+++ src/Texture.py Sun Apr  6 18:29:48 2014
> > +Index: src/Texture.py
> > +--- src/Texture.py.orig
> > ++++ src/Texture.py
> >   @@ -24,10 +24,10 @@ from __future__ import division
> >    
> >    import Log
> > @@ -14,3 +15,41 @@ $OpenBSD: patch-src_Texture_py,v 1.1 201
> >    from OpenGL.GL import *
> >    from OpenGL.GLU import *
> >    from Queue import Queue, Empty
> > +@@ -210,13 +210,13 @@ class Texture:
> > +     """Load the texture from a PIL image"""
> > +     image = image.transpose(Image.FLIP_TOP_BOTTOM)
> > +     if image.mode == "RGBA":
> > +-      string = image.tostring('raw', 'RGBA', 0, -1)
> > ++      string = image.tobytes('raw', 'RGBA', 0, -1)
> > +       self.loadRaw(image.size, string, GL_RGBA, 4)
> > +     elif image.mode == "RGB":
> > +-      string = image.tostring('raw', 'RGB', 0, -1)
> > ++      string = image.tobytes('raw', 'RGB', 0, -1)
> > +       self.loadRaw(image.size, string, GL_RGB, 3)
> > +     elif image.mode == "L":
> > +-      string = image.tostring('raw', 'L', 0, -1)
> > ++      string = image.tobytes('raw', 'L', 0, -1)
> > +       self.loadRaw(image.size, string, GL_LUMINANCE, 1)
> > +     else:
> > +       raise TextureException("Unsupported image mode '%s'" % image.mode)
> > +@@ -254,16 +254,16 @@ class Texture:
> > +     if monochrome:
> > +       # pygame doesn't support monochrome, so the fastest way
> > +       # appears to be using PIL to do the conversion.
> > +-      string = pygame.image.tostring(surface, "RGB")
> > ++      string = pygame.image.tobytes(surface, "RGB")
> > +       image = Image.fromstring("RGB", surface.get_size(), 
> > string).convert("L")
> > +-      string = image.tostring('raw', 'L', 0, -1)
> > ++      string = image.tobytes('raw', 'L', 0, -1)
> > +       self.loadRaw(surface.get_size(), string, GL_LUMINANCE, 
> > GL_INTENSITY8)
> > +     else:
> > +       if alphaChannel:
> > +-        string = pygame.image.tostring(surface, "RGBA", True)
> > ++        string = pygame.image.tobytes(surface, "RGBA", True)
> > +         self.loadRaw(surface.get_size(), string, GL_RGBA, 4)
> > +       else:
> > +-        string = pygame.image.tostring(surface, "RGB", True)
> > ++        string = pygame.image.tobytes(surface, "RGB", True)
> > +         self.loadRaw(surface.get_size(), string, GL_RGB, 3)
> > +     self.size = (w / w2, h / h2)
> > +
> > Index: pkg/DESCR
> > ===================================================================
> > RCS file: /cvs/ports/games/fretsonfire/pkg/DESCR,v
> > retrieving revision 1.1.1.1
> > diff -u -p -r1.1.1.1 DESCR
> > --- pkg/DESCR       16 Oct 2009 23:11:38 -0000      1.1.1.1
> > +++ pkg/DESCR       31 Aug 2018 08:37:30 -0000
> > @@ -10,3 +10,5 @@ Features
> >       * Supports importing Guitar Hero I and Guitar Hero II songs
> >       * Multiplatform; runs on Windows, Linux, Mac OS X, OpenBSD and FreeBSD
> >       * Open source, full Python source code available
> > +
> > +This game is known to crash on some (mostly radeon) graphics card.
> >


works on intel GPU

I felt some audio delay of ~300ms in the game and in the menu, it's rather
annoying especially in this kind of game.

Reply via email to