Op Fri, 8 May 2009 09:48:21 +0200
schreef Gerfried Fuchs <[email protected]>:
> Package: asylum
> Version: 0.3.0-2
> Severity: important
>
> Hi!
>
> First start I thought the graphics are totally screwed up, thought it
> might be endianess related (see asylum-1.png).
>
> Then the initial menu came up looking not too weird--though,
> everything has a quite pink coloured touch, is that what it should
> look? Anyway, when I go to configure the keyboard, the screen doesn't
> get cleared but the lines written over each other, making it
> impossible to read what key is queried for the configuration ... (see
> asylum-2.png)
I think both of these are endianness bugs in the OpenGL code. Can you
try the attached patch?
You could also try the SDL rendering engine: edit ~/.asylum or pick
options 2, 3, 3 in the main menu.
> And ... one more thing:
> Building sound
> effects .........................................................
> done. at every single startup. Taking quite some time, can't those
> get pre-built and shipped already? I don't think that that's
> something that has to happen at runtime.
I agree it's annoying. Fixing this is on upstream's wish list.
--- a/vdu.c
+++ b/vdu.c
@@ -666,11 +666,11 @@
{
glBindTexture(GL_TEXTURE_2D, *redtex);
gluBuild2DMipmaps(GL_TEXTURE_2D, GL_RGBA, 128, 64,
- GL_RGBA, GL_UNSIGNED_BYTE, (char*)redpixels);
+ GL_RGBA, GL_UNSIGNED_INT_8_8_8_8, (char*)redpixels);
free(redpixels);
glBindTexture(GL_TEXTURE_2D, *greytex);
gluBuild2DMipmaps(GL_TEXTURE_2D, GL_RGBA, 128, 64,
- GL_RGBA, GL_UNSIGNED_BYTE, (char*)greypixels);
+ GL_RGBA, GL_UNSIGNED_INT_8_8_8_8, (char*)greypixels);
free(greypixels);
}
else
@@ -744,7 +744,7 @@
{
DecompScreen->x = -1; DecompScreen->y = -1;
gluBuild2DMipmaps(GL_TEXTURE_2D, GL_RGBA, 512, 512,
- GL_RGBA, GL_UNSIGNED_BYTE, (char*)data);
+ GL_RGBA, GL_UNSIGNED_INT_8_8_8_8, (char*)data);
free(data);
}
else
@@ -816,7 +816,7 @@
glGenTextures(1, batex);
glBindTexture(GL_TEXTURE_2D, *batex);
gluBuild2DMipmaps(GL_TEXTURE_2D, 4, 2*64, 2*32,
- GL_RGBA, GL_UNSIGNED_BYTE, (char*)ba);
+ GL_RGBA, GL_UNSIGNED_INT_8_8_8_8, (char*)ba);
}
else
{
@@ -982,7 +982,7 @@
//Without this line I don't get textures unless I use gluBuild2DMipmaps
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_NEAREST);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 256, 256, 0,
- GL_RGBA, GL_UNSIGNED_BYTE, (char*)data);
+ GL_RGBA, GL_UNSIGNED_INT_8_8_8_8, (char*)data);
free(data);
}
else SDL_UnlockSurface(sprites[i].s);