Ryan C. Gordon

Results 1356 comments of Ryan C. Gordon

I wasn't ever able to track this down, so I'm totally fine with closing it! :)

This is trying to blit from a surface that has its `flags` set to `SDL_RLEACCELOK` in SDL-1.2, where sdl12-compat has it set to zero; this is probably okay, it was...

We appear to be checking for this flag in sdl12-compat's SDL_DisplayFormatAlpha, so the surface-to-be-converted doesn't have it for some reason.

Ok, we set the SDL_SRCALPHA flag the same way 1.2 does now, I think, and this partially fixes the droid rendering, as they now aren't backed by a black square...

As far as the droid numbers go: the surfaces are flagged SDL_RLEACCEL when run with SDL-1.2, and not with sdl12-compat...but more notably, SDL 1.2 doesn't appear to preserve destination alpha...

Although, just turning off sdl12-compat's efforts to preserve destination alpha fixes all the rendering issues completely, so I'm just going to add a quirk and leave it at that for...

(I must have had something else broken, it's only the droid numbers that need the fix I just pushed. Everything else is rendering correctly with or without this patch.)

This is failing because eventually we end up in SDL2's SDL_BlitSurface (SDL_UpperBlit), and when trying to figure out _what_ to do with these surfaces, we land in this switch statement...

This fixes it in sdl12-compat... ```diff diff --git a/src/SDL12_compat.c b/src/SDL12_compat.c index f29e98f..0c89e77 100644 --- a/src/SDL12_compat.c +++ b/src/SDL12_compat.c @@ -6540,7 +6540,8 @@ SDL_SetAlpha(SDL12_Surface *surface12, Uint32 flags12, Uint8 value) } } surface12->flags...

Here's the SDL2 fix. I think this is probably more correct than working around this in sdl12-compat, and for something as obscure as this game, I'm willing to leave it...