Welcome, Guest. Please login or register.

Author Topic: Amiga floppy project status  (Read 6003 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline kamigaTopic starter

  • Full Member
  • ***
  • Join Date: Oct 2005
  • Posts: 165
    • Show all replies
Amiga floppy project status
« on: November 19, 2007, 11:23:22 PM »
HI all,

I've been putting some more work into my DIY Amiga Floppy Project, aka usb-attached external amiga floppy drive controller.

It uses a regular external PC drive to convert low density 880kb amiga floppies to .ADF.  Attaches via USB, and you run a java interface.  Give it a filename, click read, and poof, about 1 minute later you've got your ADF.  It doesn't write ADF's yet.

While it's still in the prototype stage, it works very well, and I've been using it lately to archive my amiga archive of floppy disks.

Everything is completely open source, although everything is so dynamic at this point, there's no easily downloadable .zip package or anything yet.

Here's a couple links, if you are interested:

Graphic Intro
Day-to-Day blog
PCBoard images
Schematic
Java screenshot

I'll probably throw up an image in the image section here too.

Thanks for taking a look.

Keith
 

Offline kamigaTopic starter

  • Full Member
  • ***
  • Join Date: Oct 2005
  • Posts: 165
    • Show all replies
Re: Amiga floppy project status
« Reply #1 on: November 20, 2007, 12:31:24 AM »
Well there's a couple different issues, and I don't claim to be expert in any of them.

The main reason you can't read amiga disks inside a PC is because an IBM PC floppy controller is looking for sector gaps.  An Amiga writes tracks with no sector gaps whatsoever, and literally had sector1-sector2-sector3 etc.

The speeds, 300RPM, is the same for most floppy drives.  Older drives were somewhat different, and the Amiga did funky things like half the speed of the drive for Amiga HD disks.

My project works right now for reading low-density disks.  There are other longer term goals, but for now, it does exactly what I intended to do when I started.  Honestly, it took a lot of head-banging to get everything right.  The amount of man-hours involved was ridiculous.  Partially because I'm inexperienced with this stuff, and partially because (sufficient, up to date, fully explained) documentation/help is hard hard hard to find.

Now note (completely different issue) that PC DRIVES can't generally be used without modification as an amiga drive.  This is mainly a cable pinout/jumper issue where the amiga floppy controller (more software than hardware) is expecting certain signals in certain places.  Wrong pinouts means disk change signals don't work, and so on.  There are cable diagrams on this site, description for jumpers all over the place, etc.

My project uses a standard IDC34 pin PC floppy cable, and a standard unmodified PC floppy drive.

There's other hurdles to overcome in a project like this, and my blog spells out the history pretty good.

Thanks

 

Offline kamigaTopic starter

  • Full Member
  • ***
  • Join Date: Oct 2005
  • Posts: 165
    • Show all replies
Re: Amiga floppy project status
« Reply #2 on: November 20, 2007, 12:36:29 AM »
Quote

1NOM155 wrote:
you have my support :)

never give up for that project


Thanks man.  I haven't given up yet!  Lord knows I wanted to quit on more than one occasion.

I really have enjoyed working through all the issues, and I've had a very small but dedicated clan of people on my blog that throws me hints every now and again.

The good news is that reading low density disks works reliably right now...........so adding features/functionality is sort of the next step.

Thanks again.
 

Offline kamigaTopic starter

  • Full Member
  • ***
  • Join Date: Oct 2005
  • Posts: 165
    • Show all replies
Re: Amiga floppy project status
« Reply #3 on: November 20, 2007, 12:52:21 AM »
Quote

cecilia wrote:
that's very cool!


Thanks. I think so too!


Quote


so if I understand this correctly, one needs your special 'black box' between a PC and a floppy drive.


That's right.  You need my magic box in the middle.  This is what makes everything possible.  It's the microcontroller, the memory, and the USB interface.

Quote
what if there's already a floppy drive on the PC?


It doesn't help you. :)  The magic box is outside the PC, the drive will be outside the PC.  Unless you get creative and mount the PCB inside the PC, connect to internal USB headers/conncetors, and the drive itself. NEVERMIND. :)

My USB external controller REPLACES or is used in place of the standard built-in (northbridge on a PC, I think) floppy drive controller.

Thanks
 

Offline kamigaTopic starter

  • Full Member
  • ***
  • Join Date: Oct 2005
  • Posts: 165
    • Show all replies
Re: Amiga floppy project status
« Reply #4 on: November 20, 2007, 02:11:33 AM »
Quote

HenryCase wrote:

I'm assuming that IBM PC floppy drives read the first sector of an Amiga disk as usual then flag up an error when it can't find a sector gap? Or does the PC drive stop working when it doesn't recognise the file format?


You know, I honestly don't know.  I've never actually attempted to read from the PC, and didn't have any experience prior to this with PC FDC's.

I have read a few things that indicate that the entire track is returned as the first sector, but I'm guessing it sees this as a "giant" sector.  It might over-run any available buffer space.  It might try to continue to read for other sectors..... just all guesses.  I dunno if the information is delivered track-by-track(probably) basis or sector by sector.  In either cases, the sizes are going to be all wrong which could really screw up addressing, timing, etc.

I initially did some research, a couple years back, read about the NEC 765 (IIRC) FDC, and nothing looked promising.  It's not as simple as just "ignoring the errors."  The FDC hardware/firmware itself appears to be the limitation.  I took the lack of available working software-only-solutions to mean that it's been looked at by smarter people, and found impossible.

Newer OS's do hardware-abstraction stuff and they really don't cooperate easily when you try to get to the hardware.  Big difference from 95/98...

USB is convenient, friendly, modern, and so forth.  I like it.

Here we are now, practically 2008, with still no software-only solution.

Besides, I would have never learned how this darn thing they call electronics and microcontrollers worked had I not attempted it! :)

My solution also provides a platform for ever-expanding features including the ability to write disks, support for other OS's disks, etc......

While I don't know yet about the practicality of building my device, I'm taking efforts to reduce the complexity, cost, and so on.  The raw pieces and parts are actually negligible in terms of costs, but the device needs assembled and programmed.  Programmers are expensive, but I thought of offering a free/cost-only programming "service." to eliminate that as a requirement.

Or perhaps sell a prototype board with SMT memory pre installed, and mcu programmed.....

Thanks

Keith
 

Offline kamigaTopic starter

  • Full Member
  • ***
  • Join Date: Oct 2005
  • Posts: 165
    • Show all replies
Re: Amiga floppy project status
« Reply #5 on: November 20, 2007, 05:03:55 AM »
Quote

LoadWB wrote:
So if I read this correctly, you're using some kind of 34-pin FDC connected to the PC via USB?


Well, yes, some kind of FDC :)  It's _my_ floppy drive controller, that I created from the ground up.  It's more or less a Parallax SX28 Microcontroller with my custom firmware, with serial memory for track-storage, and a device that converts TTL level voltages to USB.  I access FTDI's USB functions via their .DLL, through Java.  FTDI has library support for other OS's as well.

Quote

Could this work with a straight USB floppy drive, for instance the NEC drives sold for Dell laptops, etc.?


No, probably not.  Those USB drives are probably (I haven't taken one apart to look) some type of glue-logic between USB and a standard floppy drive.  I wouldn't be surprised to see a 34-pin (or similar) connector on a laptop-sized floppy.  I think laptop sized drives use a slightly smaller connector, but heck if I remember what it is.  The floppy interface includes like 17-ground leads, completely unnecessary --- so you actually only need perhaps 10-15 leads.....

I would imagine the FDC that is integrated into the actual USB floppy case, and I'm _sure_ they would have used a standard PC based 765-ish/Intel 8272-ish FDC.  So the FDC located in the drive is more or less what's integrated into your motherboard on a standard desktop. (read:same limitations as on a normal PC)

I've actually seen USB->floppy interface chips that are available, and some of them even have replaceable firmware.  But there are some hurdles regarding learning the particular processor/controller/core or whatever you want to call it on those chips.  It also requires specialized compilers, etc, that are either expensive, or hard to properly configure in *nix world.  Ideally, this might be the approach a pro might use.  My way was a lot more affordable and reachable by a DIY'r.  Parallax's SX Tech Tool plus kit is like $100 for everything you need except the $10 power supply.

Thanks

Keith
 

Offline kamigaTopic starter

  • Full Member
  • ***
  • Join Date: Oct 2005
  • Posts: 165
    • Show all replies
Re: Amiga floppy project status
« Reply #6 on: November 23, 2007, 02:05:34 PM »
Hi,

Quote

1NOM155 wrote:

An Universal USB Device (driver), with free code, maybe can help you on the project.


Well, I already have direct access to all the USB-serial converter functions via FTDI's .DLL.  A guy named Pablo Bleyer created a java wrapper called jd2xx for java access to the .DLL.  It's really easy to use and pretty cool.  FTDI's documentation is superb, and I was up and running within minutes.  FTDI has libraries for multiple OS's, so I'm covered there as well.

But I'll check out those links, and thanks for posting them!

Keith
 

Offline kamigaTopic starter

  • Full Member
  • ***
  • Join Date: Oct 2005
  • Posts: 165
    • Show all replies
Re: Amiga floppy project status
« Reply #7 on: November 23, 2007, 03:10:45 PM »
Quote

da9000 wrote:
Nice work! Keep it up. Great pages too! (schems, photos, blog)

Cheers


Hey, thanks, da9000!

I've put a fair bit of working keeping the website current, making sure the latest version of wordpress is installed, backed up, customized.

I want to refresh the whole web site a little bit, and integrate the blog into the rest of the site more cleanly.

If you are interested, here's a little graphic I threw together showing my device in action:

Anatomy of a flux

It shows how the incoming flux transition (or lack of one) is processed by the project, and stored accordingly into the memory.

I thought it was neat, anyways. :)

Thanks

Keith
 

Offline kamigaTopic starter

  • Full Member
  • ***
  • Join Date: Oct 2005
  • Posts: 165
    • Show all replies
Re: Amiga floppy project status
« Reply #8 on: February 13, 2008, 02:54:50 PM »
There hasn't been any major improvements or news since the thread was last active.

The most recent post is from 1/15 here

http://www.techtravels.org/amiga/amigablog/?p=189

I've a new 3-week old "project", although my wife would probably not describe her like that.

Thanks
 

Offline kamigaTopic starter

  • Full Member
  • ***
  • Join Date: Oct 2005
  • Posts: 165
    • Show all replies
Re: Amiga floppy project status
« Reply #9 on: February 13, 2008, 04:43:04 PM »
Actually, as of today, I'm pretty good as far as documentation goes.

Where were you two years ago? :)

I contacted some old Amiga guys a couple years ago, and they were very helpful.  None of them remembered any of the low-level critical details, but they were helpful nonetheless.

I'm going to eventually release a detailed document describing everything one needs to know to interface with amiga floppy disks.  It will end up being at least a partial compilation of existing sources, but will also include real-world observations, ways of writing embedded code to deal with the amiga floppy data, timing diagrams, and so on.

I would like a copy of Ralph Babel's Amiga Guru Book, in English, of course.  I'm not sure what's in there regarding floppy stuff, but I'd like to get my hands on it.  I sent an email to APC/TPC or whatever their name was so that maybe there will be an English reprint.

Thanks for your post.
 

Offline kamigaTopic starter

  • Full Member
  • ***
  • Join Date: Oct 2005
  • Posts: 165
    • Show all replies
Re: Amiga floppy project status
« Reply #10 on: February 16, 2008, 03:33:53 PM »
The good news is that it's already working!!  It's been working for about a year.

There's a post on my blog here

http://www.techtravels.org/amiga/amigablog/?p=134

and also here

http://www.techtravels.org/amiga/amigablog/?p=183

where I created about (50) .ADF's from my disks.

I gotta get back to work and get them all scanned in.

Thanks!