Už som písal o externom dekódovaní adresy D5xxh (!CCTL) a obvod 8255A pre počítač Atari 800XL, tam boli potrebné 2 čipy a ešte bolo potrebné použiť obvod 74LS00 pre správne dekódovanie signálov Read a Write pre čip 8255A, teda nakoniec boli potrebné až 3 čipy. Dnešné riešenie ktoré som urobil vystačí iba s 2 čipmi (presnejšie 1 a 1/2 čipu) a to s PROM pamäťou 74S287 a ešte treba použiť 1/2 obvodu 74LS139, potom sa to už dá priamo pripojiť na čip 8255A, teda už máme k dispozícii kompletne všetko potrebné. Je zvolené externé napájanie 5V (ráta sa s ním aj pre napájanie 8255A a tiež ďalších obvodov). Nevyužitá druhá polovica čipu 74LS139 sa dá použiť na nejakú ďalšiu potrebnú adresáciu v budúcnosti.
Externý dekodér s MMU (PROM 74S287) pre Atari 800XL.
1/2 obvodu 74LS139 nahradzuje veľmi známe zapojenie 3 hradiel
74LS00 pre úpravu signálu RD a WR pre prácu s obvodom 8255A.
Pamäť PROM 74S287 tu slúži ako MMU (Memory Management Unit) a umožňuje použiť jej 4 výstupy pre potrebný výstupný adresný priestor. "Klasika" je zapojená na adresu D5xxh - jumper je prepojený práve na túto adresáciu, dekódovanie adries prebieha v krokoch po 256byte. Zapojenie umožňuje použiť naraz len jednu adresáciu - ak v zapojení použijeme samostatne 4x odpory 4k7 pre jednotlivé výstupy B0÷B3 tak môžeme adresovať všetky 4 výstupy - teda ak na to máme pripravené potrebné periférie (osobne to ale nepotrebujem, moje potreby sú predsa len skromnejšie), obsah MMU som aj na toto riešenie už pripravil a obsahuje potrebné dekódovanie adries v požadovanom rozsahu.
Využitie všetkých 4 výstupov.
Dostupná adresácia tejto MMU:
D100h÷D1FFh
D500h÷D5FFh /!CCTL
D600h÷D6FFh
D700h÷D7FFh
Na nasledovnom obrázku je obsah PROM 74S287:
Nasleduje binárka pre napálenie obsahu do PROM pamäte:
74S287_decoder_burner_atari.bin (256,00 bytes)
Nevýhody uvedeného riešenia sú dve:
- treba zohnať prázdnu PROM 74S287
- zohnať niekoho kto má programátor na uvedenú PROM-ku aby tam potrebný obsah naprogramoval
Nuž - obidve riešenia, teda aj popísané v minulom článku fungujú (to prvé ešte s dodatočným ďalším čipom) a teda interface sa dá postaviť podľa toho čo máme k dispozícii. Použitie obvodu s označením 8255A považujem za samozrejmosť, čip 8255 bez prípony A nemá dostatočnú rýchlosť vybavovania.
Tu len dodatok - rozsah D100÷D1FFh používa Atari 1090, ale to asi v našich končinách nie je rozšírené, takže toto by nás nemalo pri našom použití nejako zásadne obmedziť. Dtto sa týka D600÷D6FFh a D700÷D7FFh. Použitie adresácií D6xxh a D7xxh aj s ich možnými obmedzeniami pri využívaní bolo už popísané v predchádzajúcom článku.
_______________________________________________________________________________
Existuje aj jednoduchšie riešenie problému ako získať potrebný signál adresného dekodéru
!CCTL (D5xxh) ak pracujeme cez PBI zbernicu - ale to si už vyžaduje urobiť mierny hw
zásah do počítača.
Ak máte viacero počítačov - môžete si na jednom stroji na PBI zbernici na jeho voľný pin konektoru priviesť signál !CCTL priamo z konektoru pre cartridge - ušetríte si tým stavbu potrebného dekodéru týchto adries a teda ušetríte takto 1÷2 čipy. Nemalo by to vadiť, pretože je veľmi málo pravdepodobné že by ste si napríklad zohnali novú perifériu Atari 1090 kde by to už mohlo s niečím už kolidovať. Na PBI sú k dispozícii tieto voľné piny 33, 37 a 39 - ďalšie piny 47 a 48 pri ATARI 800XL neodporúčam obsadiť nejakým dodatočným signálom, pretože pri Atari 600XL je sem privedených +5V (ak si na Atari 800XL pripojíme na piny 47 a 48 +5V tak máme PBI zbernicu úplne rovnakú ako má Atari 600XL). Ak signál !CCTL skutočne na PBI zbernici použijete (odporúčam ho pripojiť na pin č.33 na PBI) - je dobré do cesty tohoto signálu zapojiť vypínač - tým potom pri prerušenej ceste signálu na PBI zbernicu máme k dispozícii úplne pôvodný počítač.
Pracovať cez PBI zbernicu je elegantné riešenie, ale je spojené s jednou veľkou neznámou - a to celkovou dostupnosťou 50-pinového konektoru pre túto zbernicu ...
Ďalšou možnosťou ako sa dostať k potrebným signálom z Atari je vyviesť ich z konektoru pre cartridge, je tam všetko potrebné a tak isto je tu priamo aj signál !CCTL. (Ale to už nehovorím o zbernici PBI, to som už mierne odbočil od témy, ale nedalo mi uviesť aj túto možnosť.) Výhod je vcelku dosť, nevýhoda - prívod "trčí" priamo nad Atari, je potrebné urobiť krabičku na výstup - inak hrozí pri používaní skrat na zbernici cartridge.
Pozrime si príklad takého riešenia - napaľovačka Eprom od Ralpha Davida:
___________________________________________________________
Cartridge konektor pre Atari 600XL a Atari 800XL:
Konektor paralelnej zbernice PBI, 50-pin samec na strane počítača (rada Atari XL):
Pohľad zo zadnej strany počítača.
Obsadenie signálov na PBI zbernici pre Atari 600XL, Atari 800XL:
_____________________________________________________
Dodatok:
Uvedené zapojenie samozrejme priamo funguje aj na Atari 600XL.
(Na Atari 600XL je na PBI zbernici priamo vyvedené aj napájanie +5V.)
_____________________________________________________
Vaše hodnotenie, Rate post: