CODING ★ INITIATION A CP/M 7 - CPC n°13 ★

Initiation a CP/M (07/xx) (CPC Revue n°13)

Nous terminons l'étude des commandes externes se rapportant à la gestion des fichiers et du système en général.

STAT

Spécifique CP/M 2.2, cette commande permet d'effectuer en partie les mêmes opérations que SET et SHOW en CP/M Plus.

Voyons donc les différentes syntaxes possibles suivant la fonction désirée :

Indications sur la taille des fichiers

Syntaxe :

STAT d: | Nom de fichier $S En voici quelques exemples :

A>STAT

Sans paramètres donne la place libre sur tous les disques ayant été accédés, ainsi que l'indication de la protection logique en écriture IR/O si protégé et R/W sinon). A > STAT b:

Donne la place libre en kilo-octets sur le disque B:

A > STAT *.*

Donne toutes les indications de taille, protection, etc. de tous les fichiers du disque A:, ainsi que la place libre globale. A> STAT *.* $S

Idem avec en plus indication de la taille réelle des fichiers (utile pour les fichiers à accès aléatoires).

A> *.TXT

Idem, mais pour tous les fichiers d'exten sion .TXT.

A>STAT ESSAI.COM

Idem, mais pour le fichier ESSAI.COM.

QUELQUES EXEMPLES DE LA COMMANDE STAT:

Aide, assignation des périphériques, caractéristiques d'une disquette, indication des zones "USER”

Syntaxe :

STAT VAL: | DEV: | d: DSK: | USR: En voici le détail par des exemples :

A> STAT VAL:

Affiche un rappel des syntaxes possibles de la commande STAT, et donne pour chaque périphérique logique la liste des
périphériques physiques possibles.

A > STAT DEV

Affiche les assignations actives des périphériques physiques aux périphériques logiques.

A>STAT DSK:

Affiche les caractéristiques de la disquette se trouvant dans le lecteur A

A > STAT b: dsk:

Idem, mais pour le lecteur B:

A>STAT USR:

Affiche les numéros de zones "USERS" existantes et celles ayant des fichiers.

Assignation d'un périphérique à un périphérique logique

Syntaxe :

STAT per.log = per.physique Exemples :

A > STAT CON: =CRT:

Le driver d'écran clavier CRT est la console.

A > STAT LST : = UL1 :

Le driver UL1 est l'imprimante du système.

Positionnement des attributs fichiers

Syntaxe :

STAT Nom fichier $R/0 I $R/W I $SYS | $DIR

Voici le détail par des exemples :

A#STAT *.COM $SYS Tous les fichiers en .COM deviennent invisibles lors d'un DIR puisqu'ayant l'attribut Système.

Lors d'un STAT *.» ces fichiers apparaissent entre parenthèses.

A>STAT *.* $DIR

Tous les fichiers sont visibles.

A>STAT ESSAI.ASM $R/0 Protège le fichier essai, asm en le mettant en lecture seule.

A> STAT ESSAI.ASM $R/W Le fichier essai.asm est à nouveau accessible en écriture.

SUBMIT

Cette commande existe en CP/M 2.2 et en CP/M Plus. Nous préciserons donc les différences existant entre les deux versions.

Syntaxe :

