Re: DS-DD-Floppy im modernen USB-LW lesen

From: Marc Santhoff <M.Santhoff(at)web.de>
Date: Wed, 11 Dec 2013 20:34:49 +0100

On Mi, 2013-12-11 at 19:40 +0100, Oliver Fromme wrote:
> Marc Santhoff wrote:
> > On Di, 2013-12-10 at 13:20 +0100, Oliver Fromme wrote:
> > > Vorausgesetzt natürlich, dass Dein Mainboard noch den passenden
> > > Anschluss für sowas hat. Ist heutzutage nicht mehr so verbreitet.
> >
> > Das ist der springende Punkt. Ich besitzer schon ein Laufwerk mit Kabel.
> > Nur einen Rechner mit dem passenden Anschluß will erstmal aktiviert
> > werden.
>
> Es gibt durchaus noch Mainboards mit Floppycontroller. Aber
> heutzutage achtet man beim Kauf meistens nicht mehr auf sowas.

Hatte ich, beim nachkauf leider nicht drauf geachtet ...

> > > > 1,44 MB-Laufwerk
> > > > 640kB netto-Floppy DS/DD
> > >
> > > DS-DD wäre eigentlich 720 kB (2 Seiten * 80 Spuren * 9 Sektoren
> > > * 512 Bytes). Wie sind die denn formatiert? Wenn's wirklich
> > > 640 kB sind, tippe ich auf 8 Sektoren pro Spur, aber theoretisch
> > > sind auch exotischere Formate wie z.B. 16 Sektoren mit je nur
> > > 256 Bytes denkbar; sowas habe ich mal bei einem MIDI-Keyboard
> > > mit eingebautem Diskettenlaufwerk gesehen.
> >
> > Das ist ein sehr exotisches CP/M-Format. Für die Liebhaber: ein Memotech
> > hat die mal geschrieben.
>
> Nochmal: Wie sind die denn formatiert?

Type Physical CP/M Logical view Comment
        Media Size Sides Density Tracks Capacity Directory entries Block size Blocks

03 Floppy 3.5" / 5.25" Double Double 40 320KB 64 2048 156 Common (FDX 5.25" and SDX 3.5")
07 Floppy 3.5" / 5.25" Double Double 80 640KB 128 2048 315 Common (later SDX 3.5")

# Memotech type 03, ie: 3.5" or 5.25", D/S, D/D, S/T
# 40 tracks, 2 sides, 16 sectors/track, 256 bytes/sector
# Bytes on the media = 2*40*16*256 = 327680
# CP/M sees 26 128 byte records per track (similar to 8" disks).
# Tracks = 327680/(26*128) = 98
# Data is in 2048 byte blocks, on track 2 onwards
# Blocks = ((98-2)*26*128)/2048 = 156, which agrees with DPB

diskdef memotech-type03
  seclen 128
  tracks 98
  sectrk 26
  blocksize 2048
  maxdir 64
  skew 1
  boottrk 2
  os 2.2
end

# Memotech type 07, ie: 3.5" or 5.25", D/S, D/D, D/T
# 80 tracks, 2 sides, 16 sectors/track, 256 bytes/sector
# Bytes on the media = 2*80*16*256 = 655360
# CP/M sees 26 128 byte records per track (similar to 8" disks).
# Tracks = 655360/(26*128) = 196
# Data is in 2048 byte blocks, on track 2 onwards
# Blocks = ((196-2)*26*128)/2048 = 315, which agrees with DPB

diskdef memotech-type07
  seclen 128
  tracks 196
  sectrk 26
  blocksize 2048
  maxdir 128
  skew 1
  boottrk 2
  os 2.2
end

> Und: Bist Du sicher, dass ein PC-Floppycontroller die lesen
> kann? C64-Disketten zum Beispiel kann der nicht lesen, weil
> die auf Bitebene eine GCR-Kodierung verwenden. Ein PC-Floppy-
> controller unterstützt nur MFM-Kodierung. Auch Amiga-Disketten
> kann ein PC nicht lesen -- ist zwar auch MFM, aber das Sektor-
> Header-Format ist ein anderes.

garantiert MFM iirc. Da war einer der berüchtigten WD-Controller drauf,
Nummer hab ich aber nicht parat - 179x oder so.

> > Seltsam ist der USB-Treiber schon. Auch wenn keine Diskette drin steckt,
> > prüft der ständig oder so, es kommen dauernd Geräusche aus dem Laufwerk
> > und die LED leuchtet. Oder das Laufwerk ist seltsam.
>
> Das macht der USB-Host-Controller.

> Wenn also der USB-Device-Controller wissen möchte, ob eine
> Diskette eingelegt wurde (um dies via USB zu signalisieren),
> muss er in regelmäßigen Abständen den Stepper-Motor um eine
> Spur bewegen. Dies macht sich als leises "Ticken" bemerkbar.

OK, nachvollziehbar. Zumindest brauche ich mir keinen Kopp machen, ob
ich mit meinen Versuchen was verfusselt habe. ;)

> Irgendwelche speziellen
> Floppy-Funktionen gibt es nicht, man kann nicht einmal eine
> Diskette formatieren. Ich wüsste zumindest nicht, wie.

Mit dd ein fertiges Image draufschreiben?

> > Wenn das klappt kann ich mich auch gleich mit den 5,25"-Scheiben
> > befassen ...
>
> Oha ... Naja, wenn die noch lesbar sind ... Es heißt, bei
> Disketten setzt der Verfall mit etwa zehn Jahren ein. Wobei
> SD/DD vermutlich noch etwas länger hält als HD.
>
> Wenn ich in alten Kartons noch Disketten finde, kippe ich die
> unbesehen in den Restmüll.

Ich werde auch kein Riesending draus machen, wäre aber schön wenn.
GEht's nicht wandern die in den Schredder.

> Nur ein paar alte 14-Zoll-Disketten habe ich aus Nostalgie
> aufgehoben. Die stammen von einem NCR-Mainframe-Ungetüm
> aus den 60er/70er Jahren. Aber lesen kann ich die natürlich
> nicht. Und daran ist nicht FreeBSD schuld. ;-)

Huch? 14 Zoll ist mir neu, ich kenne nur 8". Hab irgendwo noch eine CP/M
2.2-Box mit Originaldiskette - die kann aber auch langsam entsorgt
werden oder ans Museum verschenkt, das ganze Zeug gibt es im Netz frei
und legal, nachdem (Intergalactic) Digital Research abgewickelt ist.

-- 
Marc Santhoff <M.Santhoff(at)web.de>
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Wed 11 Dec 2013 - 20:34:52 CET

search this site