SFD-700 mkII Manuel Utilisateur
SFD-700 mkII Manuel Utilisateur
Le SFD-700 mkII est une carte d'interface de disquette pour la serie Sharp MZ d'ordinateurs personnels et professionnels. Elle permet de connecter des lecteurs de disquettes standard 3,5" ou 5,25" a des machines qui n'ont jamais ete concues avec un support disquette integre -- ou qui necessitaient une carte d'extension proprietaire et desormais difficile a trouver. Contrairement au SFD-700 original de K&P de 1985 qui ne fonctionnait que dans le MZ-700 (et uniquement dans l'unite d'extension MZ-1U06), le mkII est une conception entierement nouvelle qui prend en charge sept machines hotes Sharp MZ differentes a partir d'une seule carte grace a un cavalier MODE a trois bits.
Ce manuel couvre tout ce qui est necessaire pour construire, installer et utiliser le SFD-700 mkII dans votre ordinateur Sharp MZ. Pour les details approfondis du materiel et de la logique, consultez le Guide Technique. Pour des informations sur la modification de la logique CPLD ou du firmware ROM, consultez le Guide du Developpeur.
Ce dont vous avez besoin
Materiel
- Un PCB SFD-700 mkII v1.2 -- six cartes de reserve sont disponibles aupres de l'auteur (frais de port uniquement); contactez via le site web. Les fichiers Gerber se trouvent dans le repertoire
releases/du depot pour la fabrication personnelle. - Tous les composants listes dans la nomenclature (le BOM interactif KiCAD est inclus dans
kicad/v1.0/bom/ibom.html). - Un programmeur JTAG Altera USB-Blaster (ou clone) pour programmer le CPLD apres assemblage.
- Un ou deux lecteurs de disquettes 3,5" compatibles PC (DD ou HD). Les lecteurs 5,25" sont egalement pris en charge.
- Un cable ruban disquette IDC 34 broches.
- Un repartiteur de cable d'alimentation disquette (connecteur Molex 4 broches ou Berg/mini selon votre type de lecteur).
- Un connecteur d'extension pour votre machine hote specifique -- voir Connecteurs Hotes ci-dessous.
- Quartus II 13.0.1 SP1 Web Edition -- necessaire pour compiler la source VHDL du CPLD.
- Logical Devices CUPL v4.0 (optionnel, pour les fichiers GAL v1.0/v1.1 uniquement).
- Fer a souder avec pointe fine, soudure et flux.
- Support PLCC-84 (requis -- l'EPM7128SLC84 est un composant CMS PLCC et doit etre monte sur un support pour la reprogrammation).
- Tapis antistatique et bracelet -- les composants CMOS sont sensibles a l'electricite statique.
Apercu de la Carte
Le PCB SFD-700 mkII v1.2 porte les composants cles suivants.
| Reference | Composant | Description |
|---|---|---|
| U1 | EPM7128SLC84-15 | CPLD Altera MAX7000S en boitier PLCC 84 broches – implemente toute la logique de bus |
| U2 | WD1773 | Circuit controleur de disquette Western Digital |
| U3 | SST39SF040 (ou compatible) | Flash ROM 512 Ko – stocke le firmware de demarrage (AFI ROM, pages ROM Filing System) |
| U4 | 62256 (32Ko SRAM) | RAM statique pour l’espace de travail ROM Filing System |
| X1 | Oscillateur a quartz 16 MHz | Source d’horloge principale – divisee a 8 MHz pour le WD1773 |
| J1 | Cavalier MODE (3 broches x 1) | Selectionne la machine hote (voir Cavalier MODE) |
| J2 | Connecteur JTAG (10 broches) | Utilise pour la programmation CPLD via USB-Blaster |
| J3 | Connecteur disquette (IDC 34 broches) | Connecte aux lecteurs de disquettes via cable ruban standard |
| J4 | Connecteur bus hote | Connecte au bus d’extension Sharp MZ |
Carte v1.2

Reglage du Cavalier MODE
Le cavalier MODE a trois bits (J1) indique au CPLD dans quelle machine hote Sharp MZ la carte est installee. La valeur est verrouillee par le CPLD a chaque reinitialisation systeme. Vous devez regler le cavalier avant de mettre sous tension l'ordinateur hote.
| MODE | Binaire (bit2:bit1:bit0) | Machine Hote |
|---|---|---|
| 0 | 0 : 0 : 0 | Sharp MZ-80A / MZ-1200 |
| 1 | 0 : 0 : 1 | Sharp MZ-700 |
| 2 | 0 : 1 : 0 | Sharp MZ-80B |
| 3 | 0 : 1 : 1 | Sharp MZ-800 |
| 4 | 1 : 0 : 0 | Sharp MZ-1500 |
| 5 | 1 : 0 : 1 | Sharp MZ-2000 |
| 6 | 1 : 1 : 0 | Sharp MZ-2200 |
MZ-80A / MZ-1200 (MODE 0)
Le MZ-80A fait fonctionner son CPU Z80 a 2 MHz, ce qui est trop lent pour interroger de maniere fiable le drapeau DRQ du WD1773 et recuperer chaque octet avant l'arrivee du suivant. Le CPLD gere cela automatiquement en MODE 0 en routant le signal DRQ directement vers le bit d'adresse A10 de la Flash ROM. MZ-700 / MZ-1500 (MODEs 1 et 4)
Ces machines disposent d'un controleur de gestion memoire qui peut basculer leur DRAM interne et CGROM dans l'espace d'adressage superieur (D000h-FFFFh). Le CPLD surveille les ports I/O de gestion memoire (0xE0-0xE6) et active ou desactive automatiquement la Flash ROM et la RAM embarquees du SFD-700. MZ-80B, MZ-800, MZ-2000, MZ-2200 (MODEs 2, 3, 5, 6)
Ces machines incluent le firmware de bootstrap disquette dans leurs ROM IPL integrees, donc la Flash ROM du SFD-700 n'est pas mappee dans l'espace d'adressage.
Le MZ-80A fait fonctionner son CPU Z80 a 2 MHz, ce qui est trop lent pour interroger de maniere fiable le drapeau DRQ du WD1773 et recuperer chaque octet avant l'arrivee du suivant. Le CPLD gere cela automatiquement en MODE 0 en routant le signal DRQ directement vers le bit d'adresse A10 de la Flash ROM. MZ-700 / MZ-1500 (MODEs 1 et 4)
Ces machines disposent d'un controleur de gestion memoire qui peut basculer leur DRAM interne et CGROM dans l'espace d'adressage superieur (D000h-FFFFh). Le CPLD surveille les ports I/O de gestion memoire (0xE0-0xE6) et active ou desactive automatiquement la Flash ROM et la RAM embarquees du SFD-700. MZ-80B, MZ-800, MZ-2000, MZ-2200 (MODEs 2, 3, 5, 6)
Ces machines incluent le firmware de bootstrap disquette dans leurs ROM IPL integrees, donc la Flash ROM du SFD-700 n'est pas mappee dans l'espace d'adressage.
Connecteurs Hotes
Chaque machine Sharp MZ fournit son bus d'extension via un connecteur different.
| Hote | Methode d’extension | Notes |
|---|---|---|
| MZ-80A / MZ-1200 | Connecteur de bord direct sur le port d’extension arriere | Connecteur de bus 50 ou 60 broches selon la revision |
| MZ-700 | Unite d’extension MZ-1U06 ou adaptateur personnalise | Voir note ci-dessous |
| MZ-80B | Slot d’extension arriere | Connecteur de bus MZ-80B standard |
| MZ-800 | Slot d’extension arriere | Connecteur de bus MZ-800 |
| MZ-1500 | Adaptateur EXT700 ou extension arriere directe | L’adaptateur EXT700 interface le bus d’extension style MZ-700 |
| MZ-2000 | Unite d’extension MZ-2000 | Slot dans le chassis d’extension |
| MZ-2200 | Slot d’extension MZ-2200 | Connecteur d’extension arriere |
Installation dans l'Ordinateur Hote
Securite d'abord : Eteignez toujours l'ordinateur hote et debranchez-le du secteur avant d'installer ou de retirer toute carte d'extension.
Procedure d'installation generale :
- Reglez le cavalier MODE (J1) sur le SFD-700 mkII pour votre machine hote avant d'installer la carte.
- Eteignez et debranchez l'ordinateur hote.
- Inserez le SFD-700 mkII dans le slot d'extension ou l'adaptateur approprie pour votre machine.
- Connectez le cable ruban disquette 34 broches du J3 sur le SFD-700 mkII a votre/vos lecteur(s) de disquettes.
- Connectez l'alimentation du lecteur de disquettes.
- Mettez sous tension l'ordinateur hote.
Connexion des Lecteurs de Disquettes
Le SFD-700 mkII prend en charge jusqu'a quatre lecteurs (A a D).
Selection de Lecteur et Controle Moteur
La selection du lecteur est controlee en ecrivant sur le port I/O 0xDC. Les trois bits inferieurs encodent le lecteur actif :
| Valeur Bits [2:0] | Lecteur Selectionne |
|---|---|
| 0 | Aucun (tout desselectionner) |
| 4 | Lecteur A |
| 5 | Lecteur B |
| 6 | Lecteur C |
| 7 | Lecteur D |
Le bit 7 du meme octet controle le moteur de la broche -- ecrivez 1 pour demarrer le moteur, 0 pour l'arreter. Le moteur doit tourner (et la tete du lecteur doit etre stabilisee) avant d'emettre des commandes de lecture ou d'ecriture au WD1773.
Mise sous Tension et Test Initial
Apres l'installation et la connexion du lecteur, mettez sous tension l'ordinateur hote. Le comportement attendu depend de la machine hote :
MZ-80A / MZ-1200 : La machine demarre normalement depuis sa ROM Monitor integree. Pour demarrer depuis une disquette, tapez F a l'invite du Monitor.
MZ-700 : De meme, demarrez normalement et tapez F a l'invite du Monitor pour lancer un demarrage disquette. Si le ROM Filing System (RFS) a ete programme dans la Flash ROM du SFD-700 mkII, la banniere d'accueil inclura "
+ RFS".
MZ-80B, MZ-800, MZ-2000, MZ-2200 : Ces machines demarrent automatiquement depuis la disquette si un disque de demarrage est insere dans le lecteur A.
MZ-1500 : Necessite l'adaptateur EXT700 ou equivalent. Suivez la procedure de demarrage MZ-700 une fois l'adaptateur connecte.
ROM Filing System (RFS)
Le ROM Filing System (RFS) est une suite logicielle stockee dans la Flash ROM du SFD-700 mkII qui etend le Monitor de la machine hote avec un ensemble complet de commandes ameliorees.
Commandes Disponibles
| Commande | Parametres | Description |
|---|---|---|
| ASM | <address> | Invoquer l’assembleur Z80 integre a partir de <address>. |
| B | n/a | Activer/desactiver le bip de saisie clavier. |
| BASIC | n/a | Localiser BASIC SA-5510 en ROM, charger et executer. |
| C | [<8 bit value>] | Initialiser la memoire de 0x1200 au sommet de la RAM. |
| CP | <src addr> <dst addr> <size> | Copier un bloc de memoire. |
| CPM | n/a | Localiser CP/M 2.2 en ROM, charger et demarrer. |
| D | <address>[<address2>] | Vider la memoire en hexadecimal et ASCII. |
| DASM | <address>[<address2>] | Invoquer le desassembleur Z80 integre. |
| F / FL | [<drive>] | Demarrer depuis le lecteur de disquette specifie. |
| FD | [<drive>] | Afficher le repertoire d’une disquette. |
| FC | <start> <end> <exec> | Sauvegarder une plage memoire dans un fichier disquette. |
| FD2T | <name> ou <file no.> | Copier un fichier de disquette vers cassette (CMT). |
| T2FD | n/a | Charger un programme depuis la cassette et le sauvegarder sur disquette. |
| H | n/a | Afficher l’ecran d’aide pagine. |
| IR | n/a | Liste paginee des programmes stockes dans les lecteurs Flash ROM. |
| J | <address> | Sauter a (commencer l’execution a) l’adresse donnee. |
| L | LT | [<filename>] | Charger un fichier depuis la cassette et l’executer. |
| LTNX | [<filename>] | Charger un fichier depuis la cassette sans executer. |
| LR | <name> ou <file no.> | Charger un programme depuis la ROM et l’executer. |
| LRNX | <name> ou <file no.> | Charger un programme depuis la ROM sans executer. |
| M | <address> | Editeur de memoire interactif. |
| P | n/a | Tester l’imprimante connectee. |
| R | n/a | Test memoire DRAM complet. |
| S | ST | <start addr> <end addr> <exec addr> | Sauvegarder un bloc memoire sur cassette. |
| T | n/a | Tester le timer 8253. |
| V | n/a | Verifier un fichier sauvegarde sur cassette. |
Depannage
L'ordinateur hote ne repond pas aux commandes disquette
- Verifier le cavalier MODE -- verifiez que J1 est correctement regle pour votre machine hote.
- Verifier l'assise de la carte -- retirez et reinserez le SFD-700 mkII.
- Verifier la programmation CPLD -- si le CPLD n'a pas ete programme, la carte ne fonctionnera pas.
- Verifier la programmation de la Flash ROM -- la Flash ROM doit contenir le code de demarrage AFI pour votre machine.
Le lecteur ne demarre pas ou ne recherche pas
- Verifier l'alimentation -- assurez-vous que le lecteur recoit 5V et 12V (pour les lecteurs 5,25").
- Verifier l'orientation du cable ruban -- la bande rouge (broche 1) doit s'aligner avec la broche 1 de J3.
- Verifier la terminaison -- seul le dernier lecteur sur le cable doit etre termine.
Erreurs de lecture / erreurs CRC sur disquette
- Verifier le reglage de densite -- ecrivez la valeur correcte sur le port 0xDE.
- Verifier le format du disque -- les disques formates avec une geometrie incompatible produiront des erreurs.
- Essayer un autre disque -- les supports disquette se degradent avec le temps.
Sites de Reference
| Ressource | Lien |
|---|---|
| Page projet SFD-700 mkII | /fr/sfd700/ |
| Guide Technique SFD-700 mkII | /fr/sfd700-technicalguide/ |
| Guide du Developpeur SFD-700 mkII | /fr/sfd700-developersguide/ |
| SFD-800 (carte compagnon MZ-800) | /sfd800/ |
| Manuel K&P SFD-800 (Allemand) | /Downloads/Manuals/KandP/sfd_mfd800.pdf |
| Fiche technique WD1773 | Western Digital / Archives BPCD |
| Fiche technique Altera MAX7000S | Page produit Intel FPGA |
| Quartus II 13.0.1 SP1 Web Edition | Intel FPGA Software Archive |