SBC6502 - 7 - doplnky - accessories. Baud rate generator.

By Administrator at februára 24, 2016 19:05
Filed Under: SBC6502

 

SBC6502 Baud rate generator


Občas sa vyskytnú situácie, kedy chceme komunikovať s SBC6502 aj na väčšie vzdialenosti, k tomu sa ale nehodí použiť základná rýchlosť 115.200Bd, preto musíme ísť cestou znižovania prenosovej rýchlosti. A tu je uverejnené zapojenie kde potom môžeme použiť nižšie prenosové rýchlosti.

 

Poznámka:

Ak chcete trvale fungovať na najvyššiu rýchlosť - tak láskavo celý tento článok preskočte, nemá pre Vás význam.


Prečo ? Pretože pri takejto rýchlosti (115.200Bd) má zmysel komunikácia cez káblik RS232 dĺžky maximálne do cca 1.5m, čo je občas naozaj príliš malá vzdialenosť. (Reálne to zvláda o niečo dlhšiu vzdialenosť, ale bude to silne individuálna záležitosť.) Síce pri znížení prenosovej rýchlosti sú odozvy o dosť pomalšie (treba počítať s tým že nahratie programu cez Hyperterminál - teda ak budete mať program napríklad o veľkosti celých 20kByte potrvá potom podstatne, podstatne dlhšie), ale zase nemusíme posielať po linke každú blbinu na zobrazenie, že ? Zase raz platí známe - a nielen tu - že je niečo za niečo. Takže výsledkom by mal byť rozumný kompromis medzi rýchlosťou prenosu a potrebnou vzdialenosťou komunikácie zo zariadením. Ak to ani potom nestačí treba použiť RS422.

 

Teraz si ukážeme príklady na aké vzdialenosti komunikácie s SBC6502 sa potom vieme dostať:

 

Prenosová rýchlosť 115.200Bd je paráda - ale ako som už písal je to použiteľné len na krátku vzdialenosť, čo ale ak potrebujeme komunikovať aj z väčšej vzdialenosti ?  Tu len uvediem že pri prenosovej rýchlosti 57.600Bd sériový kábel môže mať už dĺžku 5m ...  Existuje už na začiatku naznačená jediná dostupná cesta - musíme znížiť prenosovú rýchlosť a vzdialenosť na ktorú potom môžeme komunikovať sa naozaj rapídne zvýši. Ako sa mení možná maximálna komunikačná vzdialenosť ak ideme ešte na nižšiu prenosovú rýchlosť si ukážeme pomocou nasledovnej tabuľky:

 

 

Takže ak znížime rýchlosť na 19.200Bd čo je ešte stále naozaj hodne slušná prenosová rýchlosť kábel RS232 môže mať už maximálnu dĺžku celých 15 metrov (teda 10x viac ako pri základnej rýchlosti 115.200Bd). Rýchlosť 9600Bd už poskytuje komunikáciu na vzdialenosť celých 150 metrov (čo by sme mali potrebné tak ďaleko na riadenie - neviem, žeby jadrová elektráreň?) a teda už komunikujeme na 100x väčšiu vzdialenosť ako pri rýchlosti 115.200Bd - a to je už naozaj rozdiel.

 

Ešte nižšie rýchlosti sú určené:

- k tomu ak chceme ovládať niečo na pozemkoch svojich susedov ... Foot in mouth hi ...

 

Ideme na základnú schému:


Pomocou použitia dvoch CMOS čipov rady 4000 a jedného DIL prepínača dostaneme celú škálu štandartných rýchlostí, ktoré môžeme použiť a sú priamo odvodené z hodinového kmitočtu procesora. Tak isto potom treba na strane Hyperterminálu zmeniť nastavenie komunikácie na správnu nižšiu prenosovú rýchlosť. Zase raz platí že čím ideme s prenosovou rýchlosťou smerom nadol tak sa podstatne predlžuje dĺžka komunikačného kábla a zároveň sa predlžuje doba potrebná pre prenos dát. 

(Asi sa oplatí spomenúť že použitý čip 68B50 musí mať na svojom vstupe hodiny (clock) vždy rovný 16x násobku pre potrebný výstup v Bd, teda ak máme na jeho vstupe hodiny = 1.8432MHz tak potom /16 = 115.200Bd). Preto aj v schéme sú vždy výstupy hodín rovné 16násobku požadovanej rýchlosti v Bd.


Pozor, vždy treba aby bol zopnutý iba jeden z DIL prepínačov !



Poznámka:

Toto zapojenie nie je súčasťou základného zapojenia, použije sa iba v prípade ak potrebujeme komunikovať na väčšiu vzdialenosť cez linku RS232 ako poskytuje základné zapojenie SBC6502.

 

Zapojenie sa dá použiť ako doplnok ku všetkým uverejneným zapojeniam SBC6502. Zapojenie deličiek pre potrebné rýchlosti sa samozrejme dajú dosiahnuť aj s inými čipmi a s iným zapojením ako na uvedenej schéme - toto je iba jedno konkrétne zapojenie ktoré je "našité" priamo na mieru k tomuto SBC6502.

____________________________________________________________

Návrat do všetkých pokračovaní o SBC6502:

http://blog.3b2.sk/igi/post/SBC6502-0-UvodIntroduction.aspx

____________________________________________________________

Vaše hodnotenie, Rate post:

SBC6502 - 6 - doplnky - accessories. Switcher 65C02 - Atari14806.

By Administrator at februára 15, 2016 17:32
Filed Under: SBC6502

 

 

SBC6502 switcher, 65C02 - Atari 14806 processor.

V doske je už osadený čip 68B50 čo je 2MHz verzia 6850.


Už som niekde na začiatku projektu spomínal že mi doma leží skladom procesor Atari14806, čo je špeciálna verzia 6502C určená pre Atari. Má totiž v sebe zabudovaný aj vstup HALT (je aktívny v log.0), ktorý normálne procesory rady 6502 v sebe štandartne nemajú. V zapojení v Atari sa využíva na to, že ho obrazový procesor Antic "blokne", teda pozdrží procesor a Antic medzitým zobrazí data a následne procesor zase uvoľní. Priznám sa, že už celkom úplne od začiatku stavby SBC6502 mi vŕtalo v hlave prečo by nemohol byť tento procesor použitý aj v SBC6502 ? Takže som zobral schému zapojenia Atari, datasheet pre 65C02 a kontúry ako na to boli od začiatku celkom jasné. Trochu mi to ale hatili problémy pri oživovaní, až som nakoniec SBC6502 rozbehal a potom malo aj zmysel začať v ňom testovať Atari14806-ku. A ide to !

Pri prezeraní datasheetov pred vlastnou stavbou SBC6502, teda procesoru 65C02 a schém s procesorom Atari14806 som zistil nasledovné:

 

Toto sú jediné rozdiely v zapojení vývodov:


- 65C02R/W pin 34, piny 35 a 36 sú NC, teda nepoužité
- Atari14806R/W vyvedený na pin 36, HALT je na pine 35, pin 34 je NC


A teda teoreticky (a stačilo aj prakticky) by malo stačiť ak na pin č.35 trvale privediem od +5V cez odpor 2k2 čo vytvorí log.1, toto u 65C02 nevadí, pretože pin č.35 je tam nezapojený (nc) a u procesoru Atari14806 tým vyradím HALT z prevádzky. Potom už zostáva iba jeden - jediný jumper ako prepínač pre zmenu typu procesora, teda buď procesor 14806 (Atari) alebo procesor 65C02. Pre 65C02 vediem R/W od pinu 34 a pre 14806-ku to ide z pinu 36. Jednoduché ! A 100%-ne funkčné.

 

Vlastné zapojenie ktoré prepína medzi typmi procesorov.


Zhrniem to čo treba:


