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

From: Polytropon <freebsd(at)edvax.de>
Date: Tue, 10 Dec 2013 00:50:17 +0100

On Mon, 09 Dec 2013 21:51:47 +0100, Marc Santhoff wrote:
> Tag liebe Leute,
>
> nachdem alle PC-Format-Floppies bereits entsorgt sind, quäle ich mich
> damit, ein paar alte CP/M-Scheiben kopieren zu wollen. Das Problem ist:
>
> 1,44 MB-Laufwerk
> 640kB netto-Floppy DS/DD

Eventuell kann ein "modernes" 3,5"-Laufwerk keine DDs mehr lesen?
Vielleicht kann es das "produktbedingt" auch gar nicht? Kein Vor-
wurf, eine ehrliche Frage. :-)

> Wenn ich die Floppy einstöpsle gibt es Fehlermeldungen wie die:
>
> <log>
> Dec 9 21:31:58 puma kernel: (da0:umass-sim0:0:0:0): Retrying command (per sense data)
> Dec 9 21:31:59 puma kernel: (da0:umass-sim0:0:0:0): READ(10). CDB: 28 0 0 0 0 80 0 0 10 0
> Dec 9 21:31:59 puma kernel: (da0:umass-sim0:0:0:0): CAM status: SCSI Status Error
> Dec 9 21:31:59 puma kernel: (da0:umass-sim0:0:0:0): SCSI status: Check Condition
> Dec 9 21:31:59 puma kernel: (da0:umass-sim0:0:0:0): SCSI sense: MEDIUM ERROR asc:30,0 (Incompatible medium installed)
> Dec 9 21:31:59 puma kernel: (da0:umass-sim0:0:0:0): Retrying command (per sense data)
> Dec 9 21:32:00 puma kernel: (da0:umass-sim0:0:0:0): READ(10). CDB: 28 0 0 0 0 80 0 0 10 0
> Dec 9 21:32:00 puma kernel: (da0:umass-sim0:0:0:0): CAM status: SCSI Status Error
> Dec 9 21:32:00 puma kernel: (da0:umass-sim0:0:0:0): SCSI status: Check Condition
> Dec 9 21:32:00 puma kernel: (da0:umass-sim0:0:0:0): SCSI sense: MEDIUM ERROR asc:30,0 (Incompatible medium installed)
> Dec 9 21:32:00 puma kernel: (da0:umass-sim0:0:0:0): Error 5, Retries exhausted
> </log>

Ich probiere das gern mal mit einer DD-Diskette und einem
entsprechenden USB-Laufwerk gegen.

> Und zwar viele, das hört garnicht wieder auf.

Klar: "Incompatible medium installed", sagt der da-Treiber.

> OK, also erstmal einstellen mit "fdcontrol". Das geht aber nicht, da das
> Laufwerk mit sich selbst beschäftigt ist bzw. ohne Diskette keine device
> vorhanden ist, das die PArameter entgegennimmt.

Die Freuden von USB. :-)

Gern schaue ich das mal mit einem fest eingebauten Nicht-USB-
Laufwerk gegen (auch hier vorhanden).

> Oder das Laufwerk kann
> es nicht:
>
> # fdcontrol /dev/fd0
> fdcontrol: open(/dev/fd0): No such file or directory

Genau, denn /dev/fd0 ist ein im Rechner fest verbautes und am
Floppy-Controller angeschlossenes Laufwerk.

> # ll /dev/fd*
> total 0
> crw-rw-rw- 1 root wheel 0, 7 Dec 9 11:44 0
> crw-rw-rw- 1 root wheel 0, 9 Dec 9 11:44 1
> crw-rw-rw- 1 root wheel 0, 11 Dec 9 11:44 2
>
> Hmmm ... verzweifelte Versuche:
>
> # fdcontrol /dev/fd/0
> fdcontrol: ioctl(FD_GDTYPE): Inappropriate ioctl for device
>
> # fdcontrol /dev/da0
> fdcontrol: ioctl(FD_GDTYPE): Inappropriate ioctl for device

Schau genau hin: /dev/fd* kann auch /dev/fd/ - ein Verzeichnis -
sein, und das Verzeichnis /dev/fd beinhaltet Dateideskriptoren,
in diesem Falle 0, 1 und 2, das sind stdin, stdout und stderr.
Mit denen redet fdcontrol aber nicht. :-)

Ein _echtes_ Laufwerk heißt /dev/fd0. Es ist auch ohne Diskette
vorhanden und sagt dann folgendes:

        % fdcontrol /dev/fd0
        fdcontrol: open(/dev/fd0): Device not configured

Ich krame mal eine DD-Diskette raus, formatiere sie schön und
probiere es gern einmal gegen. Als lebendes Museum ist das eine
Aufgabe, die keine großen Schwierigkeiten bereitet. ;-)

> Das Laufwerk wird so angemeldet:
>
> <log>
> Dec 9 21:47:53 puma kernel: ugen7.2: <vendor 0x03ee> at usbus7
> Dec 9 21:47:53 puma kernel: umass0: <vendor 0x03ee product 0x6901, class 0/0, rev 1.10/2.00, addr 2> on usbus7
> Dec 9 21:47:53 puma kernel: umass0: UFI over CBI with CCI; quirks = 0x0000
> Dec 9 21:47:53 puma kernel: umass0:3:0:-1: Attached to scbus3
> Dec 9 21:47:53 puma kernel: da0 at umass-sim0 bus 0 scbus3 target 0 lun 0
> Dec 9 21:47:53 puma kernel: da0: <MITSUMI USB UFDD 061M 0.00> Removable Direct Access SCSI-0 device
> Dec 9 21:47:53 puma kernel: da0: 1.000MB/s transfers
> Dec 9 21:47:53 puma kernel: da0: Attempt to query device size failed: NOT READY, Medium not present
> </log>

Korrekt. Aber das macht es meines Wissens nur, wenn eine Diskette
im Laufwerk vorhanden ist. Ich habe hier ein USB-Diskettenlaufwerk
von IBM, das ich mal durchleuchten kann.

> Was mache ich falsch?

Du versuchst, einen Toten wiederzubeleben. :-)

> Welches Device muß angesprochen werden?

Bei echtem Diskettenlaufwerk: /dev/fd0.
Bei USB-Diskettenlaufwerk: /dev/da0 (oder da1, da2, je nach Reihen-
folge der USB-Geräteerkennung).

> Wie schon erwähnt, "normal" formatierte PC-FLoppies sind unauffällig,
> funktioniert gut.

Das sollte auch so sein. Ein mount_msdosfs auf das entsprechende
da-Gerät, und schon kann man lesen. Auch das Erzeugen eines Images
mittels dd ist sehr einfach möglich.

-- 
Polytropon
Magdeburg, Germany
Happy FreeBSD user since 4.0
Andra moi ennepe, Mousa, ...
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Tue 10 Dec 2013 - 00:50:42 CET

search this site