[Scummvm-cvs-logs] CVS: scummvm/backends/PalmOS/Src/arm native.h,NONE,1.1

Chris Apers chrilith at users.sourceforge.net
Sun Sep 12 05:46:01 CEST 2004


Update of /cvsroot/scummvm/scummvm/backends/PalmOS/Src/arm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32065

Added Files:
	native.h 
Log Message:
Cleanup

--- NEW FILE: native.h ---
#ifndef _ARMNATIVE_H_
#define _ARMNATIVE_H_

#include "PNOLoader.h"

//#define DISABLE_ARM
//#define DEBUG_ARM

#ifndef __PALM_OS__

typedef UInt8 byte;
typedef Int32 int32;
typedef UInt16 uint16;
typedef unsigned int uint;

#endif

// rsrc
enum {
	RSC_WIDELANDSCAPE = 1,
	RSC_WIDEPORTRAIT,
	RSC_COPYRECT,
	RSC_COSTUMEPROC3,
	RSC_DRAWSTRIP
};

enum {
	PNO_COPYRECT = 0,
	PNO_WIDE,
	PNO_COSTUMEPROC3,
	PNO_DRAWSTRIP,
	PNO_COUNT
};

// types
typedef struct {
	void *srcP;
	void *dstP;
	UInt32 length;
} ARMPa1SndType, *ARMPa1SndPtr;

typedef struct {
	void *proc;
	void *param;

	void	*handle;	// sound handle
	UInt32	size;		// buffer size
	UInt32	slot;
	UInt32 	active,		// is the sound handler active
			set,		// is the buffer filled
			wait;		// do we need to wait for sound completion
	void	*dataP,		// main buffer
			*tmpP;		// tmp buffer (convertion)
} SoundDataType;

typedef struct {
	void *dst;
	void *src;
} WideType;

typedef struct {
	void *dst;
	const void *buf;
	UInt32 pitch, _offScreenPitch;
	UInt32 w, h;
} CopyRectangleType;

typedef struct {
	const byte *scaletable;
	byte mask, shr;
	byte repcolor;
	byte replen;
	int scaleXstep;
	int x, y;
	int scaleXindex, scaleYindex;
	int skip_width;
	byte *destptr;
	const byte *mask_ptr;
	int imgbufoffs;
} V1CodecType;

typedef struct {
	const byte *scaletable;
	int32 mask, shr;
	int32 repcolor;
	int32 replen;
	int32 scaleXstep;
	int32 x, y;
	int32 scaleXindex, scaleYindex;
	int skip_width;
	byte *destptr;
	const byte *mask_ptr;
} V1Type;

typedef struct {
	void *v1; // struct v1 *
	const byte *revBitMask;	
	
	const byte *_srcptr;
	int _height;

	byte _scaleIndexX;		// to be redefined, return it from the function
	byte _scaleIndexY;
	byte _scaleX;
	byte _scaleY;
	int32 _numStrips;

	int _outwidth;
	int _outheight;

	byte *_shadow_table;

	 byte *_vm_proc_special_palette;
	 byte *_palette;
	byte _shadow_mode;
} CostumeProc3Type;

typedef struct {
	int width;
	int height;
	
	const byte *src;
	byte *dst;
	const byte *text;
	
	int _vm_screenWidth;
	uint16 vs_pitch;
	uint16 _textSurface_pitch;
} DrawStripType;

// calls
MemPtr	_PceInit(DmResID resID);
UInt32	_PceCall(void *armP, void *userDataP);
void	_PceFree(void *armP);

MemPtr	_PnoInit(DmResID resID, PnoDescriptor *pnoP);
UInt32	_PnoCall(PnoDescriptor *pnoP, void *userDataP);
void	_PnoFree(PnoDescriptor *pnoP, MemPtr armP);

#endif




More information about the Scummvm-git-logs mailing list