From 18fe60baf1fc5775e0a96a1930ce622bbc40b1ec Mon Sep 17 00:00:00 2001 From: Chris Young Date: Sat, 10 Jan 2015 23:46:17 +0000 Subject: fix-up the datatypes handlers for os3 --- amiga/dt_anim.c | 13 ++++++++++--- amiga/dt_picture.c | 3 +++ amiga/dt_sound.c | 2 ++ amiga/os3support.h | 1 + 4 files changed, 16 insertions(+), 3 deletions(-) diff --git a/amiga/dt_anim.c b/amiga/dt_anim.c index a76966dc9..f69af31b9 100644 --- a/amiga/dt_anim.c +++ b/amiga/dt_anim.c @@ -21,8 +21,11 @@ */ #ifdef WITH_AMIGA_DATATYPES +#include "amiga/os3support.h" + #include "amiga/filetype.h" #include "amiga/datatypes.h" +#include "amiga/misc.h" #include "amiga/plotters.h" #include "content/content_protected.h" #include "desktop/plotters.h" @@ -36,7 +39,9 @@ #include #include #include +#ifdef __amigaos4__ #include +#endif #include typedef struct amiga_dt_anim_content { @@ -192,7 +197,7 @@ bool amiga_dt_anim_convert(struct content *c) IDoMethodA(plugin->dto, (Msg)&adt_frame); clut = ami_colormap_to_clut(adt_frame.alf_CMap); - +#ifdef __amigaos4__ BltBitMapTags( BLITA_Width, width, BLITA_Height, height, @@ -203,7 +208,9 @@ bool amiga_dt_anim_convert(struct content *c) BLITA_DestBytesPerRow, width, BLITA_CLUT, clut, TAG_DONE); - +#else +#warning FIXME: Need to use a different blitter function for OS3! +#endif FreeVec(clut); adt_frame.MethodID = ADTM_UNLOADFRAME; @@ -332,7 +339,7 @@ content_type amiga_dt_anim_content_type(void) APTR ami_colormap_to_clut(struct ColorMap *cmap) { int i; - UBYTE *clut = AllocVecTags(256 * 4, AVT_ClearWithValue, 0, TAG_DONE); /* NB: Was not MEMF_PRIVATE */ + UBYTE *clut = ami_misc_allocvec_clear(256 * 4, 0); /* NB: Was not MEMF_PRIVATE */ ULONG colr[256 * 4]; if(!clut) return NULL; diff --git a/amiga/dt_picture.c b/amiga/dt_picture.c index 38bb46311..a31c3501c 100644 --- a/amiga/dt_picture.c +++ b/amiga/dt_picture.c @@ -21,6 +21,9 @@ */ #ifdef WITH_AMIGA_DATATYPES +#include "amiga/os3support.h" + +#include "amiga/bitmap.h" #include "amiga/filetype.h" #include "amiga/datatypes.h" #include "content/content_protected.h" diff --git a/amiga/dt_sound.c b/amiga/dt_sound.c index 93933bce5..2823178e2 100644 --- a/amiga/dt_sound.c +++ b/amiga/dt_sound.c @@ -21,6 +21,8 @@ */ #ifdef WITH_AMIGA_DATATYPES +#include "amiga/os3support.h" + #include "amiga/filetype.h" #include "amiga/datatypes.h" #include "content/content_protected.h" diff --git a/amiga/os3support.h b/amiga/os3support.h index 708ed50ce..dbd1ef755 100644 --- a/amiga/os3support.h +++ b/amiga/os3support.h @@ -65,6 +65,7 @@ /* Intuition */ #define IDoMethod DoMethod +#define IDoMethodA DoMethodA #define IDoSuperMethodA DoSuperMethodA /* Integral type definitions */ -- cgit v1.2.3