- z +5V cez odpor 2k2 privedieme na pin 35 log.1
- potom už len volíme R/W - privedený na pin 34 = 6502, 6502C,65C02
- potom už len volíme R/W - privedený na pin 36 = Atari14806


Ja som sa hneď na začiatku  rozhodol že si postavím SBC6502 tak aby som na jednej doske vedel otestovať obidva druhy procesorov a tak som ten odpor 2k2 na pin 35 dal "natvrdo" už v rannej fáze stavby (umiestnil som ho priamo v pätičke procesoru - nachádza sa na foto priamo pod bielym jumperom vo veľkej 40 pinovej pätičke), takže potom mi stačil len jeden jumper na prepínanie typov procesorov.

 

Na obrázku je jumper v polohe = 65C02

 

Ak použijete procesor pre Atari tak sa musíte zmieriť s jeho vyššou spotrebou - teda ak ho použijete. Kompletná doska aj s rozšírením o 8255A-ku s nasadeným procesorom 65C02 má odber 132mA pri 5V (pri mojom čipovom osadení) a pri osadení procesorom od Atari už stúpne spotreba na 194mA, čo je už dosť podstatný rozdiel v odbere. A tak ako v origináli aj procesorový Atari14806 čip už hreje, ale nie je to to nič hrozného (spotreba je vyššia o cca 310mW). Robí to rozdielna staršia technológia výroby procesorov NMOS (Atari) oproti novšej CMOS technológii pri 65C02.


 

Takže je na Vás čo použijete, fungujú obidve verzie. Len pripomeniem že x-talový oscilátor beží na 1.8432MHz, na ňom potom bežia obidva druhy mikroprocesorov. Čip 14806 v Atari beží na 1.79MHz, čiže tu je mierne pretaktovaný o pár kHz, presne je to o 53.2kHz, čo samozrejme nerobí žiaden problém. Ak použijete nižší kmitočet x-talu tak sa úmerne zmenší spotreba, to ale pri stavbe SBC6502 nebolo mojím prvotným cieľom.

 

Nakoniec bola Atari verzia procesoru 14806 otestovaná na rýchlosti =2.4576MHz - a procesor stále a trvale (niekoľko dní) bežal bez najmenších problémov.

Pre tento procesor som to považoval za stopku a na vyššie rýchlosti som ho už netestoval.

 

No a teraz poďme už na prax - pripájam dve videá:


- v prvom videu je najprv v doske SBC6502 zapojený procesor 65C02:

SBC6502_65C02.mp4

 

- v druhom videu je už v doske SBC6502 osadený procesor Atari14806:

SBC6502_Atari14806.mp4

 

V tomto druhom videu je vidieť ako je prepnutý jumper do druhej polohy. Videá potvrdzujú, že v tomto zapojení fungujú obidva druhy procesorov, takže sa dajú využiť aj doma odložené procesory pre prípad núdze a je vidno že procesor Atari 14806 tu funguje tak isto "ohne probleme". Samozrejme som rád, že sa potvrdila moja teoretická predstava následne aj v praxi o tom, že by to malo fungovať aj-aj. Je to lepšie ako iba-iba, nie ? Wink

(Jednoduchá doska s LED bude popísaná v niektorej z ďalších častí.)

 

Poznámka:

Všetky uvedené veci sa bez problémov dajú použiť vo všetkých variantoch dosky SBC6502 ktoré tu uverejňujem.

____________________________________________________________

Návrat do všetkých pokračovaní o SBC6502:

http://blog.3b2.sk/igi/post/SBC6502-0-UvodIntroduction.aspx

____________________________________________________________

Vaše hodnotenie, Rate post:

SBC6502 - 5 - doplnky - accessories.

By Administrator at februára 13, 2016 10:50
Filed Under: SBC6502

 

SBC6502 Tester RAM  - tester "úzkych" DIL RAM:



Keď už mám postavenú dosku SBC6502 tak ma napadlo že mám doma k dispozícii aj SRAM-y 32kB v úzkom 28 pinovom púzdre. Ak si urobím prípravok, tak ich môžem osadiť do dosky a aj ich priamo otestovať. To sa vždy hodí. Je to vlastne iba redukcia pre SRAM na úzke 28 pin púzdro. Na testovanie obvodu RAM typu 62256 stačí túto redukciu s osadenou úzkou RAM založiť priamo do pôvodnej pätičky. Zapojenie redukcie spočíva iba v priamom prevode pinov na užšiu pätičku v pomere 1:1, t.j. pin 1 ide na pin 1, až nakoniec pin 28 ide na pin 28.

 

Pretože sú to rýchle 20nS SRAM tak treba u nich počítať zo zvýšenou spotrebou oproti 70nS CMOS SRAM a to poriadne, spotreba na 5V ide nahor o celých 40mA, to je vcelku dosť, ak normálne doska berie 132mA tak teraz je to až 172mA, ale kto nehľadí na odber tak vďaka tomuto čipu môže zmenšiť celkovú veľkosť dosky. Zaujímavé je to, že vlastná RAM nie je na dotyk teplá, takže kam ten zvýšený odber "ide" je mierna záhada (a to má použité užšie a teda menšie púzdro). Žeby to malo lepší odvod tepla ? ... naproti tomu procesor Atari 14806 je už mierne teplý - a pritom má podstatne väčšiu plochu púzdra ako táto RAM.

 

 

Na tomto snímku ste si pravdepodobne všimli že tam mám v tzv. medzipätičke založený čip 68B50, ktorý slúži na sériovú komunikáciu. Tento konkrétny kus som dostal od Danharda, pretože bol už použitý a teda vypájkovaný priamo zo starej tlačiarne tak mal o niečo skrátené vývody (o cca 2-2.5mm) a tým pádom nemal v pätičke dobrý kontakt. Čip je O.K, ale komunikácia vďaka tomu občas vypadávala. Čo s tým? Zobral som jednu precíznu pätičku a čip 68B50 som do nej natvrdo zapájkoval. Možno opticky hnusné riešenie, ale je to na 100% funkčné a čip má všade dobrý kontakt na vývodoch. A keďže je v pätičke a zasúvam ho do ďalšej pätičky tak sa to dá naďalej podľa potreby - a pohodlne vyberať.

Záver:
Tieto úzke 28 pin 32kB SRAM sa používali kedysi ako cache RAM pre procesory 386, takže určite nepatria medzi najmladšie, je to nakoniec vidieť aj na ich spotrebe, ale ako vidieť dajú sa použiť - ak nie je rozhodujúcim údajom odber zariadenia, potom by sa dal zmenšiť celkový rozmer dosky. Základný Basic-ový program na otestovanie RAM som už uverejnil v predchádzajúcich častiach.

_______________________________________________________________________________

Náhrada pôvodnej Eprom 27128 typom 27256:


 

Pamäte typu 27256 sú dnes zohnateľné myslím si podstatne jednoduchšie ako pamäte typu 27128. Odtiaľto bol už bol len malý krok k rozhodnutiu upraviť zapojenie tak aby sa tam dala použiť Eprom 27256, mimo iného je tu ešte jeden fakt - pamäte 27256 sú rýchlejšie, dosahujú čas vybavenia 150ns, 27128 sú na 200 alebo 250ns. Potrebná úprava pre typ 27256 je uverejnená na obrázku, stačí toto zapojenie použiť v schéme SBC6502. Vlastne celá zmena je v zapojení pinu č.27, kde teraz máme adresný vodič A14 a jumperom volíme či bude v log.0, alebo v log.1. Ako vidieť z obrázku celá nová časť, teda úpravy sú označené v oranžovom poli. Súčiastok netreba veľa - jeden odpor a jeden jumper, to je všetko.

Na zahodenie nie je ani to že môžete mať potom k dispozícii 2x OS, trebárs jeden pôvodný a druhý upravený zo svojimi fičúrkami na testovanie. Alebo si tam proste iba nahráte OS 2x za sebou a potom je jedno či je založený jumper alebo nie. Toto rozhodnutie je na Vás. K danej téme tu už nemám čo dodať.

