Author Topic: ins-wp.trid.xml for WordPerfect Install options *.INS  (Read 903 times)

jenderek

  • Sr. Member
  • ****
  • Posts: 375
ins-wp.trid.xml for WordPerfect Install options *.INS
« on: August 26, 2022, 12:22:15 AM »
Hello trid users,

some days ago i handled WordPerfect files with name extension CBT. So i
looked for other WordPerfect samples. There exist samples with INS file name
extension and names like: WP51.INS

I found no information especially about file format specification about such
WordPerfect files, but luckily some basic info are found in unofficial
WordPerfect File Format description WPFF_DocumentStructure.htm. So i choose
that page as reference. That is expressed by line like:
 <RefURL>
  https://github.com/OneWingedShark/WordPerfect/blob/master/
 doc/SDK_Help/FileFormats/WPFF_DocumentStructure.htm
 </RefURL>

When i run TrID on such examples these are described correctly but
unspecific like "WordPerfect (generic)" by definition wp-generic.trid.xml
(see appended output/trid-v-old.txt).

For comparison reason i also run the file utility (version 5.42). This
describes the examples as "Corel WordPerfect" with sub classification as
"filetype 41" and version "v1.0" (see appended output/file-5.42.txt).

In the unofficial documentation for INS file type 20 (0x14) is listed and
this is called here "install options file". Furthermore i looked how other
call DRS samples. I found something like " Corel WordPerfect data" or "Data
- WordPerfect".  So i choose what seems to fit best the file name suffix.
So i express this inside TrID definition by lines like:
      <FileType>WordPerfect Install options</FileType>
      <Ext>INS</Ext>

When looking inside sample i found strings like "C:\WP51\".  That is the
default installation directory for WordPerfect version 5.1.  So i know that
this classification is alright.

So i run tridscan on example to generate ins-wp.trid.xml. So we see that not
only the first 4 bytes are the same like \xFFWPC that is generic for all
WordPerfect samples, but also the first bytes are the same. That is
expressed by XML construct like:
 <Bytes>FF5750431000000001290100000000000E06433A5C575035315C0000</Bytes>
 <ASCII> . W P C . . . . . ) . . . . . . . . C : \ W P 5 1 \</ASCII>
 <Pos>0</Pos>

Unfortunately the definition is based only on 1 sample.  At offset 4 pointer
to document area is stored as 4 byte little endian integer. In my example
this value was 16 ( hexadecimal 10). So the 3 upper bytes are nil by lucky
circumstances in my examples.  At offset the 8 and 9 the product and file
type are stored. In my example this value was always 1 and 41 ( hexadecimal
29). That is significant for WordPerfect install options files according to
documentation.  At offset 10 the major version and minor version fields are
stored as byte value. In my example this value was v1.0 ( hexadecimal 0100).
Assuming that there exist examples with other document area offset and other
version numbers this becomes according to documentation like:
      <Pattern>
         <Bytes>FF575043</Bytes>
         <ASCII> . W P C</ASCII>
         <Pos>0</Pos>
      </Pattern>
      <Pattern>
         <Bytes>0129</Bytes>
         <Pos>8</Pos>
      </Pattern>

At offset 12 encryption field is stored. In my examples this was always
zero. At offset 14 pointer to index area is stored. In my examples this
value was always zero. At offset 16 not documented extended header
starts. In my examples this value always starts with byte sequence
0e06433a5c575035315c. So this is mainly the default installation directory
C:\WP51\ . But i do not know if this always true. So i delete these parts
concerning patterns.

With the new definition now WordPerfect Install options INS example is
described more precisely ( see appended output/trid-v-new.txt). TrID
definition and output are stored in archive ins_.zip. I hope that the XML
file can be used in future version of triddefs.

With best wishes
Jörg Jenderek

Mark0

  • Administrator
  • Hero Member
  • *****
  • Posts: 2743
    • Mark0's Home Page
Re: ins-wp.trid.xml for WordPerfect Install options *.INS
« Reply #1 on: September 03, 2022, 05:53:11 PM »
Thanks!