Lundi 11/09/2006.
Quand l'Apple II était encore utilisé par
beaucoup de
monde dans l'hexagone et lorsqu'il y avait en conséquence
encore
des centrales d'achat/distribution, j'avais déja dans mes
cartons un bon tas
de copies de
disquettes en tous genres.
Depuis la fin des nouveautés commerciales, ma collection
s'est
tout de même agrandie grâce aux dons logiciels qui
m'ont
été fait.
Le dernier en date (et non des moindres -encore merci
Christophe !) remonte
au 5 octobre 2004,
jour où l'ancien
pirate informatique portant le pseudo The
White Man
(du groupe
HackerForce) m'a
amené non seulement son
hardware mais aussi
toute la collection de disquettes de sa centrale Hackerchest.
Aujourd'hui je dois bien avoir dans les 2500 disquettes 5.25" double
faces pour apple II.
Quelques clichés du don:
Liste Appleworks qui
était
distribuée aux membres à l'époque:
|
ProDOS
|
Download Hackerlist : Appleworks ADB
files
(gzipped)
|
Contenu de l'héritage du Hackerforce
sous
forme de pages html:
Bref, j'ai une tonne de softs pour Apple II...
Quand j'ai acheté un PC (aux environs de 1995), je me suis
penché sur les solutions de transfert de disquettes de
l'apple
II vers ma nouvelle machine pour utiliser les émulateurs
disponibles.
Au début, je ne disposais que d'une carte super
série
(SSC), aussi c'était le logiciel ADT
que
j'employais pour faire
ces échanges.
Mais je trouvais cette solution extrêmement lente, les
informations transitant via le cable série entre les 2
machines.
L'auteur du programme, Paul Guertin,
avait
pensé initialement
repomper la routine de lecture rapide de Locksmith
Fast Copy mais abandonna
l'idée bien qu'il eut désassemblé ce
copieur (cf
message trouvé dans les newsgroups ci-dessous).
From : Paul
Guertin
Date : Mon 3 juil 2006
03:16
I disassembled the Locksmith Fast Disk Copier <...>
It denibblizes the data using a different bit order that allows
it to convert disk nibbles to 8-bit bytes on the fly, making it
possible to read a track in one pass.
It even validates the checksum byte.
I wanted to use a similar routine in ADT, but decided against it
for the following reasons:
1) I was in a hurry to archive a few hundred floppy disks, and
using RWTS was the quickest way to have a functional ADT;
2) ADT was going to be used on old, marginally-readable disks,
and I was under the impression (maybe mistaken) that RWTS would
be better at reading such disks than a routine that ran closer
to the timing tolerance of the drive;
3) Due to the different nibblization scheme, the run-length
encoding compression ADT uses to speed up the transfer would
not be as effective.
Paul Guertin.
ADT est un moyen simple de
mise en
oeuvre des transferts mais
ce n'est pas exploitable sans avoir un temps libre monstrueux et une
patience à toute épreuve... ce qui n'est pas mon
cas ;-)
Je me suis donc ensuite penché sur les autres solutions
nécessisant un investissement hardware.
Je me suis délesté de quelques dizaines de
dollars US en
acquérant une carte SCSI
pour mon apple II (achat apple2.marketplace) et je m'étais
aussi
payé une carte scsi Adaptec
classique
pour mon PC.
Ceci me permet de faire plus
aisément des échanges entre les 2 machines en
utilisant
des unités amovibles.
Je me suis constitué depuis un bon stock de cartes de
marque Apple (la classique
"rev. C" et la "High
Speed SCSI") ou
d'autres
(CMS, Sequential
Systems
avec ses différents modèles de
RamFast).
Côté apple II, il y a tout ce qu'il faut pour
gérer
le SCSI avec des lecteurs comme les Syquest, Iomega Zip, ... ou des
petits
disques
durs. Il est possible de créer des disques images .dsk
directement sur ces unités avec des
outils comme DSK2FILE ou
encore ASIMOV.
Côté PC, le salut est venu du logiciel CiderPress
de
l'américain Andy McFadden.
Ce programme est en effet capable d'ouvrir des unités
logiques
comme une cartouche Zip ou Syquest (ou tout disque dur SCSI
connecté) et de lire directement des
données sauvegardées au format apple II.
Il suffit donc en théorie de créer des .dsk et de
les
stocker dans un
volume ProDOS sur une unité SCSI puis de les
récupérer sur PC avec une
lecture directe.
Seulement voila, le temps passant, le SCSI n'est plus vraiment
à
la mode sur les PC de monsieur tout le monde et on trouve surtout des
ports USB 2 maintenant.
Mais le talent d'un autre américain (Richard
Dreyer) a permis de
se passer de SCSI.
En créant sa carte CFFA,
il est à
présent possible d'employer une carte compactflash comme
disque
dur sur apple II et de l'utiliser comme support d'échange
avec
le PC via un lecteur de cartes connecté sur un port USB.
(Note:
Il est
possible de faire la même chose avec la carte controleur IDE
MicroDrive de ///SHH Systeme
et son adaptateur pour carte CF).
CiderPress a aussi
évolué et sait
tirer profit de la
CFFA. Il gère le
port USB et supporte les
cartes compactflash de
la même façon
qu'une unité SCSI.
A noter que d'autres solutions sont toujours en cours
d'étude.
Dernièrement un autre utilisateur (Alex
Freed)
a proposé
de commencer
la production d'une solution à base de cartes MultiMedia
(MMC)
ou SD card. Son prototype hard étant prêt, il
travaillait
actuellement à la finition de la partie software.
Tout va donc pour le mieux côté hardware et c'est
du tout
bon pour la partie soft PC.
Mais je trouve néanmoins que l'on pourrait faire mieux
côté soft Apple II.
DSK2FILE et ASIMOV sont
encore bien
trop lents pour
créer 5000 .dsk!!
En effet, ils travaillent par piste: chaque piste est lue via ProDOS et
est ensuite écrite sur l'unité cible. Ces
va-et-vient
sont pesant quand on enchaine les diskettes les unes après
les
autres.
Si j'étais riche, je m'adresserai au site commercial
www.retrofloppy.com
qui moyennant finance convertit les disquettes de
ceux qui le veulent. Mais c'est vraiment hyper cher et à
part
des
sociétés, je ne vois pas qui voudrait mettre du
pognon
là dedans.
Saluons néanmoins cette initiative de l'américain
David
Schmidt qui n'est autre que l'auteur d'ADTPro,
l'outil Apple Disk
Transfer pour ProDOS (sauf si c'est un homonyme, ce dont
je
doute).
Ca fait des années que je traine pour me faire un outil
similaire à DSK2FILE
mais beaucoup plus
rapide sur mon IIe.
Mais là je suis bien décidé, d'autant
que mes
disquettes se dégradent avec le temps.
Décidé au point que je me suis inscrit au "Programming
Gr*s-C0n-test 2006" de ****
**********.
Il s'agit d'une compétition où des particuliers
proposent
leur programme et un jury vote pour celui qu'il
préfère.
Voir l'annonce en cliquant: ici. Note du 02/08/2007:
supprimé - je ne vous encourage pas à visiter ce
site.
J'ai jusqu'au 31/12 pour écrire ce programme (projet
enregistré sous le nom FASTDSK
chez **** *******).
|
C'est peu compte tenu de mon emploi du temps et surtout du fait que je
vais changer de boulot avant la fin de l'année mais bon j'ai
du
temps
libre en journée actuellement... Il n'empêche que
d'ici
décembre je mettrai moins souvent à jour ce site
puisque je passerai plus de temps à faire de la
programmation
pour ce
projet.
Pour résumer:
Mon idée est de faire un lecteur rapide de disquettes (un
fast
load quoi), qui va charger en une seule passe le contenu d'une
disquette 5.25" 16
secteurs dans ma RamWorks III sur mon IIe. Puis de sauvegarder un .dsk
sur une
unité ProDOS.
Enfin en fait j'aurai 2 versions: une version nécessitant
256k
pour faire le job en une passe et une version 128k qui le fera en 2
pour rester en phase avec les contraintes matérielles du
concours.
La logique qui découle de ça se trouve sur mon
site:
- J'ai ressorti le Fboot ProDOS
de Chip Select pour me
remémorer
quelques principes de base (codages, ...)
- J'ai analysé le driver ram.drv.system de Glen
Bredon pour
savoir comment stocker 140k en mémoire via la
méthode de
banks switching sans scratcher ProDOS grâce aux cartes de
type
RamWorks.
- Je suis en train d'apprendre avec plus de détail
le
fonctionnement des drives type disk II via plusieurs bouquins
("Systèmes d'exploitation et
systèmes de protection sur Apple II" de Jean-Pierre,
les
"Understanding Apple"
de Jim Sather, les 2 "Beneath
Apple" de Don Worth / Pieter Lechner et
les
livres techniques de Marcel Cottini
sur
DOS/ProDOS).
- Je suis en train de faire le tour des Fast Boots de
l'Underground
pour voir ce que je
pourrais éventuellement récupérer
comme
idée.
- J'ai assimilé les routines rapides
d'accès aux
champs
adresse/data de ProDOS grâce à un source de la
version 1.7
trouvé
dans mes disquettes. La routine avec le denibblizing à la
volée est ce qui se fait de mieux aussi j'en reprendrai un
gros
pourcentage pour FASTDSK.
Les premières copies d'écran de mon travail en
cours pour
les versions
256k et
128k:
|
|
Cette page sera mise à jour à fur et à
mesure de
mon avancement dans le projet.
Travail intéressant: la lecture du source de ProDOS.
Ici le début de la routine de gestion du DISK II de ProDOS
1.7
et un morceau de
code lisant les markers du champ de données:
|
|
|
ProDOS
|
Download ProDOS 1.7 source code part
1 (gzipped)
|
|
ProDOS
|
Download ProDOS 1.7 source code part
2 (gzipped)
|
File: Source_Prodos_1_7_f1.dsk
Disk: ProDOS /SOURCES (140KB)
Name
Type Auxtyp
Modified
Format Length
------------------------------------------------------------------------------
PRODOS.1.7.S
TXT $0000 30-Oct-88 00:00
ProDOS 3792
RELOGEUR.1.7.S
TXT $0000 30-Oct-88 00:00
ProDOS 6418
LOADER.1.7.S
TXT $0000 30-Oct-88 00:00
ProDOS 4991
MYSTERY.1.7.S
TXT $0000 30-Oct-88 00:00
ProDOS 876
CHKMACHID.1.7.S
TXT $0000 30-Oct-88 00:00
ProDOS 997
TITRE.1.7.S
TXT $0000 30-Oct-88 00:00
ProDOS 798
MOVER.1.7.S
TXT $0000 30-Oct-88 00:00
ProDOS 6611
RWTBRAM.1.7.S
TXT $0000 18-Mar-91 08:18
ProDOS 6342
CHKSLOT.1.7.S
TXT $0000 30-Oct-88 00:00
ProDOS 7972
MACHID1.1.7.S
TXT $0000 30-Oct-88 00:00
ProDOS 819
ZMACHID.1.7.S
TXT $0000 30-Oct-88 00:00
ProDOS 834
RWTBII.1.7.S
TXT $0000 30-Oct-88 00:00
ProDOS
18388
G.PAGE.1.7.S
TXT $0000 30-Oct-88 00:00
ProDOS 2387
MLI1.S
TXT $0000 30-Oct-88 00:00
ProDOS
23460
MLI2.S
TXT $0000 30-Oct-88 00:00
ProDOS
10343
MLI3.S
TXT $0000 30-Oct-88 00:00
ProDOS
11917
MLI4.S
TXT $0000 30-Oct-88 00:00
ProDOS
14289
MLI.1.7.S
TXT $0000 30-Oct-88 00:00
ProDOS 1474
START
BAS $0801 30-Oct-88 00:00
ProDOS 71
------------------------------------------------------------------------------
File: Source_Prodos_1_7_f2.dsk
Disk: ProDOS /SOURCES (140KB)
Name
Type Auxtyp
Modified
Format Length
------------------------------------------------------------------------------
EXPLICATIONS
AWP $0000 28-Oct-88 00:00
ProDOS 9027
FORMATEUR.S
TXT $0000 10-Apr-89 00:00
ProDOS
25647
INSTALLE.S
TXT $0000 04-Jan-89 00:00
ProDOS
11338
REBOOT.1.7.S
TXT $0000 30-Oct-88 00:00
ProDOS 5902
INSTALLE.1.7.S
TXT $0000 27-Oct-88 00:00
ProDOS 5678
BLOC0
BIN $0000 27-Oct-88 00:00
ProDOS 512
FORMAT.1.7.S
TXT $0000 23-Dec-88 00:00
ProDOS
25080
INSTALLE
BIN $2000 04-Jan-89 00:00
ProDOS 1653
FORMATEUR.1.6
BIN $D400 10-Apr-89 00:00
ProDOS 1536
FORMATEUR.1.5
BIN $D400 10-Apr-89 00:00
ProDOS 1536
FORMATEUR.1.4
BIN $D400 10-Apr-89 00:00
ProDOS 1536
------------------------------------------------------------------------------