Line 24: | Line 24: | ||
* hitxxx.bin -> (les 54 fichiers) | * hitxxx.bin -> (les 54 fichiers) | ||
* Header: (0x8 octets) | * '''Header''': (0x8 octets) | ||
** 4 octets - STIH | ** 4 octets - STIH | ||
** 4 octets - file_length - taille totale du fichier | ** 4 octets - file_length - taille totale du fichier | ||
* Section 0 | * '''Section 0''' | ||
** 4 octets [2] - Inconnu - ne désigne pas d'offset, on dirait une taille (500 ?) | ** 4 octets [2] - Inconnu - ne désigne pas d'offset, on dirait une taille (500 ?) | ||
** 4 octets [2] - Inconnu - ne désigne pas d'offset, on dirait une taille (42 ?) | ** 4 octets [2] - Inconnu - ne désigne pas d'offset, on dirait une taille (42 ?) | ||
Line 33: | Line 33: | ||
** 4 octets - Inconnu (32 ?) | ** 4 octets - Inconnu (32 ?) | ||
** 4 octets - offset data block 2 - fin du data block 1 - adresse à laquelle il faut ajouter la taille du header (8) | ** 4 octets - offset data block 2 - fin du data block 1 - adresse à laquelle il faut ajouter la taille du header (8) | ||
* Table de Relocations | * '''Table de Relocations''' | ||
** 4 octets [3528] | ** 4 octets [3528] | ||
** Les adresses sont relatives à la fin du Header, on y ajoutera alors 8 pour obtenir les adresse dans le fichier. Pointe sur de petites structures (4 - 8 - 12 octets). On remarque l'usage de FF FF FF FF sur toute cette zone adressée par les relocs qui d'un coup se transforme en l'usage de CC CC CC CC juste après la dernière adresse de la table. | ** Les adresses sont relatives à la fin du Header, on y ajoutera alors 8 pour obtenir les adresse dans le fichier. Pointe sur de petites structures (4 - 8 - 12 octets). On remarque l'usage de FF FF FF FF sur toute cette zone adressée par les relocs qui d'un coup se transforme en l'usage de CC CC CC CC juste après la dernière adresse de la table. | ||
* Data block 1 | * '''Data block 1''' | ||
* Data block 2 | ** Contient de petites structures qui semblent adresser le Data block 2 | ||
* '''Data block 2''' | |||
** On remarque l'usage de CC CC CC CC qui est inhabituel. Cela semble remplacer FF FF FF FF et il s'agit peut être ici d'un xor de tout le block avec 0x33, ou d'une normalisation pour ne pas utiliser FF FF FF FF dans tout ce block. | |||
[[Catégorie:Format de fichier]] | [[Catégorie:Format de fichier]] | ||
[[Catégorie:Gotcha Force]] | [[Catégorie:Gotcha Force]] |
Revision as of 09:50, 17 February 2022
Cette section a besoin de beaucoup de recherche.
Des recherches sur comment fonctionne le header et comment interagit le fichier sont nécessaire.
Format
On retrouve des groupes de fichiers BIN ayant une même taille de fichier (version NTSC) :
- 432 - 198 fichiers
- 864 - 10 fichiers
- 7840 - 209 fichiers
On retrouve ensuite plus de 150 tailles différentes apparaissant moins de 10 fois.
Le PGCD des tailles de tous les BIN est 4.
Header
Le magic number "STIH" désigne les fichiers HITS (big endian) :
- gets.pzz -> 008, 009, 010
- stxx.pzz -> 001, 002, 003
- hitxxx.bin -> (les 54 fichiers)
- Header: (0x8 octets)
- 4 octets - STIH
- 4 octets - file_length - taille totale du fichier
- Section 0
- 4 octets [2] - Inconnu - ne désigne pas d'offset, on dirait une taille (500 ?)
- 4 octets [2] - Inconnu - ne désigne pas d'offset, on dirait une taille (42 ?)
- 4 octets [2] - entier signé (-11000 ?)
- 4 octets - Inconnu (32 ?)
- 4 octets - offset data block 2 - fin du data block 1 - adresse à laquelle il faut ajouter la taille du header (8)
- Table de Relocations
- 4 octets [3528]
- Les adresses sont relatives à la fin du Header, on y ajoutera alors 8 pour obtenir les adresse dans le fichier. Pointe sur de petites structures (4 - 8 - 12 octets). On remarque l'usage de FF FF FF FF sur toute cette zone adressée par les relocs qui d'un coup se transforme en l'usage de CC CC CC CC juste après la dernière adresse de la table.
- Data block 1
- Contient de petites structures qui semblent adresser le Data block 2
- Data block 2
- On remarque l'usage de CC CC CC CC qui est inhabituel. Cela semble remplacer FF FF FF FF et il s'agit peut être ici d'un xor de tout le block avec 0x33, ou d'une normalisation pour ne pas utiliser FF FF FF FF dans tout ce block.