La Place des Développeurs Utilisation de disque MSX-DOS, BDOS, Disk BASIC, et autres joyeusetés
aoineko
Membre non connecté
Conseiller Municipal
Hello,
Depuis que je me suis mis à la programmation MSX, je me suis concentré sur les jeux en cartouche et je n’ai pas encore réussi à comprendre la gestion des disques dans le détail.
J’ai lu pas mal de doc (surtout sur le MSX-DOS), mais y a encore pas mal de choses qui m’échappent.
Alors, commençons par le matériel.
Je sais que plusieurs marques ont proposés des lecteurs de disquette pour MSX. Par contre, je ne sais pas si tous les matériels étaient contrôlé de la même "façon" (électroniquement parlant). Est-ce qu’il y avait des "drivers" pour faire l’interface entre le matériel et le BIOS ? Si oui, sous la forme d’une ROM visible dans un slot ?
En dehors des OS (MSX-DOS et BASIC), comment peut-on contrôler un lecteur de disquette depuis le CPU ? Si j’ai bien compris c’est via le BDOS… une sorte de code d’interfaçage avec le disque, qui serait installé en RAM lors du boot de la machine. Qui s’occupe d’installer le BDOS ? Que contient le BDOS ? Vu sa petite taille, j’imagine que ce n’est qu’une table de saut ; mais vers où ?
On parlera du MSX-DOS et du BASIC plus tard. J’aimerais déjà bien comprendre les couches inférieures.
PS : Si quelqu'un a une version lisible du Livre du disque MSX, je suis preneur. Celle que j'ai (et toute celle que j'ai trouvé sur le net) est de trop mauvais qualité pour être vraiment lisible.
Depuis que je me suis mis à la programmation MSX, je me suis concentré sur les jeux en cartouche et je n’ai pas encore réussi à comprendre la gestion des disques dans le détail.
J’ai lu pas mal de doc (surtout sur le MSX-DOS), mais y a encore pas mal de choses qui m’échappent.
Alors, commençons par le matériel.
Je sais que plusieurs marques ont proposés des lecteurs de disquette pour MSX. Par contre, je ne sais pas si tous les matériels étaient contrôlé de la même "façon" (électroniquement parlant). Est-ce qu’il y avait des "drivers" pour faire l’interface entre le matériel et le BIOS ? Si oui, sous la forme d’une ROM visible dans un slot ?
En dehors des OS (MSX-DOS et BASIC), comment peut-on contrôler un lecteur de disquette depuis le CPU ? Si j’ai bien compris c’est via le BDOS… une sorte de code d’interfaçage avec le disque, qui serait installé en RAM lors du boot de la machine. Qui s’occupe d’installer le BDOS ? Que contient le BDOS ? Vu sa petite taille, j’imagine que ce n’est qu’une table de saut ; mais vers où ?
On parlera du MSX-DOS et du BASIC plus tard. J’aimerais déjà bien comprendre les couches inférieures.
PS : Si quelqu'un a une version lisible du Livre du disque MSX, je suis preneur. Celle que j'ai (et toute celle que j'ai trouvé sur le net) est de trop mauvais qualité pour être vraiment lisible.
On est toujours ignorant avant de savoir.
aoineko
Membre non connecté
Conseiller Municipal
Disk ROM, Basic-DOS, Disk-Basic, MSX-DOS... j'ai le cerveau qui fume...
Bon, ceci dit, en me flinguant les yeux sur ma version ultra-pixélisée du Livre du disque MSX, j'ai compris quelques trucs.
Un contrôleur de disque contient toujours une ROM de 16 KB (le Disk ROM) visible en page #1 (adresse 4000h-7FFFh) qui contient :
- Le Disk-Basic (extension du Basic pour la gestion des disques ?),
- Le Kernel MSX-DOS (?),
- Le driver du lecteur.
C'est l'exécution du code d'initialisation de cette ROM lors de la phase de boot du MSX qui installer le BDOS (= Basic-DOS ?) en RAM si les conditions d'exécution du MSX-DOS ne sont pas remplis (RAM < 128 KB ou absence des fichiers systèmes sur le disque).
Donc, si je comprends bien, sous Basic, le Disk-Basic utilise le Basic-DOS ?
Bon, ceci dit, en me flinguant les yeux sur ma version ultra-pixélisée du Livre du disque MSX, j'ai compris quelques trucs.
Un contrôleur de disque contient toujours une ROM de 16 KB (le Disk ROM) visible en page #1 (adresse 4000h-7FFFh) qui contient :
- Le Disk-Basic (extension du Basic pour la gestion des disques ?),
- Le Kernel MSX-DOS (?),
- Le driver du lecteur.
C'est l'exécution du code d'initialisation de cette ROM lors de la phase de boot du MSX qui installer le BDOS (= Basic-DOS ?) en RAM si les conditions d'exécution du MSX-DOS ne sont pas remplis (RAM < 128 KB ou absence des fichiers systèmes sur le disque).
Donc, si je comprends bien, sous Basic, le Disk-Basic utilise le Basic-DOS ?
On est toujours ignorant avant de savoir.
ericb59
Membre non connecté
Conseiller Municipal
Salut
autant que je saches le Bdos est la couche low level qui permet d'utiliser les disks.
Que ça soit depuis le Basic ou depuis Msx-dos, les deux font des appel sur le Bdos.
La "disk-rom" qui est dans la cartouche d'interface d'un lecteur de disquette MSX1 par exemple est composée d'une partie Bios et du Bdos.
Le Bdos étant sans doute comme tu le dis, une table de saut vers ce Bios, qui permet d'unifier les appels, qu'ils viennent du Basic ou du Dos.
livre du disk que j'ai
http://ebsoft.fr/dms/www/out/out.ViewDocument.php?documentid=809 Edité par ericb59 Le 10/05/2022 à 07h26
autant que je saches le Bdos est la couche low level qui permet d'utiliser les disks.
Que ça soit depuis le Basic ou depuis Msx-dos, les deux font des appel sur le Bdos.
La "disk-rom" qui est dans la cartouche d'interface d'un lecteur de disquette MSX1 par exemple est composée d'une partie Bios et du Bdos.
Le Bdos étant sans doute comme tu le dis, une table de saut vers ce Bios, qui permet d'unifier les appels, qu'ils viennent du Basic ou du Dos.
livre du disk que j'ai
http://ebsoft.fr/dms/www/out/out.ViewDocument.php?documentid=809 Edité par ericb59 Le 10/05/2022 à 07h26
quelques informations lisibles ici : https://konamiman.github.io/MSX2-Technical-Handbook/md/Chapter3.html
et ici : http://fms.komkon.org/MSX/Docs/DiskROM1.txt
et ici : http://fms.komkon.org/MSX/Docs/DiskROM1.txt
TurboSEB
Membre non connecté
Conseiller Municipal
Si ça intéresse qqun, j'ai l'original que je peu vendre à prix coûtant, soit 110FF de l'époque (16,77euros), auquel il faudra rajouter les frais d'envoi.
Bonne état général, vue que je n'ai pas du l'ouvrir beaucoup
Après, si il vous faut uniquement une page illisible, je peu prendre une photo.
Je ne l'ai pas sous la main et il me faut environ 15 euros de carburant pour aller le chercher Edité par TurboSEB Le 10/05/2022 à 09h43
Bonne état général, vue que je n'ai pas du l'ouvrir beaucoup
Après, si il vous faut uniquement une page illisible, je peu prendre une photo.
Je ne l'ai pas sous la main et il me faut environ 15 euros de carburant pour aller le chercher Edité par TurboSEB Le 10/05/2022 à 09h43
MSX 1&2 + Moniteurs+divers (environ 0.70Tonnes)
en plus de la rom il y a un composant électronique qui fait l'interface entre le Z80 et le lecteur de disquettes
ce composant n'est pas identique dans tous les MSX
exemples :
VG 8235 : WD1793 + SEDC92421C08
NMS 8250 : WD2793A
HB-F700 : TMS2793NL couplé avec un CXD1032Q
Turbo-R : TC8568AF
donc on comprend bien que la ROM DISK n'est pas identique d'un MSX à l'autre
ce composant n'est pas identique dans tous les MSX
exemples :
VG 8235 : WD1793 + SEDC92421C08
NMS 8250 : WD2793A
HB-F700 : TMS2793NL couplé avec un CXD1032Q
Turbo-R : TC8568AF
donc on comprend bien que la ROM DISK n'est pas identique d'un MSX à l'autre
TurboSEB :
Si ça intéresse qqun, j'ai l'original que je peu vendre à prix coûtant, soit 110FF de l'époque (16,77euros), auquel il faudra rajouter les frais d'envoi.
Ca m'intéresse pour ma bibliothèque.
Si tu peux le ramener à la PGR ce serait cool
TurboSEB
Membre non connecté
Conseiller Municipal
Sebbeug :
Ca m'intéresse pour ma bibliothèque.
Si tu peux le ramener à la PGR ce serait cool
TurboSEB :
Si ça intéresse qqun, j'ai l'original que je peu vendre à prix coûtant, soit 110FF de l'époque (16,77euros), auquel il faudra rajouter les frais d'envoi.
Ca m'intéresse pour ma bibliothèque.
Si tu peux le ramener à la PGR ce serait cool
Ok dac
Mince je me suis trompé, c'est 16,71 euros
J'ai aussi le livre du Basic pour le HB75 si ça t'intéresse.
De memoire, c'est asser bouratif comme bouquin ce livre du disc Msx, je me demande encore pourquoi j'avais acheté ça
MSX 1&2 + Moniteurs+divers (environ 0.70Tonnes)
aoineko
Membre non connecté
Conseiller Municipal
granced :
Y a longtemps que j'ai pas retapé un bouquin. S'il y a des gens intéressés pour une version "propre" et plus lisible, pourquoi pas.
Je suis trèèèès intéressé.
De ce que j'ai réussit à lire (en faisant saigner mes yeux) ça à l'air bourré d'info super-intéressantes sur un sujet qu'on trouve peu ailleurs (même en anglais).
@ericb59 J'ai la même version que toi ; ça semble être la seule dispo sur le net.
On est toujours ignorant avant de savoir.
TurboSEB :
Ok dac
Mince je me suis trompé, c'est 16,71 euros
Sebbeug :
Ca m'intéresse pour ma bibliothèque.
Si tu peux le ramener à la PGR ce serait cool
TurboSEB :
Si ça intéresse qqun, j'ai l'original que je peu vendre à prix coûtant, soit 110FF de l'époque (16,77euros), auquel il faudra rajouter les frais d'envoi.
Ca m'intéresse pour ma bibliothèque.
Si tu peux le ramener à la PGR ce serait cool
Ok dac
Mince je me suis trompé, c'est 16,71 euros
Entre mug et t-shirt, je vais te claquer un max de pognon à la PGR !
Merci
aoineko
Membre non connecté
Conseiller Municipal
ericb59 :
La "disk-rom" qui est dans la cartouche d'interface d'un lecteur de disquette MSX1 par exemple est composée d'une partie Bios et du Bdos.
Le Bdos étant sans doute comme tu le dis, une table de saut vers ce Bios, qui permet d'unifier les appels, qu'ils viennent du Basic ou du Dos.
Le Bdos étant sans doute comme tu le dis, une table de saut vers ce Bios, qui permet d'unifier les appels, qu'ils viennent du Basic ou du Dos.
Alors, de ce que j'ai compris :
Le BDOS (Basic-DOS) installé en RAM n'est utilisé que par le BASIC (via le Disk-BASIC ; c'est également lui qu'on peut utiliser depuis une ROM si le programme commence après l'initialisation d'une Disk-ROM).
Le MSX-DOS utilise les mêmes prototypes de fonction (numéro et paramètres) mais à une adresse différente.
Il me semble que des docs évoquaient des différences entre les versions MSX-DOS et Basic-DOS de fonctions, mais je ne connais pas le détail.
On est toujours ignorant avant de savoir.
pour l'instant on n'a pas parlé du MSX-DOS2 qui est une extension uniquement logicielle et qui requiert elle 128 Ko de RAM
pas mal d'infos sur ce site http://map.grauw.nl/resources/
pour travailler avec les MSX-DOS il faut aussi une disquette de boot contenant 2 fichiers
DOS1 avec COMMAND.COM et MSXDOS.SYS
DOS2 avec COMMAND2.COM et MSXDOS2.SYS
pas mal d'infos sur ce site http://map.grauw.nl/resources/
pour travailler avec les MSX-DOS il faut aussi une disquette de boot contenant 2 fichiers
DOS1 avec COMMAND.COM et MSXDOS.SYS
DOS2 avec COMMAND2.COM et MSXDOS2.SYS
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie