2012-09-11
SPVHD
Smartport Virtual Hard Drive
Une solution USB externe pour l'Apple II
Cette page est obsolète, veuillez consulter le site en anglais ici
1 Introduction
2 Aperçu
3 Status et nouvelles de septembre 2011
4 Offres
5 Compatibilité
6 Performances
7 Evolutions
8 Un peu plus loin
9 Licences
0 Donations
1.Introduction
Ce projet propose un périphérique de stockage de masse pour l'Apple //c, le seul Apple II sans connecteurs d'extensions internes. Le connecteur externe pour lecteur de disquette, aka smartport, est exploité au mieux pour atteindre cet objectif. Le résultat est un périphérique qui permet à l'Apple II de voir le contenu d'un péripherique usb comme un ou plusieurs disques durs.
Chaque disque dur vu par l'Apple II est un simple fichier stocké dans le système de fichier FAT du périphérique usb. Chaque fichier est une image complète d'un disque dur, qui est manipulable depuis votre pc usuel via le logiciel
CiderPress. Bien sûr, un fichier peut également être l'image d'une disquette, mais les disquettes protégées ne peuvent pas fonctionner de cette façon. La place restante sur le périphérique usb reste disponible pour d'autres utilisations, ainsi vous n'avez pas besoin de dédier le périphérique usb uniquement à l'Apple II.
Sur votre Apple //c, vous pourrez démarrer vos applications plus rapidement et sans avoir à changer de disquette constamment.
Sur votre Apple IIgs, vous aurez un stockage de masse pour le moins très pratique, et les même avantages que pour l'Apple //c si vous n'avez pas de stockage de masse interne.
Dans tous les case, vous pourrez partager vos fichiers rapidement et facilement aussi bien avec des systèmes modernes qu'avec d'autres Apple II.
Mousedesk découvre un volume de 32Mo sur le smartport:
2.Aperçu
Pratique:
- une simple clée usb peut contenir plusieurs images de disque dur pour Apple II, sous forme de fichiers
- partage rapide et facile de fichiers à l'aide de CiderPress
- aucun pilote de périphérique requis
Ouvert:
- la fonction usb host et la licence open source permettent bien plus que le stockage de masse dans le futur
- le micro logiciel peut être mis à jour via un cable usb
Fiable:
- électronique moderne et éprouvée, nombre réduit de composants
Abordable:
- un stockage de masse neuf et moderne pour le prix d'un lecteur de disquette d'occasion pour votre Apple II
Elegant:
- boitier moulé correspondant au look des lecteurs 3.5 Apple II
3.Status et nouvelles
Juin 2011:
Le développement de l'électronique et du micro logiciel est terminé et testé depuis avril 2011.
Une petite série est en cours de production et devrait être disponible pour l'été 2011.
Le développement du boitier devait être terminé également pour l'été 2011.
Le premier prototype est visible
ici et sur
youtube
Juillet 2011:
Le prototype courant à été envoyé à la
KansasFest 2011 et Geoff Weiss en à fait la démonstration.
Le prototype courant à coté d'un Unidisk 3.5 sur la photo de gauche,
et sur la droite, avec les prototypes d'Apple à la Kansas Fest 2011 (credit: Geoff Weiss):
Aout 2011:
Les demandes pour la version DIY ont été traitées et certains d'entre vous en font l'assemblage.
Le lot de connecteurs DB19 que j'avais commandé fin mai n'est toujours pas arrivé...Je devrais probablement contacter un autre distributeur mais l'incident doit être résolu au préalable...Ceci reporte la disponibilité de la version PNP...
Septembre 2011:
Le problème de livraison des connecteurs DB19 est sur le point d'être résolu. Cela m'a donné un peu de temps pour repenser l'intérieur du boitier, et j'ai trouvé une meilleur solution a la fois pour le blindage de l'électronique et pour la structure interne.
Le boitier est en cours de finalisation.
4.Offres
Le projet sera open source, ainsi vous pourrez créer votre propre périphérique de stockage de masse depuis zéro. Cependant, cette option est difficile: seul des micro controleurs à souder en surface propose la fonction usb host, et cela nécessite des outils couteux. J'ai trouvé une solution propre et abordable en sélectionnant un design
Opendous. Cela me permet de vous offrir deux solutions plus sipmple pour avoir un périphérique fonctionnel.
Solution DIY: si vous souhaitez vraiment faire votre propre installation.
Cette solution inclut seulement la carte, testée, programmée avec la dernière version du micro logiciel, et les schémas nécéssaires pour faire votre cablage.
Le prix ciblé est assez bas, de l'ordre de 30 euros.
Sur demande, je devrais pouvoir fournir des parties que j'utilise pour la solution plug and play.
Mais souvenez vous d'une chose: Je ne souhaite pas vous voir abimer votre matériel Apple II juste pour loger la carte dedans !
Le coeur du système:
Solution PNP: pret à l'emploi dans un boitier moulé ressemblant à un lecteur Apple II 3.5 (mais deux fois plus fin !)
Connectez le lecteur usb comme un lecteur de disquette et préparez votre cle usb: vous êtes pret !
Le prix est plus conséquent bien sur, mais tant que ça: environ 50 euros.
C'est le périphérique que je voulait depuis très longtemps, quand j'ai décidé de laisser mon Apple //c car il était devenu inutilisable sans un stockage de masse.
Illustration artistique du boitier:
Comparaison de taille entre un Unidisk 3.5 (à gauche) et le SmartPortVHD (à droite):
Bien que les photos soient très belles, ne perdez pas de vu que ce périphérique est de construction artisanal, et malgrès toute mon attention, l'aspect final n'est pas parfait quand on l'examine de pret.
Si vous souhaitez acquérir ce périphérique, envoyez moi un
email avec "SmartPortVHD" en sujet. N'oubliez pas de m'indiquez votre adresse postal, et je vous enverrais une demande de confirmation incluant les frais postaux dès qu'un modèle sera disponible. Je ne gagne pas d'argent avec ce produit, mais je dois au moins recouvrir mes frais de développements. Je suis un grand fan de l'époque de l'Apple II et je le fais en tant que passionné, pour les passionnés ! Bien sur, toute
donation pour supporter mon travail est bienvenue :)
5.Compatibilité
Ce périphérique peut être chainé avec vos lecteurs de disquettes existant, tant que les règles usuelles sont respectés (voir ci après). Des tests ont été conduit avec succès sur le matériel suivant:
Ordinateurs:
- Apple //c ROM 3.5
- Apple IIgs ROM01 et ROM3
- Apple IIe avec carte Liron
- Apple //c+, test prévu
- Apple IIe card for Macintosh, test prévu
Lecteur de disquettes 5.25 (ces lecteurs doivent êtres connectés en fin de chaine):
- Disk //c A2M4050
- Apple 5.25 A9M0107
Lecteurs de disquettes 3.5:
- Apple 3.5 A9M0106 (doit toujours être devant le SmartPortVHD dans la chaine)
- Unidisk 3.5 A9M2053
Périphérique USB:
- Clées USB
- Lecteur multicarte USB avec carte SD
- Lecteur multicarte USB avec carte compact flash
- Disque dur USB, doit impérativement être auto alimenté, test prévu
Systeme d'exploitation:
- ProDOS 8
- ProDOS 16
- GS/OS
- Pascal
Pour mémoire, dans une chaine de lecteurs Apple II, un certain ordre doit être respecté:
- Les lecteurs de disquettes 5.25 sont toujours après les lecteurs de disquettes 3.5
- Les lecteurs de disquettes 5.25 sont toujours après le SmartPortVHD
- Les lecteurs Unidisk 3.5 et le SmartPortVHD sont toujours après les lecteurs Apple 3.5
- Les lecteurs Unidisk 3.5 peuvent être placés indiférement avant ou après le SmartPortVHD
6.Performances
J'ai conduis ces tests de performance pour satisfaire ma curiosité, mais également pour améliorer le SmartPortVHD et vous donner une idé exacte de ce que vous pouvez en attendre.
Ne vous fourvoyez pas, le port pour lecteur de disquette de l'Apple II n'atteindra jamais le MO/s, ni même les 100KO/s.
Pour obtenir des mesures reproductibles, le temps écoulé entre un reset manuel et un évènement graphique précis à été mesuré.
Le démarrage de Mousedesk sur l'Apple //c consiste à copier tous les fichiers de Mousedesk depuis le lecteur de démarrage vers le ramdisk, puis à démarrer Mousedesk depuis le ramdisk.
Sur l'Apple IIgs, Mousedesk démarre directement sans copier ses fichiers vers le ramdisk.
Le premier affichage du bureau de Mousedesk marque la fin des mesures.
Le SmartPortVHD n'est pas poussé dans ses limites ici, mais cela correspond à une utilisation usuelle.
Le démarrage de GS/OS à été fait toujours avec la même image, disponible sur internet.
Le pilote Unidisk 3.5 à été ajouté pour le tester mais n'est pas requis.
Le premier affichage du bureau marque la fin des mesures.
Le test de vérification de media à été fait avec GS/OS sur l'Apple IIgs, et avec Apple System Utilities 3.1 sur l'Apple //c.
Apple //c 1MHz
Mesure: | Périphérique: | Résultat: |
Démarrage de Mousedesk | lecteur de disquette interne | 43s |
Demarrage de Mousedesk | SmartPortVHD | 26s |
Vérification de media | lecteur de disquette interne | 14,7KO/s |
Vérification de media | Unidisk 3.5 | 16,7KO/s |
Vérification de media | SmartPortVHD | 20,7KO/s |
Vérification de media | ramdisk4 | 54,0KO/s |
Maximum pratique | connecteur lecteur disquette | inférieure à 26KO/s |
Maximum pratique | bus interne | inférieure à 250KO/s |
Apple IIgs 2.8MHz
Mesure: | Périphérique: | Résultat: |
Démarrage GS/OS | MicroDriveTurbo | 23s |
Démarrage GS/OS | SmartPortVHD | 63s |
Démarrage Mousedesk | SmartPortVHD | 13s |
Vérification de media | Unidisk 3.5 4:1 interleave | 19,0KO/s |
Vérification de media | SmartPortVHD | 21,6KO/s |
Vérification de media | Apple 3.5 | 25,8KO/s |
Vérification de media | MicroDriveTurbo | 227,0KO/s |
Le port pour lecteur de disquette est bien plus lent que le bus interne, et représente le facteur limitant pour le SmartPortVHD.
On ne peut pas comparer un bus 8 bits à 1MHz avec une ligne série à 0.25MHz.
Cependant, le SmartPortVHD permet de bonne performances et sans la contrainte d'ouvrir votre Apple II.
En éliminant les latences mécaniques il démontre un gain d'environ 65% au démarrage de Mousedesk par rapport au lecteur de disquette, qui est une utilisation courante sur l'Apple //c.
La vérification de media montre un gain de 40% en vitesse, ce qui représente le gain minimum que l'on peut obtenir, puisque dans ce cas les latences mécanique du lecteur de disquette sont réduite au minimum.
L'utilisation d'une clée usb ou de cartes SD ou compact flash non pas mis en évidence des différences de performances.
7.Evolutions
Voici une liste non exhaustive des évolutions possibles pour le SmartPortVHD:
- moutage et démontage des images à la volé à l'aide d'un sélecteur d'image sur l'Apple II
- émulation de lecteur de disquette
- pilote dédié pour GS/OS permettant des performances accrues jusqu'à 42KBytes/s
- ecriture différé pour augmenter la durée de vie des mémoires flashs et permettre des copies de fichier plus rapide
- horloge temps réelle pour Apple //c et IIe
- support pour imprimante usb, ehternet, wifi, et peut être les hub usb
8.Un peu plus loin
Le port de lecteur de disquette à évoluer plusieurs fois. Chaque nouvelle génération de lecteur de disquette était compatible avec les générations précédentes. On peut distinguer trois générations de lecteurs:
- 1° génération - lecteur 5"1/2, l'ordinateur commande le lecteur directement, au niveau électrique
- 2° génération - lecteur 3"1/2 intelligent, le lecteur possède sont propre processeur, et il communique avec l'ordinateur par échange de messages. Le processeur dédié du lecteur de disquette était requis car le flot de données généré par les disquettes 3"1/2 était trop grand pour être géré par le processeur de l'Apple II.
- 3° génération - lecteur 3"1/2 standard, l'ordinateur doit être assez rapide pour reprendre le contrôle direct du lecteur au niveau électrique.Avec les processeurs plus rapides des Apple IIgs et Apple //c+, l'ordinateur est capable de gérer le flot de données issue des disquettes 3"1/2, permettant de réduire les coûts des lecteurs et d'atteindre des performances plus élevées.
Le SmartPortVHD appartient à la 2° génération, tout comme l'Unidisk 3.5. Cela signifie que le périphérique possède sont propre processeur, et l'ordinateur n'a pas à gérer les moteurs et intérupteurs du périphérique. A la place, l'ordinateur envoie des messages et le processeur dédié du périphérique effectue toutes les taches requises par lui même pour répondre à l'ordinateur. Dans le SmartPortVHD, un processeur moderne mais toujours 8 bits remplace l'ancien 6502 et le controleur dédié (la machine intégré woz). Le dialogue entre l'ordinateur et le lecteur à été très bien structuré à l'époque, mais la plupart des possibilitées n'ont jamais été utilisées, à cause du coût élevé des processeurs et la complexité qui en résulte. Aujoud'hui, la technologie nous permet d'exploiter ce trésor oublié.
Le prototype, sans boitier:
9.Licences
SmartPortVHD:
- Micro logiciel et boitier développé par Cedric Peltier
- http://www.spvhd.org
- Licence : GPL v3 licence & Creative Commons 3.0
Micropendous-A:
LUFA:
FatFS:
0.Donations
Si vous souhaitez faire un don pour soutenir mon travail, je serais heureux de recevoir le montant de votre choix via paypal:
Autrement, si vous avez un zipchip 8000 en trop, contactez moi ;)