Section courante

A propos

Section administrative du site

Introduction

Ce format, du nom de PRG (pour programme), et pouvant avoir comme extension de fichiers .PRG, .APP, .OVL, .TOS, .ACC, .TTP, est un exécutable destiné aux ordinateurs Atari ST du GEMDOS pour le système d'exploitation TOS.

Étant donné que le système d'exploitation d'Atari ST utilise un système de fichiers similaire à la FAT16, et que celui-ci est limité dans ses attributs de fichiers, ils utilisent différentes extensions pour catégoriser les formats d'exécutables. Voici les extensions reconnus par le système d'exploitation :

Extension Description
.ACC Cette extension de fichiers permet d'indiquer un accessoire de bureau.
.APP Cette extension de fichiers permet d'indiquer une application.
.OVL Cette extension de fichiers permet d'indiquer un exécutable de recouvrement.
.PRG Cette extension de fichiers permet d'indiquer un programme exécutable.
.TOS Cette extension de fichiers permet d'indiquer un programme TOS.
.TTP Cette extension de fichiers permet d'indiquer un programme TOS prenant des paramètres.

Un fichier exécutable est constitué d'un entête suivi par des images pour les segments de texte et de données, d'une table d'entrée de symbole contenant zéro ou plusieurs entrées, et zéro ou plusieurs enregistrements d'informations complémentaires.

Les parties d'un fichier exécutables

Structure d'entête du fichier
Segment texte
Segment de données
Symboles
Informations complémentaires

Structure d'entête du fichier

L'entête du fichier contient un nombre magique (une signature indiquant un fichier exécutable) et plusieurs double mots contenant les informations de taille. Voici la structure d'entête :

Déplacement Taille Description
00h 2 octets Ce champ permet d'indiquer la signature du fichier (nombre magique) : 601Ah
02h 4 octets (double mots) Ce champ permet d'indiquer la taille du segment texte
06h 4 octets (double mots) Ce champ permet d'indiquer la taille du segment de données
0Ah 4 octets (double mots) Ce champ permet d'indiquer la taille du segment BSS
0Eh 4 octets (double mots) Ce champ permet d'indiquer la taille de la table de symbole.
12h 4 octets (double mots) Ce champ est réservé.
16h 4 octets (double mots) Ce champ est réservé.
1Ah 4 octets (double mots) Ce champ est réservé.
1Eh variable Ce champ permet d'indiquer le début segment texte.

Structure du corps du fichier

Les images de segment de texte et de données suivent immédiatement l'entête. La table de symbole, si elle existe, suivi le segment de données. Le GEMDOS contient un double mot des informations complémentaires dans les segments de texte et de données par addition de la base du segment texte à la valeur déjà présente dans le double mot. La liste des informations complémentaires spécifies les doubles mots nécessaires à la réallocation. Le premier item dans la liste des informations complémentaires spécifie le déplacement de la première informations complémentaires; la double mot contient la valeur 0L (NULL) si aucune informations complémentaires n'est présente. Des simples octets suivent le double mot spécifié pour le déplacement des autres items d'informations complémentaires. Le double mot doit commencer dans les limites du mot ou le système plantera.

Valeur de l'octet de réallocation

Valeur Description
0 Cette valeur permet d'indiquer la fin des informations de réallocation.
1 Cette valeur permet d'indiquer qu'il faut avancer de 254 octets et demande une prochaine valeur d'octet
2, 4,..., 254 Ces valeurs permettent d'indiquer un double mot d'informations complémentaire vers le pointeur de location.
3, 5,..., 255 Ces valeurs, soit des nombres impaires, sont réservés pour un usage futur.

Voir également

Fichier EXE - Format NE

Dernière mise à jour : Mardi, le 11 juillet 2017