Vorige                       Inhoud                      Volgende
_________________________________________________________________

Floppy-disk controller  860409          (c) 1986 by ORD-GROUP  20


                     Floppy-disk controller


De  floppy-disk-kaart van de ORDINATOR is ontworpen om twee  5.25
inch  disk-drives aan te sturen.  Dit gebeurt met behulp  van  de
Western Digital WD1791.

Het  unieke  van de ORDINATOR floppy-disk-kaart is  dat  de  data
niet,  zoals bij vele computers gebruikelijk is, door de CPU zelf
via  een I/O-poort naar binnen moet worden gehaald.  Dit  gebeurt
ook niet door middel van een DMA-controller. De floppy-disk-kaart
bevat 1k-RAM waarin alle data wordt gezet. Aan het einde van b.v.
een  leescommando  kan  de CPU de informatie gewoon uit  die  RAM
halen.  Bij  het beëindigen van een commando wordt een  interrupt
gegeven.  De CPU hoeft dus alleen maar een commando te  initiali-
seren, de hardware doet de rest.

De  1k  DMA-RAM  is gewoon opgenomen in het  adresbereik  van  de
ORDINATOR  en  hierdoor heeft de ORDINATOR een  zeer   eenvoudige
ROM-booters.  De  CPU hoeft alleen maar de 1791 te initialiseren,
track 0 te zoeken, het sector-register goed te zetten, de DMA-RAM
in  te  schakelen en een lees-opdracht te geven.  Daarna  kan  de
routine  uitgevoerd worden door een sprong te maken naar de  DMA-
RAM.

De  Floppy-disk-kaart  maakt  gebruik  van  6  I/O-poorten.  Vier
hiervan  zijn  van de 1791.  Op de vijfde I/O poort  kan  men  de
'disk-changed' signalen lezen.

Deze  'disk-changed' signalen vormen een handige feature van  het
ORDINATOR  Floppy-disk-systeem.  Als het deurtje van één  van  de
twee  disk-drives  geopend wordt,  wordt het bijbehorende bit  op
deze  poort  ge-set.  Dit  bit  kan  weer  ge-reset  worden  door
hetzelfde  bit  te  schrijven naar de  poort.  TS  maakt  hiervan
gebruik om te zien of een disk verwisseld zou kunnen zijn.

Als  de zesde poort gelezen wordt is alleen bit 7  relevant,  dit
bevat  de status van de 1k-RAM-buffer (ook DMA-RAM genoemd).  Als
dit  bit  1 is dan is er nog een actie in die RAM-buffer  aan  de
gang, anders niet.

Naar  deze poort kan ook geschreven worden,  dan hebben  de  ver-
schillende bits de volgende betekenissen:

bit 7     DMA-RAM aanschakelen
bit 6     DMA-RAM lezen of schrijven selectie.
bit 5     Write-precompensation aanschakelen.
bit 4     Geen functie.
bit 3     FM of MFM (signle-density of double-density) selectie.
bit 2     Drive 0 of 1 selectie.
bit 1     Head 0 of 1 selectie. (De drives zijn double-sided.)
bit 0     Speciale interrupt enable.

Met  bit  0 kan de interrupt die gegeven wordt als  een  lees- of
schrijfcommando klaar is aan- of uitgeschakeld worden.

_________________________________________________________________

Vorige                       Inhoud                      Volgende