CODINGCLEFS POUR AMSTRAD 1 ★ Système de base par Daniel Martin ★

Clefs pour Amstrad 1 : 19 Logiciel Interne Table CassetteCoding Clefs Pour Amstrad 1
TABLE DES POINTS D'ENTREE DES ROUTINES SYSTEME

Le gestionnaire cassette

119  BC65   Initialisation du gestionnaire cassette.
CE :  rien.
CS :  AF,  BC,   DE et HL sont modifiés.

120  BC68 Positionnement de la vitesse d'écriture.
CE  :   HL contient  la   longueur de la moitié d'un bit à zéro.
A contient la précompensation à appliquer.
CS : AF et HL sont modifiés.

121 BC6B Autorise ou  interdit l'affichage des messages.
CE :  A=0 autorisé.  A80 interdit.
CS : AF est modifié.

122 BC6E   Mise en route du moteur de la cassette.
CE  :  rien.
CS : si le moteur est OK, le CARRY est vrai ; si on a poussé sur ESC, le CARRY est faux, A contient l'état précédent du moteur.

123  BC71 Arrêt du moteur.
CE : rien.
CS : comme ci-dessus (122).

124 BC74 Repositionne le moteur dans son état précédent.
CE : A contient l'état précédent du moteur.
CS : comme ci-dessus (122).

125 BC77 Positionne le tampon pour la lecture et lit le premier bloc.
CE : B contient la  longueur du nom du fichier. HL contient l'adresse du nom du fichier.  DE contient l'adresse du tampon (2K).
CS :   si  OK,   le CARRY est vrai et  le ZERO est faux.  HL contient l'adresse du tampon qui contient l'entête, DE contient  l'adresse des données,  BC contient  la  longueur du fichier et A contient le type de fichier. Si   le STREAM (flux) est déjà utilisé,   le CARRY est faux et A,   BC,   DE et HL sont modifiés. Si on pousse sur ESC,   le CARRY est faux et  le ZERO est vrai. AF, BC,  DE et HL sont modifiés.  Enfin, dans tous   les cas, IX est modifié.

126  BC7A Ferme le fichier.
CE : rien.
CS : si OK, le CARRY est vrai, sinon le CARRY est faux.
AF, BC, DE et HL sont modifiés dans les deux cas.

127 BC7D Abandonne la lecture et ferme le fichier.
CE : rien.
CS :  AF,  BC,  DE et HL sont modifiés.

128 BC80 Lecture d'un octet.
CE  :   rien.
CS :   si   OK,   le CARRY est vrai,  ZERO est faux et A contient le caractère lu. Si on rencontre la fin de fichier (EOF),   le CARRY est faux,   ZERO est faux et A est modifié. Si on pousse ESC,   le CARRY est faux , ZERO est vrai  et A est modifié. Dans tous  les cas,   IX est modifié.

129  BC83 Lecture d'un fichier et écriture en mémoire.
CE :  HL contient  l'adresse d'écriture.
CS : comme  128 pour les sémaphores CARRY et ZERO.  En outre,  HL contient le point d'entrée si   la   lecture est correcte.  Dans tous  les cas,  AF,  BC,  DE,   HL et   IX sont modifiés.

130  BC86   Met le dernier caractère lu par la routine  128 dans le tampon de lecture. Pas de CE.
Pas de CS.

131 BC89 Teste si on a atteint la fin de fichier.
Pas de CE.
CS :  si on a atteint  la fin de fichier,   le CARRY est faux et le ZERO est faux. Si on n'a pas atteint  la fin de fichier,   le CARRY est vrai et le ZERO est faux. Si   l'utilisateur a poussé sur ESC (BREAK),   le CARRY est faux et  le ZERO est vrai. De toute façon, AF et   IX sont modifiés.

