diff options
author | Chris Apers | 2004-09-12 12:44:57 +0000 |
---|---|---|
committer | Chris Apers | 2004-09-12 12:44:57 +0000 |
commit | eeee0b6f5402119015072534747c05c09c9d9421 (patch) | |
tree | 7201dffbdd889f0c64c38a6897cf94d6ea65ad79 /backends/PalmOS/Src/arm | |
parent | f413780189cc734dccad8fb87106f5ab9c9dd5d7 (diff) | |
download | scummvm-rg350-eeee0b6f5402119015072534747c05c09c9d9421.tar.gz scummvm-rg350-eeee0b6f5402119015072534747c05c09c9d9421.tar.bz2 scummvm-rg350-eeee0b6f5402119015072534747c05c09c9d9421.zip |
Cleanup
svn-id: r15041
Diffstat (limited to 'backends/PalmOS/Src/arm')
-rw-r--r-- | backends/PalmOS/Src/arm/native.h | 140 |
1 files changed, 140 insertions, 0 deletions
diff --git a/backends/PalmOS/Src/arm/native.h b/backends/PalmOS/Src/arm/native.h new file mode 100644 index 0000000000..0773fee63a --- /dev/null +++ b/backends/PalmOS/Src/arm/native.h @@ -0,0 +1,140 @@ +#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
\ No newline at end of file |