#include <stdio.h>
#include <stdlib.h>
#include <exec/types.h>

#include "BM_Precalc.h"

UWORD *EnvMapPtr;
UBYTE *TxtMapPtr;
WORD *BumpMapPtr;
UBYTE *ShineLUTPtr;
ULONG ChunkyWidth = 320;

VOID PrepareBump(UBYTE *Image, WORD *BumpPtr)
{
 ULONG x,y;
 LONG NormX,NormY;

  for(y=1;y<255;y++)
    for(x=1;x<255;x++)
       {
		NormX = (LONG)Image[x-1+y*256] - (LONG)Image[x+1+y*256];
		NormY = (LONG)Image[x+(y-1)*256] - (LONG)Image[x+(y+1)*256];

  	NormX = (NormX >> 1);
  	NormY = (NormY >> 1);

  	BumpPtr[x-1+(y-128)*256] = NormX + NormY*256;
	}
}

VOID PrepareEnv(UBYTE *Src, UWORD *Env)
{
LONG i;

		for(i=0; i<128*256; i++)
		{
			Env[i] = ((UWORD)Src[128*256+i])<<8;
			Env[128*256+i] = ((UWORD)Src[i])<<8;
		}
}

VOID PrepareTxt(UBYTE *Src, UBYTE *Txt)
{
LONG i;

		for(i=0; i<128*256; i++)
		{
			Txt[i] = Src[128*256+i];
			Txt[128*256+i] = Src[i];
		}
}

