[Scummvm-cvs-logs] CVS: tools extract_mm_nes.c,1.5,1.6
Eugene Sandulenko
sev at users.sourceforge.net
Sat Mar 12 14:45:06 CET 2005
Update of /cvsroot/scummvm/tools
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2834
Modified Files:
extract_mm_nes.c
Log Message:
Patch from Quietust which improved room graphics handling.
Index: extract_mm_nes.c
===================================================================
RCS file: /cvsroot/scummvm/tools/extract_mm_nes.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- extract_mm_nes.c 7 Mar 2005 22:14:26 -0000 1.5
+++ extract_mm_nes.c 12 Mar 2005 22:44:44 -0000 1.6
@@ -96,7 +96,7 @@
fwrite(&val,2,1,output);
}
-typedef enum _res_type { RES_UNKNOWN, RES_GLOBDATA, RES_ROOM, RES_SCRIPT, RES_SOUND, RES_COSTUME, RES_ROOMGFX, RES_COSTUMEGFX, RES_PALETTE, RES_UNK_DD75, RES_UNK_DD7D, RES_UNK_DD95, RES_UNK_DD9D } res_type;
+typedef enum _res_type { RES_UNKNOWN, RES_GLOBDATA, RES_ROOM, RES_SCRIPT, RES_SOUND, RES_COSTUME, RES_ROOMGFX, RES_COSTUMEGFX, RES_SPRPALS, RES_SPRDESC, RES_SPRLENS, RES_SPROFFS , RES_SPRDATA } res_type;
typedef enum _romset { ROMSET_USA, ROMSET_EUROPE, ROMSET_SWEDEN, ROMSET_FRANCE, NUM_ROMSETS } t_romset;
@@ -503,45 +503,45 @@
{ {0x17F05,0x0BEFF,0x0FEF5,0x0BF17}, {0x0055,0x0055,0x0055,0x0055}, RES_COSTUME },
{ {0x13FAB,0x0FEA2,0x17E9A,0x13E77}, {0x004B,0x004B,0x004B,0x004B}, RES_COSTUME },
/* 25 */
- { {0x0FFB7,0x0BEC2,0x0BF1B,0x07EF8}, {0x0031,0x0031,0x0031,0x0031}, RES_UNK_DD95 },
- { {0x0BFE1,0x07F71,0x07F75,0x07F29}, {0x0009,0x0009,0x0009,0x0009}, RES_UNK_DD95 },
+ { {0x0FFB7,0x0BEC2,0x0BF1B,0x07EF8}, {0x0031,0x0031,0x0031,0x0031}, RES_SPRDESC },
+ { {0x0BFE1,0x07F71,0x07F75,0x07F29}, {0x0009,0x0009,0x0009,0x0009}, RES_SPRDESC },
/* 27 */
- { {0x0FEA2,0x1BE32,0x13E6A,0x0FE61}, {0x0115,0x0115,0x0115,0x0115}, RES_UNK_DD7D },
- { {0x07FF5,0x07F5B,0x07F4F,0x07ED2}, {0x0006,0x0006,0x0006,0x0006}, RES_UNK_DD7D },
+ { {0x0FEA2,0x1BE32,0x13E6A,0x0FE61}, {0x0115,0x0115,0x0115,0x0115}, RES_SPRLENS },
+ { {0x07FF5,0x07F5B,0x07F4F,0x07ED2}, {0x0006,0x0006,0x0006,0x0006}, RES_SPRLENS },
/* 29 */
- { {0x2BDC5,0x2FD42,0x2BCE0,0x2F959}, {0x022A,0x022A,0x022A,0x022A}, RES_UNK_DD9D },
- { {0x0BFEA,0x0BEF3,0x0BF4C,0x07F32}, {0x000C,0x000C,0x000C,0x000C}, RES_UNK_DD9D },
+ { {0x2BDC5,0x2FD42,0x2BCE0,0x2F959}, {0x022A,0x022A,0x022A,0x022A}, RES_SPROFFS },
+ { {0x0BFEA,0x0BEF3,0x0BF4C,0x07F32}, {0x000C,0x000C,0x000C,0x000C}, RES_SPROFFS },
/* 31 */
- { {0x2CE11,0x2CE11,0x2C401,0x2CA28}, {0x2BE0,0x2BE0,0x2BE0,0x2BE0}, RES_UNK_DD75 },
- { {0x07F6B,0x0BE28,0x0FE6B,0x07E48}, {0x008A,0x008A,0x008A,0x008A}, RES_UNK_DD75 },
+ { {0x2CE11,0x2CE11,0x2C401,0x2CA28}, {0x2BE0,0x2BE0,0x2BE0,0x2BE0}, RES_SPRDATA },
+ { {0x07F6B,0x0BE28,0x0FE6B,0x07E48}, {0x008A,0x008A,0x008A,0x008A}, RES_SPRDATA },
/* 33 */
{ {0x30001,0x30001,0x2EFE1,0x30001}, {0x0EC9,0x0EC9,0x0EC9,0x0EC9}, RES_COSTUMEGFX },
{ {0x2F9F1,0x2F9F1,0x30001,0x2F608}, {0x0351,0x0351,0x0351,0x0351}, RES_COSTUMEGFX },
/* 35 */
- { {0x0BFC1,0x07F61,0x07F55,0x07ED8}, {0x0010,0x0010,0x0010,0x0010}, RES_PALETTE },
- { {0x0BFD1,0x0BEB2,0x07F65,0x07EE8}, {0x0010,0x0010,0x0010,0x0010}, RES_PALETTE }
+ { {0x0BFC1,0x07F61,0x07F55,0x07ED8}, {0x0010,0x0010,0x0010,0x0010}, RES_SPRPALS },
+ { {0x0BFD1,0x0BEB2,0x07F65,0x07EE8}, {0x0010,0x0010,0x0010,0x0010}, RES_SPRPALS }
};
t_resource res_globdata =
{ {0x2CA11,0x2CA11,0x2C001,0x2C628}, {0x0307,0x0307,0x0307,0x0307}, RES_GLOBDATA };
-t_resource res_palettes[2] = {
- { {0x0BFC1,0x07F61,0x07F55,0x07ED8}, {0x0010,0x0010,0x0010,0x0010}, RES_PALETTE },
- { {0x0BFD1,0x0BEB2,0x07F65,0x07EE8}, {0x0010,0x0010,0x0010,0x0010}, RES_PALETTE }
+t_resource res_sprpals[2] = { /* sprite palette data */
+ { {0x0BFC1,0x07F61,0x07F55,0x07ED8}, {0x0010,0x0010,0x0010,0x0010}, RES_SPRPALS },
+ { {0x0BFD1,0x0BEB2,0x07F65,0x07EE8}, {0x0010,0x0010,0x0010,0x0010}, RES_SPRPALS }
};
-t_resource res_unk_DD75[2] = {
- { {0x2CE11,0x2CE11,0x2C401,0x2CA28}, {0x2BE0,0x2BE0,0x2BE0,0x2BE0}, RES_UNK_DD75 },
- { {0x07F6B,0x0BE28,0x0FE6B,0x07E48}, {0x008A,0x008A,0x008A,0x008A}, RES_UNK_DD75 }
+t_resource res_sprdesc[2] = { /* associates costume IDs with sprite sets (indexes into SPRLENS/SPROFFS) */
+ { {0x0FFB7,0x0BEC2,0x0BF1B,0x07EF8}, {0x0031,0x0031,0x0031,0x0031}, RES_SPRDESC },
+ { {0x0BFE1,0x07F71,0x07F75,0x07F29}, {0x0009,0x0009,0x0009,0x0009}, RES_SPRDESC }
};
-t_resource res_unk_DD7D[2] = {
- { {0x0FEA2,0x1BE32,0x13E6A,0x0FE61}, {0x0115,0x0115,0x0115,0x0115}, RES_UNK_DD7D },
- { {0x07FF5,0x07F5B,0x07F4F,0x07ED2}, {0x0006,0x0006,0x0006,0x0006}, RES_UNK_DD7D }
+t_resource res_sprlens[2] = { /* number of sprites in each set (indicates length within SPRDATA) */
+ { {0x0FEA2,0x1BE32,0x13E6A,0x0FE61}, {0x0115,0x0115,0x0115,0x0115}, RES_SPRLENS },
+ { {0x07FF5,0x07F5B,0x07F4F,0x07ED2}, {0x0006,0x0006,0x0006,0x0006}, RES_SPRLENS }
};
-t_resource res_unk_DD95[2] = {
- { {0x0FFB7,0x0BEC2,0x0BF1B,0x07EF8}, {0x0031,0x0031,0x0031,0x0031}, RES_UNK_DD95 },
- { {0x0BFE1,0x07F71,0x07F75,0x07F29}, {0x0009,0x0009,0x0009,0x0009}, RES_UNK_DD95 }
+t_resource res_sproffs[2] = { /* offset of each sprite set (indexes into SPRDATA) */
+ { {0x2BDC5,0x2FD42,0x2BCE0,0x2F959}, {0x022A,0x022A,0x022A,0x022A}, RES_SPROFFS },
+ { {0x0BFEA,0x0BEF3,0x0BF4C,0x07F32}, {0x000C,0x000C,0x000C,0x000C}, RES_SPROFFS }
};
-t_resource res_unk_DD9D[2] = {
- { {0x2BDC5,0x2FD42,0x2BCE0,0x2F959}, {0x022A,0x022A,0x022A,0x022A}, RES_UNK_DD9D },
- { {0x0BFEA,0x0BEF3,0x0BF4C,0x07F32}, {0x000C,0x000C,0x000C,0x000C}, RES_UNK_DD9D }
+t_resource res_sprdata[2] = { /* sprite data sets (packed NES sprite data) */
+ { {0x2CE11,0x2CE11,0x2C401,0x2CA28}, {0x2BE0,0x2BE0,0x2BE0,0x2BE0}, RES_SPRDATA },
+ { {0x07F6B,0x0BE28,0x0FE6B,0x07E48}, {0x008A,0x008A,0x008A,0x008A}, RES_SPRDATA }
};
unsigned long r_offset (p_resource res)
@@ -637,11 +637,11 @@
_assert(ftell(input) - r_offset(res) - 16 == r_length(res),"extract_resource - length mismatch while extracting sound resource (was %04X, should be %04X)",ftell(input) - r_offset(res) - 16,r_length(res));
break;
case RES_COSTUME:
- case RES_PALETTE:
- case RES_UNK_DD75:
- case RES_UNK_DD7D:
- case RES_UNK_DD95:
- case RES_UNK_DD9D:
+ case RES_SPRPALS:
+ case RES_SPRDESC:
+ case RES_SPRLENS:
+ case RES_SPROFFS:
+ case RES_SPRDATA:
len = r_length(res);
write_word(output,(unsigned short)(len + 2));
for (i = 0; i < len; i++)
@@ -902,12 +902,12 @@
lfl_index.room_addr[entry - res_rooms] = (unsigned short)ftell(output);
break;
case RES_COSTUME:
- case RES_UNK_DD95:
- case RES_UNK_DD7D:
- case RES_UNK_DD9D:
- case RES_UNK_DD75:
+ case RES_SPRDESC:
+ case RES_SPRLENS:
+ case RES_SPROFFS:
+ case RES_SPRDATA:
case RES_COSTUMEGFX:
- case RES_PALETTE:
+ case RES_SPRPALS:
lfl_index.costume_lfl[entry - res_costumes] = lfl->num;
lfl_index.costume_addr[entry - res_costumes] = (unsigned short)ftell(output);
break;
@@ -952,15 +952,15 @@
for (i = 0; i < 25; i++)
dump_resource(input,"costume-%d.dmp",i,&res_costumes[i]);
for (i = 0; i < 2; i++)
- dump_resource(input,"costumepal-%d.dmp",i,&res_palettes[i]);
+ dump_resource(input,"sprpals-%d.dmp",i,&res_sprpals[i]);
for (i = 0; i < 2; i++)
- dump_resource(input,"cost_DD75-%d.dmp",i,&res_unk_DD75[i]);
+ dump_resource(input,"sprdata-%d.dmp",i,&res_sprdata[i]);
for (i = 0; i < 2; i++)
- dump_resource(input,"cost_DD7D-%d.dmp",i,&res_unk_DD7D[i]);
+ dump_resource(input,"sprlens-%d.dmp",i,&res_sprlens[i]);
for (i = 0; i < 2; i++)
- dump_resource(input,"cost_DD95-%d.dmp",i,&res_unk_DD95[i]);
+ dump_resource(input,"sprdesc-%d.dmp",i,&res_sprdesc[i]);
for (i = 0; i < 2; i++)
- dump_resource(input,"cost_DD9D-%d.dmp",i,&res_unk_DD9D[i]);
+ dump_resource(input,"sproffs-%d.dmp",i,&res_sproffs[i]);
#endif /* MAKE_LFLS */
debug("All done!");
More information about the Scummvm-git-logs
mailing list