Page 1 of 1

Carmageddon 1 IOS (.WAD Extracton Help)

Posted: Mon Oct 22, 2012 5:15 pm
by Rocky5
Hi, would someone with expertise look to see if its possible to extract the contents & if possible Reimport the files of this DATA_IOS.WAD please.

Here is the DATA_IOS.WAD
https://dl.dropbox.com/u/17063965/Carma ... ta_IOS.zip

Re: Carmageddon 1 IOS (.WAD Extracton Help)

Posted: Wed Oct 24, 2012 5:27 am
by WRS
this is a strange format - i cannot find the offset table

Code: Select all

int32  size (-1 if not compressed)
byte   data[ unknown_zsize ]

note: data is aligned to 4 byte blocks
if the data is compressed it uses zlib

Re: Carmageddon 1 IOS (.WAD Extracton Help)

Posted: Wed Oct 24, 2012 10:54 am
by Rocky5
Not sure if this page will help, but it seems there are 3 variations of the WAD for at 1, 2 & 3.

I think DATA_IOS.WAD is type 1 as it includes the txt files & models of the game & type 2 & 3 only do textures.

Though I'm probably wrong :-)

Link to said page.
WAD2
http://www.gamers.org/dEngine/quake/spe ... spec_7.htm
&
Doom WAD (WAD1)
http://tkboom.sourceforge.net/wadfile_spec.shtml

Re: Carmageddon 1 IOS (.WAD Extracton Help)

Posted: Wed Oct 24, 2012 1:55 pm
by Ekey
Absolute different archives

Re: Carmageddon 1 IOS (.WAD Extracton Help)

Posted: Thu Oct 25, 2012 9:25 am
by herbert3000
The program WADEdit from this site rr2000.toshiba-3.com/pc-files can unpack (and repack) the file DATA_IOS.WAD

Btw, there's an offset table at 0x11860-0x15CD3.

Re: Carmageddon 1 IOS (.WAD Extracton Help)

Posted: Thu Oct 25, 2012 12:47 pm
by Rocky5
herbert3000 wrote:The program WADEdit from this site rr2000.toshiba-3.com/pc-files can unpack (and repack) the file DATA_IOS.WAD

Btw, there's an offset table at 0x11860-0x15CD3.

I already have this app WadEdit, but it was not working on my computer (Win7, kept coming up that it wasn't responing) but redownloaded it & it now works :-/ thank you.

Not much I can edit bar in game properties :-( car models & file structure is different from the original :-(

Was trying to workout if I could have the wad point to an external folder, would have saved me rebuilding a wad every time I want to test something. (was a no go :-()

Re: Carmageddon 1 IOS (.WAD Extracton Help)

Posted: Thu Oct 25, 2012 6:22 pm
by WRS
i wanted to write a quickbms script for this, but cannot spend anymore time on the format.

i also couldn't find the file spec used by 'wadedit', so here is my current info:

Code: Select all

int32 unknown
int32 unknown
int32 unknown (0)
int32 str_table_size (including alignment)

str_table:
  null-terminated string table
  aligned to 4 bytes

int32 struct_1_num

struct_1:
  int32 index : 24 (incremental index 0 to struct_1_num)
  int32 val : 8 (always 1)
  int32 tag (not a hash)

int32 unknown (same value as struct_1_num)
int32 unknown

int32 offset_num

int32 offsets[ offset_num ] (in reverse order)

/* unknown data here */

file data:
  int32 size
  byte data[] (zsize looked up from unknown data )

  if size != -1 
    data is compressed with zlib


Re: Carmageddon 1 IOS (.WAD Extracton Help)

Posted: Mon Nov 26, 2012 12:26 am
by MrAdults
Archive, texture, and model support will be in the next Noesis. I should have that build up sometime tonight.
Image

WRS: The section you don't have figured out is laid out as:

Code: Select all

typedef struct wadFileEntry_s
{
	int				nameOfs;
	int				dataSize;
	int				entryIdx:24;
	int				entryType:8;
	int				resv;
} wadFileEntry_t;
typedef struct wadDirEntry_s
{
	int				nameOfs;
	int				numFiles;
	int				numSubDirs:24;
	int				entryType:8;
	int				resv;
} wadDirEntry_t;
If entryType is 0, it's a wadDirEntry_t, otherwise it's a wadFileEntry_t. You then run through recursively appending to your path with each nested directory entry.