home *** CD-ROM | disk | FTP | other *** search
-
-
- AZap - Manuel de référence
-
-
-
-
-
- AboutThisDoc
-
- Ce manuel décrit la version 2.20 de l'utilitaire AZap. Ce programme
- est (c)1992-1994 par Denis GOUNELLE, toute utilisation commerciale ou vente
- sans autorisation écrite est strictement interdite. Vous pouvez copier et
- diffuser ce programme aux conditions suivantes :
-
- - l'ensemble des fichiers doit être fourni
- - aucun fichier ne doit avoir été modifié
- - vous ne devez pas demander plus de 40FF pour cela
-
- Malgré de nombreux tests, je ne peux garantir que AZap ne contient
- aucune erreur. VOUS UTILISEZ CE PROGRAMME A VOS RISQUES ET PERILS. Je ne
- pourrai en aucun cas être tenu pour responsable de tout dommage, direct ou
- indirect, résultant de l'utilisation de AZap.
-
- Introduction
-
- AZap est un éditeur binaire "nouvelle génération", capable d'éditer
- aussi bien un fichier que la mémoire, ou encore une disquette (même s'il
- n'offre pas d'outils pour vous aider à récupérer une disquette endommagée).
- AZap peut ouvrir plusieurs fenêtres d'édition en même temps et dispose de
- nombreuses fonctions, comme l'impression d'un bloc, le remplissage d'un
- bloc, la recherche d'une chaine, etc...
-
-
-
- NOTE IMPORTANTE :
-
- Il est interdit de se servir de ce programme pour modifier
- des indications de copyright, ou pour toute autre usage
- contraire à la loi. De plus, je déconseille vivement aux
- utilisateurs non expérimentés d'utiliser ce programme : vous
- risquez de rendre des programmes inutilisables, ou de perdre
- toutes les informations stockées sur votre disque dur !
-
- Vos critiques et suggestions sur ce programme seront toujours les
- bienvenues. N'hésitez pas à m'écrire, à l'adresse suivante :
-
- M. GOUNELLE Denis
- 27, rue Jules GUESDE
- 45400 FLEURY-LES-AUBRAIS
- FRANCE
-
- Vous pouvez également m'adresser un message à l'adresse Internet
- "gounelle@alphanet.ch". Notez qu'il s'agit d'une boite à lettre mise à ma
- disposition par un ami, aussi veuillez n'envoyer que de courts messages. De
- plus, n'ayant pas accès directement à mes messages, n'espérez pas avoir une
- réponse avant une dizaine de jours.
-
- Merci à Pierre Ardichvili, Reza Elghazi, Yves Perrenoud, et
- Jean-Yves Proux pour leurs suggestions.
-
- Installation
-
- AZap utilise la bibliothèque "reqtools.library" (version 2.0C ou
- supérieure), que vous devez copier dans votre répertoire "LIBS:", si ce
- n'est déjà fait. La bibliothèque "reqtools.library" est (c)1990-1993 par
- Nico FRANCOIS.
- AZap est désormais localisé, c'est-à-dire qu'il peut s'adapter à la
- langue par défaut si vous avez le système 2.1 ou plus. Il vous faudra alors
- copier le fichier catalogue désiré dans le répertoire correspondant à votre
- langue par défaut. Par exemple, s'il s'agit du français, copiez le fichier
- "français.catalog" dans le répertoire "SYS:Locale/Catalogs/Français", sous
- le nom "AZap.catalog"
-
- Appel_depuis_le_CLI
-
- AZap se détache automatiquement du CLI. Les arguments acceptés sont
- les suivants :
-
- WBENCH
- Normalement, AZap ouvre son propre écran. Cette option permet de
- travailler sur l'écran Workbench.
-
- LACE
- Si cette option est présente, AZap ouvre un écran entrelacé au
- lieu d'un écran normal. Notez que cette option est ignorée si
- vous avez indiqué l'option WBENCH.
-
- FONT nom
- Par défaut, AZap utilise une police interne de 6x9. Vous pouvez
- cependant demander à utiliser une autre police : "nom" doit être
- sous la forme <nom de la police><taille en Y> (par exemple
- "courier9"). AZap refusera si la police est proportionnelle, ou
- si elle est trop grande pour pouvoir afficher un bloc de 512
- octets.
-
- MEMORY
- Au démarrage, AZap ouvre une fenêtre d'édition de la mémoire.
-
- DEVICE nom
- Au démarrage, AZap ouvre une fenêtre d'édition pour l'unité
- "nom". N'oubliez pas les deux-points (":") à la fin du nom.
-
- Tout autre argument est considéré comme un nom de fichier à ouvrir. Vous
- pouvez indiquer plusieurs noms de fichiers, mais seuls les huit premiers
- seront pris en compte. Il est bien évidemment possible d'indiquer à la fois
- des noms de fichiers, l'option MEMORY, et l'option DEVICE. Si aucun argument
- n'est indiqué, une requête de fichier apparait (voir Le_menu_Projet) pour
- que vous puissiez sélectionner le fichier à éditer.
-
- Appel_depuis_le_Workbench
-
- Vous pouvez indiquer les arguments suivants, dans le champ "TOOL
- TYPES" de l'icône de AZap :
-
- OPTIONS=WBENCH ou OPTIONS=LACE
- Voir description des options WBENCH et LACE au chapitre
- Appel_depuis_le_CLI.
-
- FONT=nom
- Voir description de l'option FONT au chapitre précédent
- Appel_depuis_le_CLI.
-
- Vous pouvez passer une icône en argument, par la méthode habituelle. Cette
- icône peut être une icône de fichier ou de volume. Sinon, une requête de
- fichier apparait (voir Le_menu_Projet) pour que vous puissiez sélectionner
- le fichier à éditer.
-
- La_fenêtre_d'édition
-
- La partie gauche de l'affichage montre le contenu du bloc en
- hexadécimal, par groupe de 4 octets. La partie droite montre l'équivalent en
- caractères, les codes non imprimables étant remplacés par un point (".").
- En bas et à droite sont affichées quelques informations : l'adresse
- du bloc (relative au début, en hexadécimal), le déplacement dans le bloc (en
- hexadécimal), le numéro de bloc (relatif au début, en décimal), et le type
- de bloc. Cette dernière information n'a de sens que quand vous éditez une
- unité DOS. Quand les données du bloc ont été modifiées, une étoile ("*") est
- affichée à droite de la première ligne. Si la somme de contrôle du bloc est
- valide, le caractère "V" est affiché à droite de la seconde ligne (n'a de
- sens que quand vous éditez une unité DOS).
-
- A l'ouverture de la fenêtre, le permier bloc est affiché, et le
- curseur est positionné sur le premier caractère de la partie droite. La
- position correspondante dans l'autre partie est montrée par un affichage
- dans une couleur différente. Vous pouvez vous déplacer à l'aide des touches
- du curseur. Pour passer de la partie droite à la partie gauche (et
- inversement) utilisez la touche de tabulation. Vous pouvez également vous
- positionner n'importe où à l'aide de la souris. Pour modifier les données,
- tapez simplement les nouvelles valeurs. Dans la partie gauche, seuls les
- caractères "0" à "9", "a" à "f" et "A" à "F" sont acceptés. AZap garde en
- mémoire les 32 dernières modifications. Tant que vous n'avez pas changé de
- bloc, vous pouvez annuler ces changements en sens inverse, à l'aide de la
- touche <ESC>. Les touches suivantes sont également reconnues :
-
- ctrl-haut va en début de fichier
- ctrl-bas va en fin de fichier
- ctrl-gauche va au bloc précédent
- ctrl-droit va au bloc suivant
- shift-haut va sur la première ligne
- shift-bas va sur la dernière ligne
- shift-gauche va au début de la ligne
- shift-droit va en fin de ligne
-
- La rangée de boutons en bas de la fenêtre offre les fonctions
- suivantes (de gauche à droite) : aller au premier bloc, aller au bloc
- précédent, écriture des modifications, aller au bloc suivant, aller au
- dernier bloc. Le bouton tout à droite (GOTO) provoque l'apparition d'une
- boite de requête. Vous êtes alors invité à entrer une adresse, sous une des
- formes suivantes :
-
- nbr saut à l'adresse 'nbr'
- §nbr saut au bloc 'nbr'
- @nbr saut à l'adresse contenue dans le long mot à l'adresse
- 'nbr' (utilisable seulement en édition de mémoire)
- #nbr saut à la zone mémoire numéro 'nbr' (utilisable
- seulement en édition de mémoire)
-
- Dans tous les cas, 'nbr' est une expression entière, dont la syntaxe est
- décrite au chapitre "Syntaxe_des_expressions".
- L'ascenseur en bas de la fenêtre permet également le déplacement.
- Notez que, dans tous les cas, si vous changez de bloc sans sauvegarder vos
- modifications, elles seront perdues !
-
- Les fenêtres d'édition sont toutes déclarées en "AppWindow", ce qui
- veut dire que si vous lachez une icône au-dessus d'une fenêtre d'édition,
- une nouvelle fenêtre d'édition sera automatiquement ouverte pour le fichier
- ou volume correspondant.
-
- Pour fermer la fenêtre d'édition, il vous suffit de cliquer sur son
- gadget de fermeture. Si le bloc a été modifié mais non sauvé, AZap vous
- demandera confirmation. Le programme s'arrête automatiquement quand vous
- fermez la dernière fenêtre.
-
- Le_menu_Projet
-
- Ouvre fichier...
- Permet d'éditer un fichier : une requête de fichier apparait,
- sélectionnez le fichier désiré. AZap ouvre alors une fenêtre
- supplémentaire d'édition. Si vous avez sélectionné "RAM:", la
- fenêtre sera une fenêtre d'édition de la mémoire. Si vous avez
- sélectionné un nom d'unité (par exemple "DH0:" ou "Work:"), AZap
- ouvrira une fenêtre d'édition d'unité.
-
- Ouvre mémoire
- Ouvre une fenêtre supplémentaire, permettant l'édition de la
- mémoire.
-
- Ouvre unité
- Un sous-menu vous permet de sélectionner l'unité à éditer. AZap
- ouvre alors une fenêtre supplémentaire d'édition.
-
- Palette...
- Vous permet de modifier les couleurs de l'écran (une requête de
- couleur apparait).
-
- Sauve prefs
- Vous permet de sauvegarder la configuration de AZap : les
- couleurs de l'écran et la police de caractères. Les options de
- la fenêtre courante sont également enregistrées comme options
- par défaut. Le nom du fichier de configuration est
- "S:AZap.Config".
-
- A propos...
- Affiche des informations sur le programme.
-
- Quitte
- Termine l'exécution de AZap. Le programme vous demandera
- confirmation.
-
- Le_menu_Edite
-
- Annule
- Relit le bloc courant. Ceci permet d'annuler toutes les
- modifications, tant que vous ne les avez pas enregistrées.
-
- Revient
- Chaque fois que vous vous déplacez avec les boutons "aller au
- premier bloc", "aller au dernier bloc", ou "GOTO", l'ancienne
- position est conservée en mémoire, et cette commande vous permet
- d'y revenir par la suite. L'ancienne position est également
- mémorisée dans ce cas, ce qui peut être utile si vous travaillez
- toujours sur les deux mêmes blocs.
-
- Bloc suivant
- Lorsque vous éditez une unité DOS, cette commande vous permet
- d'aller soit au premier bloc de données (si vous êtes sur une
- entête de fichier), soit au bloc suivant (si vous êtes sur un
- bloc de données d'une disquette en OFS).
-
- Bloc parent
- Lorsque vous éditez une unité DOS et que le bloc courant est une
- entête de fichier (ou un répertoire), cette commande vous permet
- d'aller au bloc de type "répertoire" correspondant au répertoire
- père de ce fichier (ou répertoire).
-
- Bloc racine
- Lorsque vous éditez une unité DOS, cette commande vous permet de
- vous positionner directement sur le bloc racine de cette unité.
-
- Bloc d'entête
- Lorsque vous éditez une unité DOS, cette commande vous permet de
- vous positionner sur le bloc d'entête (de fichier ou de
- répertoire) suivant.
-
- Dans les quatre cas précédents, l'ancienne position est mémorisée
- afin que vous puissiez y revenir avec la commande "Revient" (voir
- chapitre "Le_menu_Edite").
-
- Le_menu_Outils
-
- Infos
- Affiche les caractéristiques de ce que vous éditez
- (fichier/mémoire/unité).
-
- Examine
- Lorsque vous éditez une unité DOS et que le bloc courant est un
- bloc d'entête, cette commande vous permet d'afficher les mêmes
- informations que la commande "Infos" sur le fichier ou
- répertoire correspondant à ce bloc d'entête.
-
- Imprime...
- Vous permet d'imprimer un ou plusieurs blocs à partir du bloc
- courant. Une boite de requête apparait pour vous permettre
- éventuellement d'envoyez la sortie vers un fichier, plutôt que
- vers l'imprimante ("PRT:"). AZap vous demandera ensuite le
- nombre de bloc à imprimer.
-
- Conversion
- Fait apparaitre une fenêtre supplémentaire, avec quatre gadgets,
- qui vous permet d'effectuer des conversions entre nombres
- binaires, décimaux, hexadécimaux et chaines de caractères. Toute
- valeur saisie, c'est-à-dire une expression complête pour les
- gadgets "BIN", "DEC", et "HEX" ou une chaine de caractères pour
- le gadget "ASC", est convertie dans les autres unitées. Notez
- que cette fenêtre ne bloque pas les fenêtres d'édition.
-
- Sauve bloc
- Vous permet de sauver le contenu d'un ou de plusieurs blocs à
- partir du bloc courant. Une requête de fichier apparait pour
- vous permettre d'indiquer le fichier où sauver les blocs. AZap
- vous demandera ensuite le nombre de bloc à sauver.
-
- Remplit bloc...
- Vous permet de mettre tous les octets du bloc courant à la même
- valeur. Une boite de requête apparait, entrez la valeur
- désirée : soit 'c' pour remplir avec le caractère "c", soit un
- nombre qui indique le code ASCII du caractère (précédé par "0x"
- pour une valeur hexadécimale).
-
- Le_menu_Recherche
-
- Cherche...
- Vous permet de commencer une recherche. Une boite de requête
- apparaît, entrez la valeur à chercher : soit une valeur
- hexadécimale (précédée par "0x", attention à donner un nombre
- pair de chiffres), soit une chaine de caractère (recherche
- ASCII). Pour chercher une chaine commençant par "0x", mettez
- toute la chaine entre guillemets.
-
- Cherche texte...
- Vous permet de chercher des suites de caractères affichables.
- Cela peut être utile par exemple pour chercher une zone de
- textes. Une boite de requête apparaît, entrez le nombre minimal
- de caractères que doit avoir une suite pour être prise en
- compte. Une valeur inférieure à 4 n'est en général pas très
- intéressante.
-
- Cherche suivant
- Vous permet de poursuivre la recherche à partir de la position
- courante.
-
- Dans les trois cas précédents, si la valeur que vous avez entrez est
- trouvée, AZap se positionne automatiquement à l'endroit
- correspondant. L'ancienne position est mémorisée afin que vous
- puissiez y revenir avec la commande "Revient" (voir chapitre
- "Le_menu_Edite"). Il est possible d'interrompre la recherche, et
- AZap est capable de trouver une chaine à cheval sur deux blocs.
-
- Cherche fichier
- Vous permet de vous positionner directement sur le bloc d'entête
- d'un fichier ou d'un répertoire. Une requête de fichier
- apparait, pour que vous puissiez sélectionner le fichier à
- chercher. AZap ouvre alors une fenêtre d'édition sur l'unité
- correspondante, et se place sur le bloc d'entête du fichier.
-
- Le_menu_Options
-
- Notez que les options sont locales à chaque fenêtre : changer une
- option n'affectera que la fenêtre courante. Lorsque vous ouvrez une nouvelle
- fenêtre, elle hérite des options de la fenêtre courante.
-
- Somme de contrôle
- Vous permet d'indiquer à AZap quand il doit recalculer les
- sommes de contrôle des blocs (ceci n'est pris en compte que si
- vous éditez une unité). Les choix sont : "Recalcule" (AZap
- recalcule la somme de contrôle pour *TOUS* les blocs), "Demande"
- (AZap vous posera la question à chaque écriture), "Blocs 0 & 1"
- (seulement pour le bloc d'amorçage) et "Automatique" (seulement
- si la somme de contrôle était correcte à la lecture).
-
- Sauveg. auto
- AZap sauvegarde automatiquement tout bloc modifié dès que vous
- demandez à changer de bloc.
-
- Lecture seule
- AZap interdit toute modification des données.
-
- min = MAJ
- Indique si les majuscules et les minuscules seront différenciées
- ou non lors des recherches.
-
- Copie de sauveg.
- Indique si AZap doit créer une copie de sauvegarde des fichiers
- édités. Si cette option est sélectionnée, à la prochaine
- tentative d'écriture, une boite de requête apparaitra pour vous
- demander le nom de la copie à créer. AZap fera alors une copie
- du fichier, avant d'enregistrer vos modifications. En cas
- d'erreur pendant la copie, la boite de requête réapparaitra,
- pour vous permettre d'indiquer un autre nom. Si vous cliquez sur
- "Cancel", aucune copie ne sera faite mais les modifications
- seront enregistrées quand même.
-
- Syntaxe_des_expressions
-
- AZap est capable de calculer des expressions entières. La base par
- défaut est soit le décimal pour la saisie des adresses (gadget "GOTO") soit
- la base correspondant au gadget pour la fenêtre de conversion. Il est
- possible de préciser la base, en préfixant un nombre par "%" pour le
- binaire, "#" pour le décimal, et "$" ou "0x" pour l'hexadécimal. Les
- opérateurs connus sont :
-
- + addition
- - soustraction
- | "ou" logique
- & "et" logique
- * multiplication
- / division entière
- % reste de la division entière
- < décalage à gauche
- > décalage à droite
-
- Normalement, les opérateurs "*", "/", "%", "<" et ">" sont plus prioritaires
- que les autres, mais vous pouvez utiliser des parenthèses. En cas d'erreur
- de syntaxe, le résultat d'une expression sera égal à -1.
-
- Remarques_importantes
-
- Lors du démarrage du programme, AZap consulte la structure ExecBase
- pour connaitre votre configuration mémoire. Seules les zones indiquées dans
- les listes de gestion de mémoire peuvent être éditées. Sauf lors des
- recherches, AZap considère ces zones comme contigües et passe
- automatiquement de l'une à l'autre. Utilisez la commande "Infos" (voir
- chapitre "Le_menu_Outils" pour avoir la liste des zones mémoires. Notez que
- la lecture et l'écriture des blocs mémoire se fait après blocage temporaire
- du multi-tâches, afin d'éviter des conflits d'accès.
-
- Lorsque vous ouvrez une fenêtre d'édition sur une unité, AZap est
- capable de détecter son type. Certaines opérations seront impossibles sur
- une unité non AmigaDOS (commandes "bloc suivant", "bloc père" et "bloc
- racine", voir chapitre "Le_menu_Edite"), mais pensez à désactiver le
- recalcul de la somme de contrôle ! Le programme sait reconnaitre le système
- de fichier utilisé (OFS = Old File System, FFS = Fast File System) et gérer
- ces deux systèmes.
-
- Historique
-
- AZap a été écrit principalement en langage C, sur un Amiga 3000
- UNIX-1 (10 Mo de mémoire, lecteur de disquettes interne HD, disques internes
- de 100 Mo et 160 Mo, lecteur SyQuest externe de 88 Mo, lecteur de disquettes
- externe, moniteur 1960 et imprimante Star LC24-10) connecté par un cable
- null-modem à un A500 avec 1 Mo de mémoire.
-
- v1.00 14-Oct-92, 36084 octets (Fish #759)
- o Première version diffusée
-
- v1.01 16-Oct-92, 36084 octets
- o Bug corrigé: ne marchait pas si l'écran public par défaut faisait
- moins de 648 pixels de large
-
- v1.10 15-Nov-92, 36960 octets
- o Ajout des commandes "Bloc d'entête" et "Examine"
- o Après une requête de fichier, ouvre une fenêtre mémoire si on a
- choisi "RAM:" ou une fenêtre d'unité si on a choisi un nom d'unité
- (e.g. "DH0:")
-
- v1.11 21-Nov-92, 36976 octets
- o Bug corrigé: ne comprenait plus la forme "§n" pour le GOTO.
-
- v1.20 25-Dec-92, 40000 octets
- o Compilé avec le SAS/C 6.1
- o Ajout de la fonction "Cherche fichier"
- o La requête de la commande "GOTO" conserve l'ancienne valeur saisie
- o Si une recherche de chaine échoue, affiche un message "toto non
- trouvé"
- o Les unités peuvent être désignées par leur nom logique (à l'appel
- et dans la requête de fichier, sauf RAM:)
-
- v1.30 02-Jan-93, 40612 octets
- o Ajout de la fonction "Sauve bloc"
- o La fonction "Imprime" demande le nombre de blocs à imprimer
- o La fonction "Infos" donne le type de disque (OFS/FFS/NDOS)
- o Fonctions de recherche regroupées dans un nouveau menu
- o Fonction "Remplit bloc" déplacée dans le menu "Outils"
- o Quelques erreurs corrigées dans la gestion de la police par
- défaut, et de l'écran WorkBench
-
- v2.00 07-Feb-93, 42116 octets
- o Compilé avec le SAS/C 6.2
- o Entièrement localisé
-
- v2.01 21-Feb-93, 41768 octets
- o Gestion de la requête de fichier améliorée
- o Quelques erreurs corrigées dans la gestion des options des
- fenêtres
-
- v2.02 13-Mar-93, 42264 octets
- o Plus de gourous avec un 68000 (quelques pointeurs mal alignés)
- o Se détache à nouveau du CLI
- o La fenêtre "A propos..." a un gadget de fermeture
-
- v2.03 15-Apr-93, 42292 octets
- o Quelques erreurs corrigées dans l'évaluation des expressions
- o Erreur corrigé: oubliait parfois de remettre à zéro l'indicateur
- "bloc modifié" quand on changait de bloc
-
- v2.04 24-Apr-93, 42468 octets (Fish #875)
- o Indique le nom complet des fichiers dans le titre de la fenêtre et
- dans la fenêtre "info"
- o Reconnait tous les systèmes de fichiers de l'OS 3.0
- o Quelques erreurs corrigées dans la gestion des menus
-
- v2.05 10-May-93, 42604 octets
- o Plusieurs erreurs corrigées dans la fonction de recherche (hexa et
- chaine)
-
- v2.06 18-May-93, 42692 octets
- o Quelques erreurs corrigées dans la fonction de convertion
- (bin/dec/hex/asc)
-
- v2.07 03-Jul-93, 43548 octets
- o Compilé avec le SAS/C 6.3
-
- v2.08 29-Jul-93, 43580 octets
- o En cas d'erreur de lecture sur une disquette ou un disque, fait
- flasher l'écran et affiche un secteur à zéro.
-
- v2.10 15-Sep-93, 44200 octets
- o Ajout d'un ascenseur en bas de la fenêtre
- o Utilise les nouvelles versions des fonctions GetDefaultTextFont()
- et OuvreEcran()
-
- v2.11 22-Sep-93, 44184 octets (Fish #934)
- o Erreur très drôle corrigée dans la recherche: en cas d'échec,
- l'affichage n'était pas mis à jour. Du coup, les valeurs des
- octets étaient modifiées quand on déplaçait le curseur. Dans
- certain cas on pouvait même faire descendre le curseur en dessous
- de la dernière ligne, et les valeurs des octets s'affichaient par
- dessus les boutons.
-
- v2.12 02-Oct-93, 44216 octets
- o Plusieurs erreurs corrigées dans la gestion de l'ascenseur:
- division par zéro quand le fichier faisait moins de 512 octets,
- "knob" remplissant tout le containeur quand le fichier faisait
- deux secteurs, etc...
-
- v2.13 30-Oct-93, 44332 octets
- o On peut passer une icône en argument lors d'un appel depuis le
- Workbench
-
- v2.14 26-Dec-93, 42776 octets
- o Gère les caractères accentués (ne les considère plus comme non
- affichables)
- o La fonction "cherche suivant" commence après la dernière chaine
- trouvée
- o Compilé avec le SAS/C 6.50
-
- v2.20 17-Apr-94, 43168 octets
- o Toutes les fenêtres d'édition sont maintenant des "AppWindow", et
- permettent donc le laché d'icône
- o Compilé avec le SAS/C 6.51
-
- v2.21 21-May-94, 43168 octets
- o Interface légèrement modifiée pour pouvoir (enfin !) fonctionner
- sur un écran de 640x200.
-