APPLICATIONSDISQUE ★ RéCUPéREZ VOS PROGRAMMES OU FICHIERS PROTéGéS (AMSTRAD MAGAZINE) ★

Récupérez vos programmes ou fichiers protégés (Amstrad Magazine)Applications Disque
Vous avez écrit un programme, puis l'avez enregistré sur une cassette ou une disquette en le protégeant. Après quoi, vous l'avez effacé de la mémoire de votre AMSTRAD. Malheureusement, dans votre précipitation de mettre à l'abri votre œuvre, vous avez oublié de conserver une copie non protégée de votre travail.

Le programme proposé ici vous permettra de recopier vos fichiers de cassettes, ou disquette à cassette, ou disquette en supprimant le flag de protection mis en place par le soft du CPC. Il vous est fourni sous la forme d'un listing Assembleur et d'un listing Basic. Le listing Assembleur permettra à ceux qui le désirent d'améliorer ce programme. (Par exemple en y incluant un traitement des erreurs). Le listing Basic autorise tous les possesseurs de CPC à utiliser le programme et permet de choisir le type de support des fichiers entrée et sortie.

Programme Assembleur

Le programme Assembleur qui vous est présenté aurait pu être écrit par tout possesseur de la précieuse brochure AMSTRAD COMPLETE FIRMWARE SPECIFICATIONS.”

