| CPC Rulez https://cpcrulez.fr/forum/ |
|
| Question catalogue dsk https://cpcrulez.fr/forum/viewtopic.php?f=4&t=5121 |
Page 1 sur 1 |
| Auteur : | Megachur [ 28 Août 2013, 19:26 ] |
| Sujet du message : | Question catalogue dsk |
J'ai une question à propos de l'octet d'une entrée d'un catalogue d'un dsk DATA, en gras ci-dessous : exemple : 00 31 39 34 33 20 20 20 20 42 49 4E 00 00 00 14 06 07 08 00 00 00 00 00 00 00 00 00 00 00 00 00 lorsqu'on a plusieurs blocs et que le fichier occupe plusieurs entrées dans le catalogue, cet octet augmente de 1 à chaque entrée. exemple : 00 42 41 44 4C 41 4E 44 53 42 49 4E 00 00 00 80 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 00 42 41 44 4C 41 4E 44 53 42 49 4E 01 00 00 01 53 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 quand on lit le fichier (après avoir récupérer les infos des blocs dans la directory) doit-on contrôler qu'on est bien sur la première entrée, puis la deuxième, etc ?! je ne sais pas si c'est le hasard, mais j'ai jamais trouvé le cas où c'est pas classé dans l'ordre dans le catalogue d'un dsk, mais je me dis que ça peut arriver. j'attends vos avis de spécialiste !
|
|
| Auteur : | breiztiger [ 28 Août 2013, 21:20 ] |
| Sujet du message : | Re: Question catalogue dsk |
salut perso de ce que je comprends du dsk, tu devrais toujours les avoir dans le bon ordre, mais avec la possibilite d'avoir une autre entree de catalogue entre deux par contre quelqu'un sait il comment fait amsdos pour parcourir les secteurs du catalogue, comment tient il compte de l'entrelassement ? merci d'avance breiztiger |
|
| Auteur : | markerror [ 29 Août 2013, 19:51 ] |
| Sujet du message : | Re: Question catalogue dsk |
Bonsoir, Pour répondre à Megachur, les différentes entrées d'un même fichier sont forcément écrites dans le catalogue séquentiellement. On peut avoir de la fragmentation au niveau du catalogue, mais une entrée avec un numéro d'index supérieur à une autre entrée est forcément derrière. Je n'ai pas tenté le coup de faire une inversion avec un éditeur de secteurs pour voir ce qui se passe. Si le concepteur de l'Amsdos a prévu ce cas (peu probable s'il est parti du principe que l'écriture des entrées est séquentielle), tu vas avoir une erreur fichier, sinon, les datas dans le fichier seront inversées. Ca pourrait faire une jolie protection, ça C'est le même principe pour les blocs dans un fichier, ils sont forcément organisés de façon croissante. Pour Breiztiger, c'est lors du formatage que l'entrelacement est déterminé. Après, l'Amsdos écrit les secteurs séquentiellement, donc toujours &C1 à &C4 piste 0 pour un catalogue en format DATA par exemple. |
|
| Auteur : | Megachur [ 29 Août 2013, 20:09 ] |
| Sujet du message : | Re: Question catalogue dsk |
@markerror : je me posais la question car il y a un numéro pour indiquer l'entrée dans le catalogue (en + du &80 qui indique que le fichier a d'autres blocs) ! Peut-être faut-il chercher comment c'est codé dans l'AMSDOS (je n'ai pas le dump de la rom sur place pour vérifier moi-même tout de suite) !? à voir peut-être de tenter l'inversion sur un dsk et voir comment l'AMSDOS réagit : cela serait aussi une façon de vérifier s'il se préoccupe de cet octet ?!? |
|
| Auteur : | Supersly [ 29 Août 2013, 21:16 ] |
| Sujet du message : | Re: Question catalogue dsk |
Je viens de tester sur un SCR. Si je me contente d'invreser &00 et &01, on a un syntax error à la lecture (il doit lui manquer un header). Si j'échange simplement de place les 2 entrées d'ordre dans le CAT, aucun problème, le fichier se charge sans problème. Je pense qu'il est toujours prudent de faire une vérification de cet octet, car la logique duCAT est que les entrées peuvent être dans le désordre. D'ailleurs, DoM se permet de changer l'ordre des 64 entrées sitôt que tu changes un caractère sur un nom de fichier. Dans son cas, c'est un ordre alphabétique, donc compatible avec ton problème. Mais rien n'empêche de mettre ces fichiers dans le désordre. Pourquoi on n'aurait pas un super CAT'art intelligent grâce à une bidouille de ce type ? On n'a pas tout inventé encore. D'ailleurs, à bien y regarder, c'était à 2 doigts d'arriver avec l'AE05. Pour bien cacher mes bidouilles, j'avais mélangé toutes les entrées de CAT... |
|
| Auteur : | Megachur [ 30 Août 2013, 06:53 ] |
| Sujet du message : | Re: Question catalogue dsk |
j'ai regardé rapido ce matin la source de l'amsdos http://cpcrulez.fr/coding_menu-src.htm mais à premier vue j'ai rien trouvé de commenté à ce sujet dans le desassembly, il va falloir pister cela plus précisément pour voir le code concerné dans l'AMSDOS ! bon sinon, comme je n'ai pas bcp de temps de ce matin pour cela : si déjà on mets autre chose que 0 sur la première entrée et la deuxième d'un fichier de +17ko, l'amsdos répond "file not found" ! si on inverse les deux entrées, cela fonctionne. donc je pense qu'il faut effectivement prendre en compte ce numéro est lire les blocks dans l'ordre !!! ce qui paraît plus logique... maintenant je pense aussi que ce cas de figure doit être rare sur nos dsks, sauf pour certains disques volontairement trafiqués ! ex j'ai vu par hasard ce jeu qui a les entrées inversées il me semble : chercher 'TAT1' dans le dump http://www.cpc-p0wer.com/HexaDump.php?fiche=3698&slot=7&rang=0 je laisse un spécialiste conclure avec le code amsdos vérifié !
|
|
| Auteur : | markerror [ 30 Août 2013, 07:51 ] |
| Sujet du message : | Re: Question catalogue dsk |
Bonjour les fans de l'éditeur de secteurs Petits tests ce matin avec un fichier image 17ko sur une disquette formatée (donc un seul fichier) : - inversion des index des deux entrées fichiers du catalogue : boum, syntax error. Ca semble assez logique car le premier secteur lu ne contient pas de header alors que le fichier est un binaire. - décalage des index des deux entrées (0>1, 1>2) : fichier non trouvé. - inversion des entrées des deux fichiers dans le catalogue : le fichier se charge sans problème. Si on fait un beau F7 avec Winape et que l'on recherche les blocs 02 03 04 05, on trouve en &A980 les entrées du catalogue correspondant au fichier, triées - inversion de deux blocs dans une même entrée catalogue : boum, syntax error. Bref, si on peut un peu faire mumuse avec l'ordre des entrées catalogues, le reste est bien figé. Je suppose que la possibilité de ne pas avoir les entrées dans un ordre croissants pour un fichier est un héritage CPM (si ce système permet de gérer des fichiers en mode Append). Bon, je file au boulot... |
|
| Auteur : | hERMOL [ 30 Août 2013, 11:16 ] |
| Sujet du message : | Re: Question catalogue dsk |
Megachur a écrit : j'ai regardé rapido ce matin la source de l'amsdos http://cpcrulez.fr/coding_menu-src.htm mais à premier vue j'ai rien trouvé de commenté à ce sujet dans le desassembly, il va falloir pister cela plus précisément pour voir le code concerné dans l'AMSDOS ! un peu plus de choses par la ---> https://cpcrulez.fr/search-engine.php?m= ... ue&sk=hMHZ |
|
| Page 1 sur 1 | Le fuseau horaire est UTC+1 heure |
| Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |
|