Je suis en train de farfouiller les relogements, et j'avoue que ProgFormatV4.txt passe un poil vite sur certains détails (comme il le dit, d'ailleurs).
Par exemple, ici :
LibImport ???? The reloc tables of the libraries.
'NLib' times :
+ 1 word : Number of the imported functions of this library minus 1.
+ Number of imported functions times :
+ 1 word : Import Library Function number.
+ A reloc table.
SECTION 2 Import table of the RomCalls.
IsRomCall 2 0 if there is no RomCall, otherwise 1.
NumRomCall 2 Number of used RomCalls minus 1.
????? Number of RomCalls times:
+ 1 word : Number of the used RomCall.
+ A reloc table.
Quel est le format de ces tables de relogements ?
- offset depuis origin (2 bytes)
- numéro de fonction/romcall (2 bytes)
?
Quel est le format pour la table de relogement du programme ?
- offset de l'adresse où l'on va écrire
- offset de l'adresse qu'on va écrire
?
Quel est le format de la table de relogement sous AMS ?
Je sais qu'il est différent, je crois que les valeurs sont inversées dans la table, non ?
Parce que le détail donné ici :
+---------------------------------------------------------------+
| RelocTable Format |
+---------------------------------------------------------------+
A null terminated list of offset (Word) from _origin
which have to be relocated with this address.
je ne le comprends pas.
Avec une table d'offset, on va savoir
où reloger, ou
quelle adresse reloger, mais il y a bien deux éléments distincts dans un relogement...
Qui plus est, à la fin de la table, on doit mettre un seul word à 0, pas un longword ?
Merci d'avance.