Il permet, pour tout fichier enregistré en "FILE FORMAT" (c'est le cas des fichiers ou programme créés par la commande SAVE) de charger ce fichier en RAM, puis de la ré-enregistrer sur un support magnétique. Le fichier obtenu en sortie aura des spécifications strictement identiques au fichier fourni en entrée, mais il ne sera plus protégé. Cela signifie que, à l'exception du bit de protection, les différentes parties, utiles du header du fichier entrée (adresse des données, adresse du point d'entrée, longueur du fichier, zone utilisateur) auront les mêmes valeurs dans le header du fichier sortie.

La routine AFFER1 est destinée à permettre le traitement des erreurs. Elle n'a pas été utilisée dans ce programme et se compose uniquement de deux instructions, mais vous pouvez éventuellement y inclure le traitement d'erreurs que vous désirez. Attention toutefois, dans ce cas, à modifier l'adresse de chargement du programme. Celle qui est donnée (&A4B5) a été calculée pour permettre aux possesseurs d'une unité de disquettes d'utiliser ce logiciel.

Programme Basic

Le programme BASIC permettra à ceux qui ne disposent pas d'un Assembleur-Editeur de mettre en œuvre ce programme. Il permet en outre à ceux qui disposent d'une unité de disquettes de choisir le support du fichier entrée et celui du fichier sortie. Pour pouvoir utiliser ce programme, les utilisateurs AMSTRAD qui ne possèdent pas d'unité de disquettes ne devront pas saisir les lignes 50, 60, 70, 100, 110, 130 et 140.

Pennées et routines utilisées en Assembleur

TYP-IN type de support du fichier entrée, sera à 0 pour une cassette, à 1 pour une disquette.

TY-OU type de support du fichier en sortie, sera à 0 pour une cassette, à 1 pour une disquette. Ces deux zones sont renseignées par le programme Basic. Elles permettent de déterminer la longueur maximum du nom de fichier.

— NOM-IN nom du fichier en entrée.

— NOM-OU nom du fichier en sortie.

— LNG-IN longueur du nom du fichier entrée.

— LNG-OU longueur du nom du fichier sortie.

— TYP-PG type du fichier entrée.

— ADR-DE adresse de chargement du fichier.

— ADR-EN adresse du point d'entrée.

— LNG-PG longueur totale du fichier.

— USR-ZO zone utilisateur du header. Les zones TYP-PG, ADR-DE, ADR-EN, LNG-PG, USR-ZO, sont renseignées par le header du fichier entrée. Les zones NOM-IN, NOM-OU, LNG-IN, LNG-OU sont renseignées par la demande de nom de fichier à l'écran.

Principales routines utilisées

Ces routines sont appelées par un CALL
à leur adresse. Les adresses d'appel sont les suivantes :

BC77 OPEN d'un fichier input. Cette routine retourne:

+ Dans le registre A le type du fichier, + Dans le double registre BC la longueur totale du fichier,

+ Dans le double registre DE l'adresse de chargement des données,

+ Dans le double registre HL l'adresse d'un buffer contenant le header du fichier.

La zone utilisateur est contenue dans les octets 28 à 63 de ce buffer.

+ BC83 READ d'un fichier input. Cette routine retourne dans le double registre HL l'adresse du point d'entrée.

BC8C OPEN d'un fichier sortie. Cette routine retourne dans le double registre HL l'adresse d'un buffer contenant le header. La zone utilisateur obtenue lors de l'OPEN du fichier entrée sera reconduite dans ce buffer.

BC98 WRITE d'un fichier out put. BC0E Mise de l'écran dans le mode fourni dans le registre' A.

BC32 affectation à l'INK dont le numéro est donné dans le registre A des couleurs dont les numéros sont donés dans les registres B et C.

BB06 Lecture d'un caractère frappé au clavier. Le caractère est donné dans le registre A.

BB5A Affichage à l'écran du caractère dont la valeur est dans le registre A. BB78 Retourne les positions horizontales du curseur dans les registres H et L. BB75 positionne le curseur aux positions données dans les registres H (Numéro de colonne) et L (numéro de ligne).

Utilisation du programme

En ce qui concerne le programme Basic, vous n'avez qu'à taper K pour une cassette ou D pour une disquette lors de la demande dy type de support. Lors de la copie de fichier, le programme vous demande le nom du fichier en entrée puis celui du fichier en sortie. Le nom que vous tapez alors doit obéir aux règles suivantes:

Nom du fichier en entrée

Il doit contenir au maximum 16 caractères pour une cassette et 12 (8 pour le nom et éventuellement 4 pour le type sous la forme. XXX). Le programme considère le nom, comme fourni lorsque vous avez atteint ce maximum ou appuyé sur ENTER. Ce nom est obligatoirement pour un fichier sur disquette, mais facultatif pour un fichier sur cassette.

Si vous ne fournissez pas de nom, appuyez sur ENTER. Le programme chargera alors le premier fichier trouve sur la cassette. Si il s'agit d'une disquette, vous aurez le message ‘ ‘Bad com-mand” et le programme vous redemandera le nom du fichier.

Nom du fichier en sortie

Il doit obéir aux mêmes règles que le nom du fichier en entrée. Appuyez sur ENTER directement si vous voulez reconfuire le nom du fichier d'entrée sur le fichier de sortie. Toutefois, si vous n'avez pas fourni de nom de fichier d'entrée, le fichier sera écrit sans nom sur la cassette (Unnamed File), et sur disquette vous aurez le message d'erreur “Bad Command” puis à nouveau la demande de nom du fichier en sortie.

Demande d'un autre fichier

Après le traitement complet d'un fichier, le programme vous demandera: AUTRE FICHIER (O/N)?

Si vous avez à traiter un autre fichier obéissant aux mêmes conditions de support, tapez O. Sinon, tapez N. Le programme effectue alors un RESET général (par RST 0).

R.P. Spiegel ,AMSTRAD MAGAZINE n°3 (1985)

★ EDITEUR: Amstrad Magazine
★ ANNÉE: 1985
★ CONFIG: 64K + AMSDOS
★ LANGAGE:
★ LiCENCE: LISTING
★ AUTEUR: R.P. Spiegel
 

★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listing:
» Recuperez  vos  programmes  ou  fichiers  proteges    (Amstrad  Magazine)    LISTING    FRENCHDATE: 2022-03-31
DL: 120
TYPE: PDF
SiZE: 2686Ko
NOTE: 4 pages/PDFlib v1.6

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

Lien(s):
» Coding Src's » Easter Sunday Program (Computing with the Amstrad)
» Coding Src's » Demospiel Meteor (Compute Mit)
» Coding Src's » Starkos Player (Official source)
» Coding » Menu - Sources Demos
» Coding Src's » National Anthem (Amstrad Computer User)
» Coding Src's » Satellite TV (Amstrad Action)
Je participe au site:
» Pour ce titre nous ne disposons de fichier executable sur CPC (Dump, Saisie du listing) , alors si vous avez ça dans vos cartons ou vous désirez usé vos petit doigts boudinés sur votre clavier faites le nous savoir.
» Vous avez des infos personnel ?
» 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 554 millisecondes et consultée 605 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.