Index du Forum
IDENTIFICATION SERVEUR : 213.186.33.87 - CLIENT : 74.109.56.191

 FAQFAQ   RechercherRechercher   Liste des MembresListe des Membres   Groupes d'utilisateursGroupes d'utilisateurs   S'enregistrerS'enregistrer 
 ProfilProfil   Se connecter pour v�rifier ses messages priv�sSe connecter pour v�rifier ses messages priv�s   ConnexionConnexion 

GS/OS: AppleDisk5.25

 
Poster un nouveau sujet   R�pondre au sujet     Index du Forum -> Recherches techniques (hard ou soft)
Voir le sujet pr�c�dent :: Voir le sujet suivant  
Auteur Message
toinet



Inscrit le: 15 Juin 2007
Messages: 326
Localisation: Paris, France

MessagePost� le: Jeu 27 Nov 2008, 21:27    Sujet du message: GS/OS: AppleDisk5.25 R�pondre en citant

Comme vous le savez, j'ai annonc� sur csa2 et csa2.programmer que je travaillais sur le driver AppleDisk5.25 de GS/OS afin de lui ajouter quelques fonctions afin de pouvoir g�rer d'autres syst�mes de fichiers (DOS 3.2, CP/M et d'autres en r�serve)

J'ai ainsi d�j� ajout� :
- les routines de gestion des blocs CP/M (1024 octets ou 4 secteurs DOS 3.3 ou 2 blocs ProDOS) avec l'interleaving qui va bien
- les routines de lecture, �criture, formatage du DOS 3.2 13 secteurs

Avec le premier ajout, j'ai pu v�rifier que cela fonctionnait gr�ce au d�veloppement d'un embryon de FST CP/M.

Avec le second ajout, je suis plus emb�t� en raison du comportement de GS/OS dont la gestion de l'appel Volume est le suivant : j'appelle la fonction Volume detous les FSTs pr�sents dans le syst�me, lesquels demandent � DEV_DISPATCHER de lire tel ou tel bloc pour v�rifier le syst�me de fichier et cr�er la structure VCR qui va bien. GS/OS boucle tant qu'un FST ne lui a pas r�pondu : ce truc est � moi.

Cependant, lorsque le driver (ici, AppleDisk5.25) rencontre une erreur de lecture du champ d'adresse, il retourne l'erreur $27 (I/O error) et GS/OS interpr�te cela comme une erreur de lecture du support physique et il consid�re donc qu'il n'a pas � appeler les autres FSTs.

Quand on consid�re qu'on n'a que des disquettes 16 secteurs, cela fonctionne. Mais quand on ajoute le 13 secteurs... boum ! En effet, GS/OS d�marre par le FST n�1 (ProDOS) lequel appelle le driver qui lui retourne l'I/O error puisqu'il a �t� incapable de lire la disquette.

Ce que j'ai cherch� � faire est de patcher en temps r�el le driver dans sa gestion du champ d'adresse :
- si je rencontre D5AA96, TVB
- si je rencontre D5AAB5, patche le driver pour modifier la routine de lecture du champ de donn�es.
Cela prend malheureusement trop de temps et n'est pas fiable.

Je pars sur une autre piste : j'ai doubl� la routine de lecture du champ d'adresse : READ_ADDRESS62 (la standard) et READ_ADDRESS53 et je consid�re les choses suivantes :

- si je suis dans READ_ADDRESS62 et que je rencontre D5AAB5 alors retourne une erreur que GS/OS devra interpr�ter comme : passe � un autre FST,
- si je suis dans READ_ADDRESS53 et que je rencontre D5AA96 alors retourne une erreur que GS/OS devra interpr�ter comme : passe � un autre FST,
- en cas d'erreur, je ne retourne plus l'I/O error.

C'est chaud ! Pour le moment, cela ne fait rien, ce n'est pas le bon code d'erreur. D'autant plus, que je ne retourne pas le code erreur � GS/OS mais � un FST lequel doit interpr�ter le code erreur correctement. De plus, en cas d'erreur de lecture I/O r�elle, je ne la g�re plus.

Une potentielle solution de contournement me g�n�re deux probl�mes. Soit je trouve le bon code erreur, soit je d�sassemble tous les FSTs qui font appel � du 5.25 (ProDOS, DOS 3.2, DOS 3.3, Pascal, CP/M) et je g�re l'erreur.

Bon, c'est ennuyeux...

el toto
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message priv� Visiter le site web de l'utilisateur
toinet



Inscrit le: 15 Juin 2007
Messages: 326
Localisation: Paris, France

MessagePost� le: Jeu 27 Nov 2008, 22:27    Sujet du message: R�pondre en citant

unknownVol, erreur $52 maybe... il y a du progr�s...

el toto
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message priv� Visiter le site web de l'utilisateur
toinet



Inscrit le: 15 Juin 2007
Messages: 326
Localisation: Paris, France

MessagePost� le: Jeu 27 Nov 2008, 23:57    Sujet du message: R�pondre en citant

la piste �nonc�e plus haut �tait la bonne, l'erreur $52 �tait la bonne �galement.

Bon, c'est cool, le FST DOS3.2 est bien appel�, apr�s ProDOS et DOS3.3, il demande � charger le bloc $CC (en 13 secteurs, c'est piste $11, secteur $0)

