From 102c3742487dba76ec72d5f56a2c3041344b2d68 Mon Sep 17 00:00:00 2001 From: Sebastian Leonhardt Date: Fri, 8 Jan 2016 01:05:36 +0100 Subject: added xrick game original xrick code by 'BigOrno' at: http://www.bigorno.net/xrick/ Rockbox port, plus bugfixes at: https://github.com/pierluigi-vicinanza/xrick Further changes: * Additonal fixes from g#3026 * Port to modern plugin API * Add Pluginlib keymap fallback * Support all >1bpp screens * Fix build warnings in miniz * Better error message when resources are missing Change-Id: Id83928bc2539901b0221692f65cbca41389c58e7 --- apps/plugins/xrick/resources.h | 165 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 165 insertions(+) create mode 100644 apps/plugins/xrick/resources.h (limited to 'apps/plugins/xrick/resources.h') diff --git a/apps/plugins/xrick/resources.h b/apps/plugins/xrick/resources.h new file mode 100644 index 0000000000..e919ed081a --- /dev/null +++ b/apps/plugins/xrick/resources.h @@ -0,0 +1,165 @@ +/* + * xrick/resources.h + * + * Copyright (C) 2008-2014 Pierluigi Vicinanza. All rights reserved. + * + * The use and distribution terms for this software are contained in the file + * named README, which can be found in the root of this distribution. By + * using this software in any fashion, you are agreeing to be bound by the + * terms of this license. + * + * You must not remove this notice, or any other, from this software. + */ + +#ifndef _RESOURCES_H +#define _RESOURCES_H + +#include "xrick/config.h" +#include "xrick/screens.h" +#include "xrick/system/basic_types.h" + +/* + * All data is assumed to be Little Endian + */ +typedef struct +{ + U8 magic[4]; + U8 version[2]; + U8 resourceId[2]; +} resource_header_t; + +typedef struct +{ + U8 w; + U8 h; + U8 spr[2]; + U8 sni[2]; + U8 trig_w; + U8 trig_h; + U8 snd; +} resource_entdata_t; + +typedef struct +{ + U8 x[2]; + U8 y[2]; + U8 row[2]; + U8 submap[2]; + U8 tuneId[2]; +} resource_map_t; + +typedef struct +{ + U8 page[2]; + U8 bnum[2]; + U8 connect[2]; + U8 mark[2]; +} resource_submap_t; + +typedef struct { + U8 count[2]; + U8 dx[2]; + U8 dy[2]; + U8 base[2]; +} resource_imapsteps_t; + +typedef struct { + U8 width[2]; + U8 height[2]; + U8 xPos[2]; + U8 yPos[2]; +} resource_pic_t; + +typedef struct { + U8 score[4]; + U8 name[HISCORE_NAME_SIZE]; +} resource_hiscore_t; + +#ifdef GFXPC +typedef struct { + U8 mask[2]; + U8 pict[2]; +} resource_spriteX_t; +#endif /* GFXPC */ + +extern const U8 resource_magic[4]; + +enum +{ + DATA_VERSION = 3, + + /* "bootstrap" file */ + Resource_FILELIST = 0, + + /* graphics, misc, texts */ + Resource_PALETTE, + Resource_ENTDATA, + Resource_SPRSEQ, + Resource_MVSTEP, + Resource_MAPS, + Resource_SUBMAPS, + Resource_CONNECT, + Resource_BNUMS, + Resource_BLOCKS, + Resource_MARKS, + Resource_EFLGC, + Resource_IMAPSL, + Resource_IMAPSTEPS, + Resource_IMAPSOFS, + Resource_IMAPTEXT, + Resource_GAMEOVERTXT, + Resource_PAUSEDTXT, + Resource_SPRITESDATA, + Resource_TILESDATA, + Resource_HIGHSCORES, + Resource_IMGSPLASH, + Resource_PICHAF, /* ST version only */ + Resource_PICCONGRATS, /* ST version only */ + Resource_PICSPLASH, /* ST version only */ + Resource_IMAINHOFT, /* PC version only */ + Resource_IMAINRDT, /* PC version only */ + Resource_IMAINCDC, /* PC version only */ + Resource_SCREENCONGRATS, /* PC version only */ + + /* sounds */ + Resource_SOUNDBOMBSHHT, + Resource_SOUNDBONUS, + Resource_SOUNDBOX, + Resource_SOUNDBULLET, + Resource_SOUNDCRAWL, + Resource_SOUNDDIE, + Resource_SOUNDENTITY0, + Resource_SOUNDENTITY1, + Resource_SOUNDENTITY2, + Resource_SOUNDENTITY3, + Resource_SOUNDENTITY4, + Resource_SOUNDENTITY5, + Resource_SOUNDENTITY6, + Resource_SOUNDENTITY7, + Resource_SOUNDENTITY8, + Resource_SOUNDEXPLODE, + Resource_SOUNDGAMEOVER, + Resource_SOUNDJUMP, + Resource_SOUNDPAD, + Resource_SOUNDSBONUS1, + Resource_SOUNDSBONUS2, + Resource_SOUNDSTICK, + Resource_SOUNDTUNE0, + Resource_SOUNDTUNE1, + Resource_SOUNDTUNE2, + Resource_SOUNDTUNE3, + Resource_SOUNDTUNE4, + Resource_SOUNDTUNE5, + Resource_SOUNDWALK, + + Resource_MAX_COUNT, +}; + +#define BOOTSTRAP_RESOURCE_NAME "filelist.dat" + +bool resources_load(void); +void resources_unload(void); + +#endif /* ndef _RESOURCES_H */ + +/* eof */ -- cgit v1.2.3