[Scummvm-cvs-logs] SF.net SVN: scummvm:[46395] tools/branches/gsoc2009-gui/extract_loom_tg16. cpp
mthreepwood at users.sourceforge.net
mthreepwood at users.sourceforge.net
Wed Dec 16 19:59:42 CET 2009
Revision: 46395
http://scummvm.svn.sourceforge.net/scummvm/?rev=46395&view=rev
Author: mthreepwood
Date: 2009-12-16 18:59:40 +0000 (Wed, 16 Dec 2009)
Log Message:
-----------
Update extract_loom_tg16 from the tools trunk and some cleanup.
Modified Paths:
--------------
tools/branches/gsoc2009-gui/extract_loom_tg16.cpp
Modified: tools/branches/gsoc2009-gui/extract_loom_tg16.cpp
===================================================================
--- tools/branches/gsoc2009-gui/extract_loom_tg16.cpp 2009-12-16 17:35:55 UTC (rev 46394)
+++ tools/branches/gsoc2009-gui/extract_loom_tg16.cpp 2009-12-16 18:59:40 UTC (rev 46395)
@@ -25,28 +25,28 @@
#include "extract_loom_tg16.h"
-/* if defined, generates a set of .LFL files */
-/* if not defined, dumps all resources to separate files */
+// if defined, generates a set of .LFL files
+// if not defined, dumps all resources to separate files
#define MAKE_LFLS
-uint8 read_cbyte (File &input, short *ctr) {
+uint8 read_cbyte (File &input, uint32 *ctr) {
(*ctr) += 1;
return input.readByte();
}
-uint16 read_cword (File &input, short *ctr) {
+uint16 read_cword (File &input, uint32 *ctr) {
(*ctr) += 2;
return input.readUint16LE();
}
-void write_cbyte (File &output, uint8 val, short *ctr) {
+void write_cbyte (File &output, uint8 val, uint32 *ctr) {
output.writeByte(val);
(*ctr) += 1;
}
-void write_cword (File &output, uint16 val, short *ctr) {
+void write_cword (File &output, uint16 val, uint32 *ctr) {
output.writeUint16LE(val);
(*ctr) += 2;
}
-void write_clong (File &output, uint32 val, short *ctr) {
+void write_clong (File &output, uint32 val, uint32 *ctr) {
output.writeUint32LE(val);
(*ctr) += 4;
}
@@ -57,8 +57,9 @@
RES_SCRIPT = 2,
RES_COSTUME = 3,
RES_CHARSET = 4,
- RES_SOUND = 5,
- RES_UNKNOWN = 6
+ RES_CUSTOM_ROOM = 5,
+ RES_SOUND = 6,
+ RES_UNKNOWN = 7
} res_type;
typedef enum _iso {
@@ -79,598 +80,598 @@
#define NUM_ROOMS 100
t_resource res_rooms[NUM_ROOMS] = {
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 0 */
- { {0x015000, 0x015000}, {0x3DC8, 0x3DC8}, RES_ROOM }, /* 1 */
- { {0x037800, 0x037800}, {0x7C1D, 0x7B45}, RES_ROOM }, /* 2 */
- { {0x04C000, 0x04C000}, {0x3BC4, 0x3BBB}, RES_ROOM }, /* 3 */
- { {0x051800, 0x051800}, {0x7DA7, 0x7DA8}, RES_ROOM }, /* 4 */
- { {0x05B800, 0x05B800}, {0x827F, 0x827F}, RES_ROOM }, /* 5 */
- { {0x065000, 0x065000}, {0x6EDE, 0x6F42}, RES_ROOM }, /* 6 */
- { {0x06D000, 0x06D000}, {0x27E2, 0x27E2}, RES_ROOM }, /* 7 */
- { {0x080000, 0x080000}, {0x954D, 0x9458}, RES_ROOM }, /* 8 */
- { {0x092800, 0x092800}, {0x67FB, 0x67FC}, RES_ROOM }, /* 9 */
- { {0x0A6800, 0x0A6800}, {0x6103, 0x6113}, RES_ROOM }, /* 10 */
- { {0x0B4800, 0x0B4800}, {0x3E5C, 0x3E5C}, RES_ROOM }, /* 11 */
- { {0x0BE800, 0x0BE800}, {0x1B1A, 0x1B25}, RES_ROOM }, /* 12 */
- { {0x0C4000, 0x0C4000}, {0x73FA, 0x73DC}, RES_ROOM }, /* 13 */
- { {0x0D1800, 0x0D1800}, {0x4092, 0x4092}, RES_ROOM }, /* 14 */
- { {0x0D9800, 0x0D9800}, {0x594F, 0x594F}, RES_ROOM }, /* 15 */
- { {0x0E2000, 0x0E2000}, {0x8C04, 0x8BF4}, RES_ROOM }, /* 16 */
- { {0x0EB800, 0x0EB800}, {0x55CC, 0x5595}, RES_ROOM }, /* 17 */
- { {0x0F4000, 0x0F4000}, {0x547E, 0x54BF}, RES_ROOM }, /* 18 */
- { {0x0FD800, 0x0FD800}, {0x679F, 0x679F}, RES_ROOM }, /* 19 */
- { {0x109000, 0x109000}, {0x4491, 0x4586}, RES_ROOM }, /* 20 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 21 */
- { {0x116800, 0x116800}, {0x5619, 0x5611}, RES_ROOM }, /* 22 */
- { {0x11E000, 0x11E000}, {0x86A5, 0x86B3}, RES_ROOM }, /* 23 */
- { {0x12D000, 0x12D000}, {0xDDDB, 0xDDF2}, RES_ROOM }, /* 24 */
- { {0x13F800, 0x13F800}, {0x4C5F, 0x4C60}, RES_ROOM }, /* 25 */
- { {0x14B000, 0x14B000}, {0x81D0, 0x821D}, RES_ROOM }, /* 26 */
- { {0x155800, 0x155800}, {0x455D, 0x455D}, RES_ROOM }, /* 27 */
- { {0x15B800, 0x15B800}, {0xC836, 0xC884}, RES_ROOM }, /* 28 */
- { {0x16F000, 0x16F000}, {0x2002, 0x2002}, RES_ROOM }, /* 29 */
- { {0x171800, 0x171800}, {0x7C16, 0x7C1A}, RES_ROOM }, /* 30 */
- { {0x17B000, 0x17B000}, {0x3572, 0x3596}, RES_ROOM }, /* 31 */
- { {0x184000, 0x184000}, {0x2571, 0x2571}, RES_ROOM }, /* 32 */
- { {0x187800, 0x187800}, {0x62B2, 0x6298}, RES_ROOM }, /* 33 */
- { {0x197000, 0x197000}, {0xD702, 0xD7A6}, RES_ROOM }, /* 34 */
- { {0x1AC000, 0x1AC000}, {0x5E16, 0x5E9B}, RES_ROOM }, /* 35 */
- { {0x1BA000, 0x1BA000}, {0x7B89, 0x7B89}, RES_ROOM }, /* 36 */
- { {0x1C7000, 0x1C7000}, {0x4CA8, 0x4C7F}, RES_ROOM }, /* 37 */
- { {0x1D2000, 0x1D2000}, {0x457D, 0x4584}, RES_ROOM }, /* 38 */
- { {0x1D8800, 0x1D8800}, {0x2998, 0x2998}, RES_ROOM }, /* 39 */
- { {0x1DB800, 0x1DB800}, {0x3FEC, 0x3FEC}, RES_ROOM }, /* 40 */
- { {0x1E1800, 0x1E1800}, {0x6BE2, 0x6B51}, RES_ROOM }, /* 41 */
- { {0x1EF800, 0x1EF800}, {0x39D0, 0x39D0}, RES_ROOM }, /* 42 */
- { {0x1F5000, 0x1F5000}, {0x6753, 0x6772}, RES_ROOM }, /* 43 */
- { {0x207000, 0x207000}, {0x3CC7, 0x3CCB}, RES_ROOM }, /* 44 */
- { {0x20F800, 0x20F800}, {0x39EA, 0x3A17}, RES_ROOM }, /* 45 */
- { {0x21C800, 0x21C800}, {0x41C2, 0x41B5}, RES_ROOM }, /* 46 */
- { {0x22F000, 0x22F000}, {0x6025, 0x5FCD}, RES_ROOM }, /* 47 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 48 */
- { {0x23A800, 0x23A800}, {0x5CD3, 0x5CD1}, RES_ROOM }, /* 49 */
- { {0x242800, 0x242800}, {0x47B2, 0x47B2}, RES_ROOM }, /* 50 */
- { {0x247800, 0x247800}, {0x69A6, 0x6992}, RES_ROOM }, /* 51 */
- { {0x250800, 0x250800}, {0x3F20, 0x3F20}, RES_ROOM }, /* 52 */
- { {0x256000, 0x256000}, {0x3D07, 0x3D07}, RES_ROOM }, /* 53 */
- { {0x25D000, 0x25D000}, {0x2713, 0x2713}, RES_ROOM }, /* 54 */
- { {0x260000, 0x260000}, {0x1533, 0x1533}, RES_ROOM }, /* 55 */
- { {0x261800, 0x261800}, {0x1E21, 0x1E21}, RES_ROOM }, /* 56 */
- { {0x264000, 0x264000}, {0x2FF8, 0x2FF8}, RES_ROOM }, /* 57 */
- { {0x268800, 0x268800}, {0x2C6C, 0x2C6C}, RES_ROOM }, /* 58 */
- { {0x26B800, 0x26B800}, {0x3AEC, 0x3AEC}, RES_ROOM }, /* 59 */
- { {0x26F800, 0x26F800}, {0x2139, 0x2139}, RES_ROOM }, /* 60 */
- { {0x272800, 0x272800}, {0x0170, 0x0170}, RES_ROOM }, /* 61 */
- { {0x276000, 0x276000}, {0x542A, 0x5425}, RES_ROOM }, /* 62 */
- { {0x27C800, 0x27C800}, {0x0FFB, 0x0FE6}, RES_ROOM }, /* 63 */
- { {0x27E800, 0x27E800}, {0x58FA, 0x5901}, RES_ROOM }, /* 64 */
- { {0x284800, 0x284800}, {0x0656, 0x065F}, RES_ROOM }, /* 65 */
- { {0x285800, 0x285800}, {0x7DA6, 0x7DC6}, RES_ROOM }, /* 66 */
- { {0x291800, 0x291800}, {0x3091, 0x3091}, RES_ROOM }, /* 67 */
- { {0x295000, 0x295000}, {0x2565, 0x2565}, RES_ROOM }, /* 68 */
- { {0x298800, 0x298800}, {0x1F0C, 0x1F37}, RES_ROOM }, /* 69 */
- { {0x2A1800, 0x2A1800}, {0x4A6D, 0x49F4}, RES_ROOM }, /* 70 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 71 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 72 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 73 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 74 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 75 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 76 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 77 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 78 */
- { {0x2A8800, 0x2A8800}, {0x17BB, 0x17BB}, RES_ROOM }, /* 79 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 80 */
- { {0x2AA000, 0x2AA000}, {0x0D01, 0x0D01}, RES_ROOM }, /* 81 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 82 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 83 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 84 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 85 */
- { {0x2AE000, 0x2AE000}, {0x5591, 0x5591}, RES_ROOM }, /* 86 */
- { {0x2B4800, 0x2B4800}, {0x22E9, 0x22E9}, RES_ROOM }, /* 87 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, /* 0 */
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 0
+ { {0x015000, 0x015000}, {0x3DC8, 0x3DC8}, RES_ROOM }, // 1
+ { {0x037800, 0x037800}, {0x7C1D, 0x7B45}, RES_ROOM }, // 2
+ { {0x04C000, 0x04C000}, {0x3BC4, 0x3BBB}, RES_ROOM }, // 3
+ { {0x051800, 0x051800}, {0x7DA7, 0x7DA8}, RES_ROOM }, // 4
+ { {0x05B800, 0x05B800}, {0x827F, 0x827F}, RES_ROOM }, // 5
+ { {0x065000, 0x065000}, {0x6EDE, 0x6F42}, RES_ROOM }, // 6
+ { {0x06D000, 0x06D000}, {0x27E2, 0x27E2}, RES_ROOM }, // 7
+ { {0x080000, 0x080000}, {0x954D, 0x9458}, RES_ROOM }, // 8
+ { {0x092800, 0x092800}, {0x67FB, 0x67FC}, RES_ROOM }, // 9
+ { {0x0A6800, 0x0A6800}, {0x6103, 0x6113}, RES_ROOM }, // 10
+ { {0x0B4800, 0x0B4800}, {0x3E5C, 0x3E5C}, RES_ROOM }, // 11
+ { {0x0BE800, 0x0BE800}, {0x1B1A, 0x1B25}, RES_ROOM }, // 12
+ { {0x0C4000, 0x0C4000}, {0x73FA, 0x73DC}, RES_ROOM }, // 13
+ { {0x0D1800, 0x0D1800}, {0x4092, 0x4092}, RES_ROOM }, // 14
+ { {0x0D9800, 0x0D9800}, {0x594F, 0x594F}, RES_ROOM }, // 15
+ { {0x0E2000, 0x0E2000}, {0x8C04, 0x8BF4}, RES_ROOM }, // 16
+ { {0x0EB800, 0x0EB800}, {0x55CC, 0x5595}, RES_ROOM }, // 17
+ { {0x0F4000, 0x0F4000}, {0x547E, 0x54BF}, RES_ROOM }, // 18
+ { {0x0FD800, 0x0FD800}, {0x679F, 0x679F}, RES_ROOM }, // 19
+ { {0x109000, 0x109000}, {0x4491, 0x4586}, RES_ROOM }, // 20
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 21
+ { {0x116800, 0x116800}, {0x5619, 0x5611}, RES_ROOM }, // 22
+ { {0x11E000, 0x11E000}, {0x86A5, 0x86B3}, RES_ROOM }, // 23
+ { {0x12D000, 0x12D000}, {0xDDDB, 0xDDF2}, RES_ROOM }, // 24
+ { {0x13F800, 0x13F800}, {0x4C5F, 0x4C60}, RES_ROOM }, // 25
+ { {0x14B000, 0x14B000}, {0x81D0, 0x821D}, RES_ROOM }, // 26
+ { {0x155800, 0x155800}, {0x455D, 0x455D}, RES_ROOM }, // 27
+ { {0x15B800, 0x15B800}, {0xC836, 0xC884}, RES_ROOM }, // 28
+ { {0x16F000, 0x16F000}, {0x2002, 0x2002}, RES_ROOM }, // 29
+ { {0x171800, 0x171800}, {0x7C16, 0x7C1A}, RES_ROOM }, // 30
+ { {0x17B000, 0x17B000}, {0x3572, 0x3596}, RES_ROOM }, // 31
+ { {0x184000, 0x184000}, {0x2571, 0x2571}, RES_ROOM }, // 32
+ { {0x187800, 0x187800}, {0x62B2, 0x6298}, RES_ROOM }, // 33
+ { {0x197000, 0x197000}, {0xD702, 0xD7A6}, RES_ROOM }, // 34
+ { {0x1AC000, 0x1AC000}, {0x5E16, 0x5E9B}, RES_ROOM }, // 35
+ { {0x1BA000, 0x1BA000}, {0x7B89, 0x7B89}, RES_ROOM }, // 36
+ { {0x1C7000, 0x1C7000}, {0x4CA8, 0x4C7F}, RES_ROOM }, // 37
+ { {0x1D2000, 0x1D2000}, {0x457D, 0x4584}, RES_ROOM }, // 38
+ { {0x1D8800, 0x1D8800}, {0x2998, 0x2998}, RES_ROOM }, // 39
+ { {0x1DB800, 0x1DB800}, {0x3FEC, 0x3FEC}, RES_ROOM }, // 40
+ { {0x1E1800, 0x1E1800}, {0x6BE2, 0x6B51}, RES_ROOM }, // 41
+ { {0x1EF800, 0x1EF800}, {0x39D0, 0x39D0}, RES_ROOM }, // 42
+ { {0x1F5000, 0x1F5000}, {0x6753, 0x6772}, RES_ROOM }, // 43
+ { {0x207000, 0x207000}, {0x3CC7, 0x3CCB}, RES_ROOM }, // 44
+ { {0x20F800, 0x20F800}, {0x39EA, 0x3A17}, RES_ROOM }, // 45
+ { {0x21C800, 0x21C800}, {0x41C2, 0x41B5}, RES_ROOM }, // 46
+ { {0x22F000, 0x22F000}, {0x6025, 0x5FCD}, RES_ROOM }, // 47
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 48
+ { {0x23A800, 0x23A800}, {0x5CD3, 0x5CD1}, RES_ROOM }, // 49
+ { {0x242800, 0x242800}, {0x47B2, 0x47B2}, RES_ROOM }, // 50
+ { {0x247800, 0x247800}, {0x69A6, 0x6992}, RES_ROOM }, // 51
+ { {0x250800, 0x250800}, {0x3F20, 0x3F20}, RES_ROOM }, // 52
+ { {0x256000, 0x256000}, {0x3D07, 0x3D07}, RES_ROOM }, // 53
+ { {0x25D000, 0x25D000}, {0x2713, 0x2713}, RES_ROOM }, // 54
+ { {0x260000, 0x260000}, {0x1533, 0x1533}, RES_ROOM }, // 55
+ { {0x261800, 0x261800}, {0x1E21, 0x1E21}, RES_ROOM }, // 56
+ { {0x264000, 0x264000}, {0x2FF8, 0x2FF8}, RES_ROOM }, // 57
+ { {0x268800, 0x268800}, {0x2C6C, 0x2C6C}, RES_ROOM }, // 58
+ { {0x26B800, 0x26B800}, {0x3AEC, 0x3AEC}, RES_ROOM }, // 59
+ { {0x26F800, 0x26F800}, {0x2139, 0x2139}, RES_ROOM }, // 60
+ { {0x272800, 0x272800}, {0x0170, 0x0170}, RES_ROOM }, // 61
+ { {0x276000, 0x276000}, {0x542A, 0x5425}, RES_ROOM }, // 62
+ { {0x27C800, 0x27C800}, {0x0FFB, 0x0FE6}, RES_ROOM }, // 63
+ { {0x27E800, 0x27E800}, {0x58FA, 0x5901}, RES_ROOM }, // 64
+ { {0x284800, 0x284800}, {0x0656, 0x065F}, RES_ROOM }, // 65
+ { {0x285800, 0x285800}, {0x7DA6, 0x7DC6}, RES_ROOM }, // 66
+ { {0x291800, 0x291800}, {0x3091, 0x3091}, RES_ROOM }, // 67
+ { {0x295000, 0x295000}, {0x2565, 0x2565}, RES_ROOM }, // 68
+ { {0x298800, 0x298800}, {0x1F0C, 0x1F37}, RES_ROOM }, // 69
+ { {0x2A1800, 0x2A1800}, {0x4A6D, 0x49F4}, RES_ROOM }, // 70
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 71
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 72
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 73
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 74
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 75
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 76
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 77
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 78
+ { {0x2A8800, 0x2A8800}, {0x17BB, 0x17BB}, RES_ROOM }, // 79
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 80
+ { {0x2AA000, 0x2AA000}, {0x0D01, 0x0D01}, RES_ROOM }, // 81
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 82
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 83
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 84
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 85
+ { {0x2AE000, 0x2AE000}, {0x5591, 0x5591}, RES_ROOM }, // 86
+ { {0x2B4800, 0x2B4800}, {0x22E9, 0x22E9}, RES_ROOM }, // 87
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 88
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 89
+ { {0x013000, 0x013000}, {0x1A7F, 0x1A7F}, RES_CUSTOM_ROOM }, // 90
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_ROOM }, // 0
};
#define NUM_SCRIPTS 200
t_resource res_scripts[NUM_SCRIPTS] = {
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x019000, 0x019000}, {0x01F8, 0x01C0}, RES_SCRIPT }, /* 1 */
- { {0x019800, 0x019800}, {0x0030, 0x0030}, RES_SCRIPT }, /* 2 */
- { {0x01A000, 0x01A000}, {0x002F, 0x002F}, RES_SCRIPT }, /* 3 */
- { {0x2A6800, 0x2A6800}, {0x0091, 0x0091}, RES_SCRIPT }, /* 4 */
- { {0x01A800, 0x01A800}, {0x023F, 0x023F}, RES_SCRIPT }, /* 5 */
- { {0x01B000, 0x01B000}, {0x01C9, 0x01C9}, RES_SCRIPT }, /* 6 */
- { {0x01B800, 0x01B800}, {0x0058, 0x0058}, RES_SCRIPT }, /* 7 */
- { {0x01C000, 0x01C000}, {0x0064, 0x0064}, RES_SCRIPT }, /* 8 */
- { {0x01C800, 0x01C800}, {0x0080, 0x0080}, RES_SCRIPT }, /* 9 */
- { {0x01D000, 0x01D000}, {0x005B, 0x005B}, RES_SCRIPT }, /* 10 */
- { {0x01D800, 0x01D800}, {0x0072, 0x007E}, RES_SCRIPT }, /* 11 */
- { {0x01E000, 0x01E000}, {0x0055, 0x0053}, RES_SCRIPT }, /* 12 */
- { {0x01E800, 0x01E800}, {0x005D, 0x0054}, RES_SCRIPT }, /* 13 */
- { {0x01F000, 0x01F000}, {0x003C, 0x003C}, RES_SCRIPT }, /* 14 */
- { {0x01F800, 0x01F800}, {0x0025, 0x0025}, RES_SCRIPT }, /* 15 */
- { {0x020000, 0x020000}, {0x0014, 0x0014}, RES_SCRIPT }, /* 16 */
- { {0x020800, 0x020800}, {0x00E7, 0x00E7}, RES_SCRIPT }, /* 17 */
- { {0x021000, 0x021000}, {0x0257, 0x0257}, RES_SCRIPT }, /* 18 */
- { {0x021800, 0x021800}, {0x0068, 0x0068}, RES_SCRIPT }, /* 19 */
- { {0x022000, 0x022000}, {0x007D, 0x007D}, RES_SCRIPT }, /* 20 */
- { {0x022800, 0x022800}, {0x003B, 0x003B}, RES_SCRIPT }, /* 21 */
- { {0x023000, 0x023000}, {0x017E, 0x0175}, RES_SCRIPT }, /* 22 */
- { {0x023800, 0x023800}, {0x00A8, 0x00A8}, RES_SCRIPT }, /* 23 */
- { {0x024000, 0x024000}, {0x0026, 0x0026}, RES_SCRIPT }, /* 24 */
- { {0x024800, 0x024800}, {0x0028, 0x0028}, RES_SCRIPT }, /* 25 */
- { {0x025000, 0x025000}, {0x00F2, 0x00FD}, RES_SCRIPT }, /* 26 */
- { {0x025800, 0x025800}, {0x00F8, 0x00F8}, RES_SCRIPT }, /* 27 */
- { {0x026000, 0x026000}, {0x002F, 0x002F}, RES_SCRIPT }, /* 28 */
- { {0x026800, 0x026800}, {0x00E9, 0x00E9}, RES_SCRIPT }, /* 29 */
- { {0x027000, 0x027000}, {0x001E, 0x001E}, RES_SCRIPT }, /* 30 */
- { {0x027800, 0x027800}, {0x0304, 0x0304}, RES_SCRIPT }, /* 31 */
- { {0x028000, 0x028000}, {0x001E, 0x001E}, RES_SCRIPT }, /* 32 */
- { {0x028800, 0x028800}, {0x000D, 0x000D}, RES_SCRIPT }, /* 33 */
- { {0x029000, 0x029000}, {0x0028, 0x0028}, RES_SCRIPT }, /* 34 */
- { {0x029800, 0x029800}, {0x008E, 0x0085}, RES_SCRIPT }, /* 35 */
- { {0x02A000, 0x02A000}, {0x00E5, 0x00E5}, RES_SCRIPT }, /* 36 */
- { {0x02A800, 0x02A800}, {0x0015, 0x0015}, RES_SCRIPT }, /* 37 */
- { {0x02B000, 0x02B000}, {0x0025, 0x0025}, RES_SCRIPT }, /* 38 */
- { {0x02B800, 0x02B800}, {0x0060, 0x0060}, RES_SCRIPT }, /* 39 */
- { {0x02C000, 0x02C000}, {0x0046, 0x0046}, RES_SCRIPT }, /* 40 */
- { {0x02C800, 0x02C800}, {0x00A1, 0x00A1}, RES_SCRIPT }, /* 41 */
- { {0x02D000, 0x02D000}, {0x00A9, 0x00A9}, RES_SCRIPT }, /* 42 */
- { {0x02D800, 0x02D800}, {0x0039, 0x0034}, RES_SCRIPT }, /* 43 */
- { {0x03F800, 0x03F800}, {0x0596, 0x0577}, RES_SCRIPT }, /* 44 */
- { {0x040000, 0x040000}, {0x00C7, 0x00C7}, RES_SCRIPT }, /* 45 */
- { {0x089800, 0x089800}, {0x13AC, 0x1487}, RES_SCRIPT }, /* 46 */
- { {0x099000, 0x099000}, {0x0DCD, 0x0D1F}, RES_SCRIPT }, /* 47 */
- { {0x27D800, 0x27D800}, {0x00CF, 0x00CF}, RES_SCRIPT }, /* 48 */
- { {0x0B8800, 0x0B8800}, {0x02D3, 0x02D3}, RES_SCRIPT }, /* 49 */
- { {0x0AD000, 0x0AD000}, {0x0064, 0x0064}, RES_SCRIPT }, /* 50 */
- { {0x0B9000, 0x0B9000}, {0x017F, 0x017F}, RES_SCRIPT }, /* 51 */
- { {0x0B9000, 0x0B9000}, {0x017F, 0x017F}, RES_SCRIPT }, /* 52 */
- { {0x0CB800, 0x0CB800}, {0x02B2, 0x02B2}, RES_SCRIPT }, /* 53 */
- { {0x0DF800, 0x0DF800}, {0x00C7, 0x00C7}, RES_SCRIPT }, /* 54 */
- { {0x0F9800, 0x0F9800}, {0x0052, 0x0052}, RES_SCRIPT }, /* 55 */
- { {0x0F9800, 0x0F9800}, {0x0052, 0x0052}, RES_SCRIPT }, /* 56 */
- { {0x10D800, 0x10D800}, {0x0033, 0x0033}, RES_SCRIPT }, /* 57 */
- { {0x10E000, 0x10E000}, {0x0032, 0x0032}, RES_SCRIPT }, /* 58 */
- { {0x0FA000, 0x0FA000}, {0x0034, 0x0034}, RES_SCRIPT }, /* 59 */
- { {0x10E800, 0x10E800}, {0x0035, 0x0035}, RES_SCRIPT }, /* 60 */
- { {0x0FA800, 0x0FA800}, {0x0033, 0x0033}, RES_SCRIPT }, /* 61 */
- { {0x0FB000, 0x0FB000}, {0x003F, 0x003F}, RES_SCRIPT }, /* 62 */
- { {0x10F000, 0x10F000}, {0x0029, 0x0029}, RES_SCRIPT }, /* 63 */
- { {0x0FB800, 0x0FB800}, {0x006B, 0x0071}, RES_SCRIPT }, /* 64 */
- { {0x104000, 0x104000}, {0x0314, 0x0313}, RES_SCRIPT }, /* 65 */
- { {0x0F1000, 0x0F1000}, {0x0143, 0x0162}, RES_SCRIPT }, /* 66 */
- { {0x11C000, 0x11C000}, {0x010B, 0x011E}, RES_SCRIPT }, /* 67 */
- { {0x263800, 0x263800}, {0x07AD, 0x070C}, RES_SCRIPT }, /* 68 */
- { {0x144800, 0x144800}, {0x07A7, 0x07F5}, RES_SCRIPT }, /* 69 */
- { {0x13B000, 0x13B000}, {0x0179, 0x0179}, RES_SCRIPT }, /* 70 */
- { {0x0FC000, 0x0FC000}, {0x003F, 0x0043}, RES_SCRIPT }, /* 71 */
- { {0x168800, 0x168800}, {0x007B, 0x007B}, RES_SCRIPT }, /* 72 */
- { {0x13B800, 0x13B800}, {0x004A, 0x004A}, RES_SCRIPT }, /* 73 */
- { {0x169000, 0x169000}, {0x00A5, 0x00BA}, RES_SCRIPT }, /* 74 */
- { {0x169800, 0x169800}, {0x0435, 0x0432}, RES_SCRIPT }, /* 75 */
- { {0x16A000, 0x16A000}, {0x008D, 0x008D}, RES_SCRIPT }, /* 76 */
- { {0x179800, 0x179800}, {0x004A, 0x004A}, RES_SCRIPT }, /* 77 */
- { {0x285000, 0x285000}, {0x00C4, 0x00C4}, RES_SCRIPT }, /* 78 */
- { {0x186800, 0x186800}, {0x0091, 0x0091}, RES_SCRIPT }, /* 79 */
- { {0x187000, 0x187000}, {0x004D, 0x004D}, RES_SCRIPT }, /* 80 */
- { {0x17A000, 0x17A000}, {0x0052, 0x0052}, RES_SCRIPT }, /* 81 */
- { {0x17E800, 0x17E800}, {0x00AA, 0x00A3}, RES_SCRIPT }, /* 82 */
- { {0x17F000, 0x17F000}, {0x003E, 0x003E}, RES_SCRIPT }, /* 83 */
- { {0x17F800, 0x17F800}, {0x0041, 0x0041}, RES_SCRIPT }, /* 84 */
- { {0x1A4800, 0x1A4800}, {0x05BF, 0x05C6}, RES_SCRIPT }, /* 85 */
- { {0x1CC000, 0x1CC000}, {0x0572, 0x0571}, RES_SCRIPT }, /* 86 */
- { {0x1D6800, 0x1D6800}, {0x09DA, 0x0A3B}, RES_SCRIPT }, /* 87 */
- { {0x1A5000, 0x1A5000}, {0x051D, 0x055F}, RES_SCRIPT }, /* 88 */
- { {0x0B9800, 0x0B9800}, {0x0080, 0x0080}, RES_SCRIPT }, /* 89 */
- { {0x1FB800, 0x1FB800}, {0x0786, 0x06BC}, RES_SCRIPT }, /* 90 */
- { {0x1FC000, 0x1FC000}, {0x0ECA, 0x0D99}, RES_SCRIPT }, /* 91 */
- { {0x1FD000, 0x1FD000}, {0x0031, 0x0031}, RES_SCRIPT }, /* 92 */
- { {0x1FD800, 0x1FD800}, {0x061D, 0x060E}, RES_SCRIPT }, /* 93 */
- { {0x104800, 0x104800}, {0x0144, 0x0144}, RES_SCRIPT }, /* 94 */
- { {0x20B000, 0x20B000}, {0x078B, 0x0769}, RES_SCRIPT }, /* 95 */
- { {0x213800, 0x213800}, {0x00F3, 0x00F7}, RES_SCRIPT }, /* 96 */
- { {0x1A5800, 0x1A5800}, {0x004A, 0x004A}, RES_SCRIPT }, /* 97 */
- { {0x1A6000, 0x1A6000}, {0x064D, 0x05DC}, RES_SCRIPT }, /* 98 */
- { {0x240800, 0x240800}, {0x0538, 0x05BD}, RES_SCRIPT }, /* 99 */
- { {0x235800, 0x235000}, {0x0A78, 0x0A64}, RES_SCRIPT }, /* 100 */
- { {0x09A000, 0x09A000}, {0x08F2, 0x0832}, RES_SCRIPT }, /* 101 */
- { {0x24E800, 0x24E800}, {0x00DF, 0x00D1}, RES_SCRIPT }, /* 102 */
- { {0x24F000, 0x24F000}, {0x0080, 0x0079}, RES_SCRIPT }, /* 103 */
- { {0x24F800, 0x24F800}, {0x06E6, 0x0734}, RES_SCRIPT }, /* 104 */
- { {0x09B000, 0x09B000}, {0x0225, 0x022E}, RES_SCRIPT }, /* 105 */
- { {0x28D800, 0x28D800}, {0x051E, 0x051C}, RES_SCRIPT }, /* 106 */
- { {0x0AD800, 0x0AD800}, {0x00C9, 0x00C9}, RES_SCRIPT }, /* 107 */
- { {0x11C800, 0x11C800}, {0x04DF, 0x055C}, RES_SCRIPT }, /* 108 */
- { {0x16A800, 0x16A800}, {0x03B4, 0x033A}, RES_SCRIPT }, /* 109 */
- { {0x241000, 0x241000}, {0x0062, 0x0062}, RES_SCRIPT }, /* 110 */
- { {0x2B3800, 0x2B3800}, {0x0100, 0x0100}, RES_SCRIPT }, /* 111 */
- { {0x1A6800, 0x1A6800}, {0x008E, 0x008C}, RES_SCRIPT }, /* 112 */
- { {0x040800, 0x040800}, {0x007B, 0x007B}, RES_SCRIPT }, /* 113 */
- { {0x041000, 0x041000}, {0x008B, 0x008B}, RES_SCRIPT }, /* 114 */
- { {0x28E000, 0x28E000}, {0x002D, 0x002D}, RES_SCRIPT }, /* 115 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT } /* 0 */
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x019000, 0x019000}, {0x01F8, 0x01C0}, RES_SCRIPT }, // 1
+ { {0x019800, 0x019800}, {0x0030, 0x0030}, RES_SCRIPT }, // 2
+ { {0x01A000, 0x01A000}, {0x002F, 0x002F}, RES_SCRIPT }, // 3
+ { {0x2A6800, 0x2A6800}, {0x0091, 0x0091}, RES_SCRIPT }, // 4
+ { {0x01A800, 0x01A800}, {0x023F, 0x023F}, RES_SCRIPT }, // 5
+ { {0x01B000, 0x01B000}, {0x01C9, 0x01C9}, RES_SCRIPT }, // 6
+ { {0x01B800, 0x01B800}, {0x0058, 0x0058}, RES_SCRIPT }, // 7
+ { {0x01C000, 0x01C000}, {0x0064, 0x0064}, RES_SCRIPT }, // 8
+ { {0x01C800, 0x01C800}, {0x0080, 0x0080}, RES_SCRIPT }, // 9
+ { {0x01D000, 0x01D000}, {0x005B, 0x005B}, RES_SCRIPT }, // 10
+ { {0x01D800, 0x01D800}, {0x0072, 0x007E}, RES_SCRIPT }, // 11
+ { {0x01E000, 0x01E000}, {0x0055, 0x0053}, RES_SCRIPT }, // 12
+ { {0x01E800, 0x01E800}, {0x005D, 0x0054}, RES_SCRIPT }, // 13
+ { {0x01F000, 0x01F000}, {0x003C, 0x003C}, RES_SCRIPT }, // 14
+ { {0x01F800, 0x01F800}, {0x0025, 0x0025}, RES_SCRIPT }, // 15
+ { {0x020000, 0x020000}, {0x0014, 0x0014}, RES_SCRIPT }, // 16
+ { {0x020800, 0x020800}, {0x00E7, 0x00E7}, RES_SCRIPT }, // 17
+ { {0x021000, 0x021000}, {0x0257, 0x0257}, RES_SCRIPT }, // 18
+ { {0x021800, 0x021800}, {0x0068, 0x0068}, RES_SCRIPT }, // 19
+ { {0x022000, 0x022000}, {0x007D, 0x007D}, RES_SCRIPT }, // 20
+ { {0x022800, 0x022800}, {0x003B, 0x003B}, RES_SCRIPT }, // 21
+ { {0x023000, 0x023000}, {0x017E, 0x0175}, RES_SCRIPT }, // 22
+ { {0x023800, 0x023800}, {0x00A8, 0x00A8}, RES_SCRIPT }, // 23
+ { {0x024000, 0x024000}, {0x0026, 0x0026}, RES_SCRIPT }, // 24
+ { {0x024800, 0x024800}, {0x0028, 0x0028}, RES_SCRIPT }, // 25
+ { {0x025000, 0x025000}, {0x00F2, 0x00FD}, RES_SCRIPT }, // 26
+ { {0x025800, 0x025800}, {0x00F8, 0x00F8}, RES_SCRIPT }, // 27
+ { {0x026000, 0x026000}, {0x002F, 0x002F}, RES_SCRIPT }, // 28
+ { {0x026800, 0x026800}, {0x00E9, 0x00E9}, RES_SCRIPT }, // 29
+ { {0x027000, 0x027000}, {0x001E, 0x001E}, RES_SCRIPT }, // 30
+ { {0x027800, 0x027800}, {0x0304, 0x0304}, RES_SCRIPT }, // 31
+ { {0x028000, 0x028000}, {0x001E, 0x001E}, RES_SCRIPT }, // 32
+ { {0x028800, 0x028800}, {0x000D, 0x000D}, RES_SCRIPT }, // 33
+ { {0x029000, 0x029000}, {0x0028, 0x0028}, RES_SCRIPT }, // 34
+ { {0x029800, 0x029800}, {0x008E, 0x0085}, RES_SCRIPT }, // 35
+ { {0x02A000, 0x02A000}, {0x00E5, 0x00E5}, RES_SCRIPT }, // 36
+ { {0x02A800, 0x02A800}, {0x0015, 0x0015}, RES_SCRIPT }, // 37
+ { {0x02B000, 0x02B000}, {0x0025, 0x0025}, RES_SCRIPT }, // 38
+ { {0x02B800, 0x02B800}, {0x0060, 0x0060}, RES_SCRIPT }, // 39
+ { {0x02C000, 0x02C000}, {0x0046, 0x0046}, RES_SCRIPT }, // 40
+ { {0x02C800, 0x02C800}, {0x00A1, 0x00A1}, RES_SCRIPT }, // 41
+ { {0x02D000, 0x02D000}, {0x00A9, 0x00A9}, RES_SCRIPT }, // 42
+ { {0x02D800, 0x02D800}, {0x0039, 0x0034}, RES_SCRIPT }, // 43
+ { {0x03F800, 0x03F800}, {0x0596, 0x0577}, RES_SCRIPT }, // 44
+ { {0x040000, 0x040000}, {0x00C7, 0x00C7}, RES_SCRIPT }, // 45
+ { {0x089800, 0x089800}, {0x13AC, 0x1487}, RES_SCRIPT }, // 46
+ { {0x099000, 0x099000}, {0x0DCD, 0x0D1F}, RES_SCRIPT }, // 47
+ { {0x27D800, 0x27D800}, {0x00CF, 0x00CF}, RES_SCRIPT }, // 48
+ { {0x0B8800, 0x0B8800}, {0x02D3, 0x02D3}, RES_SCRIPT }, // 49
+ { {0x0AD000, 0x0AD000}, {0x0064, 0x0064}, RES_SCRIPT }, // 50
+ { {0x0B9000, 0x0B9000}, {0x017F, 0x017F}, RES_SCRIPT }, // 51
+ { {0x0B9000, 0x0B9000}, {0x017F, 0x017F}, RES_SCRIPT }, // 52
+ { {0x0CB800, 0x0CB800}, {0x02B2, 0x02B2}, RES_SCRIPT }, // 53
+ { {0x0DF800, 0x0DF800}, {0x00C7, 0x00C7}, RES_SCRIPT }, // 54
+ { {0x0F9800, 0x0F9800}, {0x0052, 0x0052}, RES_SCRIPT }, // 55
+ { {0x0F9800, 0x0F9800}, {0x0052, 0x0052}, RES_SCRIPT }, // 56
+ { {0x10D800, 0x10D800}, {0x0033, 0x0033}, RES_SCRIPT }, // 57
+ { {0x10E000, 0x10E000}, {0x0032, 0x0032}, RES_SCRIPT }, // 58
+ { {0x0FA000, 0x0FA000}, {0x0034, 0x0034}, RES_SCRIPT }, // 59
+ { {0x10E800, 0x10E800}, {0x0035, 0x0035}, RES_SCRIPT }, // 60
+ { {0x0FA800, 0x0FA800}, {0x0033, 0x0033}, RES_SCRIPT }, // 61
+ { {0x0FB000, 0x0FB000}, {0x003F, 0x003F}, RES_SCRIPT }, // 62
+ { {0x10F000, 0x10F000}, {0x0029, 0x0029}, RES_SCRIPT }, // 63
+ { {0x0FB800, 0x0FB800}, {0x006B, 0x0071}, RES_SCRIPT }, // 64
+ { {0x104000, 0x104000}, {0x0314, 0x0313}, RES_SCRIPT }, // 65
+ { {0x0F1000, 0x0F1000}, {0x0143, 0x0162}, RES_SCRIPT }, // 66
+ { {0x11C000, 0x11C000}, {0x010B, 0x011E}, RES_SCRIPT }, // 67
+ { {0x263800, 0x263800}, {0x07AD, 0x070C}, RES_SCRIPT }, // 68
+ { {0x144800, 0x144800}, {0x07A7, 0x07F5}, RES_SCRIPT }, // 69
+ { {0x13B000, 0x13B000}, {0x0179, 0x0179}, RES_SCRIPT }, // 70
+ { {0x0FC000, 0x0FC000}, {0x003F, 0x0043}, RES_SCRIPT }, // 71
+ { {0x168800, 0x168800}, {0x007B, 0x007B}, RES_SCRIPT }, // 72
+ { {0x13B800, 0x13B800}, {0x004A, 0x004A}, RES_SCRIPT }, // 73
+ { {0x169000, 0x169000}, {0x00A5, 0x00BA}, RES_SCRIPT }, // 74
+ { {0x169800, 0x169800}, {0x0435, 0x0432}, RES_SCRIPT }, // 75
+ { {0x16A000, 0x16A000}, {0x008D, 0x008D}, RES_SCRIPT }, // 76
+ { {0x179800, 0x179800}, {0x004A, 0x004A}, RES_SCRIPT }, // 77
+ { {0x285000, 0x285000}, {0x00C4, 0x00C4}, RES_SCRIPT }, // 78
+ { {0x186800, 0x186800}, {0x0091, 0x0091}, RES_SCRIPT }, // 79
+ { {0x187000, 0x187000}, {0x004D, 0x004D}, RES_SCRIPT }, // 80
+ { {0x17A000, 0x17A000}, {0x0052, 0x0052}, RES_SCRIPT }, // 81
+ { {0x17E800, 0x17E800}, {0x00AA, 0x00A3}, RES_SCRIPT }, // 82
+ { {0x17F000, 0x17F000}, {0x003E, 0x003E}, RES_SCRIPT }, // 83
+ { {0x17F800, 0x17F800}, {0x0041, 0x0041}, RES_SCRIPT }, // 84
+ { {0x1A4800, 0x1A4800}, {0x05BF, 0x05C6}, RES_SCRIPT }, // 85
+ { {0x1CC000, 0x1CC000}, {0x0572, 0x0571}, RES_SCRIPT }, // 86
+ { {0x1D6800, 0x1D6800}, {0x09DA, 0x0A3B}, RES_SCRIPT }, // 87
+ { {0x1A5000, 0x1A5000}, {0x051D, 0x055F}, RES_SCRIPT }, // 88
+ { {0x0B9800, 0x0B9800}, {0x0080, 0x0080}, RES_SCRIPT }, // 89
+ { {0x1FB800, 0x1FB800}, {0x0786, 0x06BC}, RES_SCRIPT }, // 90
+ { {0x1FC000, 0x1FC000}, {0x0ECA, 0x0D99}, RES_SCRIPT }, // 91
+ { {0x1FD000, 0x1FD000}, {0x0031, 0x0031}, RES_SCRIPT }, // 92
+ { {0x1FD800, 0x1FD800}, {0x061D, 0x060E}, RES_SCRIPT }, // 93
+ { {0x104800, 0x104800}, {0x0144, 0x0144}, RES_SCRIPT }, // 94
+ { {0x20B000, 0x20B000}, {0x078B, 0x0769}, RES_SCRIPT }, // 95
+ { {0x213800, 0x213800}, {0x00F3, 0x00F7}, RES_SCRIPT }, // 96
+ { {0x1A5800, 0x1A5800}, {0x004A, 0x004A}, RES_SCRIPT }, // 97
+ { {0x1A6000, 0x1A6000}, {0x064D, 0x05DC}, RES_SCRIPT }, // 98
+ { {0x240800, 0x240800}, {0x0538, 0x05BD}, RES_SCRIPT }, // 99
+ { {0x235800, 0x235000}, {0x0A78, 0x0A64}, RES_SCRIPT }, // 100
+ { {0x09A000, 0x09A000}, {0x08F2, 0x0832}, RES_SCRIPT }, // 101
+ { {0x24E800, 0x24E800}, {0x00DF, 0x00D1}, RES_SCRIPT }, // 102
+ { {0x24F000, 0x24F000}, {0x0080, 0x0079}, RES_SCRIPT }, // 103
+ { {0x24F800, 0x24F800}, {0x06E6, 0x0734}, RES_SCRIPT }, // 104
+ { {0x09B000, 0x09B000}, {0x0225, 0x022E}, RES_SCRIPT }, // 105
+ { {0x28D800, 0x28D800}, {0x051E, 0x051C}, RES_SCRIPT }, // 106
+ { {0x0AD800, 0x0AD800}, {0x00C9, 0x00C9}, RES_SCRIPT }, // 107
+ { {0x11C800, 0x11C800}, {0x04DF, 0x055C}, RES_SCRIPT }, // 108
+ { {0x16A800, 0x16A800}, {0x03B4, 0x033A}, RES_SCRIPT }, // 109
+ { {0x241000, 0x241000}, {0x0062, 0x0062}, RES_SCRIPT }, // 110
+ { {0x2B3800, 0x2B3800}, {0x0100, 0x0100}, RES_SCRIPT }, // 111
+ { {0x1A6800, 0x1A6800}, {0x008E, 0x008C}, RES_SCRIPT }, // 112
+ { {0x040800, 0x040800}, {0x007B, 0x007B}, RES_SCRIPT }, // 113
+ { {0x041000, 0x041000}, {0x008B, 0x008B}, RES_SCRIPT }, // 114
+ { {0x28E000, 0x28E000}, {0x002D, 0x002D}, RES_SCRIPT }, // 115
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SCRIPT } // 0
};
#define NUM_COSTUMES 200
t_resource res_costumes[NUM_COSTUMES] = {
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x02E000, 0x02E000}, {0x53A5, 0x53A5}, RES_COSTUME }, /* 1 */
- { {0x033800, 0x033800}, {0x2148, 0x2148}, RES_COSTUME }, /* 2 */
- { {0x036000, 0x036000}, {0x0B6E, 0x0B6E}, RES_COSTUME }, /* 3 */
- { {0x29A800, 0x29A800}, {0x597A, 0x597A}, RES_COSTUME }, /* 4 */
- { {0x2A0800, 0x2A0800}, {0x01CC, 0x01CC}, RES_COSTUME }, /* 5 */
- { {0x25C000, 0x25C000}, {0x0812, 0x0812}, RES_COSTUME }, /* 6 */
- { {0x25A000, 0x25A000}, {0x1875, 0x1875}, RES_COSTUME }, /* 7 */
- { {0x042000, 0x042000}, {0x011A, 0x011A}, RES_COSTUME }, /* 8 */
- { {0x050800, 0x050800}, {0x0332, 0x0332}, RES_COSTUME }, /* 9 */
- { {0x050000, 0x050000}, {0x06BD, 0x06BD}, RES_COSTUME }, /* 10 */
- { {0x051000, 0x051000}, {0x0303, 0x0303}, RES_COSTUME }, /* 11 */
- { {0x064000, 0x064000}, {0x0D55, 0x0D55}, RES_COSTUME }, /* 12 */
- { {0x059800, 0x059800}, {0x1090, 0x1090}, RES_COSTUME }, /* 13 */
- { {0x05B000, 0x05B000}, {0x03A2, 0x03A2}, RES_COSTUME }, /* 14 */
- { {0x0AE000, 0x0AE000}, {0x17DA, 0x17DA}, RES_COSTUME }, /* 15 */
- { {0x0AF800, 0x0AF800}, {0x1750, 0x1750}, RES_COSTUME }, /* 16 */
- { {0x0C2800, 0x0C2800}, {0x1568, 0x1568}, RES_COSTUME }, /* 17 */
- { {0x0B1000, 0x0B1000}, {0x1783, 0x1783}, RES_COSTUME }, /* 18 */
- { {0x0C0800, 0x0C0800}, {0x1CA8, 0x1CA8}, RES_COSTUME }, /* 19 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 20 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 21 */
- { {0x0BA000, 0x0BA000}, {0x0DD6, 0x0DD6}, RES_COSTUME }, /* 22 */
- { {0x0BC000, 0x0BC000}, {0x083E, 0x083E}, RES_COSTUME }, /* 23 */
- { {0x06C000, 0x06C000}, {0x051D, 0x051D}, RES_COSTUME }, /* 24 */
- { {0x06C800, 0x06C800}, {0x0162, 0x0162}, RES_COSTUME }, /* 25 */
- { {0x27B800, 0x27B800}, {0x0765, 0x0765}, RES_COSTUME }, /* 26 */
- { {0x08B000, 0x08B000}, {0x0430, 0x0430}, RES_COSTUME }, /* 27 */
- { {0x08B800, 0x08B800}, {0x041E, 0x041E}, RES_COSTUME }, /* 28 */
- { {0x08C000, 0x08C000}, {0x0312, 0x0312}, RES_COSTUME }, /* 29 */
- { {0x07C800, 0x07C800}, {0x0A08, 0x0A08}, RES_COSTUME }, /* 30 */
- { {0x07D800, 0x07D800}, {0x0A1D, 0x0A1D}, RES_COSTUME }, /* 31 */
- { {0x07E800, 0x07E800}, {0x0F46, 0x0F46}, RES_COSTUME }, /* 32 */
- { {0x07F800, 0x07F800}, {0x00EA, 0x00EA}, RES_COSTUME }, /* 33 */
- { {0x08C800, 0x08C800}, {0x572B, 0x572B}, RES_COSTUME }, /* 34 */
- { {0x092000, 0x092000}, {0x0224, 0x0224}, RES_COSTUME }, /* 35 */
- { {0x290800, 0x290800}, {0x03FB, 0x03FB}, RES_COSTUME }, /* 36 */
- { {0x09C000, 0x09C000}, {0x076A, 0x076A}, RES_COSTUME }, /* 37 */
- { {0x09C800, 0x09C800}, {0x0B11, 0x0B11}, RES_COSTUME }, /* 38 */
- { {0x09D800, 0x09D800}, {0x0DB1, 0x0DB1}, RES_COSTUME }, /* 39 */
- { {0x09E800, 0x09E800}, {0x0549, 0x0549}, RES_COSTUME }, /* 40 */
- { {0x09F000, 0x09F000}, {0x098F, 0x098F}, RES_COSTUME }, /* 41 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 42 */
- { {0x0A0000, 0x0A0000}, {0x0672, 0x0672}, RES_COSTUME }, /* 43 */
- { {0x0A0800, 0x0A0800}, {0x062F, 0x062F}, RES_COSTUME }, /* 44 */
- { {0x070000, 0x070000}, {0x2A71, 0x2A71}, RES_COSTUME }, /* 45 */
- { {0x073000, 0x073000}, {0x25C7, 0x25C7}, RES_COSTUME }, /* 46 */
- { {0x075800, 0x075800}, {0x48F5, 0x48F5}, RES_COSTUME }, /* 47 */
- { {0x07A800, 0x07A800}, {0x1D7C, 0x1D7C}, RES_COSTUME }, /* 48 */
- { {0x0A1000, 0x0A1000}, {0x0940, 0x0940}, RES_COSTUME }, /* 49 */
- { {0x0A2000, 0x0A2000}, {0x03AF, 0x03AF}, RES_COSTUME }, /* 50 */
- { {0x09B800, 0x09B800}, {0x019A, 0x019A}, RES_COSTUME }, /* 51 */
- { {0x2AC000, 0x2AC000}, {0x0FCD, 0x0FCD}, RES_COSTUME }, /* 52 */
- { {0x0A2800, 0x0A2800}, {0x114D, 0x114D}, RES_COSTUME }, /* 53 */
- { {0x0A4000, 0x0A4000}, {0x1F95, 0x1F95}, RES_COSTUME }, /* 54 */
- { {0x0CC800, 0x0CC800}, {0x0530, 0x0530}, RES_COSTUME }, /* 55 */
- { {0x0CD000, 0x0CD000}, {0x027E, 0x027E}, RES_COSTUME }, /* 56 */
- { {0x0CD800, 0x0CD800}, {0x02EF, 0x02EF}, RES_COSTUME }, /* 57 */
- { {0x0CE000, 0x0CE000}, {0x022E, 0x022E}, RES_COSTUME }, /* 58 */
- { {0x0CE800, 0x0CE800}, {0x2FBF, 0x2FBF}, RES_COSTUME }, /* 59 */
- { {0x0D6000, 0x0D6000}, {0x2419, 0x2419}, RES_COSTUME }, /* 60 */
- { {0x0D8800, 0x0D8800}, {0x0D67, 0x0D67}, RES_COSTUME }, /* 61 */
- { {0x0E0000, 0x0E0000}, {0x106D, 0x106D}, RES_COSTUME }, /* 62 */
- { {0x0E1800, 0x0E1800}, {0x00F3, 0x00F3}, RES_COSTUME }, /* 63 */
- { {0x127000, 0x127000}, {0x2196, 0x2196}, RES_COSTUME }, /* 64 */
- { {0x13C800, 0x13C800}, {0x23FF, 0x23FF}, RES_COSTUME }, /* 65 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 66 */
- { {0x13F000, 0x13F000}, {0x0684, 0x0684}, RES_COSTUME }, /* 67 */
- { {0x145000, 0x145000}, {0x1DE1, 0x1DE1}, RES_COSTUME }, /* 68 */
- { {0x147000, 0x147000}, {0x010A, 0x010A}, RES_COSTUME }, /* 69 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 70 */
- { {0x0FC800, 0x0FC800}, {0x0E90, 0x0E90}, RES_COSTUME }, /* 71 */
- { {0x10F800, 0x10F800}, {0x0AC9, 0x0AC9}, RES_COSTUME }, /* 72 */
- { {0x0F1800, 0x0F1800}, {0x2667, 0x2667}, RES_COSTUME }, /* 73 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 74 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 75 */
- { {0x15A000, 0x15A000}, {0x14C4, 0x14C4}, RES_COSTUME }, /* 76 */
- { {0x16B000, 0x16B000}, {0x25C9, 0x25C9}, RES_COSTUME }, /* 77 */
- { {0x18E000, 0x18E000}, {0x4D0D, 0x4D0D}, RES_COSTUME }, /* 78 */
- { {0x1EB000, 0x1EB000}, {0x4760, 0x4760}, RES_COSTUME }, /* 79 */
- { {0x0BB000, 0x0BB000}, {0x01C3, 0x01C3}, RES_COSTUME }, /* 80 */
- { {0x0BB800, 0x0BB800}, {0x00A1, 0x00A1}, RES_COSTUME }, /* 81 */
- { {0x0BE000, 0x0BE000}, {0x01C5, 0x01C5}, RES_COSTUME }, /* 82 */
- { {0x148000, 0x148000}, {0x1CAA, 0x1CAA}, RES_COSTUME }, /* 83 */
- { {0x1E9800, 0x1E9800}, {0x1129, 0x1129}, RES_COSTUME }, /* 84 */
- { {0x11D000, 0x11D000}, {0x09BB, 0x09BB}, RES_COSTUME }, /* 85 */
- { {0x0EB000, 0x0EB000}, {0x01D3, 0x01D3}, RES_COSTUME }, /* 86 */
- { {0x042800, 0x042800}, {0x2ECA, 0x2ECA}, RES_COSTUME }, /* 87 */
- { {0x110800, 0x110800}, {0x19DE, 0x19DE}, RES_COSTUME }, /* 88 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 89 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 90 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 91 */
- { {0x129800, 0x129800}, {0x2B6F, 0x2B6F}, RES_COSTUME }, /* 92 */
- { {0x147800, 0x147800}, {0x00F9, 0x00F9}, RES_COSTUME }, /* 93 */
- { {0x1A7000, 0x1A7000}, {0x0255, 0x0255}, RES_COSTUME }, /* 94 */
- { {0x126800, 0x126800}, {0x0327, 0x0327}, RES_COSTUME }, /* 95 */
- { {0x16D800, 0x16D800}, {0x0C15, 0x0C15}, RES_COSTUME }, /* 96 */
- { {0x1C4800, 0x1C4800}, {0x0489, 0x0489}, RES_COSTUME }, /* 97 */
- { {0x17A800, 0x17A800}, {0x05A3, 0x05A3}, RES_COSTUME }, /* 98 */
- { {0x180000, 0x180000}, {0x1DCC, 0x1DCC}, RES_COSTUME }, /* 99 */
- { {0x182800, 0x182800}, {0x0636, 0x0636}, RES_COSTUME }, /* 100 */
- { {0x183000, 0x183000}, {0x0719, 0x0719}, RES_COSTUME }, /* 101 */
- { {0x214000, 0x214000}, {0x5207, 0x5207}, RES_COSTUME }, /* 102 */
- { {0x1B2000, 0x1B2000}, {0x4713, 0x4713}, RES_COSTUME }, /* 103 */
- { {0x1C2000, 0x1C2000}, {0x2004, 0x2004}, RES_COSTUME }, /* 104 */
- { {0x1B6800, 0x1B6800}, {0x10A0, 0x10A0}, RES_COSTUME }, /* 105 */
- { {0x1B8000, 0x1B8000}, {0x0A21, 0x0A21}, RES_COSTUME }, /* 106 */
- { {0x1C6000, 0x1C6000}, {0x0D31, 0x0D31}, RES_COSTUME }, /* 107 */
- { {0x1C5000, 0x1C5000}, {0x059D, 0x059D}, RES_COSTUME }, /* 108 */
- { {0x1C5800, 0x1C5800}, {0x0417, 0x0417}, RES_COSTUME }, /* 109 */
- { {0x1CC800, 0x1CC800}, {0x453E, 0x453E}, RES_COSTUME }, /* 110 */
- { {0x1E8800, 0x1E8800}, {0x0AEB, 0x0AEB}, RES_COSTUME }, /* 111 */
- { {0x1A8800, 0x1A8800}, {0x0E7B, 0x0E7B}, RES_COSTUME }, /* 112 */
- { {0x1FE000, 0x1FE000}, {0x2024, 0x2024}, RES_COSTUME }, /* 113 */
- { {0x1D1000, 0x1D1000}, {0x0393, 0x0393}, RES_COSTUME }, /* 114 */
- { {0x1D1800, 0x1D1800}, {0x03F2, 0x03F2}, RES_COSTUME }, /* 115 */
- { {0x200800, 0x200800}, {0x0EEF, 0x0EEF}, RES_COSTUME }, /* 116 */
- { {0x297800, 0x297800}, {0x0885, 0x0885}, RES_COSTUME }, /* 117 */
- { {0x1A8000, 0x1A8000}, {0x0430, 0x0430}, RES_COSTUME }, /* 118 */
- { {0x1AA800, 0x1AA800}, {0x09C3, 0x09C3}, RES_COSTUME }, /* 119 */
- { {0x193000, 0x193000}, {0x3D45, 0x3D45}, RES_COSTUME }, /* 120 */
- { {0x1D7800, 0x1D7800}, {0x0940, 0x0940}, RES_COSTUME }, /* 121 */
- { {0x222000, 0x222000}, {0x08D6, 0x08D6}, RES_COSTUME }, /* 122 */
- { {0x221000, 0x221000}, {0x0E93, 0x0E93}, RES_COSTUME }, /* 123 */
- { {0x238000, 0x237800}, {0x219E, 0x219E}, RES_COSTUME }, /* 124 */
- { {0x28E800, 0x28E800}, {0x19A3, 0x19A3}, RES_COSTUME }, /* 125 */
- { {0x1F4000, 0x1F4000}, {0x09E4, 0x09E4}, RES_COSTUME }, /* 126 */
- { {0x153800, 0x153800}, {0x0F9A, 0x0F9A}, RES_COSTUME }, /* 127 */
- { {0x241800, 0x241800}, {0x09D2, 0x09D2}, RES_COSTUME }, /* 128 */
- { {0x112800, 0x112800}, {0x3220, 0x3220}, RES_COSTUME }, /* 129 */
- { {0x223000, 0x223000}, {0xBA55, 0xBA55}, RES_COSTUME }, /* 130 */
- { {0x237000, 0x236800}, {0x07B4, 0x07B4}, RES_COSTUME }, /* 131 */
- { {0x201800, 0x201800}, {0x12EF, 0x12EF}, RES_COSTUME }, /* 132 */
- { {0x219800, 0x219800}, {0x1B71, 0x1B71}, RES_COSTUME }, /* 133 */
- { {0x20B800, 0x20B800}, {0x3BAA, 0x3BAA}, RES_COSTUME }, /* 134 */
- { {0x1B9000, 0x1B9000}, {0x050F, 0x050F}, RES_COSTUME }, /* 135 */
- { {0x2A7000, 0x2A7000}, {0x00BF, 0x00BF}, RES_COSTUME }, /* 136 */
- { {0x14A000, 0x14A000}, {0x03EE, 0x03EE}, RES_COSTUME }, /* 137 */
- { {0x2AD000, 0x2AD000}, {0x0DC9, 0x0DC9}, RES_COSTUME }, /* 138 */
- { {0x047000, 0x047000}, {0x11A4, 0x11A4}, RES_COSTUME }, /* 139 */
- { {0x045800, 0x045800}, {0x17BD, 0x17BD}, RES_COSTUME }, /* 140 */
- { {0x041800, 0x041800}, {0x01CF, 0x01CF}, RES_COSTUME }, /* 141 */
- { {0x13C000, 0x13C000}, {0x028F, 0x028F}, RES_COSTUME }, /* 142 */
- { {0x06F800, 0x06F800}, {0x01DD, 0x01DD}, RES_COSTUME }, /* 143 */
- { {0x2AB000, 0x2AB000}, {0x08FD, 0x08FD}, RES_COSTUME }, /* 144 */
- { {0x204000, 0x204000}, {0x269E, 0x269E}, RES_COSTUME }, /* 145 */
- { {0x1A7800, 0x1A7800}, {0x05D8, 0x05D8}, RES_COSTUME }, /* 146 */
- { {0x254800, 0x254800}, {0x1291, 0x1291}, RES_COSTUME }, /* 147 */
- { {0x273000, 0x273000}, {0x2866, 0x2866}, RES_COSTUME }, /* 148 */
- { {0x236800, 0x236000}, {0x016A, 0x016A}, RES_COSTUME }, /* 149 */
- { {0x048800, 0x048800}, {0x2DFF, 0x2DFF}, RES_COSTUME }, /* 150 */
- { {0x182000, 0x182000}, {0x0687, 0x0687}, RES_COSTUME }, /* 151 */
- { {0x1A9800, 0x1A9800}, {0x0C18, 0x0C18}, RES_COSTUME }, /* 152 */
- { {0x1DF800, 0x1DF800}, {0x10D1, 0x10D1}, RES_COSTUME }, /* 153 */
- { {0x105000, 0x105000}, {0x095E, 0x095E}, RES_COSTUME }, /* 154 */
- { {0x106000, 0x106000}, {0x0155, 0x0155}, RES_COSTUME }, /* 155 */
- { {0x1F3800, 0x1F3800}, {0x01AE, 0x01AE}, RES_COSTUME }, /* 156 */
- { {0x203000, 0x203000}, {0x086B, 0x086B}, RES_COSTUME }, /* 157 */
- { {0x21B800, 0x21B800}, {0x0940, 0x0940}, RES_COSTUME }, /* 158 */
- { {0x106800, 0x106800}, {0x0752, 0x0752}, RES_COSTUME }, /* 159 */
- { {0x107000, 0x107000}, {0x0840, 0x0840}, RES_COSTUME }, /* 160 */
- { {0x237800, 0x237000}, {0x0696, 0x0696}, RES_COSTUME }, /* 161 */
- { {0x116000, 0x116000}, {0x03EB, 0x03EB}, RES_COSTUME }, /* 162 */
- { {0x108000, 0x108000}, {0x0C15, 0x0C15}, RES_COSTUME }, /* 163 */
- { {0x037000, 0x037000}, {0x00EE, 0x00EE}, RES_COSTUME }, /* 164 */
- { {0x154800, 0x154800}, {0x09D0, 0x09D0}, RES_COSTUME }, /* 165 */
- { {0x12C800, 0x12C800}, {0x00F3, 0x00F3}, RES_COSTUME }, /* 166 */
- { {0x0CC000, 0x0CC000}, {0x01C5, 0x01C5}, RES_COSTUME }, /* 167 */
- { {0x0BD000, 0x0BD000}, {0x09C3, 0x09C3}, RES_COSTUME }, /* 168 */
- { {0x0B2800, 0x0B2800}, {0x1040, 0x1040}, RES_COSTUME }, /* 169 */
- { {0x0B4000, 0x0B4000}, {0x0208, 0x0208}, RES_COSTUME }, /* 170 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME } /* 0 */
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x02E000, 0x02E000}, {0x53A5, 0x53A5}, RES_COSTUME }, // 1
+ { {0x033800, 0x033800}, {0x2148, 0x2148}, RES_COSTUME }, // 2
+ { {0x036000, 0x036000}, {0x0B6E, 0x0B6E}, RES_COSTUME }, // 3
+ { {0x29A800, 0x29A800}, {0x597A, 0x597A}, RES_COSTUME }, // 4
+ { {0x2A0800, 0x2A0800}, {0x01CC, 0x01CC}, RES_COSTUME }, // 5
+ { {0x25C000, 0x25C000}, {0x0812, 0x0812}, RES_COSTUME }, // 6
+ { {0x25A000, 0x25A000}, {0x1875, 0x1875}, RES_COSTUME }, // 7
+ { {0x042000, 0x042000}, {0x011A, 0x011A}, RES_COSTUME }, // 8
+ { {0x050800, 0x050800}, {0x0332, 0x0332}, RES_COSTUME }, // 9
+ { {0x050000, 0x050000}, {0x06BD, 0x06BD}, RES_COSTUME }, // 10
+ { {0x051000, 0x051000}, {0x0303, 0x0303}, RES_COSTUME }, // 11
+ { {0x064000, 0x064000}, {0x0D55, 0x0D55}, RES_COSTUME }, // 12
+ { {0x059800, 0x059800}, {0x1090, 0x1090}, RES_COSTUME }, // 13
+ { {0x05B000, 0x05B000}, {0x03A2, 0x03A2}, RES_COSTUME }, // 14
+ { {0x0AE000, 0x0AE000}, {0x17DA, 0x17DA}, RES_COSTUME }, // 15
+ { {0x0AF800, 0x0AF800}, {0x1750, 0x1750}, RES_COSTUME }, // 16
+ { {0x0C2800, 0x0C2800}, {0x1568, 0x1568}, RES_COSTUME }, // 17
+ { {0x0B1000, 0x0B1000}, {0x1783, 0x1783}, RES_COSTUME }, // 18
+ { {0x0C0800, 0x0C0800}, {0x1CA8, 0x1CA8}, RES_COSTUME }, // 19
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 20
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 21
+ { {0x0BA000, 0x0BA000}, {0x0DD6, 0x0DD6}, RES_COSTUME }, // 22
+ { {0x0BC000, 0x0BC000}, {0x083E, 0x083E}, RES_COSTUME }, // 23
+ { {0x06C000, 0x06C000}, {0x051D, 0x051D}, RES_COSTUME }, // 24
+ { {0x06C800, 0x06C800}, {0x0162, 0x0162}, RES_COSTUME }, // 25
+ { {0x27B800, 0x27B800}, {0x0765, 0x0765}, RES_COSTUME }, // 26
+ { {0x08B000, 0x08B000}, {0x0430, 0x0430}, RES_COSTUME }, // 27
+ { {0x08B800, 0x08B800}, {0x041E, 0x041E}, RES_COSTUME }, // 28
+ { {0x08C000, 0x08C000}, {0x0312, 0x0312}, RES_COSTUME }, // 29
+ { {0x07C800, 0x07C800}, {0x0A08, 0x0A08}, RES_COSTUME }, // 30
+ { {0x07D800, 0x07D800}, {0x0A1D, 0x0A1D}, RES_COSTUME }, // 31
+ { {0x07E800, 0x07E800}, {0x0F46, 0x0F46}, RES_COSTUME }, // 32
+ { {0x07F800, 0x07F800}, {0x00EA, 0x00EA}, RES_COSTUME }, // 33
+ { {0x08C800, 0x08C800}, {0x572B, 0x572B}, RES_COSTUME }, // 34
+ { {0x092000, 0x092000}, {0x0224, 0x0224}, RES_COSTUME }, // 35
+ { {0x290800, 0x290800}, {0x03FB, 0x03FB}, RES_COSTUME }, // 36
+ { {0x09C000, 0x09C000}, {0x076A, 0x076A}, RES_COSTUME }, // 37
+ { {0x09C800, 0x09C800}, {0x0B11, 0x0B11}, RES_COSTUME }, // 38
+ { {0x09D800, 0x09D800}, {0x0DB1, 0x0DB1}, RES_COSTUME }, // 39
+ { {0x09E800, 0x09E800}, {0x0549, 0x0549}, RES_COSTUME }, // 40
+ { {0x09F000, 0x09F000}, {0x098F, 0x098F}, RES_COSTUME }, // 41
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 42
+ { {0x0A0000, 0x0A0000}, {0x0672, 0x0672}, RES_COSTUME }, // 43
+ { {0x0A0800, 0x0A0800}, {0x062F, 0x062F}, RES_COSTUME }, // 44
+ { {0x070000, 0x070000}, {0x2A71, 0x2A71}, RES_COSTUME }, // 45
+ { {0x073000, 0x073000}, {0x25C7, 0x25C7}, RES_COSTUME }, // 46
+ { {0x075800, 0x075800}, {0x48F5, 0x48F5}, RES_COSTUME }, // 47
+ { {0x07A800, 0x07A800}, {0x1D7C, 0x1D7C}, RES_COSTUME }, // 48
+ { {0x0A1000, 0x0A1000}, {0x0940, 0x0940}, RES_COSTUME }, // 49
+ { {0x0A2000, 0x0A2000}, {0x03AF, 0x03AF}, RES_COSTUME }, // 50
+ { {0x09B800, 0x09B800}, {0x019A, 0x019A}, RES_COSTUME }, // 51
+ { {0x2AC000, 0x2AC000}, {0x0FCD, 0x0FCD}, RES_COSTUME }, // 52
+ { {0x0A2800, 0x0A2800}, {0x114D, 0x114D}, RES_COSTUME }, // 53
+ { {0x0A4000, 0x0A4000}, {0x1F95, 0x1F95}, RES_COSTUME }, // 54
+ { {0x0CC800, 0x0CC800}, {0x0530, 0x0530}, RES_COSTUME }, // 55
+ { {0x0CD000, 0x0CD000}, {0x027E, 0x027E}, RES_COSTUME }, // 56
+ { {0x0CD800, 0x0CD800}, {0x02EF, 0x02EF}, RES_COSTUME }, // 57
+ { {0x0CE000, 0x0CE000}, {0x022E, 0x022E}, RES_COSTUME }, // 58
+ { {0x0CE800, 0x0CE800}, {0x2FBF, 0x2FBF}, RES_COSTUME }, // 59
+ { {0x0D6000, 0x0D6000}, {0x2419, 0x2419}, RES_COSTUME }, // 60
+ { {0x0D8800, 0x0D8800}, {0x0D67, 0x0D67}, RES_COSTUME }, // 61
+ { {0x0E0000, 0x0E0000}, {0x106D, 0x106D}, RES_COSTUME }, // 62
+ { {0x0E1800, 0x0E1800}, {0x00F3, 0x00F3}, RES_COSTUME }, // 63
+ { {0x127000, 0x127000}, {0x2196, 0x2196}, RES_COSTUME }, // 64
+ { {0x13C800, 0x13C800}, {0x23FF, 0x23FF}, RES_COSTUME }, // 65
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 66
+ { {0x13F000, 0x13F000}, {0x0684, 0x0684}, RES_COSTUME }, // 67
+ { {0x145000, 0x145000}, {0x1DE1, 0x1DE1}, RES_COSTUME }, // 68
+ { {0x147000, 0x147000}, {0x010A, 0x010A}, RES_COSTUME }, // 69
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 70
+ { {0x0FC800, 0x0FC800}, {0x0E90, 0x0E90}, RES_COSTUME }, // 71
+ { {0x10F800, 0x10F800}, {0x0AC9, 0x0AC9}, RES_COSTUME }, // 72
+ { {0x0F1800, 0x0F1800}, {0x2667, 0x2667}, RES_COSTUME }, // 73
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 74
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 75
+ { {0x15A000, 0x15A000}, {0x14C4, 0x14C4}, RES_COSTUME }, // 76
+ { {0x16B000, 0x16B000}, {0x25C9, 0x25C9}, RES_COSTUME }, // 77
+ { {0x18E000, 0x18E000}, {0x4D0D, 0x4D0D}, RES_COSTUME }, // 78
+ { {0x1EB000, 0x1EB000}, {0x4760, 0x4760}, RES_COSTUME }, // 79
+ { {0x0BB000, 0x0BB000}, {0x01C3, 0x01C3}, RES_COSTUME }, // 80
+ { {0x0BB800, 0x0BB800}, {0x00A1, 0x00A1}, RES_COSTUME }, // 81
+ { {0x0BE000, 0x0BE000}, {0x01C5, 0x01C5}, RES_COSTUME }, // 82
+ { {0x148000, 0x148000}, {0x1CAA, 0x1CAA}, RES_COSTUME }, // 83
+ { {0x1E9800, 0x1E9800}, {0x1129, 0x1129}, RES_COSTUME }, // 84
+ { {0x11D000, 0x11D000}, {0x09BB, 0x09BB}, RES_COSTUME }, // 85
+ { {0x0EB000, 0x0EB000}, {0x01D3, 0x01D3}, RES_COSTUME }, // 86
+ { {0x042800, 0x042800}, {0x2ECA, 0x2ECA}, RES_COSTUME }, // 87
+ { {0x110800, 0x110800}, {0x19DE, 0x19DE}, RES_COSTUME }, // 88
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 89
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 90
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 91
+ { {0x129800, 0x129800}, {0x2B6F, 0x2B6F}, RES_COSTUME }, // 92
+ { {0x147800, 0x147800}, {0x00F9, 0x00F9}, RES_COSTUME }, // 93
+ { {0x1A7000, 0x1A7000}, {0x0255, 0x0255}, RES_COSTUME }, // 94
+ { {0x126800, 0x126800}, {0x0327, 0x0327}, RES_COSTUME }, // 95
+ { {0x16D800, 0x16D800}, {0x0C15, 0x0C15}, RES_COSTUME }, // 96
+ { {0x1C4800, 0x1C4800}, {0x0489, 0x0489}, RES_COSTUME }, // 97
+ { {0x17A800, 0x17A800}, {0x05A3, 0x05A3}, RES_COSTUME }, // 98
+ { {0x180000, 0x180000}, {0x1DCC, 0x1DCC}, RES_COSTUME }, // 99
+ { {0x182800, 0x182800}, {0x0636, 0x0636}, RES_COSTUME }, // 100
+ { {0x183000, 0x183000}, {0x0719, 0x0719}, RES_COSTUME }, // 101
+ { {0x214000, 0x214000}, {0x5207, 0x5207}, RES_COSTUME }, // 102
+ { {0x1B2000, 0x1B2000}, {0x4713, 0x4713}, RES_COSTUME }, // 103
+ { {0x1C2000, 0x1C2000}, {0x2004, 0x2004}, RES_COSTUME }, // 104
+ { {0x1B6800, 0x1B6800}, {0x10A0, 0x10A0}, RES_COSTUME }, // 105
+ { {0x1B8000, 0x1B8000}, {0x0A21, 0x0A21}, RES_COSTUME }, // 106
+ { {0x1C6000, 0x1C6000}, {0x0D31, 0x0D31}, RES_COSTUME }, // 107
+ { {0x1C5000, 0x1C5000}, {0x059D, 0x059D}, RES_COSTUME }, // 108
+ { {0x1C5800, 0x1C5800}, {0x0417, 0x0417}, RES_COSTUME }, // 109
+ { {0x1CC800, 0x1CC800}, {0x453E, 0x453E}, RES_COSTUME }, // 110
+ { {0x1E8800, 0x1E8800}, {0x0AEB, 0x0AEB}, RES_COSTUME }, // 111
+ { {0x1A8800, 0x1A8800}, {0x0E7B, 0x0E7B}, RES_COSTUME }, // 112
+ { {0x1FE000, 0x1FE000}, {0x2024, 0x2024}, RES_COSTUME }, // 113
+ { {0x1D1000, 0x1D1000}, {0x0393, 0x0393}, RES_COSTUME }, // 114
+ { {0x1D1800, 0x1D1800}, {0x03F2, 0x03F2}, RES_COSTUME }, // 115
+ { {0x200800, 0x200800}, {0x0EEF, 0x0EEF}, RES_COSTUME }, // 116
+ { {0x297800, 0x297800}, {0x0885, 0x0885}, RES_COSTUME }, // 117
+ { {0x1A8000, 0x1A8000}, {0x0430, 0x0430}, RES_COSTUME }, // 118
+ { {0x1AA800, 0x1AA800}, {0x09C3, 0x09C3}, RES_COSTUME }, // 119
+ { {0x193000, 0x193000}, {0x3D45, 0x3D45}, RES_COSTUME }, // 120
+ { {0x1D7800, 0x1D7800}, {0x0940, 0x0940}, RES_COSTUME }, // 121
+ { {0x222000, 0x222000}, {0x08D6, 0x08D6}, RES_COSTUME }, // 122
+ { {0x221000, 0x221000}, {0x0E93, 0x0E93}, RES_COSTUME }, // 123
+ { {0x238000, 0x237800}, {0x219E, 0x219E}, RES_COSTUME }, // 124
+ { {0x28E800, 0x28E800}, {0x19A3, 0x19A3}, RES_COSTUME }, // 125
+ { {0x1F4000, 0x1F4000}, {0x09E4, 0x09E4}, RES_COSTUME }, // 126
+ { {0x153800, 0x153800}, {0x0F9A, 0x0F9A}, RES_COSTUME }, // 127
+ { {0x241800, 0x241800}, {0x09D2, 0x09D2}, RES_COSTUME }, // 128
+ { {0x112800, 0x112800}, {0x3220, 0x3220}, RES_COSTUME }, // 129
+ { {0x223000, 0x223000}, {0xBA55, 0xBA55}, RES_COSTUME }, // 130
+ { {0x237000, 0x236800}, {0x07B4, 0x07B4}, RES_COSTUME }, // 131
+ { {0x201800, 0x201800}, {0x12EF, 0x12EF}, RES_COSTUME }, // 132
+ { {0x219800, 0x219800}, {0x1B71, 0x1B71}, RES_COSTUME }, // 133
+ { {0x20B800, 0x20B800}, {0x3BAA, 0x3BAA}, RES_COSTUME }, // 134
+ { {0x1B9000, 0x1B9000}, {0x050F, 0x050F}, RES_COSTUME }, // 135
+ { {0x2A7000, 0x2A7000}, {0x00BF, 0x00BF}, RES_COSTUME }, // 136
+ { {0x14A000, 0x14A000}, {0x03EE, 0x03EE}, RES_COSTUME }, // 137
+ { {0x2AD000, 0x2AD000}, {0x0DC9, 0x0DC9}, RES_COSTUME }, // 138
+ { {0x047000, 0x047000}, {0x11A4, 0x11A4}, RES_COSTUME }, // 139
+ { {0x045800, 0x045800}, {0x17BD, 0x17BD}, RES_COSTUME }, // 140
+ { {0x041800, 0x041800}, {0x01CF, 0x01CF}, RES_COSTUME }, // 141
+ { {0x13C000, 0x13C000}, {0x028F, 0x028F}, RES_COSTUME }, // 142
+ { {0x06F800, 0x06F800}, {0x01DD, 0x01DD}, RES_COSTUME }, // 143
+ { {0x2AB000, 0x2AB000}, {0x08FD, 0x08FD}, RES_COSTUME }, // 144
+ { {0x204000, 0x204000}, {0x269E, 0x269E}, RES_COSTUME }, // 145
+ { {0x1A7800, 0x1A7800}, {0x05D8, 0x05D8}, RES_COSTUME }, // 146
+ { {0x254800, 0x254800}, {0x1291, 0x1291}, RES_COSTUME }, // 147
+ { {0x273000, 0x273000}, {0x2866, 0x2866}, RES_COSTUME }, // 148
+ { {0x236800, 0x236000}, {0x016A, 0x016A}, RES_COSTUME }, // 149
+ { {0x048800, 0x048800}, {0x2DFF, 0x2DFF}, RES_COSTUME }, // 150
+ { {0x182000, 0x182000}, {0x0687, 0x0687}, RES_COSTUME }, // 151
+ { {0x1A9800, 0x1A9800}, {0x0C18, 0x0C18}, RES_COSTUME }, // 152
+ { {0x1DF800, 0x1DF800}, {0x10D1, 0x10D1}, RES_COSTUME }, // 153
+ { {0x105000, 0x105000}, {0x095E, 0x095E}, RES_COSTUME }, // 154
+ { {0x106000, 0x106000}, {0x0155, 0x0155}, RES_COSTUME }, // 155
+ { {0x1F3800, 0x1F3800}, {0x01AE, 0x01AE}, RES_COSTUME }, // 156
+ { {0x203000, 0x203000}, {0x086B, 0x086B}, RES_COSTUME }, // 157
+ { {0x21B800, 0x21B800}, {0x0940, 0x0940}, RES_COSTUME }, // 158
+ { {0x106800, 0x106800}, {0x0752, 0x0752}, RES_COSTUME }, // 159
+ { {0x107000, 0x107000}, {0x0840, 0x0840}, RES_COSTUME }, // 160
+ { {0x237800, 0x237000}, {0x0696, 0x0696}, RES_COSTUME }, // 161
+ { {0x116000, 0x116000}, {0x03EB, 0x03EB}, RES_COSTUME }, // 162
+ { {0x108000, 0x108000}, {0x0C15, 0x0C15}, RES_COSTUME }, // 163
+ { {0x037000, 0x037000}, {0x00EE, 0x00EE}, RES_COSTUME }, // 164
+ { {0x154800, 0x154800}, {0x09D0, 0x09D0}, RES_COSTUME }, // 165
+ { {0x12C800, 0x12C800}, {0x00F3, 0x00F3}, RES_COSTUME }, // 166
+ { {0x0CC000, 0x0CC000}, {0x01C5, 0x01C5}, RES_COSTUME }, // 167
+ { {0x0BD000, 0x0BD000}, {0x09C3, 0x09C3}, RES_COSTUME }, // 168
+ { {0x0B2800, 0x0B2800}, {0x1040, 0x1040}, RES_COSTUME }, // 169
+ { {0x0B4000, 0x0B4000}, {0x0208, 0x0208}, RES_COSTUME }, // 170
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_COSTUME } // 0
};
#define NUM_SOUNDS 80
t_resource res_sounds[NUM_SOUNDS] = {
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, /* 0 */
- { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND } /* 0 */
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND }, // 0
+ { {0x000000, 0x000000}, {0x0000, 0x0000}, RES_SOUND } // 0
};
t_resource res_globdata =
@@ -678,122 +679,32 @@
t_resource res_charset =
{ {0x00659D, 0x00659D}, {0x0484, 0x0484}, RES_CHARSET };
-#define NUM_UNKNOWNS 2
+#define NUM_UNKNOWNS 1
t_resource res_unknowns[NUM_UNKNOWNS] = {
- { {0x013000, 0x013000}, {0x1A7F, 0x1A7F}, RES_UNKNOWN }, /* Unknown resource type, looks like a small Room resource */
- { {0x2B4000, 0x2B4000}, {0x0155, 0x0155}, RES_COSTUME } /* Duplicate of Costume 155 */
+ { {0x2B4000, 0x2B4000}, {0x0155, 0x0155}, RES_COSTUME } // Duplicate of Costume 155
};
-static const uint16 roomHeader[88 * 4] = {
- 0, 0, 0, 0,
- 1, 320, 144, 61, /* Difference */
- 2, 960, 144, 7,
- 3, 320, 144, 7,
- 4, 640, 144, 32,
- 5, 704, 144, 5,
- 6, 320, 144, 47,
- 7, 448, 144, 2,
- 8, 912, 144, 14,
- 9, 320, 144, 17,
- 10, 320, 144, 27,
- 11, 456, 144, 9,
- 12, 320, 144, 3,
- 13, 320, 144, 15,
- 14, 320, 144, 0,
- 15, 424, 144, 6,
- 16, 624, 144, 8,
- 17, 320, 144, 15,
- 18, 320, 144, 12,
- 19, 320, 144, 7,
- 20, 320, 144, 14,
- 21, 0, 0, 0,
- 22, 320, 144, 18,
- 23, 480, 144, 11,
- 24, 768, 144, 17,
- 25, 320, 144, 3,
- 26, 320, 144, 16,
- 27, 320, 144, 0,
- 28, 640, 144, 35,
- 29, 320, 144, 3,
- 30, 960, 144, 18,
- 31, 448, 144, 16,
- 32, 464, 144, 5,
- 33, 320, 144, 15,
- 34, 624, 144, 30,
- 35, 320, 144, 11,
- 36, 480, 144, 3,
- 37, 320, 144, 8,
- 38, 320, 144, 15,
- 39, 320, 144, 0,
- 40, 320, 144, 6,
- 41, 336, 144, 7,
- 42, 320, 144, 2,
- 43, 320, 144, 13,
- 44, 320, 144, 3,
- 45, 320, 144, 26,
- 46, 960, 144, 14,
- 47, 640, 144, 9,
- 48, 0, 0, 0,
- 49, 320, 144, 17,
- 50, 320, 144, 20,
- 51, 320, 144, 23,
- 52, 320, 144, 0,
- 53, 320, 144, 6,
- 54, 320, 144, 3,
- 55, 320, 144, 6,
- 56, 320, 144, 6,
- 57, 320, 144, 5,
- 58, 320, 144, 6,
- 59, 320, 144, 6,
- 60, 320, 144, 5,
- 61, 320, 144, 0,
- 62, 320, 144, 12,
- 63, 320, 144, 6,
- 64, 320, 144, 2,
- 65, 320, 144, 6,
- 66, 320, 144, 33,
- 67, 320, 144, 4,
- 68, 320, 144, 6,
- 69, 320, 144, 23,
- 70, 320, 144, 0, /* Difference */
- 71, 0, 0, 0,
- 72, 0, 0, 0,
- 73, 0, 0, 0,
- 74, 0, 0, 0,
- 75, 0, 0, 0,
- 76, 0, 0, 0,
- 77, 0, 0, 0,
- 78, 0, 0, 0,
- 79, 320, 144, 6,
- 80, 0, 0, 0,
- 81, 320, 144, 0,
- 82, 0, 0, 0,
- 83, 0, 0, 0,
- 84, 0, 0, 0,
- 85, 0, 0, 0,
- 86, 320, 144, 11,
- 87, 320, 144, 3,
-};
-
-uint32 r_offset (p_resource res) {
+uint32 r_offset(p_resource res) {
return res->offset[ISO];
}
-signed short r_length (p_resource res) {
+
+uint16 r_length(p_resource res) {
return res->length[ISO];
}
void ExtractLoomTG16::extract_resource(File &input, File &output, p_resource res) {
#ifdef MAKE_LFLS
- uint16 j, off;
+ uint32 off;
+ uint16 j;
#endif
- signed short i, rlen;
+ uint32 i, rlen;
uint8 junk, rtype, rid;
if (res == NULL)
error("extract_resource - no resource specified");
if ((r_offset(res) == 0) && (r_length(res) == 0))
- return; /* if offset/length are both 0, skip it */
+ return; // if offset/length are both 0, skip it
input.seek(r_offset(res), SEEK_SET);
switch (res->type) {
@@ -802,11 +713,11 @@
output.writeUint16LE((uint16)(rlen + 4));
output.writeUint16LE(0);
- /* Skip 4 bytes */
+ // Skip 4 bytes
read_cword(input, &i);
read_cword(input, &i);
- /* Write expected charset header */
+ // Write expected charset header
output.writeByte(0x63);
output.writeByte(0x01);
output.writeByte(0x80);
@@ -825,11 +736,57 @@
if (rtype != 0x11)
error("extract_resource(globdata) - resource tag is incorrect");
output.writeUint32LE((uint16)(rlen + 1));
- output.writeUint16LE('O0'); /* 0O - Object Index */
+ output.writeUint16LE('O0'); // 0O - Object Index
for (i = 5; i < rlen; i++)
output.writeByte(input.readByte());
break;
#ifdef MAKE_LFLS
+ case RES_CUSTOM_ROOM:
+ {
+ i = 0;
+ rlen = read_cword(input,&i);
+ junk = read_cbyte(input,&i);
+ rtype = read_cbyte(input,&i);
+ rid = read_cbyte(input,&i);
+ if (rlen != r_length(res))
+ error("extract_resource(room) - length mismatch while extracting resource (was %04X, expected %04X)",rlen,r_length(res));
+ if (rtype != 0x05)
+ error("extract_resource(room) - resource tag is incorrect");
+ off = output.pos();
+ rlen = 0;
+ write_clong(output, 0, &rlen);
+ write_cword(output, 'OR', &rlen); // RO - Room
+
+ uint16 slen;
+ uint8 stype;
+
+ slen = read_cword(input, &i) - 3;
+ stype = read_cbyte(input, &i);
+
+ write_clong(output, slen + 6, &rlen);
+ write_cword(output, 'AP', &rlen); // PA - palettes
+
+ // Change palette slot to 15
+ read_cbyte(input, &i);
+ write_cbyte(output, 15, &rlen);
+
+ for (j = 0; j < slen - 1; j++)
+ write_cbyte(output, read_cbyte(input, &i), &rlen);
+
+ slen = read_cword(input, &i) - 3;
+ stype = read_cbyte(input, &i);
+
+ write_clong(output, slen + 6, &rlen);
+ write_cword(output, 'LT', &rlen); // TL - tiles
+ for (j = 0; j < slen; j++)
+ write_cbyte(output, read_cbyte(input, &i), &rlen);
+
+ output.seek(off, SEEK_SET);
+ output.writeUint32LE(rlen);
+ output.seek(0, SEEK_END);
+ }
+
+ break;
case RES_ROOM:
{
i = 0;
@@ -842,18 +799,46 @@
if (rtype != 0x01)
error("extract_resource(room) - resource tag is incorrect");
- off = (uint16)output.pos();
+ off = output.pos();
rlen = 0;
write_clong(output, 0, &rlen);
- write_cword(output, 'OR', &rlen); /* RO - Room */
+ write_cword(output, 'OR', &rlen); // RO - Room
- /* Hard code room header for now */
+ uint32 roomOffs = input.pos();
+ uint16 numObjects = 0, roomWidth = 0, roomHeight = 0;
+ while (1) {
+ uint16 slen;
+ uint8 stype;
+
+ slen = read_cword(input, &i);
+ if (slen == 0xFFFF) {
+ break;
+ }
+ stype = read_cbyte(input, &i);
+ slen -= 3;
+ switch (stype) {
+ case 0x07:
+ read_cbyte(input, &i);
+ roomWidth = read_cbyte(input, &i) * 8;
+ roomHeight = read_cbyte(input, &i) * 8;
+ slen -= 3;
+ break;
+ case 0x0E:
+ numObjects += 1;
+ break;
+ default:
+ break;
+ }
+ input.seek(slen, SEEK_CUR);
+ }
write_clong(output, 0xC, &rlen);
write_cword(output, 'DH', &rlen);
- write_cword(output, roomHeader[rid * 4 + 1], &rlen);
- write_cword(output, roomHeader[rid * 4 + 2], &rlen);
- write_cword(output, roomHeader[rid * 4 + 3], &rlen);
+ write_cword(output, roomWidth, &rlen);
+ write_cword(output, roomHeight, &rlen);
+ write_cword(output, numObjects, &rlen);
+ input.seek(roomOffs, SEEK_SET);
+
while (1) {
uint16 slen;
uint8 stype;
@@ -864,83 +849,79 @@
stype = read_cbyte(input, &i);
slen -= 3;
switch (stype) {
- /* HD, SL, NL, PA - are current unknowns */
case 0x06:
- /* Resource type exists in all rooms */
write_clong(output, slen + 6, &rlen);
- write_cword(output, '6U', &rlen); /* Unknown */
+ write_cword(output, 'AP', &rlen); // PA - palettes
for (j = 0; j < slen; j++)
write_cbyte(output, read_cbyte(input, &i), &rlen);
break;
case 0x07:
- /* Resource type exists in all rooms */
write_clong(output, slen + 6, &rlen);
- write_cword(output, '7U', &rlen); /* Unknown */
+ write_cword(output, 'MB', &rlen); // BM - bitmap
for (j = 0; j < slen; j++)
write_cbyte(output, read_cbyte(input, &i), &rlen);
break;
case 0x0A:
- /* Resource type doesn't exists in all rooms */
write_clong(output, slen + 6, &rlen);
- write_cword(output, 'AU', &rlen); /* Unknown */
+ write_cword(output, 'PZ', &rlen); // ZP - Mask data
for (j = 0; j < slen; j++)
write_cbyte(output, read_cbyte(input, &i), &rlen);
break;
case 0x05:
- /* Verb images for the diststaff */
+ // Verb images for the diststaff
write_clong(output, slen + 6, &rlen);
- write_cword(output, 'IO', &rlen); /* OI - object image */
+ write_cword(output, 'IO', &rlen); // OI - object image
for (j = 0; j < slen; j++)
write_cbyte(output, read_cbyte(input, &i), &rlen);
break;
case 0x08:
write_clong(output, slen + 6, &rlen);
- write_cword(output, 'MB', &rlen); /* BM - bitmap */
+ write_cword(output, 'LT', &rlen); // TL - tiles
for (j = 0; j < slen; j++)
write_cbyte(output, read_cbyte(input, &i), &rlen);
break;
case 0x09:
read_cword(input, &i);
- /* skip first 2 bytes */
+ // skip first 2 bytes
slen -= 2;
write_clong(output, slen + 6, &rlen);
- write_cword(output, 'XB', &rlen); /* BX - boxes */
+ write_cword(output, 'XB', &rlen); // BX - boxes
for (j = 0; j < slen; j++)
write_cbyte(output, read_cbyte(input, &i), &rlen);
break;
case 0x0B:
write_clong(output, slen + 6, &rlen);
- write_cword(output, 'NE', &rlen); /* EN - entrance script */
+ write_cword(output, 'NE', &rlen); // EN - entrance script
for (j = 0; j < slen; j++)
write_cbyte(output, read_cbyte(input, &i), &rlen);
break;
case 0x0C:
write_clong(output, slen + 6, &rlen);
- write_cword(output, 'XE', &rlen); /* EX - exit script */
+ write_cword(output, 'XE', &rlen); // EX - exit script
for (j = 0; j < slen; j++)
write_cbyte(output, read_cbyte(input, &i), &rlen);
break;
case 0x0D:
write_clong(output, slen + 6, &rlen);
- write_cword(output, 'IO', &rlen); /* OI - object image */
+ write_cword(output, 'IO', &rlen); // OI - object image
for (j = 0; j < slen; j++)
write_cbyte(output, read_cbyte(input, &i), &rlen);
break;
case 0x0E:
write_clong(output, slen + 6, &rlen);
- write_cword(output, 'CO', &rlen); /* OC - object code */
+ write_cword(output, 'CO', &rlen); // OC - object code
for (j = 0; j < slen; j++)
write_cbyte(output, read_cbyte(input, &i), &rlen);
break;
case 0x0F:
write_clong(output, slen + 6, &rlen);
- write_cword(output, 'CL', &rlen); /* LC - local script count */
+ write_cword(output, 'CL', &rlen); // LC - local script count
for (j = 0; j < slen; j++)
write_cbyte(output, read_cbyte(input, &i), &rlen);
break;
case 0x10:
write_clong(output, slen + 6, &rlen);
- write_cword(output, 'SL', &rlen); /* LS - local script */
+ write_cword(output, 'SL', &rlen); // LS - local script
for (j = 0; j < slen; j++)
write_cbyte(output, read_cbyte(input, &i), &rlen);
break;
@@ -968,7 +949,7 @@
if (rtype != 0x03)
error("extract_resource(costume) - resource tag is incorrect");
output.writeUint32LE((uint16)(rlen + 1));
- output.writeUint16LE('OC'); /* CO - Costume */
+ output.writeUint16LE('OC'); // CO - Costume
for (i = 5; i < rlen; i++)
output.writeByte(input.readByte());
break;
@@ -982,7 +963,7 @@
if (rtype != 0x02)
error("extract_resource(script) - resource tag is incorrect");
output.writeUint32LE((uint16)(rlen + 1));
- output.writeUint16LE('CS'); /* SC - Script */
+ output.writeUint16LE('CS'); // SC - Script
for (i = 5; i < rlen; i++)
output.writeByte(input.readByte());
break;
@@ -1007,7 +988,7 @@
}
#ifdef MAKE_LFLS
-/* based on structure of Loom EGA LFL files */
+// based on structure of Loom EGA LFL files
p_resource lfl_01[] = { &res_rooms[1], &res_scripts[1], &res_scripts[2], &res_scripts[3], &res_scripts[5], &res_scripts[6], &res_scripts[7], &res_scripts[8], &res_scripts[9], &res_scripts[10], &res_scripts[11], &res_scripts[12], &res_scripts[13], &res_scripts[14], &res_scripts[15], &res_scripts[16], &res_scripts[17], &res_scripts[18], &res_scripts[19], &res_scripts[20], &res_scripts[21], &res_scripts[22], &res_scripts[23], &res_scripts[24], &res_scripts[25], &res_scripts[26], &res_scripts[27], &res_scripts[28], &res_scripts[29], &res_scripts[30], &res_scripts[31], &res_scripts[32], &res_scripts[33], &res_scripts[34], &res_scripts[35], &res_scripts[36], &res_scripts[37], &res_scripts[38], &res_scripts[39], &res_scripts[40], &res_scripts[41], &res_scripts[42], &res_scripts[43], &res_sounds[1], &res_sounds[2], &res_sounds[3], &res_sounds[4], &res_sounds[5], &res_sounds[6], &res_sounds[7], &res_sounds[8], &res_costumes[1], &res_costumes[2], &res_costumes[3], &res_costumes[164], NULL };
p_resource lfl_02[] = { &res_rooms[2], &res_scripts[44], &res_scripts[45], &res_scripts[113], &res_scripts[114], &res_costumes[141], &res_costumes[8], &res_costumes[87], &res_costumes[140], &res_costumes[139], &res_costumes[150], NULL };
p_resource lfl_03[] = { &res_rooms[3], &res_costumes[10], &res_costumes[9], &res_costumes[11], NULL };
@@ -1075,7 +1056,7 @@
p_resource lfl_67[] = { &res_rooms[67], NULL };
p_resource lfl_68[] = { &res_rooms[68], &res_costumes[117], NULL };
p_resource lfl_69[] = { &res_rooms[69], &res_sounds[16], &res_sounds[22], &res_sounds[32], &res_costumes[4], NULL };
-p_resource lfl_70[] = { &res_rooms[70], &res_scripts[4], &res_sounds[9], &res_sounds[10], &res_sounds[13], &res_sounds[18], &res_sounds[23], &res_costumes[5], NULL };
+p_resource lfl_70[] = { &res_rooms[70], &res_scripts[4], &res_costumes[136], &res_sounds[9], &res_sounds[10], &res_sounds[13], &res_sounds[18], &res_sounds[23], &res_costumes[5], NULL };
p_resource lfl_79[] = { &res_rooms[79], NULL };
p_resource lfl_81[] = { &res_rooms[81], &res_costumes[144], &res_costumes[52], &res_costumes[138], NULL };
/*
@@ -1086,6 +1067,7 @@
*/
p_resource lfl_86[] = { &res_rooms[86], &res_scripts[111], &res_costumes[155], NULL };
p_resource lfl_87[] = { &res_rooms[87], NULL };
+p_resource lfl_90[] = { &res_rooms[90], NULL };
typedef struct _lfl {
int num;
@@ -1171,6 +1153,7 @@
*/
{ 86, lfl_86 },
{ 87, lfl_87 },
+ { 90, lfl_90 },
{ -1, NULL }
};
@@ -1190,17 +1173,17 @@
uint8 sound_lfl[NUM_SOUNDS];
uint32 sound_addr[NUM_SOUNDS];
} lfl_index;
-#else /* !MAKE_LFLS */
+#else // !MAKE_LFLS
void dump_resource (File &input, const char *fn_template, int num, p_resource res) {
char fname[256];
sprintf(fname, fn_template, num);
File output(fname, "wb");
extract_resource(input, output, res);
}
-#endif /* MAKE_LFLS */
+#endif // MAKE_LFLS
uint32 CRCtable[256];
-void InitCRC (void) {
+void InitCRC() {
const uint32 poly = 0xEDB88320;
int i, j;
uint32 n;
@@ -1212,46 +1195,32 @@
}
}
-uint32 ISO_CRC (File &file) {
+uint32 ISO_CRC(File &file) {
uint32 CRC = 0xFFFFFFFF;
- uint32 i, len;
- file.seek(0, SEEK_END);
- len = file.pos();
- file.seek(0, SEEK_SET);
- for (i = 0; i < len; i++)
+ uint32 len = file.size();
+ for (uint32 i = 0; i < len; i++)
CRC = (CRC >> 8) ^ CRCtable[(CRC ^ file.readByte()) & 0xFF];
return CRC ^ 0xFFFFFFFF;
}
ExtractLoomTG16::ExtractLoomTG16(const std::string &name) : Tool(name, TOOLTYPE_EXTRACTION) {
-
ToolInput input;
input.format = "*.iso";
_inputPaths.push_back(input);
- _shorthelp = "Extract data files from the Loom game.";
- _helptext = "\nUsage: " + _name + " [-o outputdir = out/] <infile>\n\t" + _shorthelp + "\n";
+ _shorthelp = "Extract data files from the Loom TG16/PCE ISO.";
+ _helptext = "Usage: " + _name + " [-o outputdir] <infile>\n" + _shorthelp + "\n";
}
void ExtractLoomTG16::execute() {
-#ifdef MAKE_LFLS
- int i, j;
-#else
- int i;
-#endif
- uint32 CRC;
+ if (_outputPath.empty())
+ _outputPath.setFullPath("./");
- Filename inpath(_inputPaths[0].path);
- Filename &outpath = _outputPath;
+ File input(_inputPaths[0].path, "rb");
- if (outpath.empty())
- // Standard output path
- outpath.setFullPath("out/");
-
- File input(inpath, "rb");
-
InitCRC();
- CRC = ISO_CRC(input);
+ uint32 CRC = ISO_CRC(input);
+
switch (CRC) {
case 0x29EED3C5: // dumpcd
case 0xE70FA498: // turborip
@@ -1270,33 +1239,34 @@
#ifdef MAKE_LFLS
memset(&lfl_index, 0xFF, sizeof(lfl_index));
- for (i = 0; lfls[i].num != -1; i++) {
+ for (int i = 0; lfls[i].num != -1; i++) {
p_lfl lfl = &lfls[i];
char fname[256];
sprintf(fname, "%02i.LFL", lfl->num);
- outpath.setFullName(fname);
+ _outputPath.setFullName(fname);
- File output(outpath, "wb");
+ File output(_outputPath, "wb");
print("Creating %s...", fname);
- for (j = 0; lfl->entries[j] != NULL; j++) {
+ for (int j = 0; lfl->entries[j] != NULL; j++) {
p_resource entry = lfl->entries[j];
switch (entry->type) {
case RES_ROOM:
+ case RES_CUSTOM_ROOM:
lfl_index.room_lfl[entry - res_rooms] = lfl->num;
- lfl_index.room_addr[entry - res_rooms] = (uint16)output.pos();
+ lfl_index.room_addr[entry - res_rooms] = output.pos();
break;
case RES_COSTUME:
lfl_index.costume_lfl[entry - res_costumes] = lfl->num;
- lfl_index.costume_addr[entry - res_costumes] = (uint16)output.pos();
+ lfl_index.costume_addr[entry - res_costumes] = output.pos();
break;
case RES_SCRIPT:
lfl_index.script_lfl[entry - res_scripts] = lfl->num;
- lfl_index.script_addr[entry - res_scripts] = (uint16)output.pos();
+ lfl_index.script_addr[entry - res_scripts] = output.pos();
break;
case RES_SOUND:
lfl_index.sound_lfl[entry - res_sounds] = lfl->num;
- lfl_index.sound_addr[entry - res_sounds] = (uint16)output.pos();
+ lfl_index.sound_addr[entry - res_sounds] = output.pos();
break;
default:
print("Unknown resource type %d detected in LFL index!", entry->type);
@@ -1307,8 +1277,8 @@
}
}
- outpath.setFullName("00.LFL");
- File output(outpath, "wb");
+ _outputPath.setFullName("00.LFL");
+ File output(_outputPath, "wb");
print("Creating 00.LFL...");
lfl_index.num_rooms = NUM_ROOMS;
@@ -1317,28 +1287,28 @@
lfl_index.num_sounds = NUM_SOUNDS;
output.writeUint32LE(8 + 5 * lfl_index.num_rooms);
- output.writeUint16LE('R0'); /* 0R - room index */
+ output.writeUint16LE('R0'); // 0R - room index
output.writeUint16LE(lfl_index.num_rooms);
- for (i = 0; i < lfl_index.num_rooms; i++) {
+ for (int i = 0; i < lfl_index.num_rooms; i++) {
output.writeByte(lfl_index.room_lfl[i]);
output.writeUint32LE(lfl_index.room_addr[i]);
}
output.writeUint32LE(8 + 5 * lfl_index.num_scripts);
- output.writeUint16LE('S0'); /* 0S - script index */
+ output.writeUint16LE('S0'); // 0S - script index
output.writeUint16LE(lfl_index.num_scripts);
- for (i = 0; i < lfl_index.num_scripts; i++) {
+ for (int i = 0; i < lfl_index.num_scripts; i++) {
output.writeByte(lfl_index.script_lfl[i]);
output.writeUint32LE(lfl_index.script_addr[i]);
}
output.writeUint32LE(8 + 5 * lfl_index.num_costumes);
- output.writeUint16LE('C0'); /* 0C - costume index */
+ output.writeUint16LE('C0'); // 0C - costume index
output.writeUint16LE(lfl_index.num_costumes);
- for (i = 0; i < lfl_index.num_costumes; i++) {
+ for (int i = 0; i < lfl_index.num_costumes; i++) {
output.writeByte(lfl_index.costume_lfl[i]);
output.writeUint32LE(lfl_index.costume_addr[i]);
}
@@ -1356,36 +1326,36 @@
extract_resource(input, output, &res_globdata);
- outpath.setFullName("97.LFL");
- output.open(outpath, "wb");
+ _outputPath.setFullName("97.LFL");
+ output.open(_outputPath, "wb");
print("Creating 97.LFL...");
extract_resource(input, output, &res_charset);
- outpath.setFullName("98.LFL");
- output.open(outpath, "wb");
+ _outputPath.setFullName("98.LFL");
+ output.open(_outputPath, "wb");
print("Creating 98.LFL...");
extract_resource(input, output, &res_charset);
- outpath.setFullName("99.LFL");
- output.open(outpath, "wb");
+ _outputPath.setFullName("99.LFL");
+ output.open(_outputPath, "wb");
print("Creating 99.LFL...");
extract_resource(input, output, &res_charset);
-#else /* !MAKE_LFLS */
+#else // !MAKE_LFLS
dump_resource(input, "globdata.dmp", 0, &res_globdata);
dump_resource(input, "charset.dmp", 0, &res_charset);
- for (i = 0; i < NUM_UNKNOWNS; i++)
+ for (int i = 0; i < NUM_UNKNOWNS; i++)
dump_resource(input, "unk-%d.dmp", i, &res_unknowns[i]);
- for (i = 0; i < NUM_ROOMS; i++)
+ for (int i = 0; i < NUM_ROOMS; i++)
dump_resource(input, "room-%d.dmp", i, &res_rooms[i]);
- for (i = 0; i < NUM_COSTUMES; i++)
+ for (int i = 0; i < NUM_COSTUMES; i++)
dump_resource(input, "costume-%d.dmp", i, &res_costumes[i]);
- for (i = 0; i < NUM_SCRIPTS; i++)
+ for (int i = 0; i < NUM_SCRIPTS; i++)
dump_resource(input, "script-%d.dmp", i, &res_scripts[i]);
- for (i = 0; i < NUM_SOUNDS; i++)
+ for (int i = 0; i < NUM_SOUNDS; i++)
dump_resource(input, "sound-%d.dmp", i, &res_sounds[i]);
-#endif /* MAKE_LFLS */
+#endif // MAKE_LFLS
print("All done!");
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list