Floppy without IRQs and DMA?

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
The Legend

Floppy without IRQs and DMA?

Post by The Legend »

Hi,

I've somewhere heard that it is possible to use the
Floppy without any IRQ or DMA, but can't find
anything about it. (It is hard enough to find
something useful about the Floppy in general ...)

Thanks,
The Legend
Guest

RE:Floppy without IRQs and DMA?

Post by Guest »

>On 2002-02-08 10:56:23, The Legend wrote:
>Hi,
>
>I've somewhere heard that it is possible to use the
>Floppy without any IRQ or DMA, but can't find
>anything about it. (It is hard enough to find
>something useful about the Floppy in general ...)

I must admit, I don't know much about floppy/ide
programming, but I do know you can access ide
hd's strictly through ports, so I wouldn't be
surprised if you could do the same with the floppy.

This is, though... why!? DMA's a good thing, dude :)
Might as well use it when you can!

In any event, check the links off this page. Most
of the OSs here implement floppy drivers.

Jeff
The Legend

RE:Floppy without IRQs and DMA?

Post by The Legend »

>On 2002-02-09 18:37:13, Anonymous wrote:
>>On 2002-02-08 10:56:23, The Legend wrote:
>>Hi,
>>
>>I've somewhere heard that it is possible to use the
>>Floppy without any IRQ or DMA, but can't find
>>anything about it. (It is hard enough to find
>>something useful about the Floppy in general ...)
>
>I must admit, I don't know much about floppy/ide
>programming, but I do know you can access ide
>hd's strictly through ports, so I wouldn't be
>surprised if you could do the same with the floppy.
>
>This is, though... why!? DMA's a good thing, dude :)
>Might as well use it when you can!
It would be another driver directly linked into my
kernel, and as I need a way to access the floppy
as simple as possible, I would avoid DMA for the
first file readings, and load from disk later
(and then a new, faster Floppy-Driver, too).

>
>In any event, check the links off this page. Most
>of the OSs here implement floppy drivers.
Okay, I will browse through it if I can find any
driver without dma and irqs ...
Most times I see the driver from LittleOS and GazOS
(I don't know who wrote it).

>
>Jeff
Guest

RE:Floppy without IRQs and DMA?

Post by Guest »

There is only one way that you can transfer data to/from the Floppy and that is by using IRQ and DMA.
>On 2002-02-10 03:44:02, The Legend wrote:
>>On 2002-02-09 18:37:13, Anonymous wrote:
>>>On 2002-02-08 10:56:23, The Legend wrote:
>>>Hi,
>>>
>>>I've somewhere heard that it is possible to use the
>>>Floppy without any IRQ or DMA, but can't find
>>>anything about it. (It is hard enough to find
>>>something useful about the Floppy in general ...)
>>
>>I must admit, I don't know much about floppy/ide
>>programming, but I do know you can access ide
>>hd's strictly through ports, so I wouldn't be
>>surprised if you could do the same with the floppy.
>>
>>This is, though... why!? DMA's a good thing, dude :)
>>Might as well use it when you can!
>It would be another driver directly linked into my
>kernel, and as I need a way to access the floppy
>as simple as possible, I would avoid DMA for the
>first file readings, and load from disk later
>(and then a new, faster Floppy-Driver, too).
>
>>
>>In any event, check the links off this page. Most
>>of the OSs here implement floppy drivers.
>Okay, I will browse through it if I can find any
>driver without dma and irqs ...
>Most times I see the driver from LittleOS and GazOS
>(I don't know who wrote it).
>
>>
>>Jeff
BigDave

RE:Floppy without IRQs and DMA?

Post by BigDave »

That's not true, it is perfectly possible - neigh
- desirable to access floppies without DMA.

The DMA was a good idea when PCs ran at 4MHz etc,
but in these enlightened days of 2GHz plus, there
is no reason whatsoever to use DMA, add to that,
that in standard form, the DMA can only access
the 1st 1MB of RAM, or if you really work hard,
the 1st 16MB of RAM !

I wouldn't try to do it without IRQs however, you
will spend an awful lot of your life just polling
registers

To set the floppy controller to non-DMA mode, send
a specify command (03h) to it with the ND (Non-DMA)
bit in parameter 2 set, et voila, no more DMAs !,
you will instead get an interrupt for each byte to
transfer rather than the conventional DMA request.

If you really, really want no interrupts either,
then you could set bit 3 (DMAGATE) in DOR (03F2h)
to 0, this tri-states DMAs, but also the IRQ line,
or you could just mask out the interrupt in the
PIC

>On 2002-02-11 14:19:49, Anonymous wrote:
>There is only one way that you can transfer data to/from the Floppy and that is by using IRQ and DMA.
>>On 2002-02-10 03:44:02, The Legend wrote:
>>>On 2002-02-09 18:37:13, Anonymous wrote:
>>>>On 2002-02-08 10:56:23, The Legend wrote:
>>>>Hi,
>>>>
>>>>I've somewhere heard that it is possible to use the
>>>>Floppy without any IRQ or DMA, but can't find
>>>>anything about it. (It is hard enough to find
>>>>something useful about the Floppy in general ...)
>>>
>>>I must admit, I don't know much about floppy/ide
>>>programming, but I do know you can access ide
>>>hd's strictly through ports, so I wouldn't be
>>>surprised if you could do the same with the floppy.
>>>
>>>This is, though... why!? DMA's a good thing, dude :)
>>>Might as well use it when you can!
>>It would be another driver directly linked into my
>>kernel, and as I need a way to access the floppy
>>as simple as possible, I would avoid DMA for the
>>first file readings, and load from disk later
>>(and then a new, faster Floppy-Driver, too).
>>
>>>
>>>In any event, check the links off this page. Most
>>>of the OSs here implement floppy drivers.
>>Okay, I will browse through it if I can find any
>>driver without dma and irqs ...
>>Most times I see the driver from LittleOS and GazOS
>>(I don't know who wrote it).
>>
>>>
>>>Jeff
Post Reply