#define __flash_h__
#include "types.h"
+#include "../lib/rfxswf.h"
#define TAGID_END 0
#define TAGID_SHOWFRAME 1
struct swf_tag
{
- u8 id;
+ u16 id;
u32 length;
u8*data;
u32 fulllength; // includes id
struct RGB readRGB();
struct MATRIX readMATRIX();
unsigned char* readSTRING();
-struct CXFORM readCXFORM();
struct CLIPACTIONS readCLIPACTIONS();
void writeRECT(u8**pos, struct RECT*r);
-void swf_init(uchar*newdata, int newlength);
+void swf_init(struct reader_t*,uchar*newdata, int newlength);
struct flash_header
{
int version;
struct swf_tag* tags;
};
-struct flash_header swf_read_header();
-struct RGB readRGB();
-struct RGBA readRGBA();
-struct GRADIENT readGRADIENT(int shape);
-struct RECT readRECT();
-struct CXFORM readCXFORM();
-struct MATRIX readMATRIX();
-unsigned char* readSTRING();
-int swf_read_tag(struct swf_tag* swftag);
-int swf_count_tags();
+struct flash_header swf_read_header(struct reader_t*);
+struct RGB readRGB(struct reader_t*);
+struct RGBA readRGBA(struct reader_t*);
+struct GRADIENT readGRADIENT(struct reader_t*,int shape);
+struct RECT readRECT(struct reader_t*);
+struct CXFORM readCXFORM(struct reader_t*,char alpha);
+struct MATRIX readMATRIX(struct reader_t*);
+unsigned char* readSTRING(struct reader_t*);
+int swf_read_tag(struct reader_t*,struct swf_tag* swftag);
+int swf_count_tags(struct reader_t*);
struct PlaceObject