[comp.os.minix] PS/2 floppy controller

tom@rsp.UUCP (Thomas Ruf) (01/18/89)

Hit 'n' if you don't want to write a PS/2 floppy driver ..

I just searched thru a NEC 765A data sheet and found the following
information :
"..if the 765 is in NON-DMA Mode, then the receipt of each data byte
(if the 765 is reading data from FDD) is indicated by an Interrupt signal ...
The generation of a Read Signal or Write Signal will reset the Interrupt
as well as ouput the data on the bus ...
.. if the 765 is in the DMA mode, no interrupts are generated during the
execution phase... After the execution phase has completed (Terminal Count
has occured) or EOT sector was read/written, then an Interrupt will occur.
This signifies the beginning of the Result Phase. When the first byte of
data is read during the Result Phase, the Interrupt is automatically
reset.."
"Sense Interrupt Status
An Interrupt Signal is generated by the FDC for one of the following
reasons :
1. Upon entering the Result Phase of :
	a. read data command
	b. read a track command
	c. read ID command
	d. read deleted data command
	e. write data command
	f. format a cylinder command
	g. rwite deleted data command
	h scan command
2. Ready line of FDD changes state
3. End of seek or recalibrate command
4. During execution phase in the NON-DMA mode

Interrupts caused by reasons 1 and 4 above occur during normal command
operations and are easily discernible by the processor. During an
execution phase in NON-DMA mode, DB5 in main status register is high. Upon
entering result phase this bit gets clear. Reason 1 and 4 does not require
sense interrupt status command. The interrupt is cleared by
reading/writing data to FDC. Interrupts caused by reasons 2 and 3 above
may be uniquely identified with the aid of the sense interrupt status
command. This command when issued resets the interrupt signal ...
..Neither the seek or recalibrate command have a result phase. Therefore,
it is mandatory to use the sense interrupt status command after these
commands to effectively terminate them...
..Issuing sense interrupt status command without interrupt pending is
treated as and invalid command"

Maybe this helps you to solve the PS/2 puzzle

Thomas

-----------------------------------------------------------
Thomas Ruf				RSP Datensysteme GmbH	
{uunet,mcvax}!unido!rsp!tom		Scheffelstrasse 26
West-Germany				7590 Achern