[ Thread Index |
Date Index
| More lists.liballeg.org/allegro-developers Archives
]
On 2 Apr 2001, at 18:20, Peter Wang wrote:
> Gillius <gillius@xxxxxxxxxx> wrote:
> > I'd like to hear a firm yes or no wether my patch will be commited, or if
> > only part of it will (I'm sure there's at least nothing wrong with the
> > fixing of the warnings).
>
> Please resend the patch in unified format unified (diff -u).
> Also, it would help if each change was in a separate patch.
>
> > If you have better suggestions let me know. Now that I've seen these other
>
> Firstly, you could write `convert_datafile' in userspace using
> `blit'. I might have even posted one in the past, but maybe I'm
> just remembering things.
>
> Secondly, `fixup_datafile' does not do what you think it does.
Actually since I worked around my problem buy just leaving the whole game
in one resolution and color depth, I don't need convert_datafile anymore.
People have been telling me that fixup_datafile doesn't do what I think it
does. That could be very true so I am withdrawing my patch for now. The
problem with blit (and perhaps my understanding of fixup_datafile), is that
the bitmaps in the datafile are actually in a different depth, so you'll
need to create new bitmaps of the proper depth, which has the following
problem:
BITMAP* mySprite = data[SPRITE_IDX].dat;
convert_datafile();
draw_sprite(mySprite, 0, 0);
mySprite won't point to a valid bitmap anymore since convert_datafile had
to allocate new ones. I'm not sure how fixup_datafile handles this, and
I'm thinking (just right now) that what it would have no choice to do but
be hardwires to only convert 15<->16 and 24<-->32. For my program this is
exactly what I wanted -- the images in the datafile were 16bit and
destination was 16bit, but I didn't know the pixel format until later.
This may have been why fixup_datafile worked for me when otherwise it would
have failed.
Gillius