GithubHelp home page GithubHelp logo

Comments (6)

keirf avatar keirf commented on August 18, 2024

There are a couple of things to do:

  1. ADF handler must detect an HD image and switch to 22 sectors per track, but remain at DD data rate
  2. This ID method must be implemented, if possible. First barrier is that the MTR line is not connected to the STM chip at the moment, needs to be jumpered to a spare input pin. Second barrier is that this pin may carry MTRX and need latching to generate MTR...

Does the ID need be implemented only for external drives? FF does not generate an ID signal for external DD drives either.

If we do want to try generating the ID in software it might make sense to assume MTR is always asserted, and thus always generate the ID stream. Disadvantage for HD is that we wouldn't know if AmigaOS reads ID=101010... or 010101... I wonder if AmigaOS cares?

from flashfloppy.

fook42 avatar fook42 commented on August 18, 2024

If we do want to try generating the ID in software it might make sense to assume MTR is always asserted, and thus always generate the ID stream.

wont work .. the ID-stream is only "read" when the MTR-Line is inactive.. when MTR is active, the ready-line has to follow "select" ...

Disadvantage for HD is that we wouldn't know if AmigaOS reads ID=101010... or 010101... I wonder if AmigaOS cares?

i read, that it makes a difference whether the ID starts with 0 or 1... 010101 means some sort of identification for 5,25"-Drives (40Tracks) .. whereas 101010.. means HighDensity (1,76MB) ..
if ready is equal to select, then its 80 Tracks, 880KB.

just another information i found; the select-signal is set/unset serveral times before accessing a disk, an HD-drive will "respond" on the "ready-line" once ever 2nd-time (!) .. an DD-drive answers every time with ready = active!
(this is how this pattern is created on the Hardware-level)

from flashfloppy.

keirf avatar keirf commented on August 18, 2024

I don't believe "following select" when MTR is active is that important, as AmigaDOS traditionally ignores RDY (apart from drive identification!).

However I think you're right that we have to sync the ID stream to MTR sufficiently to ensure that the ID is read as 101010...

Is this all needed for DF0, or just DF1+? Would it be okay to assume we have a valid MTR signal or only MTRx from which we need to create MTR as a function of MTRx, SELECT, and RESET?

from flashfloppy.

keirf avatar keirf commented on August 18, 2024

Here is a firmware to test which recognise HD ADF images and handles them appropriately. It does not do any magic to the RDY signal to identify the drive as HD. However it should work for DF0, I believe.

ff_10_1.zip

EDIT: I'm also happy to hack up a drive identification patch for people to test. We can see if we can get away with something fairly dumb in the first instance (ignoring MTR signal for example).

from flashfloppy.

keirf avatar keirf commented on August 18, 2024

And here's a firmware with an additional hack to fake the HD-identification signal on the RDY line. I don't know how well this will work, but worth a punt :)

ff_10_2.zip

EDIT: Doesn't seem to work too well for me. I will have to stick a logic analyser on and see if I broke something, as I can't reliably load disks with the HD identification patch.

from flashfloppy.

keirf avatar keirf commented on August 18, 2024

Now working for me. Try this firmware with interface = amiga in FF.CFG. This new interface type is a bit of a hack, I recommend it only for users who want to use HD images, and/or are having problems getting their Gotek recognised as an external drive.

ff_10_3.zip

from flashfloppy.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.