Example #1
0
AudioFormat_YM::AudioFormat_YM(const Asset& asset):
	ymFile_(0),
	chunkStart_(0),
	chunkEnd_(0)
	{
	if (asset.Open())
		{
		int size=asset.GetSize();
		unsigned char* buffer=static_cast<unsigned char*>(Malloc(size));
		asset.Read(buffer,size);
		asset.Close();

		ymFile_=new CYmMusic();
		ymFile_->loadMemory(buffer,size);
		ymFile_->setLoopMode(true);
		ymFile_->play();
		Free(buffer);
		}
	// Report missing file
	#ifdef _DEBUG
	else
		{
		const char* filename=asset.GetFilename().GetString();
		if (filename)
			{
			char errorMessage[1024];
			SNPrintF(errorMessage,1024,"File not found: %s",filename);
			Assert(false,errorMessage);
			}
		else
			{
			Assert(false,"An asset could not be accessed.");
			}
		}
	#endif
	}
Example #2
0
void Bitmap_RLE8::Load(const Asset& asset)
	{
	if (asset.Open())
		{
		char header[8];
		asset.Read(header,8);

		if (StrNCmp(header,"PIXRLE8B",8)==0)
			{
			int version=0;
			asset.Read(&version);
			if (version==0)
				{
				int celCount=0;
				asset.Read(&celCount);
				if (celCount>=1)
					{
					ReadFromAsset(&asset);
					}
				}
			}

		else if (StrNCmp(header,"PIXIE_RL",8)==0)
			{
			char c;
			asset.Read(&c);
			int version=0;
			asset.Read(&version);
			if (version==0)
				{
				int celCount=0;
				asset.Read(&celCount);
				if (celCount>=1)
					{
					ReadFromAsset(&asset);
					}
				}
			}
		else
			{
			Assert(false,"Invalid RLE header");
			}
		}
	// Report missing file
	#ifdef _DEBUG
	else
		{
		const char* filename=asset.GetFilename().GetString();
		if (filename)
			{
			char errorMessage[1024];
			SNPrintF(errorMessage,1024,"File not found: %s",filename);
			Assert(false,errorMessage);
			}
		else
			{
			Assert(false,"An asset could not be accessed.");
			}
		}
	#endif
	}