 /***************************************************************************************
 *This program is free software; you can redistribute it and/or modify					*
 * it under the terms of the GNU General Public License as published by					*
 * the Free Software Foundation; either version 2 of the License, or					*
 * (at your option) any later version.													*
 *																						*
 * The GPL can be found at: http://www.gnu.org/copyleft/gpl.html						*
 *																						*
 *																						*	
 ****************************************************************************************
 * Authors:																			  *
 *          Marc Dukette                                                              *
 **************************************************************************************/


#if !defined(AFX_POCKETMVP_H__8A0A8509_0B1D_11D5_A909_002078F03966__INCLUDED_)
#define AFX_POCKETMVP_H__8A0A8509_0B1D_11D5_A909_002078F03966__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "resource.h"
//****************************************************************************************************/
//Constants
/*****************************************************************************************************/

#define VIDEO_BUFFER_SIZE 48000
#define MAX_LOADSTRING 100
#define VERSION _T("PocketMVP Version .8.041303\r\n\r\nPocketMVP is an open source media player, which supports many A/V formats and is released under the GNU GPL License.\r\n\r\nAuthors: Marc Dukette, Pedro Mateu\r\n\r\nSpecial Thanks To: Dan Marlin, and Divx Networks")
#ifdef _USEVIDBUFF

//CASSIOPEIA vide memory address modify for your device
#ifndef IPAQ
#ifdef HPC
#define PHYSADDR (0xaa000000) 
#define VSIZE (480*640*2) /* 256 virtual columns but only 240 visible, 2 means 2 bytes per pixel */ 
#else
#define PHYSADDR (0xaa200000) 
#define VSIZE (256*320*2) /* 256 virtual columns but only 240 visible, 2 means 2 bytes per pixel */ 
#endif
#else

	//Compaq Aero
#define PHYSADDR (0xa8012020) 
#define VSIZE (240*320*2) /* 256 virtual columns but only 240 visible, 2 means 2 bytes per pixel */ 
#endif
#endif

#if defined(GAPI)||(defined(_USEVIDBUFF))
#ifdef MIPS
#ifdef HPC
	#define DisplayWidth 640
	#define DisplayHeight 240
	#define VisibleWidth 640
	#define VisibleHeight 240
#else
	#define DisplayWidth 256
	#define DisplayHeight 320
	#define VisibleWidth 240
	#define VisibleHeight 320
#endif
#else
#ifdef IPAQ
	#define DisplayWidth 320
	#define DisplayHeight 240
	#define VisibleWidth 320
	#define VisibleHeight 240
#else
#ifdef HPC
	#define VisibleWidth 640
	#define DisplayWidth 640
	#define VisibleHeight 240
	#define DisplayHeight 240
#else
	#define VisibleWidth 240
	#define DisplayWidth 240
	#define VisibleHeight 320
	#define DisplayHeight 320
#endif
#endif
#endif
#else
#ifdef HPC
	#define VisibleWidth 640
	#define DisplayWidth 640
	#define VisibleHeight 240
	#define DisplayHeight 240
#else
	#define VisibleWidth 240
	#define DisplayWidth 240
	#define VisibleHeight 320
	#define DisplayHeight 320
#endif
#endif

#define COLORDEPTH 16
#ifdef _GREYSCALE_16
	#define COLORDEPTH 4
#else
#ifdef _GREYSCALE_4
	#define COLORDEPTH 4
#endif
#endif


#define REG_BASE_VIDEO			L"software\\PocketMVP\\plugins\\video"
#define REG_BASE_AUDIO			L"software\\PocketMVP\\plugins\\audio"
#define REG_BASE_FMT			L"software\\PocketMVP\\plugins\\format"



/************************************************************************************************/
//Structures
/************************************************************************************************/

typedef struct _UserOptions
{
	bool Rotate;
	bool KeepAlive;
	bool Audio;
	bool Double;
	bool Clean;
	bool Cache;
	bool Slider;
	bool PlayAtOpen;
	bool Shuffle;
	int CacheSize;
	int PauseKey;
	int FastKey;
	int RotateKey;
	int ZoomKey;
	int ToggleKey;
	int VolumeUpKey;
	int VolumeDownKey;
	int BrightnessUpKey;
	int BrightnessDownKey;
	int NextKey;
	int PrevKey;
	int ControlSelectKey;
	int StopKey;
	int MuteKey;
	bool ShowDropped;
	int Brightness;
	int DropTolerance;
	bool AlwaysHide;
	bool NoIndex;
	bool EnableEQ;
	char Eq[11];
	TCHAR Skin[255];
	bool Mute;
	bool Playlist;
	bool Media;
	bool FitToViewPort;
	bool Repeat;
	bool KeepLastFile;
	TCHAR LastFile[255];
	int LastFilePos;
} UserOptions;



typedef struct{
	TCHAR FileName[200];
	int PlayCount;
}_Files;



#endif // !defined(AFX_POCKETMVP_H__8A0A8509_0B1D_11D5_A909_002078F03966__INCLUDED_)