Le driver charge un truc, revient sans erreur, le FST r�cup�re l'appel sans erreur �galement mais...

...je crois qu'il faut que je revoie deux trucs :
- l'interleaving DOS 3.2
- ma routine de d�nibblization (mais c'est celle de la RWTS 3.2)

bon, euh, je vais me coucher,

el toto qui est content
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message priv� Visiter le site web de l'utilisateur
toinet



Inscrit le: 15 Juin 2007
Messages: 326
Localisation: Paris, France

MessagePost� le: Mar 23 D�c 2008, 17:19    Sujet du message: R�pondre en citant

Un point d'avancement avant No�l, d�j� post� sur brutal-deluxe.fr mais l�, je le fais en fran�ais.

- une piste DOS 3.2 contient 13 secteurs et non 12 d'o� mes calculs erron�s et une non-reconnaissance de ces disques par le FST DOS3.2. C'est maintenant corrig� ;=)
- le FST DOS3.2 existe, lit bien les disquettes et les reconnait, ce qui est l'essentiel.
- pas d'avancement sur le FST CP/M, les routines du driver m'ont pris bcp de temps, surtout en d�bogage et tests.

Donc, le driver AppleDisk5.25 g�re maintenant les blocs de 256, 512 et 1024 octets.
Il sait les lire, normalement formater des disquettes mais ce n'est pas test� encore (il faut modifier les FST)
Il ne sait pas encore �crire un bloc de 256 octets en DOS 3.2, je me suis rendu compte hier soir que je n'avais pas fait la routine Sad
Il faut que je valide l'interleaving des routines de formatage, mon petit doigt me dit que la routine existante ne formate qu'en interleaving prodos...

J'ai commenc� � travailler sur l'ajout des commandes JudgeName, Format et EraseDisk du FST DOS3.3 afin de valider mes routines de driver. Je travaillerai sur cela pendant les vacances.

J'ai test� en long, large et travers les routines de lecture/�criture afin de ne pas introduire de r�gression, pour l'instant TVB avec une lecture/�criture normale sur disquette (via Finder) ou une lecture/�criture en masse (via Asimov), c'est rassurant.

C'est l� que je me rends compte que les commandes qui arrivent � un driver contiennent le num�ro du FST quand elles sont appel�es mais pas quand les commandes sont de type DRead, DStatus, DWrite, etc. Ce qui, somme toute, est logique mais pourrait �tre ennuyeux.

Asimov �crit ses disquettes en passant le nombre de blocs � �crire avec une taille de blocs et cela ne m'inqui�te mais ne me d�sesp�re pas, la logique voudrait que la paire taille d'un bloc / nombre de blocs sur un volume soit unique :
- 512 / 280 pour ProDOS ou Pascal (m�me interleaving)
- 256 / 560 pour DOS 3.3 ou RDOS 3.3 (m�me interleaving)
- 256 / 455 pour DOS 3.2 ou RDOS 3.2 (interleaving � v�rifier)
- 1024 / 140 pour CP/M (interleaving sp�cifique

Je contacterai les "�diteurs" des softs d'image s'il y a un probl�me.

Sur ce, je vous souhaite un joyeux No�l,

Antoine
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message priv� Visiter le site web de l'utilisateur
flaith



Inscrit le: 30 Ao� 2007
Messages: 30
Localisation: $300:20 58 FC 60

MessagePost� le: Mar 23 D�c 2008, 22:52    Sujet du message: R�pondre en citant

Shocked impressionnant, je suis depuis le d�but et n'en loupe pas une miette

Bonne continuation, et joyeux no�l � toi et � toute la bande Wink
_________________
Je suis sur de "rien", mais ne je suis pas sur du "tout".
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message priv� Visiter le site web de l'utilisateur
toinet



Inscrit le: 15 Juin 2007
Messages: 326
Localisation: Paris, France

MessagePost� le: Mer 24 D�c 2008, 17:10    Sujet du message: R�pondre en citant

Joyeux No�l �galement � tous,

Le FST DOS 3.3 formate maintenant en DOS 3.3 les disquettes qu'on lui donne � manger !

Le FST DOS 3.2 formate maintenant la premi�re piste en DOS 3.2 des disquettes qu'on lui donne � manger, hum ! La routine de v�rification du formatage est � modifier pour pouvoir la consid�rer bonne pour le service, ie. pour formater une disquette enti�rement.

J'ai ajout� les routines de pr�nibblization en DOS 3.2 et d'�criture d'un secteur.

Je vois le bout du tunnel !!!!!!

antoine
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message priv� Visiter le site web de l'utilisateur
Montrer les messages depuis:   
Poster un nouveau sujet   R�pondre au sujet     Index du Forum -> Recherches techniques (hard ou soft) Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1

 
Sauter vers:  
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas r�pondre aux sujets dans ce forum
Vous ne pouvez pas �diter vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com