Pripájam aj potrebný súbor pre verziu 27128, má označenie 16KBOSI.BIN

16KBOSI.BIN (16,00 kb)


Pre tu nakreslenú verziu 27256 je vytvorený súbor 32KBOSI.BIN, ktorý obsahuje nateraz 2x za sebou pôvodný OS a teda je jedno v ktorej pozícii je zapojený jumper (On alebo Off). Tu si potom jednu 16kB binárku môžete postupne upravovať k obrazu svojmu a druhá bude pôvodná verzia ktorú urobil Searle Grant.

32KBOSI.BIN (32,00 kb)

____________________________________________________

SBC6502 x-tal oscillator:

 

Už som to spomínal - naproti pôvodnému riešeniu ála Searl Grant som sa rozhodol že použijem x-talový oscilátor a pritom jeho výstup je možné zaťažiť až 10-timi TTL vstupmi. Toto riešenie je dostupné a nevidím problém v tejto náhrade. Pre x-talový oscilátor existuje púzdro ktorá má 14 pinov (zvyčajne kovové), alebo púzdro ktoré má 8 pinov (to býva plastové) - podľa toho čo sa Vám podarí zohnať. Pretože mám doma obidva typy x-talových oscilátorov - tak som si povedal že chcem mať urobené zapojenie tak, aby som vedel pripojiť na doske SBC6502 obidva typy oscilátorov - a to aby ich zapojenie bolo možné iba v jednej 14 pinovej pätičke, na takéto riešenie stačí len dodatočne na pin č.11 priviesť +5V.

X-talové oscilátory potom vkladám vždy do pravého rohu pätičky.


Základné zapojenie 14 pinovej pätičky

pre obidva typy oscilátorov.

 

Takto sa založí x-tal oscilátor v 8 pinovom púzdre.

 

A takto sa vloží 14 pinový oscilátor.


Poznámka:

Všetky uvedené veci sa bez problémov dajú použiť vo všetkých variantoch dosky SBC6502 ktoré tu  uverejňujem.

____________________________________________________________

Návrat do všetkých pokračovaní o SBC6502:

http://blog.3b2.sk/igi/post/SBC6502-0-UvodIntroduction.aspx

____________________________________________________________

Vaše hodnotenie, Rate post:

SBC6502 - 4. 7 chip computer. 32kB RAM+8255. Name:"Erika0". Stavba.

By Administrator at februára 08, 2016 18:18
Filed Under: SBC6502

(Netriedené poznámky zo stavby rozšírenia SBC6502 pomocou čipu 8255.)


Základná doska SBC 6502 verzia "Erika0"  - iba pätičky, nie sú osadené čipy.

Strana spojov je už "kapotovaná", kábliky kompletne zapojené.

___________________________________________________________

SBC6502 Activity indicator:
Na predný panel som mimo indikácie napájania (zelená LED) vyviedol ešte dve LED-ky - červenú a oranžovú. Červená slúži na indikáciu prenosu Tx - t.j. zo zariadenia smerom von, oranžová zase indikuje prenos Rx, .t.j. smerom do zariadenia. Pretože na obvode 68B50 je Tx a Rx v kľudovej polohe v log.1, treba použiť 2 hradlá obvodu 74LS00 na invertovanie signálu. Ak nahrávame program tak LED-ky veselo poblikávajú, pri posielaní údajov smerom von bliká iba červená LED. Je to celkom dobrá indikácia na sledovanie stavu zariadenia, netreba potom mať stále zapnutý monitor.

Pozor, komunikujeme na rýchlosti 115.200Bd ! čo sú celkom slušné "fofry".

Následne z toho plynie že doba indikácie je veľmi krátka = kratučké bliknutie LED. Stačí to, ale určite je pohodlnejšie použitie monostabilného klopného obvodu, ktorý impulzy predĺži a teda lepšie sa to zrakom sleduje - časom popíšem takéto riešenie v jednej z ďalších variant SBC6502. Napriek jednoduchosti activity indicatoru je to naozaj dobrá vizuálna pomôcka.
_____________________________________________________________

SBC6502 new reset, bavíme sa tu o verzii "Erika0", 32kb RAM + 8255A:

Jasné, SBC6502 v zostave 7 čipov - tam ten pôvodný fantasticky jednoduchý reset funguje ako víno (je zapojený len odpor 2k2 voči +5V a mikrospínač z pinu 40 voči zemi), ale ak chcete pripojiť 8255A-ku tak treba reset prekopať, chce to ešte jeden obvod (555) + 1 hradlo navyše = daň za pridanie 8255A-ky do systému. Totiž 8255A potrebuje pri zapnutí najprv log.1, potom má spadnúť do log.0. Procesor na pine 40 čo je už spomínaný reset potrebuje najprv log.0 a potom má skočiť do log.1, čiže presne naopak ako je to u 8255A-ky. Použil som známe zapojenie resetu s čipom 555, pretože je to veľmi dobre reprodukovateľné a hlavne sa tiež resetuje 8255A. Treba ešte jedno hradlo z 74LS00 (to bolo to posledné nepoužité hradlo, dve čo tam ešte zostali slúžia ako invertory pre LED-ky - Tx a Rx). Teraz je použitých všetkých 8 hradiel ktoré sú spolu v obidvoch obvodoch 74LS00.

 

Pri použití úplne nového resetu treba "prekopať" v zapojení pripojenie tlačítka reset a hlavne treba skutočne odpojiť pôvodné resetovacie tlačítko (!) a zapojiť ho podľa novej schémy. Ak necháte aj pôvodné tlačítko tak Vám zaručene po jeho stlačení odíde U7:74LS00, takže preč s jeho pôvodným zapojením! Nepodceňujte túto informáciu, pretože by ste si zbytočne mohli skomplikovať hľadanie závady, ktorú ste si ale vyrobili sami. 

 

Síce to teraz vyzerá že sa takýto kopanec podaril aj mne - ukľudnite sa, netešte sa zbytočne - mne sa sa to nestalo  (aj tak bolo dosť ostatných vecí ...)

 

