Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

ANN: Disk2FDI 0.95a, importing CBM 1541 disks with PC floppy disk drive

116 views
Skip to first unread message

Wolfgang Moser

unread,
Nov 1, 2003, 7:52:14 PM11/1/03
to
Hello newsgroup,

today morning, Vincent Joguin informed me, that a new version of
his tool Disk2FDI is out. 2 years ago he developed a technique
to completely trick out the standard PC floppy disk controller,
so that some foreign disk formats (not beeing MFM or FM encoded)
can be read out with standard PC equipment.

A long time only nonstandard Amiga-MFM disks could be read out
this way, but with version 0.95a some things changed... and I
got really shocked!


Disk2FDI 0.95a now claims to import GCR encoded Commodore 1541
floppy disks with a standard IBM PC/XT/AT floppy disk
controller. But there are some requirements (hard to reach?):

* Your PC must contain _two_ floppy disk drives both connected
to the same floppy disk controller (USB floppy disk drives
don't work)
* One of the drives must be a _low_density_ 5,25" disk drive
(360KB capacity drive)
* The software does only work under plain DOS, probably under
Win95/98/ME


Vincent told me about the 360KB low density disk drive
requirement, that these drives are rotating at only 300rpm.
High density 5,25" (1,2MB capacity) got a rotation speed of
360rpm. Because C1541 disks contain four different speed zones
Disk2FDI requires a 300rpm drive in combination with the two
bitrates of 300 and 250 KBit/s of the floppy disk controller.
Only with this setup all the four speed zones can be read out
correctly.

After I got such an old drive I made some first tests. And yes,
in general it works. I was able to read out one of my 1541
disks and transfer it to a D64 disk image file.
But currently there seem to be some reliability problems. I
read out the same disk several times and compared them against
each other. With each image file 20 to 30 byte differencies
(out of 170KB) occured (only using images, that were imported
without any error messages shown up).
Take note that this problem may not be caused by Disk2FDI if
my hardware setup doesn't work properly. You all should do
independent tests for your own.


Conclusion:
Although some reliability problems showed up, Vincent put up
the proof with Disk2FDI, that reading/importing Commodore GCR
encoded disks definetly is possible with a standard PC floppy
disk controller.

Therefore I apologize publicly for telling people, that such
a software method would be impossible ;-)


If you want to download and test this thing or want to read
into the very interesting tech docs, go to:

http://www.oldskool.org/disk2fdi/
http://www.oldskool.org/disk2fdi/shareware.html


Womo

--
------ to obtain more infos about me, look up the page ------
---- http://www.wmsr.de pwnah (at) d81 (dot) de ----

MagerValp

unread,
Nov 3, 2003, 10:11:27 AM11/3/03
to
>>>>> "WM" == Wolfgang Moser <pw...@d81.de.invalid> writes:

WM> After I got such an old drive I made some first tests. And yes, in
WM> general it works. I was able to read out one of my 1541 disks and
WM> transfer it to a D64 disk image file. But currently there seem to
WM> be some reliability problems. I read out the same disk several
WM> times and compared them against each other. With each image file
WM> 20 to 30 byte differencies (out of 170KB) occured (only using
WM> images, that were imported without any error messages shown up).

So couldn't you just read every track 3+ times and only keep the byte
that shows up in the most dumps?

And what's the speed like?

This is really, really cool though :)

--
___ . . . . . + . . o
_|___|_ + . + . + . Per Olofsson, arkadspelare
o-o . . . o + Mage...@cling.gu.se
- + + . http://www.cling.gu.se/~cl3polof/

Christian Johansson

unread,
Nov 3, 2003, 1:58:00 PM11/3/03
to
Interesting... I had to update my web page about transfer methods
(http://w1.865.comhem.se/~u86517142/transfer.htm) because of this. I had
written that it is impossible to read a GCR formatted disk in a PC 5 1/4"
floppy drive without HW modifications.

/Christian


Wolfgang Moser

unread,
Nov 3, 2003, 2:15:53 PM11/3/03
to
Hello Per,

MagerValp wrote:
>>>>>>"WM" == Wolfgang Moser <pw...@d81.de.invalid> writes:
>
> WM> After I got such an old drive I made some first tests. And yes, in
> WM> general it works. I was able to read out one of my 1541 disks and
> WM> transfer it to a D64 disk image file. But currently there seem to
> WM> be some reliability problems. I read out the same disk several
>

> So couldn't you just read every track 3+ times and only keep the byte
> that shows up in the most dumps?

That's surely no problem. After I had a longer mail discussion
with Vincent Joguin, made some tests and sent him the files, we
both currently don't know exactly, what the cause for these
reliability problems may be (my drive may be misaligned or
needs some cleanup).
He already uses very sophisticated techniques to reconstruct
the GCR data stream out of the "misinterpreted" MFM data
(the FDC can only read MFM or FM, so you have to live with
the bits it sends to you, when it tries to read GCR as some
sort of very errornous MFM at higher bit rates).

> And what's the speed like?

Hmmm, that depends much on how many retries one or another
track needs to be read in. Mostly something between 1 and 2
minutes. I currently don't see any use for mass importing
many disk per day. But it could become a very well suited
solution for people, who only want to import one or two
disks per week (no need for building cables).

Reading the tracks more often so that you can extract the
best match (2-of-3, 7-of-9 ???) would need a lot more time.

> This is really, really cool though :)

Yes, it is very much the good old spirit of breaking the
walls and limits of our machines :-))
Although it seems, that it's nearly a little bit late, now
that floppy disks are replaced by USB sticks and legacy
support is withdrawn with the next PC standards...


I hope, that other people may also find Vincent's Disk2FDI so
cool, that they start testing it. I'm currently trying to find
another Double-Density-5,25" drive, but it would be cool if
more people would to some _independent_ tests. This tool has
the potential to become another standard transfer solution.

Cameron Kaiser

unread,
Nov 4, 2003, 8:41:16 AM11/4/03
to
Wolfgang Moser <pw...@d81.de.invalid> writes:

>I hope, that other people may also find Vincent's Disk2FDI so
>cool, that they start testing it. I'm currently trying to find
>another Double-Density-5,25" drive, but it would be cool if
>more people would to some _independent_ tests. This tool has
>the potential to become another standard transfer solution.

It suddenly dawned on me where I have a DD 5.25" -- my old PCjr (no joke).
I might have to dig this out and try it, but does anyone know if it has
any *true* (not recommended) minimums for DOS version or RAM?

--
Cameron Kaiser * cka...@floodgap.com * posting with a Commodore 128
personal page: http://www.armory.com/%7Espectre/
** Computer Workshops: games, productivity software and more for C64/128! **
** http://www.armory.com/%7Espectre/cwi/ **

Wolfgang Moser

unread,
Nov 4, 2003, 1:49:07 PM11/4/03
to
Hi Cameron,

Cameron Kaiser wrote:
>>I hope, that other people may also find Vincent's Disk2FDI so
>

> It suddenly dawned on me where I have a DD 5.25" -- my old PCjr (no joke).
> I might have to dig this out and try it, but does anyone know if it has
> any *true* (not recommended) minimums for DOS version or RAM?

I don't know. But I can imagine, that Disk2FDI doesn't
need to use any special DOS calls (later introduced). The
floppy disk controller has to be programmed directly at
the hardware register level. You would need some buffer
memory for the DMA transfers (64KB or perhaps 128MB to
accomodate for some paging requirements). But the rest
is most probably done with pure algorithmics and some
standard file I/O.
Take note, that the program is compiled as .COM file,
it could ran DOS 1.0, if there're no ther limits. If
Vicent doesn't use any EMM or XMS techniques, the whole
program should rund from any system with 64KB free DOS
mem (not tested myself).

Ray Allen

unread,
Nov 4, 2003, 8:01:10 PM11/4/03
to
Does anyone know if this program will be developed to work with high
density drives? I haven't seen one of the low density drives since
the early '90's or so.

--Ray.

Wolfgang Moser <pw...@d81.de.invalid> wrote in message

Ruud Baltissen

unread,
Nov 5, 2003, 4:05:10 AM11/5/03
to
Hallo Ray,

> Does anyone know if this program will be developed to work with high
> density drives? I haven't seen one of the low density drives since
> the early '90's or so.

With me it is the other way around: I have about 12 360-ones laying
around and had to scrap some Mainframe 3174 controllers (!) to get me
some 1.2 MB drives to be used with Catweazle.


--
___
/ __|__
/ / |_/ Groetjes, Ruud
\ \__|_\
\___| http://Ruud.C64.org

Wolfgang Moser

unread,
Nov 5, 2003, 1:48:52 PM11/5/03
to
Hello Ray,

Ray Allen wrote:
> Does anyone know if this program will be developed to work with high
> density drives? I haven't seen one of the low density drives since
> the early '90's or so.

As I tried to explain with some excerpts from an email
discussion between Vincent and me, there's a 'hard'
requirement, that puts you to get a DD-5,25" drive.

Disk2FDI already does work with HD drives, but you can't read
Commodore disks with it (4 different speed zones, GCR encoded).

The drive in use must spin at 300rpm while the floppy disk
controller interprets the serial data stream coming from the
drive with the two different bitrates of 250kBit/s and
300kBit/s.
The FDC's bitrates are not freely programmable, you only can
select between four predefined ones (125/1000, 250, 300, 500
kBit/s).

Anders Carlsson

unread,
Nov 6, 2003, 2:35:23 AM11/6/03
to
Wolfgang Moser <pw...@d81.de.invalid> writes:

> The drive in use must spin at 300rpm

