Talk:PAT0 (File Format)

From Custom Mario Kart
Jump to navigation Jump to search

@Wiimm, I'm not sure about 6 sections here. I know that's the only way that our system works, but from what I've seen, the item at address 0x20 into the file is a length, and at 0x24 always seems to be 0. Only the first two pointers actually seem to be sections (though the next two also sort of work sometimes).

Chadderz 15:26, 28 June 2011 (CEST)

Some PAT Statistics

Here you can find different statistics: http://szs.wiimm.de/download/pat

header+sections.txt
  • A list with all header members and section sizes. The old statistic at this discussion page counts many more PAT hits, because the BRRES files of objects counted for every track.
s0.base.txt
  • 2 lists with all base data of section 0.
s0.string-list.txt
  • 3 lists with all string list data of section 0.
examples
  • A directory with wpatt decoded examples of all 41 different PAT files found in MKW. 3 examples use the complex output, the other 38 the simplified.

Different PAT0 format

Today I have analysed PAT0 again and I think, section 0 is total different from the description. I will goon with the analysis in the next days and will then write down my results. But I will ask, if anyone can confirm or disagree the current description.

-- Wiimm (talk) 00:36, 9 April 2015 (UTC)

I disagree with the current description also. Just looking at my unfinished PAT0 editor for CTools, I seem to parse a BRRES Index Group at section #0 offset. This then points to entries which match the format described in the section 0 section on the page. I then parse the rest of the file by looking at NSTR and reading that many values from section 1 and section 3. A comment in my code says "Something is wrong with these; misinformation?" so obviously I found a problem when I wrote it. I resolve section 1 values to strings, but I don't do anything further with section 3 values. I ignore section 2.
Chadderz (talk) 05:37, 9 April 2015 (UTC)
For the moment I'm ready with section #0. Now (in some days?) I will write some analyses code that lists all PAT data found in MKW to compare the values and also to verify the new data structure. Then I will also compare the old description.
Wiimm (talk) 10:39, 9 April 2015 (UTC)
Ah, so that's why Wiimms SZS Tools have been destroying my PAT0s. :p --Torran (talk) 13:21, 9 April 2015 (UTC)
Only, if the data structure differs from the standard (hope so). That's a problem of creating from scratch. I had tested extraction and composition of BRRES files without faults, but when data is moved, a wrong string offset calculation can make it invalid.
Wiimm (talk) 19:12, 9 April 2015 (UTC)
My analysis is complete for the moment. Now I'm theoretical able to create a PAT file from scratch scanning a self made text file (like the KMP compiler).
Wiimm (talk) 23:08, 9 April 2015 (UTC)