FDC s obvodem 37c65

První řadič diskety k MZ800 jsem se snažil vyrobit někdy v roce 1988. Měl jsem už i 8” mechaniku Consul. Pak mě ale povolali na vojnu. Po návratu (a po revoluci) jsem si koupil 3,5” mechaniku (2000,-) a řadič s i8272 dodělal. Na desce řadiče jsem měl i RomDisk celých 256 bajtu pro natažení systému. Začal jsem i s úpravou CPM, ale tak nějak to nedopadlo a deska řadiče se mi ztratila při stěhování.

Druhý řadič jsem postavil na základě nějakého starého MFM řadiče z XT. DPS jsem ani nedělal, písíčkovou kartu jsem jen trošku upravil pilkou, vyndal pár IO a připájel pár drátků. Tehdy jsem neměl potřebnou dokumentaci k 37c65 a tak se mi nepovedlo rozběhnout řadič v NonDMA režimu. Musel jsem při návrhu obvody uspořádat tak, aby zpracovávali signály pro DMA režim. Řadič je v adresovém prostoru umístěn na I/O portech 0D8h, 0D9h, 0DAh a 0DBh. Je minimalizována zátěž na jednotlivé vodiče sběrnice na jedno hradlo, pouze signály D0, D1 a D2 jsou připojené na dvě hradla. Protože mám MZ811 bez kazeťáku tak jsem mechaniku i řadič umístil do prázdného prostoru.

Mz800Fdc37c65

Dekodér adresy generuje všechny adresní i DMA signály pro obvod 37C65.
Registry jsou uspořádány takto:

adresa směr jméno popis
0D8h RD MSR Main status register
0D8h WR OR Operation register
0D9h R/W Data Data register (pouze přikazový a výsledkový)
0DAh RD MySt Tento port je tvořený obvodem LS244 a zpřístupňuje:
– na bitu D0 signál DMA (požadavek o DMA)
– na bitu D1 signál READY přímo z mechaniky floppy disku
– na bitu D2 signál INT (požadavek o přerušení)
0DAh WR CR Control register
0DBh R/W DMA Data register nahrazuje DMA přenos dat

Navíc ještě READ 0D8h způsobí set a WRITE 0DAh reset signálu TC Terminal count (Konec DMA přenosu).

Zde můžete stáhnout ovladač v asembleru.

Gainery a sacharidy pro výrazný růst hmoty