summaryrefslogtreecommitdiff
path: root/amiga/dt_picture.c
diff options
context:
space:
mode:
Diffstat (limited to 'amiga/dt_picture.c')
-rw-r--r--amiga/dt_picture.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/amiga/dt_picture.c b/amiga/dt_picture.c
index 280028c69..2b612bfcf 100644
--- a/amiga/dt_picture.c
+++ b/amiga/dt_picture.c
@@ -175,7 +175,11 @@ static struct bitmap *amiga_dt_picture_cache_convert(struct content *c)
Object *dto;
struct bitmap *bitmap;
unsigned int bm_flags = BITMAP_NEW;
+#ifdef __amigaos4__
int bm_format = PBPAFMT_RGBA;
+#else
+ int bm_format = PBPAFMT_ARGB;
+#endif
struct amiga_dt_picture_content *adt = (struct amiga_dt_picture_content *)c;
if(dto = amiga_dt_picture_newdtobject(adt))
@@ -192,7 +196,9 @@ static struct bitmap *amiga_dt_picture_cache_convert(struct content *c)
IDoMethod(dto, PDTM_READPIXELARRAY,
bm_buffer, bm_format, bitmap_get_rowstride(bitmap),
0, 0, c->width, c->height);
-
+#ifndef __amigaos4__
+ ami_bitmap_argb_to_rgba(bitmap);
+#endif
bitmap_set_opaque(bitmap, bitmap_test_opaque(bitmap));
DisposeDTObject(dto);