It is possible to modify the motor in a 5.25" HD unit to make it
rotate slower, or is the whole unit depending on rotation speed? :)

--
Anders Carlsson

"Please not to close to the hair, finger, clothes to run about the
inside's vehicle, in order to prevent quilt involvement." -- Bit Racer

Wolfgang Moser

unread,
Nov 6, 2003, 2:45:48 PM11/6/03
to
Hi Anders,

Anders Carlsson wrote:
>>The drive in use must spin at 300rpm
>
> It is possible to modify the motor in a 5.25" HD unit to make it
> rotate slower,

Nicolas Welte told me, that he knows of some HD drives,
that automatically switch between the two rotating speeds
of 300 and 360 rpm. But I cannot image, how this should
work since the drive itself doesn't know the bitrate,
that is selected within the controller.

_If_ it is possible to switch or adjust the rotation
speed of a HD drive mechanics to (exactly) 300 rpm, it
should be usable in the manner discussed here, although
such a modification would render it unusable for normal
(DOS) access.
I doubt, that such a modification is simple, because
most drives contain direct driven motors... Maybe you
want to lighten me up and perhaps want to create a web
page describing how to modify e.g. a Teac FD-55GFR to
run at 300 rpm. Is it a jumper setting?

> or is the whole unit depending on rotation speed? :)

No, not that I can imagine. The Shugart bus (modified
IBM PC design) doesn't contain any lines, that would
tell the controller the mechanic's rotation speed.

... uuupppsss... eehhhrrrmmmm....

I just (re)discovered the Teac manual of the FD-55GFR disk
drive mechanics:
http://www.teac.com/DSPD/catalog.htm
http://www.teac.com/DSPD/pdf/5fd0050a.pdf

Page 13 of 21 of this document explains it all. Excuse me
for my false assumptions. It seems, that the controller
can tell the drive over bus line #2 which density should
be selected. The drive then is able to switch between
rotating speed, depending on jumper settings of the "LG
strap" and the "I strap".

I have to do some tests first, but it seems that you're
right and it's no big problem to adjust the drive easily
to a fixed rotation speed of 300 rpm by setting the
"straps" and perhaps pulling bus line #2 to a fixed logic
level.

J. Robertson

unread,
Nov 6, 2003, 3:12:15 PM11/6/03
to
On 03 Nov 2003 16:11:27 +0100, MagerValp <Mage...@cling.gu.se>
wrote:

>This is really, really cool though :)

Yes, it is. :-)

Does anyone realize this may change how the new person's question of
"Can my PC [5" drive] read 1541 disks?" is answered in these groups?
;-)


Jason

--
E-mail #1: jkr[at]westol.com
E-mail #2: jk...@juno.com
(Use E-mail #1 for a quicker response.)
Web site : http://www.westol.com/~jkr/
--

Anders Carlsson

unread,
Nov 6, 2003, 4:45:12 PM11/6/03
to
Wolfgang Moser <pw...@d81.de.invalid> writes:

> I have to do some tests first, but it seems that you're right

I had absolutely no clue, and just asked the stupid question someone
else would ask sooner or later. But if it possible (and I don't know
how common the Teac mechanisms are compared other 5.25" HD drives),
it would be an even greater achievment.

Wolfgang Moser

unread,
Nov 8, 2003, 4:34:38 AM11/8/03
to
Hello Anders,

Anders Carlsson wrote:
> I had absolutely no clue, and just asked the stupid question someone
> else would ask sooner or later. But if it possible (and I don't know
> how common the Teac mechanisms are compared other 5.25" HD drives),
> it would be an even greater achievment.

I didn't make the suggested experiments with the jumper
settings and control line #2 yet, but I found an interesting
document meanwhile:

http://www.alphamicroproducts.com/dss10/40200A03.pdf

It contains sections with a very detailed discussions of the
high density vs. low density topic and how it correlates to
the drive rotation speed. Furthermore there's a section
called "Diskette Drive Configuration", that lists several
floppy disk drive models and how to jumper them for double
density mode (at 300rpm).
Unfortunately is says about the Teac FD-55GFR, that this
drive can only be jumper to "dual density mdoe", that means
automatically switching between 360rpm and 300rpm.
At least a Toshiba disk drive and perhaps a Panasonic
(don't understand the settings currently) are listed to be
configurable to fixed single density mode.

This should fulfill your wish to be able to jumper a formerly
High Density disk drive to a Double Density (only) drive to
correctly operate with Disk2FDI.

As for the Teac FD-55GFR I still have to test out, how the
bus control line #2 is able to affect the rotation speed
(I need to built some frequency measurement equipment with
the C64 before :-)

Wolfgang Moser

unread,
Nov 8, 2003, 4:56:43 AM11/8/03
to
Addition: Description of the differences between several
implementations of the Shugart bus and it's
derivatives:

http://nelsonit.net/~jon/BBCMicro/2002/08/06/140812.html

0 new messages