home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DP Tool Club 15
/
CD_ASCQ_15_070894.iso
/
maj
/
2188
/
patchlag.txt
< prev
next >
Wrap
Text File
|
1994-05-06
|
10KB
|
257 lines
Interpréteur PATCHLAG v1.0
Manuel de référence
Le Grand Manitou 91a
(P)1994 Virtual Waves, MWPC2
Je suppose dans ce manuel que vous avez déjà assimilé les bases de la
programmation. Toute personne sachant programmer en Basic et ayant des
connaissances sur la gestion de fichiers sous MS-DOS n'aura pas difficultés.
C'est un manuel de REFERENCE, il ne vous apprendra pas à programmer, ni à
patcher un jeu.
■ Le fichier de patchs:
C'est un simple fichier texte dont l'extension est PAT. Vous pouvez
cependant utiliser l'extension qui vous plait mais je vous recommande
d'utiliser PAT pour simplifier la reconnaissance et l'échange de ces
fichiers.
Vous avez différentes façon de dire au Grand Manitou quel fichier
de patchs utiliser.
- Si vous ne spécifiez rien au Grand Manitou, il cherchera le fichier
MANITOU.PAT dans le répertoire actuel.
- Vous pouvez entrer le chemin et le nom du fichier dans la ligne
de commande. Exemple : MANITOU c:\utls\toto.pat
- Vous pouvez spécifier le fichier de patchs par la variable d'environnement
MANITOU. Exemple : SET MANITOU=c:\utls\toto.pat
C'est à mon sens le moyen le plus pratique. Vous pouvez incorporer cette
commande dans votre AUTOEXEC.BAT.
- Vous pouvez utiliser le programme résident APPEND (à la manière de PATH)
et y ajouter le chemin de MANITOU.PAT. Consultez votre manuel du MS-DOS
pour plus d'informations sur ce programme.
■ Syntaxe générale: nn cc xxxxxxxxxxxxx...
nn : numéro de ligne (00 à 99)
cc : commande
xx... : paramètres.
Exemple: 17 DP 5782
■ Structure de programme nécessaire:
00 NO <nom_du_patch> annonce de début de programme
nn EN annonce de fin de programme
■ Stucture de programme recommandée:
00 NO <nom_du_patch>
05 CM <commentaires>
10 AF <remarques,détails>
...
nn EN
■ Référence de toutes les instructions:
▒▒ AF <texte>
AFFICHE
Affiche le texte spécifié.
Ex : 23 AF Bonjour ! affichera 'Bonjour !'
▒▒ AT <secondes>
ATTEND
Attend le nombre de secondes spécifiées. L'execution reprend ensuite
normalement.
On peut spécifier des décimales.
Si une touche est pressée, l'execution du programme reprend même si
le delais <secondes> n'est pas entièrement écoulé.
Ex: 13 AT 1.5
▒▒ C2 <nom>
COPIE
Copie le fichier actuellement ouvert en donnant le nom <nom> à la
copie. Si le fichier <nom> existe déjà, il est effacé.
Le fichier à copier doit avoir été ouvert auparavant avec la
command OP.
Attention : cette commande ne conserve pas la position du
pointeur de fichier.
Ex: 19 C2 essai.exe
▒▒ CH <masque>
CHOISIT FICHIER
Cette commande permet à l'utilisateur de choisir un fichier à ouvrir.
On choisit les fichiers avec <masque>, par exemple *.*, *.GAM,
SAVED?.SVE, etc...
<masque> s'utilise comme dans la commande DIR du DOS.
108 fichiers au maximum peuvent être affichés à l'écran en même temps.
Si il y a plus de 108 fichiers ou si il n'y a aucun fichier qui
correspondent à <masque>, alors l'éxecution du patch est stoppée.
La séléction du fichier se fait avec les flèches et [ENTREE].
Si un fichier est séléctionné avec [ENTREE], il est ouvert (ce qui est
équivalent à la commande OP).
Si [ESC] est pressé, l'execution du patch est stoppée et le Grand
Manitou revient au menu principal.
Ex: 26 CH *.gam
▒▒ CK <taille>@<contrôle>
CHECKSUM (SOMME DE CONTROLE)
Fait la somme de contrôle des <taille> octets suivants à partir de
la position du pointeur de fichier.
Si la somme de contrôle <contrôle> ne concorde pas avec les octets
lus, l'execution du programme est stoppée.
Ex: 54 CK 2048@5f3e
▒▒ CL
CLOSE (FERMETURE DU FICHIER)
Ferme le fichier actuellement ouvert.
Cette commande est sans effet si aucun fichier n'est ouvert.
Elle peut être utile pour fermer un fichier avant son utilisation
par un autre logiciel dans une commande SHELL.
Ex : 78 CL
▒▒ CM <commentaire>
COMMENTAIRE
Cette commande permet d'afficher du texte dans la colonne de droite
lors de la séléction du patch avec les flèches dans Le Grand Manitou.
Ex: 04 CM 255 munitions.
▒▒ CN
CONTINUER ?
Attend qu'une touche soit pressée.
Si cette touche est O ou o, l'execution continue.
Dans les autres cas, l'execution est stoppée.
Ceci est utile pour poser des question du style:
"Voulez-vous continuer (O/N) ?"
Ex: 17 CN
▒▒ CR <nom>
CREER FICHIER
Créé un nouveau fichier dont le nom est <nom>. Tout fichier ouvert
précédemment est automatiquement fermé.
Ex: 24 CR temp.bin
▒▒ DP <offset>
DEPLACE
Déplace le pointeur de fichier à l'offset (l'octet) indiqué.
Un fichier doit déjà avoir été ouvert avec OP ou CH.
En plaçant + ou - devant l'offset, on peut faire des déplacements
relatifs.
Ex: 12 DP 456 Va au 456ième octet
12 DP +456 Avance de 456 octets à partir
de la position actuelle.
12 DP -456 Recule de 456 octets
Si l'offset absolu (SANS + ni -) est supèrieur à la taille du fichier,
l'execution est stoppée.
Si l'offset relatif dépasse le fichier, l'offset est mis à la fin du
fichier pour +, au début du fichier pour -.
▒▒ EC <hexa>@<contrôle>
ECRIT
Ecrit les octets donnés par <hexa>.
<contrôle> est une somme de contrôle et l'execution est stoppée si
elle ne concorde pas avec <hexa>.
Ex: 17 EC 414346@199 écrit ACF
▒▒ EE
EFFACE ECRAN
Efface l'écran
Ex: 78 EE
▒▒ EN
END, Fin de programme
Signale la fin du programme. L'execution du patch est stoppée et le
Grand Manitou revient au menu principal.
Ex: 56 EN
▒▒ OP <fichier>
OPEN, ouvre un fichier
Cette commande ouvre un fichier déjà existant et positionne le pointeur
de fichier sur le premier octets du fichier.
A utiliser avant toute instruction C2, CK, DP, EC, RP, RC ou TL.
Si le fichier est introuvable, l'éxecution du patch est stoppée et
un message d'erreur s'affiche.
La commande OP ferme tout fichier ouvert auparavant.
Ex: 12 OP term2.exe
▒▒ RC <hexa>@<contrôle>
RECHERCHE
Cette commande recherche <hexa> et positionne le pointeur de fichier
sur le premier octet de <hexa>.
Si la somme de contrôle <contrôle> ne concorde pas avec <hexa>,
l'execution du patch est stoppée.
Ex: 47 RC CB2D3F@1E2
▒▒ RP <hexa1>/<hexa2>@<contrôle>
RECHERCHE ET REMPLACE
Recherche <hexa1> et remplace par <hexa2>.
<hexa1> et <hexa2> peuvent être de taille différente : <hexa2> sera
toujours écrit à partir du début de <hexa1>.
Si <hexa1> est introuvable, l'execution du patch s'arrête.
Si la somme de contrôle <contrôle> ne concorde pas avec <hexa1> ET
<hexa2>, l'execution du patch est stoppée.
Ex: 23 RP F323D1/F4239090@486
▒▒ SH <commande>
SHELL
Lance la commande <commande> en SHELL.
Si <commande> est omis, un accès au DOS est donné en SHELL.
(Taper EXIT fait revenir au Grand Manitou et l'execution du patch
se poursuit).
Ex: 15 SH del essai.gam
▒▒ TC
ATTENTE TOUCHE.
L'éxecution du programme est suspendue et ne reprend que si une touche
(n'importe laquelle) est pressée.
Ex: 64 TC
▒▒ TL <taille>
TAILLE
Si <taille> ne correspond pas à la taille du fichier ouvert,
l'execution du patch est stoppée.
Si la taille correspond, l'execution se poursuit normalement.
Ex: 36 TL 31744
Testez vos programmes : si le logiciel affiche trois losanges clignotants,
c'est qu'une erreur s'est produite. Le nombre entre parenthèses qui suit vous
indique à quelle ligne s'est produite l'erreur.
Certaines erreurs dans mes patchs sont tout à fait normales, comme par exemple
de ne pas trouver un fichier dans un répertoire (avec CH ou OP).
Dans tous mes patchs, j'affiche d'abord un petit texte qui explique ce que
fait le patch avant de commencer son action. Je vous recommande d'en faire
autant.
Avant d'éxecuter le programme en Patchlag, Le Grand Manitou vérifie toutes
les sommes de contrôles (@xxx) pour les instructions EC, RC et RP.
Ceci permet d'éviter des erreurs de frappe quand un Patch est recopié à
la main.
Toute ligne qui ne comporte pas au moins un chiffre dans les deux premiers
caractères est ignorée. Les commentaires peuvent donc être tapés directement.
N'hésitez pas à consulter le fichier MANITOU.PAT qui contient des exemples.
Je n'ai pas testé l'interpréteur PATCHLAG à fond, et il est possible qu'il
soit bugué. J'ai cependant mis pas mal de garde-fou pour empêcher les
erreurs. Il devrait fonctionner même dans de mauvaises conditions.
Tous les cas n'ont cependant pas étés pris en compte.
Par exemple, je n'ai pas prévu la gestion d'erreurs dans le cas ou des
fichiers seraient en READ ONLY. Dans le pire des cas, le programme
quittera en signalant une erreur.
J'ai testé les patchs du fichier MANITOU.PAT sur chacun des jeux concernés
et ils ont tous fonctionné.
Le patch de Xenon 2 a été modifié : Le Grand Manitou refusait de modifier
le fichier XENON2.EXE de certaines éditions. Le patch est maintenant
executé sur le fichier XENON2.EXE, mais sans aucune vérification.
Je ne garantis pas son fonctionnement sur toutes les éditions de Xenon 2.
- fin de la doc de PATCHLAG v1.0 - le 6 mai 1994 -