132  BC8C Ouverture d'un fichier en sortie.
CE :  B contient la longueur du nom du fichier. HL contient l'adresse du nom du fichier. DE contient l'adresse d'un tampon de 2K disponible pour le fichier.
CS :   si   le fichier a été ouvert correctement,   le CARRY est vrai,  le ZERO est faux et HL contient l'adresse d'un tampon qui contient l'en-tête qui sera écrite au début de chaque bloc de données. Si   l'utilisateur a poussé sur ESC,   le CARRY est faux et le ZERO est vrai. Si   le tampon est déjà utilisé,   le CARRY est faux et  le ZERO est faux. De toute façon,  AF,  BC,   DE,   HL et   IX sont modifiés.

133  BC8F Fermeture propre d'un fichier en sortie.
Pas de CE.
CS :   si   la fermeture est OK,   le CARRY est vrai et le ZERO est faux. Si   le fichier n'était pas ouvert,   le CARRY est faux et  le ZERO est faux. Si on a poussé sur ESC,   le CARRY est faux et le ZERO est vrai. De toute façon,  AF,  BC,  DE,  HL et   IX sont modifiés.

134  BC92 Fermeture  immédiate d'un fichier en sortie.
Pas de CE.
CS : AF,   BC,  DE et HL sont modifiés.

135  BC95 Ecriture d'un caractère sur un fichier de sortie.
CE : A contient le caractère à écrire.
CS :   si   l'écriture est correcte,   le CARRY est vrai et le ZERO est faux. Si  le fichier n'était Das ouvert,  le CARRY est faux et  le ZERO est faux. Si on a poussé sur ESC,   le CARRY est faux et le ZERO est vrai.
De toute façon,  AF et   IX sont modifiés.

136  BC98 Ecriture directe du contenu d'une mémoire vers un fichier de sortie.
CE : HL contient l'adresse mémoire.
DE contient  le nombre d'octets à écrire.
BC contient le point d'entrée, i, >> - /?CA.
A   contient le type de fichier. CS : voir précédent, mais AF,  BC,   DE,   HL et   IX sont modifiés.

137  BC9B Génère  le catalogue de la cassette.
CE :   DE contient  l'adresse d'un tampon de 2K disponible.
CS :  si   la  lecture a eu  lieu correctement,   le CARRY est vrai  et  le ZERO est faux.  Si   le tampon est occupé, le CARRY est faux et  le ZERO est faux. Si  une erreur a eu  lieu,   le CARRY est faux et  le ZERO est vrai. De toute façon,  AF,  BC,   DE,  HL et  IX sont modifiés.

138  BC9E Ecrit un enregistrement sur cassette.
CE : HL contient l'adresse des données à écrire.
DE contient le nombre d'octets à écrire.
A   contient le caractère de synchronisation.
CS :  si   l'enregistrement s'est déroulé correctement, le CARRY est vrai. Sinon,   le CARRY est faux et A contient un code d'erreur.  De toute façon,  AF,  BC,   DE, HL et  IX sont modifiés.

139  BCA1 Lit un enregistrement sur cassette.
CE :   HL contient l'adresse où seront écrites  les données.
DE contient  le nombre d'octets à  lire. A contient  le caractère de synchronisation.
CS : si la lecture s'est déroulée correctement» le CARRY est vrai. Sinon, le CARRY est faux et A contient un code d'erreur. De toute façon» AF, BC, DE, HL et IX sont modifiés.

140 BCA4 Compare un enregistrement sur cassette avec le contenu de la mémoire.
CE :   HL contient  l'adresse des données à comparer.
DE contient le nombre d'octets à comparer.
A   contient le caractère de synchronisation.
CS :  si   la comparaison est correcte,  le CARRY est vrai. Sinon,   le CARRY est faux et A contient un code d'erreur. De toute façon,  AF, BC, DE, HL et   IX sont modifiés.

★ ANNÉE: ???
★ AUTEUR(S): ???

Page précédente : Clefs pour Amstrad 1 : 18 Logiciel Interne Table Ecran
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.732-desktop/c
Page créée en 448 millisecondes et consultée 2189 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.