ViP.at - Bilder ins Fastram kopieren

> Is there some way of storing BitMap's or RastPort's in FAST ram?

This structures are usually in fast memory. I think you are speaking about the raw datas (the bitmap planes). The bitmap planes can be anywhere as long as you don't use the blitter (or try to do anything with custom chips) on them.

To move a bitmap into fast mem you can do the following:


struct BitMap *duplicatebmpfast(struct BitMap *bmp)
{
   struct BitMap *fastbmp;
   UWORD p;
   BOOL  error=FALSE;

   if (fastbmp = AllocMem(sizeof(struct BitMap),MEMF_CLEAR))
   {

      InitBitMap(&fastbmp,
                 bmp->Depth,                // Note that under V39
                 bmp->BytesPerRow*8,        // you must use the
                 bmp->Rows);                // function "GetBitMapAttr".

      for(p=0;p<bmp->Depth;p++)
      {
         if (!(fastbmp->Planes[p] = AllocMem(bmp->BytesPerRow*bmp->Rows,0)))
         {
            error = TRUE;
            break;
         }

         CopyMem(bmp->Planes[p], fastbmp->Planes[p],bmp->BytesPerRow*bmp->Rows);
      }
   }

   if (!error) return(fastbmp);


   if (fastbmp)
   {
      for(p=0;p<bmp->Depth;p++)
         if (fastbmp->Planes[p]) FreeMem(fastbmp->Planes[p],bmp->BytesPerRow*bmp->Rows);

      FreeMem(fastbmp,sizeof(struct BitMap));
   }

   return(NULL);
}



***************************************************************
  Schmid Yves -- Alia Development, software developer
   Rue de la Faucille 2
   1201 Geneva           | ADSP: schmidy@alfalog.adsp.sub.org
   (Switzerland)         | BIX:  yschmid
                         | Phone  ++41 22 733 31 15

            "Tournicoti Tournicota" from Zebulon.
***************************************************************

© 1995 by Thomas Dorn
Design by comdes