V zapojení nového resetovacieho obvodu funguje bez problémov aj starý čip NE555 (ten má spotrebu cca 20mA) aj TLC5555 čo je CMOS verzia čipu (táto CMOS verzia "papá" z 5V celých 0.3mA - nie, nie je to preklep skutočne je to správny údaj), proste dáte tam čo máte, ak treba - neskôr zameníte. 10uF kondenzátor som použil tantalový (malý zvod = dobrá opakovateľnosť doby nabíjania = konštantná doba resetu - reset bude trvať cca 0.5 sekundy, čo bohate stačí na to aby sa zariadenie dostalo do správneho východzieho stavu. (Stačí aj 0.1 sekundy.)  Dosť často sa spomína že prvé verzie čipu 6502 mali problémy ak reset trval viac ako 0.1 sec (niečo v čipe začalo kúriť až sa prehrial, neskôr už tento problém odstránili, mne neblbne ani procesor 65C02 a neblbne ani Atari 14806 čip).

Nechcem to tu nejako do hĺbky rozvádzať a pitvať, ale procesor 6502 (65C02, 6502C) pre svoju činnosť potrebuje aby reset v log.0 pri zapnutí trval dlhšie ako 6 taktov hodinového kmitočtu, až potom je schopný zahájiť svoju správnu činnosť. Doba resetu je u mňa výrazne dlhšia a tak teda zariadenie štartuje bez najmenších problémov. Kto chce o tom vedieť viac - naštudujte si datasheet použitého procesora.


Na tomto snímku je to "ešte rozpracované",  nie je tam nový reset s čipom 555 a nie je naľavo od

Eprom osadený čip 74LS138 od TI (16 pin pätička), ktorý mi tak isto pripravil "nové zážitky".

 

Chcel som vlastný počítač SBC 6502 rozšíriť. O.K, 74LS138 ako adresový dekodér, 8255A ako V/V zariadenie a nový reset popísaný v predchádzajúcom odstavci.

Založil som následne 8255A-ku a jednoduchý reset odvodený z pinu 40 procesora 6502 cez hradlo 74LS00 na čip 8255A-ky fungoval. Pridal som adresový dekodér a založil som do pätičky aj 8255A-ku a ... všetko sa seklo a ani bohovi nešlapalo. Celé to zamrzlo a nebežalo. Aby som bol presný, správalo sa to ako by bolo natvrdo skratované tlačítko Reset. Občas mi to síce dokonca celé nabehlo, ale pripomínalo to staré časy - obľúbená zábava skratovať reset v PC u IT-čkárov pred mnohými, mnohými rokmi a potom sa bádalo kdeže je pes zakopaný že počítač nie a nie naštartovať.

Nepotešilo ma to. Zase nanovo kompletne všetko premerané a - a zase nič, len sem tam sa to náhodou rozbehlo, zobral som si voľno a nechal som to tak, hlava na nové nápady úplne prázdna, žiaden nápad ktorý by ma niekam pohol dopredu. Potreboval som voľno.

Našťastie nasledovala 2 dňová pauza, pretože som bol cez víkend mimo domu. Dnes som konečne hajzlíkovi vypálil rybník a našiel som chybu. Zlý obvod 74LS138. Doteraz som v ňom chybu nehľadal, pretože stačilo vybrať obvod 8255 a SBC sa spokojne rozbehol. Do pekla to sa dejú veci ! Ako som na to prišiel ? Natvrdo som dal pre 8255-ku Reset do log.1 a proste tak isto to nešlo. Vybral som teda obvod 8255 a našťastie to nefungovalo tak isto. Takže sa išlo na adresový dekodér ...

Logicky som následne z pätičky vybral 74LS138-ku a zrazu to išlo ... a ide aj po výmene tohoto obvodu za iný čip od iného výrobcu. Zlaté pätičky ... Texas Instruments 74LS138 originál dnes sklamal na celej čiare. Pffffffff - kurvítko bolo odložené v šuplíku pekných pár rokov a keď dostalo nádhernú príležitosť ... využilo ju naplno.
Ufff, nejako ma tá SBC6502 skúša, ide to oživovať len po krôčkoch, nie a nie sa poriadne rozbehnúť.
Ale nakoniec ma potešilo že som na tú hlúpu chybu prišiel. (Obvod mal zrazu tvrdý skrat medzi pinmi 16 a 15, t.j. nedokázal hodiť do 0 chipselect pre 8255-ku a zjavne to v systéme robilo aj ďalšie "psie kusy". A sem tam to dokonca medzitým aj išlo. Čiže občas to bolo O.K, väčšinou to ale bolo nahov...o. Takéto hovadiny sa hľadajú najhoršie - pri meraní sa to tvárilo že je všetko O.K, po odpojení merákov a sondy z toho bol zase iný a hlavne zase totálne pošahaný stroj. Potvora, dalo to naozaj zabrať.
A čo už iného ako že pôvodne použitý čip 74LS138 od TI letel velikáááááááánskym
oblúkom do koša (najprv som mu ale s chuťou uštípal všetky nožičky, mrňa jedna !, zaslúžil si ...).

Teraz som tam nasadil novší čip 74HCT138 - a všetko funguje tak ako má. Ufffffffffff ...
____________________________________________________________

"Zakapotovanie" spodnej strany plošného spoja:

 

Obrázok ako to vyzerá ak je SBC6502 "Erika0" postavená na univerzálnej doske ... (Odstránený spodný kryt, konečné zadrátkovanie, plne funkčný počítač, nakoniec nie je to až taká "divočina" na zapojenie na univerzálnej doske.) Hrubší medený "zvonkový" vodič = napájacie rozvody.

 

Pretože staviam na univerzálke, tak je tam dosť veľké množstvo drátikov, ktoré sa dajú pri manipulácii odtrhnúť a teda hľadať neskôr nejaký problém v drátikoch sa mi už naozaj nechce tak som spodnú stranu univerzálnej dosky ako konečné riešenie zakryl. Použil som cuprextitovú doštičku ktorá je obojstranne nastriekaná farbou (4x) a následne ešte bezfarebným matným lakom (2x). Strana s medeným povrchom je potom umiestnená na spodnej strane, t.j. smerom preč od vodičov takže nehrozí skrat. Ešte som na spodnú stranu pridal gumené nožičky nech to má na čom stáť. Medzera medzi kapotou a vlastným plošným spojom stačí ak je na výšku matičky M3 (mne sa tam vošli na túto výšku všetky prepojenia). Aby to celé bolo dostatočne pevné a nekrútilo sa to, pridal som ešte dva pomocné šróby, ktoré majú na sebe tiež 3mm matičku ktorá vymedzuje správnu výšku medzi doskami.


Ako potom zospodu vyzerá takáto homemade "kapotáž" vidíte na obrázku.


Záverom tejto časti - dnešný úvodný snímok bez osadených čipov je tak isto už zo spodnej strany "kapotovaný", stačí sa bližšie pozrieť. A fakt to dobre chráni kábliky pre nežiadaným mechanickým zásahom.

_____________________________________________________________________________

SBC6502 Erika0 extension - 8255A:

Rozhodnutie prečo práve je v zapojení použitý práve obvod 8255A-ka je dosť jednoduché - pretože ho mám voľný v šuplíku a 3 brány oproti 6520 kde sú brány iba 2 (+ čosi navyše) je celkom dosť rozdiel. A na jej nastavenie a naprogramovanie (a používanie) stačí naozaj pár POKE a PEEK príkazov. A práve pre túto jednoduchosť ovládania som volil čip 8255A. A ešte jedna neznedbateľná vec - a to ak budem chcieť skúšať SBC6502 pretaktovať - tak ak by som použil obvod 6520 (teda jeho 2MHz verziu) by som sa asi smerom nahor v rýchlosti príliš nedostal.

(Kedysi som mal postavený programátor pre Eprom pamäte s 2x 6520 a teda mal som k dispozícii 4x 8bitové porty, no už po tom doma nemám ani škrt, možno by som našiel schému zapojenia, programové vybavenie zaručene už k dispozícii nemám. Prvý port boli riadiace signály, 2 porty zabrala adresová zbernica a posledný port boli data.)

________________

A aby som vysvetlil prečo som práve týmto čipom 8255A "prebehol" ku konkurencii (Intel), priznám sa že ja ten pocit vôbec nemám, skôr v tom mám akúsi postupnú kontinuitu:

 

- na ZX81 som po prvýkrát pripojil 8255-ku (zrealizované)

  (v roku 1986 som mal na túto tému uverejnený článok v časopise VTM, čiže rovných 30 rokov, sic!)

- na Atari som tak isto pripojil 8255-ku (zrealizované, rok 1990)

- na SBC6502 som pripojil 8255A-ku (zrealizované pred pár týždňami a tu uverejnené)

- na NCB85 je pripojená 8255-ka (práve riešim)

 

Takže to berte z mojej strany ako vrodenú úchylku - nič sa s tým v mojom prípade nedá robiť - i keď priznám sa, mám tam nejaké trošku väčšie časové pauzy v jednotlivých realizáciach, ale to sa stáva aj v lepších rodinách. Sealed


Samozrejme nikomu nebránim pripojiť si tam namiesto tu použitého čipu 8255A a nahradiť ho čipom 6520, skúste to, prečo nie, bude to tak isto fungovať, akurát to chce iné zapojenie v schéme a aj iné ovládanie čipu.

________________
A naspäť zase k už spomínanému resetu a 8255A:


Pridané sú čipy 74HC138 (74LS138), 8255A od Intelu, TLC5555 v obvode resetu. Na vysvetlenie - čip 8255A potrebuje mať pri zapnutí Reset=log.1, ktorý za chvíľu padne do log.0, teda presne opačné hodnoty ako na svojom resetovacom vstupe potrebuje procesor 6502. Podrobnejšie je to popísané v časti o novom resete.
Pomocou tohoto rozšírenia máme k dispozícii 3 brány po 8bitov, kde programovo môžeme voliť ktoré brány budú vstupné a ktoré výstupné, prípadne môžu byť niektoré aj obojsmerné.
Pre výber čipu 8255A na správnej voľnej adrese je použitý adresový dekodér 74LS138 (74HC138 a pod.), v totálnom stave núdze dá sa použiť aj obvod 3205 (ale naozaj iba v stave absolútnej núdze - ale potom sa nedivte ak dekodér bude sám osebe mať spotrebu pomaly toľko ako zbytok celého zariadenia, 3-ková rada čipov sa vyznačovala neuveriteľne veľkou žravosťou príkonu.
Adresový dekodér vyberá adresu 8000H a ďalej ide pekne po 1kB, teda môžete pripojiť až 8 zariadení s adresáciou po 1kB. Ja používam len tú prvú adresáciu a teda ešte sa dá pripojiť ďalších 7 zariadení. Tu sa využívajú z celého zvoleného 1kB rozsahu len adresy 8000H (dec.32768) až 8003H (dec.32771) - teda tieto 4 byty nám stačia pre prácu s obvodom 8255A. Je to síce slušné plytvanie adresným priestorom, ale tu to nevadí pretože v tomto priestore nič nie je a v pôvodnom zapojení SBC6502 sa táto adresná časť vôbec nepoužíva - čiže stručne zhrnuté - všetko je v poriadku.

____________________________________________________________

V ďalšom bude zase popis mojich nápadov pre SBC6502 "Erika0", kde bude vysvetlené:

(všetky popisované nápady sa dajú použiť aj pre verzie 40kB a 46kB RAM)

 

- ako zapojiť do dosky SBC6502 procesor od Atari 14806, teda prepínač,

   ktorý umožní vymieňať procesory 65C02 a Atari 14806 medzi sebou

- ako zapojiť namiesto Eprom 27128 (16kB) typ 27256 (32kB) a mať tak k dispozícii 2x OS

  (jeden OS = pôvodný a v druhom je potom možné použiť vlastné nápady - hlavný dôvod je

  ten že čip 27256 je podstatne lepšie dostupný a keď tam bude - tak to treba využiť)

- zapojenie pre 2 rozličné x-talové oscilátory v jednej použitej 14 pinovej pätičke

- špeciálny Baud generator, ktorý umožňuje zmenu použitých rýchlostí

- doska s externými LED na ovládanie pomocou portu A čipu 8255A

 

Na dnešok stačí, tieto veci popíšem podrobne zase v ďalších pokračovaniach. Ono to zase "niekto" musí do počítača "nadlapať", nakresliť, pofotiť a následne uverejniť. Proste chce to nejaký čas, ktorého mám katastrofálne málo. Ale v rámci možností sa snažím.

____________________________________________________________

Návrat do všetkých pokračovaní o SBC6502:

http://blog.3b2.sk/igi/post/SBC6502-0-UvodIntroduction.aspx

____________________________________________________________

Vaše hodnotenie, Rate post:

SBC6502 - 3. 7 chip computer. 32kB RAM+8255. Name:"Erika0".

By Administrator at februára 02, 2016 18:05
Filed Under: SBC6502

 

 

Tááák - a máme tu SBC6502 spolu zo zapojeným čipom 8255A. Nakoniec to teda už bude mať vo výsledku na doske celých 10 čipov, ale základ 7 čipov zostáva bezo zbytku - len pribudne na základnej doske ďalšiu bižutériu. Počítač vyzbrojený čipom 8255A má k dispozícii 3x 8bit brány, nastaviteľné ako vstupné, alebo výstupné, alebo aj ako zmiešané. A takáto mašinka už dokáže údaje zbierať, vyhodnocovať a riadiť. (A časom napríklad postaviť vlastný programátor pre PROM 74188 a podobne.) Povedal som si že tento počítač aj pomenujem - takže SBC6502 "Erika0", keď sú v tom vlastné prsty a vlastná hlava. Použité poradie v tomto prípade nechám na Vás.

 

Nakoniec - dnes je Eriky ... a moja manželka je Erika.

 

Potrebné zmeny sú nasledujúce:

 

Treba zmeniť reset (v schéme je to nakreslené zrozumiteľne), zapojenie je vcelku jednoduché, reset sa vyvoláva pomocou čipu 555 s negovaním výstupu cez jedno hradlo čipu 74LS00, na 555-ke máme potom k dispozícii potrebný reset už aj pre čip 8255A. Potrebujeme ešte jeden čip - 74LS138, to je adresný dekodér. Tu v tomto zapojení je čip namapovaný hneď za RAM, t.j. základné 7-čipové zapojenie sa vôbec nemení, iba proste pridáme ďalšie 3 čipy a meníme zapojenie tlačítka Reset. Na úvodnom obrázku je vidieť ako sú rozložené jednotlivé čipy, na pravej strane sú konektory (J1, J2, J3), kde sú vyvedené jednotlivé porty a je tam jeden dlhý konektor (J4). Tým že je J4 taký veľký tak sa tam vojdú všetky vývody jednotlivých portov (ak treba), tak isto je tam možné pridať doteraz nepoužité vývody chip select a aj riadiace signály, konektor je dostatočne dlhý aby sa tam všetko toto vošlo a ešte zostane voľné miesto aj tak. Čo všetko si reálne dáte na J4 konektor je na Vás. Ja som ho volil preto taký veľký (má 2x 17 vývodov, t.j. 34 pinov), že má slúžiť ako "samonosný", t.j doštička čo sa do neho založí už nie je ničím iným podopretá (samozrejme nemusí to tak byť). Takže dostatočne dlhý konektor = dostatočný počet voľných vývodov na rôzne použitie + netreba držiak na vloženú doštičku. Nakoniec som tam priviedol aj napájanie +5V. Proste som chcel aby sa počítač a jeho periférie ešte dali ďalej rozšíriť ak to bude potrebné. A na univerzálke si tam pripojíte a zapojíte iba to pre Vás potrebné podľa Vašich potrieb - a keď treba aj môžete urobiť nejaké potrebné zmeny, univerzálka to dovoľuje. Konektoru J4 sa už nebudem v tomto dieli venovať, ale príde na neho rad v niektorom z ďalších dielov. Je tu aj tzv. activity indicator - dva tranzistory spolu s dvomi hradlami z obvodu 74LS00 a červenou a oranžovou LED, ktoré indikujú posielanie dát cez linku RS232 (výhoda ? - nemusíte mať zapnutý monitor a vidíte aj tak či sa dáta posielajú jedným a aj druhým smerom). Activity indicator nie je nutnou podmienkou fungovania, len som využil 2 voľné hradlá a pridal 2 tranzsitory.


Dnes fotkami budem trošku skrbliť - pohľad na počítač SBC6502 Erika0 otočený o 180° oproti úvodnej fotografii, osadený x-talový oscilátor v plastovom púzdre 8 pin:


Tu ešte nie je zapojený nový reset, proste išiel som v step by step režime, čiže je to staršia fotka ako je v úvode článku. Ešte som len hľadal optimálne zapojenie jednotlivých komponentov na doske. Na ľavej spodnej strane je osadený activity indicator (2 tranzistory). (Foto je otočené o 180°.)

 

Nasleduje zapojenie počítača SBC6502 "Erika0":

SBC6502ver1_1.PNG (109,87 kb)

 


Vlastná binárka pre napálenie do Eprom 27128 alebo Eprom 27256 je k dispozícii v 5.časti pokračovania. 

 

Zapojenie ako na to tu už máme, ale to nestačí, čip 8255A treba vedieť aj ovládať (musíme k nemu mať aj nejaké programové vybavenie) - tu je to veľmi jednoduché, v jazyku Basic nám na to stačia iba príkazy PEEK a POKE. Obvod 74LS138 nám mapuje výstupy pekne po 1kB od adresy 32768d (8000h), ja používam hneď prvý výstup, ostatných 7 výstupov je voľných pre Vaše ďalšie použitie, proste adresácia beží na čipe 74LS138  po 1kB. Áno - je to plytvanie pamäťovým miestom - ale nezabúdajme že doteraz, teda v nultej verzii je to priestor ktorý bol doteraz absolútne nevyužitý, nepoužitý a nepoužívaný - a tak si z neho jednu 1kB časť v pohodičke "čmajznem" pre svoje veci. "Sadisti" ktorí nevedia čo zo sebou môžu osadiť trebárs ďalších 7 čipov 8255A - ale bacha, potom nestačí iba jedna univerzálna doska (a ani neviem načo by bolo dobrých toľko ovládaných kusov 8255A) - tak isto sa dá sem osadiť čip 6520 - ale tam potom máte v jednom čipe iba 2x 8bitovú bránu - a tak isto potrebujete iné ovládanie portu - tu to ale nerozoberám.

 

Prikladám tabuľku adresácie výstupov 74LS138 v tomto zapojení, konkrétne používam iba výstup na pine č.15:

 

 

Dobre, toto máme za sebou a pokračujeme ďalšou časťou, kde si povieme že na ovládanie čipu 8255A slúžia 4byty, prvé tri sú konkrétne portA, portB a portC, štvrtý byte je tzv. riadiace slovo, ktoré určuje ako sa čip bude správať (CWR):


 

Čiže najprv musíme nastaviť riadiacie slovo a poslať ho do riadiaceho registra.

Napríklad ak chceme aby boli všetky porty A, B, C nastavené ako výstupné, potom musíme poslať na adresu 32771d (8003h) číselný obsah 128.

 

Vlastne v Basicu je to potom tento príkaz:

 

POKE 32771,128

 

Nuž a potom posielame potrebný obsah:

- na port A príkazom POKE 32768,X kde X = naše potrebné číslo v dekadickom tvare (0÷255)

- na port B príkazom POKE 32769,X kde X = naše potrebné číslo v dekadickom tvare (0÷255)

- na port C príkazom POKE 32770,X kde X = naše potrebné číslo v dekadickom tvare (0÷255)

 

Možno to vyzerá na prvý pohľad trošku nezrozumiteľne ale len do okamžiku ak si pozrieme tabuľku riadiaceho registra IC 8255A, tu nám už začne byť jasné ako si vieme jednotlivé porty nastaviť.

 

Čiže z vybratého 1kB priestoru nám vlastne stačia 4 byty ...

Tu si to plytvanie pamäťovým priestorom môžem dovoliť.

Všimnite si že port C môže mať 4 bity napr. vstupné a 4 výstupné.

Chcete mať dva porty výstupné a jeden vstupný ?

 

- do riadiaceho registra zadáte číslo 137, teda POKE 32771,137, potom je port A a port B výstupný, na port A zapisujeme POKE(32768),X na port B zapisujeme príkazom POKE(32769),Y, port C je vstupný, z portu C čítame príkazom ? PEEK(32770)

  (X a Y nadobúda hodnotu 0 až 255)

 

Chcete mať všetky porty vstupné ?


- do riadiaceho registra zadáte číslo 155, teda POKE 32771,115, potom sú porty A, B, C vstupné, z portu A čítame príkazom ? PEEK (32768), z portu B čítame ? PEEK(32769)a z portu C čítame príkazom ? PEEK(32770)

(alebo prenesiem údaj priamo do premennej napríklad X, teda čítame X=PEEK(adresa portu))

 


Na ovládanie tohoto čipu máme reálne k dispozícii voľných mierne cez 31kB RAM (niečo berie systém pre svoj chod) - možno to znie úsmevne ale je to naozaj hodne miesta na hodne vecí. A tento stroj zvládne bežať aj trvale - Wink - pretože ukladanie basicovských príkazov prebieha komprimovane (tokenizuje sa) - tak v skutočnosti program môže byť reálne o cca 20 až 30% dlhší a pritom sa stále vojde do pamäte.

 

Rozmiestnenie konektorov na doske SBC6502 "Erika0". Ani tu ešte nie je  použitý nový

resetovací obvod.  V tejto dobe ma "trápil" DC/DC menič (len som ešte o tom nevedel).

_______________________________________________________________________________

Popis SBC6502 "Erika0" activity indicator:

Na predný panel som mimo indikácie napájania (zelená LED) vyviedol ešte dve LED-ky - červenú a oranžovú. Červená slúžia na indikáciu prenosu Tx - t.j. zo zariadenia smerom von, oranžová zase indikuje prenos Rx, t.j. smerom do zariadenia. Pretože na obvode 68B50 je Tx a Rx v kľudovej polohe v log.1, treba použiť 2 hradlá obvodu 74LS00 na invertovanie ich  signálov. Ak nahrávame program tak LED-ky veselo poblikávajú, pri posielaní údajov smerom von bliká iba červená LED. Je to celkom dobré na sledovanie stavu zariadenia, netreba potom mať stále zapnutý monitor. Pozor, táto verzia ponúka len veľmi krátke záblesky LED (predsa len ideme na prenosovej rýchlosti 115.200Bd !) Tu som to nechcel "komplikovať" nejakým zložitejším zapojením a dumať nad nejakým monostabilným klopným obvodom, v ďalšom už je to použité, ale aj v tejto verzii to ako základná indikácia postačuje. Ak použijete nižšiu prenosovú rýchlosť tak sa dĺžka zábleskov úmerne predlžuje.


Použité LED a púzdra na ne sú zkanibalizované zo starého PC (tak isto aj tlačítko Reset) - konečne sa pre ne našlo nejaké rozumné využitie, asi by sa tu dali osadiť supersvietivé typy kde potom stačí použiť zväčšený odpor pre LED = 2k2, tú sú osadené 20mA typy. Tým by sa následne zase ďalej zmenšil odber.


Použitie activity indicatoru nie je potrebnou súčasťou stavby SBC6502, takže rozhodnutie o tom či si vylepšíte zariadenie o túto indikáciu je iba na Vás, ak to použijete, je pekne vidieť aktiváciu po Resete - prebehne základná komunikácia smerom von (pin TX), kratučko blikne červená  LED.

____________________________________________________________

Opravený odstavec 23.07.2018:


+ 25.09.2019 - doplnené o údaje SBC6502 pretaktované na hodnotu = 2.4576MHz, oscilátor pre čip 68B50 je stále =1.8432MHz


Prenosová rýchlosť na porty 8255A:

Pri mojich testoch dokázal počítač SBC6502 "Erika0" zapisovať a čítať v Basicu na port napríklad A čipu 8255A rýchlosťou cca 533 byte/sec (uvedená hodnota platí pre x-tal = 1.8432MHz - pri použití polovičnej rýchlosti hodín by bolo treba tu uvedený údaj deliť/2) - je to dané Basicom, ale na jednoduché riadenie to rozhodne postačuje. Iste, je to dané tým ako je napísaný program, tu som na test použil najjednoduchšiu slučku - a preto je to aj najrýchlejšie. Ak budete posielať naraz na 3 porty tak rýchlosť pochopiteľne o niečo klesne. Tu sa musím ospravedlniť za údaj ktorý tu doteraz svietil - niečo cez 150byte/sec, to platí ak sa posielajú data naraz na všetky 3 porty - nejako mi to tu vypadlo pri písaní pôvodného textu. Hodím to na svoj vek, aspoň tu sa táto výhovorka hodí. Veselšia vec pri tejto mojej (už opravenej) chybe je to, že SBC6502 je reálne rýchlejší ako som tu predtým písal pri práci s portami - ale to asi nikomu nebude vadiť.

Testovací program je veľmi jednoduchý, nastaví všetky 3 porty ako výstupné a konkrétne posiela data von iba cez port A. Analogicky dtto sa deje ak by sme port nastavili na čítanie smerom dovnútra (toto test pre jednoduchosť ale nerieši - a ani to netreba).

 

10 REM TEST SPEED PORT A DATA OUT
11 REM chip 8255, Port A = PA
12 REM chip 8255, Port B = PB
13 REM chip 8255, Port C = PC
14 REM Command register = CR
15 PA=32768
16 PB=32769
17 PC=32770
18 CR=32771
19 POKE CR,128:REM PORT A,B,C = DATA OUT
20 FOR A=0 TO 200
30 FOR F=0 TO 255:POKE PA,F:NEXT F
40 NEXT A

______________

x-tal = 1.8432MHz

Test stopnutý po 1 minúte (CTRL+C), potom výpis ?A a ?F, nasleduje vzorec (Ax256+F)/60 = počet byte/sec. Tu v tomto prípade konkrétne bolo A=129 a F=193.

Teda = 533 byte/sec.

______________

x-tal = 2.4576MHz

A=171, F=92

Teda = 731 byte/sec

______________

Ak si chcete stopnúť na dobre napísanej slučke posielanie 0 a 1 na port A - zoberiete pôvodný testovací program, vymažete riadky 20, 30 a 40 a dopíšte nasledovný riadok:


20 FOR A=0 TO 50000:POKE PA,0:POKE PA,1:NEXT A

______________
x-tal = 1.8432MHz

Zase test stopnutý po 1 minúte - ?A vypísalo A=19293, teda vzorec A/60= 321 byte/sec. Ani to nie je zlé číslo na Basic, zvlášť ak uvážime že už posielame na port údaje 2x za sebou.

______________

x-tal = 2.4576MHz

Zase test stopnutý po 1 minúte - ?A vypísalo A=25701, teda vzorec A/60= 428 byte/sec. Ani to nie je zlé číslo na Basic, zvlášť ak uvážime že už posielame na port údaje 2x za sebou.

______________

Ak pošlete údaje na všetky 3 porty:


20 FOR A=0 TO 20000:POKE PA,0:POKE PB,0:POKE PC,0:NEXT A

 

dostaneme sa na údaj 249 byte/sec.pri x-tal=18.8432MHz, pri x-tal=2.4576MHz je to 332byte/sec


Zase platí vzorec A/60= byte/sec.

______________

Áno, je to akademické, pretože posielam v slučke to isté. Ale inak nejaké tie údaje z toho nevytlčiem. V reálnej prevádzke číslo klesne, ale aj tak je dobré vedieť ak si správne navrhneme program tak sa dajú dosiahnuť celkom zaujímavé čísla. Rozhodne na nejaké jednoduché a nenáročné riadenie takáto SBC6502 bez najmenších problémov bude vyhovovať aj s ovládaním napísaným v Basicu - vlastne toto som tým celým chcel dokázať.

______________

Komu by táto "hviezdna" rýchlosť nestačila - má k dispozícii na riadenie ešte strojový kód kde to potom fičí na úplne iných obrátkach. Ale aj tak to na mnoho nastavovačiek rýchlosťou bohato postačuje, nakoniec hodiny podľa mňa kľudne môžu ísť aj niekde okolo hodnoty 2.5MHz, celý SBC6502 to určite zvládne - akurát potom musíte oddeliť hodiny do 68B50 pretože tam musí ísť dovnútra stále 1.8432MHz. Čiže dá sa to urobiť za cenu oddelených hodín. Proste je to tu pole vhodné na experimentovanie. Ak je na vstupe pre procesor x-tal = 2.457MHz tak sa urýchli celý SBC6502 o celých 25% čo je už celkom zaujímavá hodnota. Naproti originálu (ten beží na x-tale = 1MHz) potom bežíme už skoro na 2.5x násobnej rýchlosti a to je už sakra zaujímavé číslo. Ako vidíte nebránim sa takýmto experimentom ak je výsledkom celkové urýchlenie SBC6502-ky.

Je to dané tým že mám k dispozícii procesor 65C02 ktorý beží až do 4MHz.

 

***

Poznámka - 26.09.2019 - tak procesor z Atárka sa neupečie, naprosto v pohode beží na 2.4576 MHz už niekoľko dní bez akéhokoľvek prídavného chladenia a na dotyk nie je teplejší ako keď bežal na 1.8432MHz, moje obavy sa nepotvrdili.

***

 

A nasleduje zase jedna zaujímavá vec - nameraná spotreba:

SBC6502 "Erika0", použitý procesor 65C02 + rozširujúca doska, spolu 10 čipov:

 

odber 70,7mA/12V = 848mW = celková spotreba
odber 132mA/5V = 660mW = vlastný odber SBC6502 "Erika0"

vlastná réžia DC/DC meniča = 848-660 = 188mW

Tu len dodám že na indikáciu som na motherboarde SBC6502 použil obyčajnú starú zelenú LED s odberom 20mA, teda z celého odberu môžete ak ju nepoužijete ešte odrátať celých 5V x 20mA=100mW, potom odber celej dosky na 5V klesne na 560mW - a to je už slušný rozdiel oproti napísanému, preto na to radšej upozorním.


Celkom rozumné hodnoty na tohoto drobčeka, nie ? Pre spínaný DC/DC menič som síce čakal o niečo vyššiu účinnosť, ale aj tak to nie sú zlé hodnoty.

________________________________________________________________________________

V ďalšom bude zase popis "radostí", ktoré ma sprevádzali pri tejto prestavbe a teda rozšírenia o púhe 3 čipy, mno -  rozhodne to bolo zaujímavé a dalo mi to zabrať viac ako by som bol čakal. Za niečo som si mohol sám, niečo bolo mimo mňa - ale to už tak býva. Ale stavbu mi to vo výsledku natiahlo o pekných pár dní - než som s tým bol spokojný. Mrňús jeden, dal mi zabrať.

 

Návrat do všetkých pokračovaní o SBC6502:

http://blog.3b2.sk/igi/post/SBC6502-0-UvodIntroduction.aspx

____________________________________________________________

Vaše hodnotenie, Rate post:

Oprava disketovej jednotky Atari XF551. Repair Atari XF551.

By Administrator at februára 01, 2016 19:20
Filed Under: Atari

 

Teraz v sobotu som opravoval jednu disketovú jednotku Atari XF551. Predpokladal som kde bude pes zakopaný a nemýlil som sa. Čo bolo ešte pred vlastnou prácou zaujímavé bolo to, že disketová jednotka bola v originálnom obale, to sa už dnes len tak nevidí. Práve obal je zaujímavá vec, ktorá potvrdzuje môj pokec o tejto jednotke že sa začala vyrábať v roku 1987, v Európe sa začala predávať v roku 1988. A zjavne sa vyrábala na druhom konci sveta.

 

 

Prvá vec bola výmena pôvodnej Eprom, je to ďalšia jednotka Atari XF551, kde sa proste v PROM (Eprom bez okienka) obsah pamäte začne postupne pozvoľna poberať do večných lovíšť a tým berie zo sebou do hája aj celú funkčnosť zariadenia. Takže - napálil som novú 8kB EPROM typu 2764 a vymenil ju za pôvodnú. Lenže nasledovný test stále nepotvrdil správnu funkciu zariadenia, ešte bol niekde iaj iný problém. Tak som postupoval ďalej.


 

Ešte pôvodná pamäť PROM.

 

 

Tu je už vymenená nová náhradná Eprom.

 

 

Na tejto fotografii je vidieť že toto je doska, ktorá už nemala chyby ktoré som popisoval pred časom, nič tu nie preškrabané a nie sú nahradené prepojky káblikom ako som už predtým nafotil. Na pravej strane je vidieť jeden zo SIO konektorov (a tu bolo zopár hodne popraskaných pocínovaných vývodov), tu treba prekontrolovať spoje a prepájkovať všetky prívody konektorov a následne to aj multimetrom prepískať. Z môjho pohľadu vec nepochopiteľná - prečo sú prívody medzi SIO konektormi robené ako vlasové spoje keď sa to dalo urobiť širšie a bolo by to bez problémov ... no jemne povedané - kurvítko v praxi.

 

 

Revízia dosky je vidieť na tomto snímku.

 

 

Na disketovej mechanike treba premazať vodiace tyčky pre pohyb hlavičky,

menšie trenie = ľahší pohyb.

 

To že sa najprv skontrolujú napájacie napätia považujem za vec tak samozrejmú, že to zmieňujem až na konci popisu. Tak isto skontrolujte či sú dotiahnuté šróby na stabilizátoroch napätí - teda 7805 a 7812.

 

Následne stačilo zapnúť XF551-ku so založenou disketou a potom počítač. Ozvalo sa charakteristické tik,tik,tik a jednotka beží ako víno. Následne som ju ešte asi 3/4 hodiny trápil kopírovaním pomocou sektorového kopíráku. Nahral som sector copy a prekopíroval som takto asi 10 diskiet na iné diskety. Tie som potom cez boot aj spustil. Všetko funguje. Je to dobrý pocit že zase jedno zariadenie zase plne funkčné.

 

Záverom:

Ešte som skúsil založiť pôvodnú ROM a jednotka nefungovala. Proste bola to typická združená chyba - blbá ROMka + problém v prívodoch na SIO konektor.

____________________________________________________________

Vaše hodnotenie, Rate post:

02_2016 Blog, Notes.

By Administrator at februára 01, 2016 18:50
Filed Under: Blog

01.02.2016

Zase je tu február, počasie hnusné, asi je na vine aj to že sa blížia voľby. Keby viac zapršalo mohlo by to konečne poriadne umyť celé Slovensko ...

_________

Víkend (sobotu poobede) som mimo iného strávil opravou disketovej jednotky Atari XF551, síce sa týmto prácam už aj vyhýbam, pretože potom nemám čas na iné veci, ale asi nás na Slovensku nie je veľa čo sa tým ešte zaoberajú (tak som sa dal ešte ukecať a pustil som sa do toho):

http://blog.3b2.sk/igi/post/Oprava-disketovej-jednotky-Atari-XF551-Repair-Atari-XF551.aspx

_____________________________________________________

02.02.2016

SBC6502  "Erika0" - uvedené zapojenie s už pripojeným čipom 8255 a potrebnými úpravami v oblasti resetu, spolu s vysvetlením ako v Basicu ovládať prácu čipu 8255:

http://blog.3b2.sk/igi/post/SBC6502-3-7-chip-computer-32kB-RAM2b8255-NameErika0.aspx

_____________________________________________________

08.02.2016

Necenzurované poznámky zo stavby SBC6502 "Erika0":

http://blog.3b2.sk/igi/post/SBC6502-4-7-chip-computer-32kB-RAM2b8255-NameErika0-Stavba.aspx

_____________________________________________________

13.02.2016

Síce ma už 10 dní poriadne trápi chrípka, ale je 13-teho a teda treba niečo uverejniť aj dnes. A zase to bude pre SBC6502. "Tester" úzkych DIL SRAM, ako nahradiť v zapojení Eprom typu 27128 za typ 27256 a  ako postaviť v jednej pätičke x-talový oscilátor pre dva typy oscilátorov:

http://blog.3b2.sk/igi/post/SBC6502-5-doplnky-accessories.aspx

_____________________________________________________

15.02.2016

Po slovnej rozvičke na stránkach oldcomp.cz (teda na jeho fóre) som si povedal že zase nastal čas robiť niečo užitočnejšie ako presviedčať nepresvedčiteľného o niečom čo vidí 99.999% ľudí rovnako ako ja. Po úsudku že čas sa dá stráviť podstatne rozumnejšie a činorodejšie písaním ďalšej časti o fičúrkach na doske SBC6502 a to článkom ako nasadíme do dosky čip od Atari, teda procesor Atari14806, ktorý nie je celkom na 100% rovnaký ako rada 6502.

Ako na to (a verte že to nie je nič zložitého ak si to naštudujete tak ako ja) je obsahom dnes uverejneného článku:

http://blog.3b2.sk/igi/post/SBC6502-6-doplnky-accessories-Switcher-65C02-Atari14806.aspx

A na záver som pridal aj dve videá ktoré potvrdzujú že to funguje skutočne s obidvoma druhmi procesorov - teda 65C02 a Atari14806.

_____________________________________________________

21.02.2016

V článku o rozšírení ATARI 800XE na 320kB RAM som mal zapojenie ktoré chodilo tak na 50%. Upresním,rozšírenie RAMBO chodilo na 100%, rozšírenie na Compy Shop chodilo do 192kB RAM, nad tým blblo (ak ste prepli prepínač na Compy). Tak som článok opravil a nechal tam zapojenie ktoré dáva:

- 320kB RAM v režime RAMBO

- 192b RAM v režime Compy Shop

Teraz netreba žiaden prepínač, takto to ide na jednotku. Opravený článok aj s dobrou schémou:


http://blog.3b2.sk/igi/post/ATARI-800XE-320KB-RAM.aspx

 

Ak sa niekto v pôvodnom ešte neupravenom článku "patlal" vďaka blbým informáciám - padá to na moju hlavu, ospravedlňujem sa. Presnejšie ak ste nechali prepínač v polohe RAMBO tak sa to správalo tak ako sa má. Kto to postavil tak stačí nechať prepínač v tejto polohe a všetko je v poriadku a bude sa to správať tak ako píšem v úvode tohoto textu.

____________________________________________________

24.02.2016

To nové logo je fakt kúúúllllllllllllllllllllll ...

Pripomína Vám niečo ?

Mne strýca Marcina.

Starší vedia o čo ide, mladým to nič nehovorí (ani to super kúúúl logo a teda strýca Marcina už určite nezažili).  V tomto máme my starší výhodu že to vieme k niečo pripodobniť. Zase raz vec ktorá je všetkým iným ako tým čím by mala byť.  No nebuďte z toho happy za tie money ... pritom máme aj krajšie emotikony:

 

:welcome:

 

Nasleduje slovenská "nádhera":

 

 

Jeden náš mobilný operátor má tiež reklamu:

Hop, hop! Juch ! No špica ... len tak ďalej.

_____________________

SBC6502  - ak chceme komunikovať na väčšie vzdialenosti musíme zmenšiť prenosovú rýchlosť inak sa na väčšiu komunikačnú vzdialenosť nedostaneme. Na toto práve slúži SBC6502 Baud rate generator:

http://blog.3b2.sk/igi/post/SBC6502-7-doplnky-accessories-Baud-rate-generator.aspx

______________________________________________________

Vaše hodnotenie, Rate post:

Info o autorovi

Volám sa Igor Gramblička, bydlisko: Bratislava, Slovakia. Môj nick: Igi. Blog je o mojich záujmoch, predtým som pracoval ako IT špecialista na počítačové siete a redakčné systémy pre viaceré denníky - až som pred rokmi nakoniec v jednom z nich zakotvil a kde som to potiahol až do konca mojej profesnej kariéry.

Rok, mesiac, počet článkov: