Logicielsmoto.com

Nous sommes le 19 Mar 2024, 09:46

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 2 messages ] 
Auteur Message
 Sujet du message: Questions sur le DOS Thomson
MessagePosté: 04 Mar 2024, 12:39 
Hors ligne

Inscription: 24 Juil 2010, 16:08
Messages: 454
Localisation: France
J'essaie de développer un outil pour piloter le HxC floppy Emulator sur les machines Thomson.

J'ai une version qui fonctionne bien sur MO5 avec le contrôleur CD90-640.

Mais je n'ai pas réussi à l'adapter sur le TO8. J'essaie d'utiliser la ROM DOS pour faire des accès sectoriels (ça m'éviterait de programmer le contrôleur disque à la main...).

Pour le contrôle du HxC j'ai besoin de:

- Pouvoir sélectionner la piste 255 de la disquette. Cette piste "spéciale" expose une interface de contrôle par lecture et écriture de secteurs. Sur le CD90-640, ça fonctionne, mais sur le TO8, j'ai l'impression que on est limité à la piste 127 par le code de la ROM disque.
- Pouvoir utiliser des secteurs de 512 octets sur cette piste. Ça ne semble pas fonctionner non plus, sauf s'il y a un bug dans mon code, ce qui est tout à fait possible.

Est-ce que vous avez des informations sur ce genre de choses? Peut-on convaincre la ROM disque de lire et écrire des secteurs de 512 octets, ou bien je vais être obligé de programmer le contrôleur disque directement moi-même?

Merci de votre aide :)


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 04 Mar 2024, 18:29 
Hors ligne

Inscription: 21 Avr 2019, 21:48
Messages: 432
Localisation: Var
Sur TO8, l'algo de la ROM de lecture secteur est le suivant:

- lecture dans le registre B du numéro de piste "courant" pour le lecteur (en $6052 pour le lecteur 0)
- soustraction dans le registre B de la piste demandée
- le signe du résultat détermine la direction de la commande moteur
- calcul de la valeur absolue de l'écart entre la piste courante et celle désirée
- avance en fonction de l'écart calculé

Donc effectivement on ne peut pas avancer directement de la piste 0 à 255.
Par contre ça pourrait être possible en 2 accès :
- une première lecture en piste 128
- une seconde lecture en piste 255

Pour que ça fonctionne il faudrait que le HxC renvoie qq chose sur cette piste 128, c’est loin d’être gagné…
Mais de toute façon les routines en ROM du TO8 ne gèrent que simple ou double densité (géré par un flag, la routine de copie des caractères depuis le lecteur utilise un compteur 8bit)
Donc si tu dois absolument lire les données d’un secteur de 512 octets pour la commande spéciale ça me parait compromis…

Reste l’écriture, comme tu l’as dit, d’une routine custom inspirée de la ROM mais qui gère les fonctions dont tu as besoin.


Haut
 Profil  
Répondre en citant le message  
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 2 messages ] 

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages
Vous ne pouvez pas joindre des fichiers

Rechercher:
Aller à:  
cron
Développé par phpBB® Forum Software © phpBB Group
Traduction par phpBB-fr.com