h6. [[OS SWI Calls (français)|OS SWI Calls]] h6(. » [[OS_GBPB (français)|OS_GBPB]] h6((. » OS_GBPB 10 h2. OS_ GBPB 10 h5. (SWI &0C) |_<^{width:5em}. En entrée | | |<^. R0 |<^. 10 | |<^. R1 |<^. Pointeur sur le nom du dossier | |<^. R2 |<^. Pointer sur zone mémoire où écrire les données retournée | |<^. R3 |<^. Nombre d'objets à lire | |<^. R4 |<^. Where to start, 0 for first time | |<^. R5 |<^. Length of buffer | |<^. R6 |<^. Wildcarded name to match (if 0 "*" is used)| |_<^{width:5em}. En sortie | | |<^. R0 |<^. Inchangé | |<^. R1 |<^. Inchangé | |<^. R2 |<^. [[OS_GBPB 10 Buffer (français)|Zone mémoire]] | |<^. R3 |<^. Nombre d'objets retournés | |<^. R4 |<^. Prochain indice de fichier, ou -1 si la lecture est terminé | |\2<^. C flag clear if R3 = 0, else set| h4. Usage Cet appel permet de lire les fichiers d'un dossier spécifié. Il retourne dans la zone mémoire fournie le nom des fichiers et les informations relative à ces fichiers.. h4. Notes En sortie R4 contient le prochain indice de fichier. Il n'y a aucune garantie que la fonction vous retourne le nombre de fichiers demandé. Cela est due à des contraintes liées à certains système de fichier. Pour être sûr que vous avez bien récupéré tous les fichiers d'un dossier, l'appel de cette SWI doit être répété jusqu'à ce que R4 retourne -1. Exemple de code: <pre> repeat { call OS_GBPB 10 if (R3 <> 0) { process buffer } } until (R4 = -1) </pre> En sortie R3 peut valoir 0 alors que le dossier n'est pas encore totalement lu. Ne supposez pas que la lecture est terminée tant que R4 est différent de -1. (Filer_Action assumes that it increases by one for each entry read and comes horribly unstuck) h4. See also * [[OS_GBPB (français)|OS_GBPB]]: Accès au système de fichier. * [[OS_GBPB 10 Buffer (français)|Buffer]]: Format de la zone mémoire en sortie. h5. Page d'origine [[OS_GBPB 10|English]]