[Scummvm-cvs-logs] CVS: tools extract_mm_nes.c,1.6,1.7
Eugene Sandulenko
sev at users.sourceforge.net
Sat Mar 12 15:32:03 CET 2005
Update of /cvsroot/scummvm/tools
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14201
Modified Files:
extract_mm_nes.c
Log Message:
Another patch from Quietust. Made roomGFX (currently unhandled) another
kind of special costumes. Without this abuse ScummVM code will be clobbered
a lot. Also removed duplicate entries in resource tables.
Index: extract_mm_nes.c
===================================================================
RCS file: /cvsroot/scummvm/tools/extract_mm_nes.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- extract_mm_nes.c 12 Mar 2005 22:44:44 -0000 1.6
+++ extract_mm_nes.c 12 Mar 2005 23:31:22 -0000 1.7
@@ -501,25 +501,7 @@
{ {0x17F90,0x0FF23,0x17EE5,0x13EC2}, {0x003A,0x003A,0x003A,0x003A}, RES_COSTUME },
{ {0x17F90,0x0FF23,0x17EE5,0x13EC2}, {0x003A,0x003A,0x003A,0x003A}, RES_COSTUME },
{ {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_SPRDESC },
- { {0x0BFE1,0x07F71,0x07F75,0x07F29}, {0x0009,0x0009,0x0009,0x0009}, RES_SPRDESC },
- /* 27 */
- { {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_SPROFFS },
- { {0x0BFEA,0x0BEF3,0x0BF4C,0x07F32}, {0x000C,0x000C,0x000C,0x000C}, RES_SPROFFS },
- /* 31 */
- { {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_SPRPALS },
- { {0x0BFD1,0x0BEB2,0x07F65,0x07EE8}, {0x0010,0x0010,0x0010,0x0010}, RES_SPRPALS }
+ { {0x13FAB,0x0FEA2,0x17E9A,0x13E77}, {0x004B,0x004B,0x004B,0x004B}, RES_COSTUME }
};
t_resource res_globdata =
{ {0x2CA11,0x2CA11,0x2C001,0x2C628}, {0x0307,0x0307,0x0307,0x0307}, RES_GLOBDATA };
@@ -709,7 +691,7 @@
/* remaining 'standard' resources (not used by any of the original LFL files) */
p_resource lfl_53[] = { &res_rooms[53], &res_scripts[177], &res_scripts[178], &res_sounds[70], &res_sounds[71], &res_sounds[72], &res_sounds[73], &res_sounds[74], &res_sounds[75], &res_sounds[76], &res_sounds[77], &res_sounds[78], &res_sounds[79], &res_sounds[80], &res_sounds[81], NULL };
/* all 'non-standard' resources (the costume-related stuff) */
-p_resource lfl_54[] = { &res_rooms[54], &res_costumes[25], &res_costumes[26], &res_costumes[27], &res_costumes[28], &res_costumes[29], &res_costumes[30], &res_costumes[31], &res_costumes[32], &res_costumes[33], &res_costumes[34], &res_costumes[35], &res_costumes[36], NULL };
+p_resource lfl_54[] = { &res_rooms[54], &res_sprdesc[0], &res_sprdesc[1], &res_sprlens[0], &res_sprlens[1], &res_sproffs[0], &res_sproffs[1], &res_sprdata[0], &res_sprdata[1], &res_costumegfx[0], &res_costumegfx[1], &res_sprpals[0], &res_sprpals[1], NULL };
typedef struct _lfl
{
@@ -787,8 +769,8 @@
{
unsigned char room_lfl[55];
unsigned short room_addr[55];
- unsigned char costume_lfl[37];
- unsigned short costume_addr[37];
+ unsigned char costume_lfl[77];
+ unsigned short costume_addr[77];
unsigned char script_lfl[200];
unsigned short script_addr[200];
unsigned char sound_lfl[100];
@@ -902,14 +884,36 @@
lfl_index.room_addr[entry - res_rooms] = (unsigned short)ftell(output);
break;
case RES_COSTUME:
+ lfl_index.costume_lfl[entry - res_costumes] = lfl->num;
+ lfl_index.costume_addr[entry - res_costumes] = (unsigned short)ftell(output);
+ break;
case RES_SPRDESC:
+ lfl_index.costume_lfl[entry - res_sprdesc + 25] = lfl->num;
+ lfl_index.costume_addr[entry - res_sprdesc + 25] = (unsigned short)ftell(output);
+ break;
case RES_SPRLENS:
+ lfl_index.costume_lfl[entry - res_sprlens + 27] = lfl->num;
+ lfl_index.costume_addr[entry - res_sprlens + 27] = (unsigned short)ftell(output);
+ break;
case RES_SPROFFS:
+ lfl_index.costume_lfl[entry - res_sproffs + 29] = lfl->num;
+ lfl_index.costume_addr[entry - res_sproffs + 29] = (unsigned short)ftell(output);
+ break;
case RES_SPRDATA:
+ lfl_index.costume_lfl[entry - res_sprdata + 31] = lfl->num;
+ lfl_index.costume_addr[entry - res_sprdata + 31] = (unsigned short)ftell(output);
+ break;
case RES_COSTUMEGFX:
+ lfl_index.costume_lfl[entry - res_costumegfx + 33] = lfl->num;
+ lfl_index.costume_addr[entry - res_costumegfx + 33] = (unsigned short)ftell(output);
+ break;
case RES_SPRPALS:
- lfl_index.costume_lfl[entry - res_costumes] = lfl->num;
- lfl_index.costume_addr[entry - res_costumes] = (unsigned short)ftell(output);
+ lfl_index.costume_lfl[entry - res_sprpals + 35] = lfl->num;
+ lfl_index.costume_addr[entry - res_sprpals + 35] = (unsigned short)ftell(output);
+ break;
+ case RES_ROOMGFX:
+ lfl_index.costume_lfl[entry - res_roomgfx + 37] = lfl->num;
+ lfl_index.costume_addr[entry - res_roomgfx + 37] = (unsigned short)ftell(output);
break;
case RES_SCRIPT:
lfl_index.script_lfl[entry - res_scripts] = lfl->num;
@@ -920,6 +924,7 @@
lfl_index.sound_addr[entry - res_sounds] = (unsigned short)ftell(output);
break;
default:
+ error("Unindexed entry found!");
break;
}
extract_resource(input,output,entry);
More information about the Scummvm-git-logs
mailing list