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