SUBMIT Nom de fichier ( Paramètre 1, Paramètre 2,... Paramètre 9 Le nom de fichier doit être spécifié sans extension et celle-ci est obligatoirement .SUB.

SUBMIT permet de soumettre des commandes pré-enregistrées dans un fichier de commandes.

Contenu du fichier de commandes

Un fichier de commandes est un fichier ASCII qui contient des lignes, et peut être créé avec ED ou un éditeur de texte. Les lignes sont :

– des commandes CP/M valides, internes ou externes, des appels de programmes ;
– ces commandes ou appels peuvent contenir des paramètres qui dans le fichier sont désignés par $0 à $9, soit

10 paramètres maxi. Le paramètre $0 correspond au nom du fichier de corn mande, puis $1 est le premier paramètre, $2 le deuxième, etc. jusqu'au neuvième $9 ;

– si la commande doit contenir le signe $, il suffit de doubler celui-ci ;
– en CP/M Plus, un signe (en début de ligne) signifie que le contenu de la ligne est passé comme saisie à un programme.

Exécution automatique lors du démarrage de CP/M

– En CP/M Plus, lors du démarrage du système, le CCP recherche s'il existe un fichier PROFILE.SUB qui sera alors exécuté automatiquement, à condition que SUBMIT.COM soit sur la disquette de démarrage.
– En CP/M Plus, il est possible de spé cifier, par l'intermédiaire de SETUP, une ligne de commande qui sera exécutée automatiquement. Il suffit que cette ligne soit SUBMIT PROFILE pour qu'un fichier PROFILE.SUB soit également exécuté lors du démarrage de CP/M.

Voici quelques exemples de commandes.

Exemple d'un PROFILE.SUB en CP/M Plus :

PALETTE 0,44
SETKEYS KEYS.CCP
DATE SET

Ce fichier change les couleurs du fond et des caractères, puis programme les touches du clavier par l'intermédiaire de l'utilitaire SETKEYS. Enfin, il provoque la demande de mise à jour de la date et de l'heure.

Un autre exemple de fichier de commandes ; LISTE.SUB.

En voici le contenu :

DIR * ASM DIR * BAS et l'appel :

A>SUBMIT LISTE

ce qui provoque deux listes successives, une des fichiers source en ASM, et une autre des fichiers en .BAS Voici maintenant un exemple avec des arguments : EDITE.SUB.

En voici le contenu :

ed $1.ASM édition du programme source assembleur

pip b: -$1.asm|V| – sauvegarde sur disquette B:

era$1.bak suppression de l'ancienne version.

et l'appel :

A>SUBMIT EDIT ESSAI, ce qui provoque l'exécution de la suite.

A>ed ESSAI.ASM
A>pip b: = ESSAI.asm|V|

A>era ESSAI.bak

REMARQUE : En CP/M Plus, il est inutile de taper explicitement SUBMIT Fichier ; il suffit de taper Fichier tout court, ainsi notre exemple devient :

A > EDITE ESSAI

Ceci est possible après une commande SETDEF |ORDER = (COM,SUB)| qui indique que lorsque l'on tape une
commande, il faut d'abord chercher un fichier en ,COM puis un fichier en SUB.

Il faut bien entendu que SUBMIT.COM soit accessible, car il va être chargé automatiquement.

Les possibilités d'utilisation des fichiers de commandes sont très étendues, et il suffit de se rappeler que toute commande valide peut se trouver dans un fichier de commandes.

En cas de problème sur une commande, erreur dans le paramétrage ou l'écriture, programme non trouvé, on passe à la ligne suivante dans le fichier ; il n'y a aucun moyen pour arrêter l'enchaînement des commandes.

SYSGEN

Cette commande spécifique CP* M 2.2 permet de recopier CP/M sur les pistes système qui lui sont réservées. Attention, cette commande ne doit pas être effectuée sur un disque au format données, qui ne possède pas de pistes réser vées. En voici la syntaxe :

SYSGEN | * | Nom de fichier

En voici des exemples :

A > SYSGEN *

Prend le CP/M généré en mémoire par un MOVCPM préalable, et le copie sur le disque destination.

A>SYSGEN CPM44.COM

Lit le fichier CPM44.COM qui contient un CP/M préalablement créé par un MOVCPM suivi d'un SAVE et copie de ce CP/M sur disque destination.

A> SYSGEN

Va demander disque source ou lire le CP/M ainsi que le disque destination. Rappelons que cette commande n'est pas suffisante pour créer un disque système CP/M 2.2, il faut aussi effectuer un BOOTGEN qui copie les secteurs d'amorce et de configuration. Un disque système peut aussi être créé par DISCCOPY ou COPYDISC qui copient tous deux l'intégralité d'une disquette

XSUB

Cette commande spécifique CP/M 2.2 permet de préciser que la suite des lignes de commandes d'un fichier de comman des est destinée au programme qui suit et non pas au CCP. Elle joue un rôle équivalent au signe > de CP/M Plus. Syntaxe : XSUB

Exemple d'un fichier XSUB :

VISU.SUB. XSUB

ED $ 1 ASM

n a

20T

Son exécution par SUBMIT VISU ESSAI va provoquer la série de commandes suivantes :

A> XSUB

A> ED ESSAI.ASM

Puis, une fois ED chargé, dans ED exécution automatique de :

#A – chargement de ESSAI.ASM en mémoire

20 T liste des 20 premières lignes. On peut alors taper d'autres commandes de ED, pour visualiser d'autres parties du fichier. Il n'est cependant pas conseillé de faire une édition, car XSUB est toujours actif et continuera à chercher s'il y a une suite au fichier de commandes VISU.SUB, ce qui se traduira par des accès disque.

L'utilisation de XSUB est donc très spécifique et est à réserver aux connaisseurs.

Ceci termine notre étude des commandes externes de CP/M se rapportant aux fichiers et à la gestion du système en général. Le mois prochain, nous verrons les possibilités offertes par CP/M Plus dans le domaine dit de la redirection des entrées/sorties par les commandes externes GET et PUT.

CPC n°13

★ ANNÉE: ???
★ AUTEUR: Francis VERSCHEURE

Page précédente : Initiation a CP/M (04/xx)

★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Coding » Initiation a CP/M (03/xx) (CPC Revue n°9)
» Coding » Initiation a CP/M (02/xx) (CPC Revue n°8)
» Coding » Initiation a CP/M - Amstrad Magazine 10 - les Commandes Transitoires - les Fonctions Internes
» Coding » Initiation a CP/M (16/xx) (CPC Revue n°23)
» Coding » Initiation a CP/M (04/xx) (CPC Revue n°10)
» Coding » Initiation a CP/M (01/xx) (CPC Revue n°7)
Je participe au site:

» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop/c
Page créée en 352 millisecondes et consultée 1803 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.