THE MISTERY EXAMINER
ELECTRANOID - Anatomie de l'archive RES (2026)

ENOID.RES est une archive qui regroupe toutes les ressources du jeu - images, sons, niveaux,
textes - en un seul fichier. C'est une table d'index suivie du contenu brut des fichiers,
mis bout à bout. Voici son anatomie exacte.
⊹˚₊‧───────────────‧₊˚⊹
Fichier : ENOID.RES · Taille : 167 724 octets · Entrées : 39 fichiers
⊹˚₊‧───────────────‧₊˚⊹
Le programme est écrit avec les outils de Borland, les strings sont donc toutes préfixées par leur longueur.
01 - Trois zones
Le fichier tient en trois blocs consécutifs : un en-tête de 2 octets, une table d'index, puis le contenu de chaque fichier, concaténé sans séparateur ni padding.
┌───────────┬────────────────┬─────────────────────────────────────────────────┐ │ Header │ Table d'index │ Contenu des fichiers │ │ 2 o │ 858 o │ 166 864 o │ │ NbEntries │ 39 × 22 octets │ 39 fichiers concaténés │ └───────────┴────────────────┴─────────────────────────────────────────────────┘ 0 2 860 167 724 (EOF)
Le premier Offset de la table (860) pointe exactement à la fin de la table d'index.
Header - les 2 premiers octets du fichier
0x0027 en little-endian = 39 → NbEntries, le nombre total d'entrées de l'archive.
⊹˚₊‧───────────────‧₊˚⊹
02 - Une entrée d'index, 22 octets
Juste après le header, NbEntries enregistrements consécutifs de taille fixe, un par fichier
contenu dans l'archive. Voici l'entrée n°0 telle qu'elle apparaît dans
ENOID.RES, décrivant TITLE00.SPF - le tout premier fichier de l'archive.
Entrée d'index n°0 - octets 2 à 23
Décodage de cette entrée
0x0b = 11 → nom sur 11 caractères utiles → "TITLE00.SPF" + 1
octet de padding à zéro → Offset = 0x0000035c = 860 → Size = 0x00000d06 = 3334 →
FileType = 0x02 (binaire). Le contenu de TITLE00.SPF se trouve donc exactement aux
octets 860 → 4193 de l'archive.
| Champ | Type | Description |
|---|---|---|
| FilenameLength | Byte | Longueur réelle du nom de fichier. |
| Filename | char[12] | Nom de fichier 8.3 DOS, majuscules. |
| Offset | Dword | Position absolue du contenu dans l'archive, depuis le tout début du fichier .RES. |
| Size | Dword | Taille du contenu en octets. |
| FileType | Byte | Constant par type : 0x02 (binaire) ou 0x01 (.TXT). |
03 - Les 39 entrées de ENOID.RES
Catalogue complet, dans l'ordre physique de l'archive.
| # | Nom | Offset | Taille | Type |
|---|---|---|---|---|
| 1 | TITLE00.SPF | 860 | 3 334 o | spf |
| 2 | TITLEBK.SPF | 4 194 | 1 763 o | spf |
| 3 | BACK000.SPF | 5 957 | 2 369 o | spf |
| 4 | BACK001.SPF | 8 326 | 1 644 o | spf |
| 5 | BACK002.SPF | 9 970 | 1 786 o | spf |
| 6 | BACK003.SPF | 11 756 | 1 720 o | spf |
| 7 | BACK004.SPF | 13 476 | 1 678 o | spf |
| 8 | SB_MAIN.FMF | 15 154 | 5 088 o | fmf |
| 9 | TITLENM.SPF | 20 242 | 10 977 o | spf |
| 10 | PLAYFRM.SPF | 31 219 | 3 455 o | spf |
| 11 | PLAYDROP.MPF | 34 674 | 15 871 o | mpf |
| 12 | SB_PLAY0.FMF | 50 545 | 2 514 o | fmf |
| 13 | PLAYWIN.SPF | 53 059 | 7 490 o | spf |
| 14 | PC_PLAY0.FMF | 60 549 | 789 o | fmf |
| 15 | PC_MAIN.FMF | 61 338 | 1 405 o | fmf |
| 16 | GAMELET.ANI | 62 743 | 50 741 o | ani |
| 17 | BACK005.SPF | 113 484 | 1 778 o | spf |
| 18 | BACK006.SPF | 115 262 | 2 332 o | spf |
| 19 | BACK007.SPF | 117 594 | 1 821 o | spf |
| 20 | BACK008.SPF | 119 415 | 1 787 o | spf |
| 21 | BACK009.SPF | 121 202 | 1 656 o | spf |
| 22 | PC_OVER.FMF | 122 858 | 209 o | fmf |
| 23 | SB_OVER.FMF | 123 067 | 498 o | fmf |
| 24 | ICONS.SPF | 123 565 | 11 926 o | spf |
| 25 | PLAYPCS2.SPF | 135 491 | 6 047 o | spf |
| 26 | LEVEL000.RMP | 141 538 | 238 o | rmp |
| 27 | LEVEL001.RMP | 141 776 | 238 o | rmp |
| 28 | LEVEL002.RMP | 142 014 | 238 o | rmp |
| 29 | LEVEL003.RMP | 142 252 | 238 o | rmp |
| 30 | LEVEL004.RMP | 142 490 | 238 o | rmp |
| 31 | LEVEL005.RMP | 142 728 | 238 o | rmp |
| 32 | LEVEL006.RMP | 142 966 | 238 o | rmp |
| 33 | LEVEL007.RMP | 143 204 | 238 o | rmp |
| 34 | LEVEL008.RMP | 143 442 | 238 o | rmp |
| 35 | LEVEL009.RMP | 143 680 | 238 o | rmp |
| 36 | INSTRUCT.SPF | 143 918 | 4 385 o | spf |
| 37 | PLAYPCS.SPF | 148 303 | 11 479 o | spf |
| 38 | INSTRUCT.TXT | 159 782 | 6 093 o | txt |
| 39 | HELP.TXT | 165 875 | 1 849 o | txt |
04 - Répartition par extension
Sept formats de fichiers différents cohabitent dans l'archive, voici la description connue à ce jour.
| Extension | Nombre | Description |
|---|---|---|
| .SPF | 17 fic. | Images compressées (backgrounds ou spritesheets). |
| .RMP | 10 fic. | Disposition des briques par niveau, 238 octets bruts chacun (grille 17×14, pivotée à l'affichage). |
| .FMF | 6 fic. | Ressources audio |
| .MPF | 1 fic. | |
| .ANI | 1 fic. | GAMELET.ANI - animation d'accueil |
| .TXT | 2 fic. | Texte |