★ CODING ★ LA BIBLE DU CPC 6128 ★ |
La bible du CPC 6128 : 2.05.09 Cassette manager (CAS) |
Soyez sans crainte, nous n'avons pas oublié que votre ordinateur dispose d'un lecteur de disquette intégré, ce qui rend pour vous l'utilisation de cassettes pratiquement ou même tout à fait inutile. Nous ne vous en présentons pas moins le CASSETTE MANAGER qui dispose d'un certain nombre de routines qu'il est bon de connaître. 24BC ************************************** CAS INITIALISEinitialisation complète du pack cassette 24BC CAS IN ABANDON 24C3 CAS NOISY 24CE ************************************** CAS SET SPEED fixer vitesse d'écriture. 24D9 (Cass. Speed) 24E1 ******************************************* CAS NOISY messages cassette activés/désactivés, les messages d'erreur restent activés. 24E1 (Cass. Message Flag) 24E5 ***************************************** CAS IN OPEN CAS IN OPEN ouvre un fichier d'entrée. Il faut pour cela placer en b la longueur du nom de fichier, en hl l'adresse de début du nom de fichier et en de l'adresse de début d'une zone de la Ram de 2 K qui sera utilisée comme buffer d'entrée. Au retour de la routine, hl contient l'adresse de début de la tête de fichier (header). Les flags carry et zéro vous informent sur le succès de Carry=1.et zéro=0 signifient que tout a bien marché. 24E5 Input Buffer Status 24FE ************************************** CAS OUT OPEN CAS OUT OPEN ouvre un fichier en sortie. Les paramètres à transmettre et la signification des flags sont les mêmes que ci-dessus. Naturellement, de doit ici contenire l'adresse du buffer de sortie. 24FE Output Buffer Status 2502 ******************************************** Cass Open 2550 **************************************** CAS IN CLOSE fermeture correcte du fichier d'entrée. 2550 (Input Buffer Status) 2557 ************************************ CAS IN ABANDON interrompre immédiatement la lecture et fermer le fichier d'entrée (en cas d'erreur). 2557 Input Buffer Status 257F ************************************* CAS OUT CLOSE fermeture correcte du fichier de sortie. 257F (Output Buffer Status) 2599 ********************************** CAS OUT ABANDON fermer immédiatement fichier de sortie et marquer le périphérique de sortie comme 'fermé', les données non encore écrites sont détruites. 2599 Output Buffer Status 25A0 **************************************** CAS IN CHAR CAS IN CHAR va chercher un caractère dans le buffer d'entrée et le transmet à travers a. Si c'était le dernier caractère du buffer, un nouveau bloc est automatiquement lu sur la cassette. Si carry=0 et zéro=0, c'est que la fin du fichier (EOF) a été atteinte ou que le fichier n'était pas ouvert. Les autres combinaisons ont le même sens que ci-dessus. 25A5 Check Input Buffer Status 25C6 ************************************** CAS OUT CHAR CAS OUT CHAR écrit le caractère qui se trouve dans a dans le buffer de sortie. Si celui-ci est plein, le contenu du buffer est automatiquement écrit sur la cassette. La signification des flags est la même que ci-dessus. 25CA Output Buffer Status 25F6 ****************************** check Input Buffer Status 25F6 Input Buffer Status 25F9 ************************************ Check Buffer Status 2603 **************************************** CAS TEST EOF tester si fin de fichier atteinte. 2603 CAS IN CHAR 2607 ***************************************** CAS RETURN renvoyer dernier caractère lu dans le buffer. 260F (Pointer Input Buffer) 2618 *************************************** CAS IN DIRECT transférer fichier d'entrée entier dans la mémoire, pas de lecture caractère par caractère. 261B (Check Input Buffer Status) 2653 ************************************ CAS OUT DIRECT écrire zone mémoire définie sur cassette (pas à travers le buffer). 2656 Output Buffer Status 2692 *************************************** CAS CATALOG sortie du catalogue d'une cassette sur l'écran. 2692 Input Buffer Status 26AC ************************************** lire file Header 26C3 CAS READ 289] ************************ sortir message CAS (# in b) 2891 TXT GET CURSOR 28F0 ********************* sortir message CAS (1 caractère) 28F0 TXT OUTPUT 2935 *********************************** messages cassette 2935 Press 29A6 ******************************************* CAS READ lire un bloc de la cassette, cette routine est appelée par des routines de plus haut rang. 29A6 moteur activé & ouvrir clavier 29AF ****************************************** CAS WRITE écrire un bloc sur cassette, est appelé, comme CAS READ, par des routines de plus haut rang. 29AF moteur activé & ouvrir clavier 29C1 ****************************************** CAS CHECK comparer bloc sur la bande avec contenu de la mémoire. 29C1 moteur activé & ouvrir clavier 29E3 ***************************** moteur activé & ouvrir clavier 29EA SOUND RESET 2B3D ********************* Cass. Input RD DATA & Test ESC 2B3D Port A 2BA7 ******************************* Cass. Output WR DATA 2BB1 Port Control 2BB3 WR DATA 2BBB ********************************* CAS START MOTOR moteur cassette activé 2BBD CAS RESTORE MOTOR 2BBF *********************************** CAS STOP MOTOR arrêter moteur cassette. 2BC1 ******************************* CAS RESTORE MOTOR rétablit l'ancien état du moteur, après mise en marche du moteur on attend que le nombre de rotations requis soit atteint. 2BC2 Port C
|