SBC6809 -firmware2- Basic Searle Grant + mon. ASSIST09 + Basic JT.Part-5.

By Administrator at April 25, 2021 07:35
Filed Under: SBC8085-NCB85

 

V tomto pokračovaní sa pozrieme na Eprom 27256 v ktorej je napálený dvojitý firmware (2x 16kB) pre SBC6809. Ak je jumper JP2 skratovaný (short) tak pracujeme s dolnými 16kB Eprom, kde je napálený pôvodný obsah binárky (autor Searl Grant), komunikácia prebieha rýchlosťou 115.200Bd a po zapnutí SBC6809 priamo skáče do jazyku BASIC. Ak jumper JP2 z dosky vyberieme (open), tak pracujeme s hornými 16kB firmware, kde je binárka (autor Jeff Trantner) ktorá obsahuje monitor, trasovanie a BASIC (popis monitoru, jeho príkazov a adries programov je uverejnený o článok skôr), tu som následne upravil Jeffovu verziu a teda mám to opatchované na plnú rýchlosť (naozaj sa mi nechcelo prepínať nastavenie z nulových hodnôt oneskorení pre verziu Searl Granta a následne to zase prestavovať pre verziu od Jeffa Trantera), pretože to spomalenie prenosu bolo naozaj výrazné. No a napokon som napálil verziu ála Searl Grant a upravenú verziu Jeff Tranter (mod Igi) do jednej Eprom 27256, kde sú obidve verzie (voľba sa robí jumperom JP2) a bežia mi tak obidve verzie na plné "gule". (Čo mi maximálne vyhovuje, pretože mám jedno nastavenie na prenos v Hypertermináli).

 

Upozornenie:

Zásahy do zariadenia sú na vlastné riziko majiteľa zariadenia. Autor týchto stránok nenesie žiadnu

zodpovednosť za škody spôsobené používaním zariadení postavených podľa tu uverejnených

schém alebo zobrazených úprav.

 

Tu potom SBC6809 začína štartom v monitore:

ASSIST09


do BASICu sa dostaneme príkazom:

>G C000
6809 EXTENDED BASIC
(C) 1982 BY MICROSOFT

 

Vlastná binárka pre napálenie do Eprom 27256 s 2x 16kB firmware, popis je uvedený na začiatku článku:

 

Searl_Grant_Jeff_Trantner_Igi27256.bin (32,00 kb)

 

Prikladám aj samostatnú 16kB binárku určenú pre použitie Eprom 27128, ktorá obsahuje iba Jeffovu verziu binárky s aplikovaným patchom na plnú rýchlosť (Igi):

Jeff_Trantner_Igi_assist09_Basic27128.bin (16,00 kb)


 

Nastal čas na video, ktoré sa skladá z 3 samostatných častí:


- prvá časť ukazuje pôvodnú ROM Jeffa Trantnera ak je handshaking=off, zápis programu do SBC6809 je pomalší, ale je správny na 100%, sú nastavené správne časy oneskorenia pri prenose

- druhá časť ukazuje pôvodnú ROM Jeffa Trantnera ak je handshaking=off, zápis programu do SBC6809 je pomalší - a prebieha s chybami, pretože sú nastavené krátke časy oneskorenia pri prenose

- tretia časť ukazuje opatchovanú ROM Jeffa Trantnera (handshaking=on), zápis do SBC6809 je rýchly a bez chýb, plná rýchlosť


video

Jeff Trantner firmware 3xvideo.mp4 (5,95 mb)

 

Použitie Eprom pamäte 27256 dostáva naozaj zmysel, Eprom začína byť využitá. Prepínanie je jednoduché a je na na tom kto to používa aký ktorý firmware (a jeho možnosti) mu vyhovuje viac. Každá vec ktorá rozširuje využitie SBC6809 je naozaj vítaná a potešil som sa keď som Jeffove stránky objavil (link na jeho stránky je v minulom článku).

 

P.S.:

Mám v pláne k SBC6809 ešte urobiť nejaké drobnosti, ale vyžaduje si to čas a mám aj nejaké iné povinnosti, takže len dúfam že z toho aj niečo bude ... Laughing

_____________________________________________________________

Vaše hodnotenie, Rate post:

SBC6809 - new firmware1 - monitor ASSIST09 + Basic. Part-4.

By Administrator at April 21, 2021 10:58
Filed Under: SBC8085-NCB85

Pri prechádzaní webom (až po postavení SBC6809) sam našiel stránky ktorých autorom je Jeff Tranter. Previedol zaujímavú vec, dostal do Eprom aj machine language monitor pre procesor 6809. Mimo iného tiež upravil pôvodný firmware od Searl Granta tak, že teraz funguje aj v jeho pôvodnej iba 6-čipovej verzii, teda netreba zapojiť hardvérový handshaking. Samozrejme, toto má za následok podstatné zníženie prenosovej rýchlosti - ale ako vždy je to niečo za niečo. Jeff urobil túto úpravu, pretože vysoká prenosová rýchlosť bez použitia čipu 74LS04 (teda používa sa iba jeho 1/6) spôsobuje že už prichádza k strate údajov pri prenose.

 

SBC6809 v 6-čipovej verzii (zapojenie od Searl Granta)

(posledný čip je vlastný prevodník)

obrázok prevzatý z:  jefftranter.blogspot.com

 

V uvedenom odkaze je tak isto upravená ROM Searl Granta tak, že netreba použiť hardvérový handshaking. Tiež je tam verzia ROM, ktorá obsahuje monitor ASSIST09 spolu s jazykom BASIC. Jeff umelo spomalil prenosy t.j. síce stále komunikujeme na 115.200Bd, ale spomalenie je hodne veľké - ale neprichádza k výpadkom pri prenose. Toto ale platí len vtedy ak nepoužívame handshaking, ak máme handshakong funkčný tak vtedy je spomalenie zbytočné, pri 7 čipovej verzii je teda toto spomalenie prenosu neopodstatnené.


Zdôrazňujem že mnou popisovaná verzia SBC6809 týmto nedostatkom netrpí (máme tu hardvérový handshaking) a preto som hneď od začiatku chcel dosiahnuť rovnakú prenosovú rýchlosť a teda nezvoliť umelé spomalenie prenosovej rýchlosti. (K tomu sa tiež dostanem.)

 

Aby tento firmware správne pracoval tak treba nastaviť v Hypertermináli nasledovné:

rýchlosť zostáva 115.200Bd, 8 bit, no parity, no handshaking

 

Štandartne pri hardvérovom handshakingu je

v obidvoch prípadoch nastavená hodnota = 0.


Takto vyzerá štart SBC6809 pri použití posledne menovanej ROM, skáče priamo do monitoru, príkazom G (Go) na adresu C000 spustíme BASIC:

 

ASSIST09
>G C000
6809 EXTENDED BASIC
(C) 1982 BY MICROSOFT

 
Jeff túto ROM urobil parádne, obsahy ROM sú priamo v jeho odkaze na githube, takže ich tu nebudem uvádzať, kto ich potrebuje tak ich tam aj nájde. Mne "odkojenému" rýchlosťou 115.200Bd bol ale takto umele spomalený prenos vcelku veľkou prekážkou, tobôž ak potrebnú hardvérovú úpravu mám na svojom SBC6809 už prevedenú. Tak som si následne upravil Jeffovu verziu a teda mám tam to opatchované na plnú rýchlosť a teda obsahy do ROM a všetko k tomu bude v budúcom samostatnom článku.

Na túto úpravu sa podrobnejšie pozrieme v ďalšej časti, budú tam aj obsahy PROM priamo na napálenie.

 

link na stránky Jeffa Trantera:

Jeff Tranter SBC6809

____________________________________________________________


This is a variant of firmware that combines both Microsoft BASIC and the ASSIST09 monitor into one ROM. It also includes my disassembler which adds a new monitor U command and trace function which adds a new monitor T command.

It comes up in ASSIST09. You can start BASIC by running "G C000".

Memory map (16K EPROM):

BASIC $C000 - $E3FF (9K) DISASSEMBLER $E400 - $EFFF (3K) TRACE $F000 - $F8FF (2K) ASSIST09 $F800 - $FFFF (2K)

RAM usage:

BASIC $0000 - $0178 DISASSEMBLER $6FD0 - $6FDC TRACE $6FE0 - $6FFC ASSIST09 $7000 - $7051


Motorola ASSIST09  - machine language monitor.

 

ASSIST09 Command List:

B (reak)       <cr>     - list break points
                 NNNN    - insert break point
               - NNNN    - delete break point
                     -        - delete all break points

C (all)          <cr>     - call routine at PC as subroutine
                 NNNN    - call routine at NNNN as subroutine

D (isplay) NNNN NNNN  - display range mod16
                         NNNN  - display 16 bytes [NNNN]mod16
                         M        - display 16 bytes [M]mod16
                         P         - display 16 bytes [PC]mod16
                         W        - display 16 bytes [W]mod16
                         @        - following NNNN, M, P, or W displays 16 bytes indirectly

E (ncode)    Encodes a 6809 postbyte based on the addressing mode syntax as follows:

                        R = X, Y, U, or S

                   Direct Addressing Modes
                        ------ ---------- -----

                             ,R        A,R
                           H,R        B,R
                         HH,R        D,R
                     HHHH,R        ,-R
                         HH,PCR    ,--R
                     HHHH,PCR    ,R+
                                         ,R++

            Indirect Addressing Modes
            -------- ---------- -----

              [,R]            [A,R]
                               [B,R]
              [HH,R]       [D,R]
          [HHHH,R]
          [HH,PCR]       [,--R]
          [HHHH,PCR]
          [HHHH]          [,R++]

G (o)           <cr>   - Go to PC
                 NNNN  - Go to NNNN

L (oad)       Load a S1-S9 format data

M (emory)  NNNN - Display memory data at address NNNN
                  <cr>  - Terminate memory function
                     /     - Display current byte with address
                     .     - Display next byte with address
                     ^    - Display previous byte with address
                     ,    - Skip byte
              SPACE  - Display next byte

        The / may be used as an immediate command.

        After any of the display commands the memory contents may be alterred by inputting a valid hex number or
        ascii 'string' enclosed by single quotes (').

O (ffset)  NNNN NNNN   - Calculate the two and/or three byte offset

P (unch)  NNNN NNNN   - Punch a S1-S9 format data

R (egister)    Display 6809 registers and allow changes

        <cr>      - terminate command
        SPACE  - terminate value input or skip to next register
            ,        - terminate value input or skip to next register

V (erify)    Verify memory against S1-S9 format data

W (indow)  NNNN  - Define a display window for the D and M commands.

Ctrl-X will abort any command.


(Zoznam príkazov monitoru je prevzatý zo stránok Jeffa Trantera.)

 

Upozornenie:

Zásahy do zariadenia sú na vlastné riziko majiteľa zariadenia. Autor týchto stránok nenesie žiadnu

zodpovednosť za škody spôsobené používaním zariadení postavených podľa tu uverejnených

schém alebo zobrazených úprav.

 

____________________________________________________________________

Vaše hodnotenie, Rate post:

SBC6809 - zápisky zo stavby. Construction notes. Part-3.

By Administrator at April 16, 2021 09:50
Filed Under: SBC8085-NCB85

SBC6809 - v prevádzke.

 

Tak si zhrniem stavbu SBC6809. Nešlo to tak jednoducho ako Micro UK101, boli nejaké drobnosti - o tom dnešný článok na začiatku aj bude. Doska s nepájivou maskou je fakt perfektná, naprosto parádna robota. Po kompletnom zapojení (teda to som si myslel ...) a následnej kontrole som zistil že na doske nemám prispájkované 4 vývody. Fajn, to sa napravilo rýchlo. Problém vidím v tom, že vonku bolo dosť zamračené a umelé svetlo na takúto robotu asi nie je to pravé orechové, od základnej dosky sa svetlo dosť odrážalo - a tak som to prehliadol, ale lupa pomohla odhaliť skryté problémy po pájkovaní. Ale to sa dalo naozaj rýchlo napraviť.

 

Upozornenie:

Zásahy do zariadenia sú na vlastné riziko majiteľa zariadenia. Autor týchto stránok nenesie žiadnu

zodpovednosť za škody spôsobené používaním zariadení postavených podľa tu uverejnených

schém alebo zobrazených úprav.

 


Vytiahol som programátor (TL866) a napálil som Eprom 27256. Založil som do SBC6809 - a nič. Tak išla Eprom von a nasledovala kontrola obsahu - jasné, napálil som blbý obsah - bol určený na iné SBC ... zle som si označil binárku a neskontroloval som si poriadne čo napaľujem ... brŕŕŕŕŕ, tak tu nasledovala vnútorná brzda, Eprom išla naspäť do mazačky a dal som si vďaka tomu štvrťhodinovú pauzu, ďalšie 27256-ky samozrejme mám k dispozícii, len som si dal malý time out - nech nevyrobím ďalšiu kravinu. Potom som už napálil správny obsah, založil Eprom, zapol - a zase nič. 

 

Nebudem napínať, problém v tomto prípade robil čip 6850, akonáhle som tam založil jeho rýchlejšiu verziu 68B50 tak všetko okamžite fungovalo ako po masle. Síce som našiel medzi ďalšími tromi čipmi 6850 ktoré vlastním jeden obvod ktorý tu na tomto mieste fungoval, ale aj ten asi po pol hodine prevádzky začal zamŕzať, takže som bádanie týmto smerom veľmi rýchlo ukončil. Takže tu len chcem upozorniť - dajte tam rovno požadovaný obvod 68B50 a nemusíte nič ďalšieho riešiť - vyskúšal som na tomto mieste tri kusy 68B50 ktoré takisto mám a tie všetky išli ako víno. Výrobcom jedného kusu 68B50 je Motorola a ten pri prevádzke citeľne hreje, ale v prevádzke funguje bezchybne (otestované 24 hodinovou nepretržitou prevádzkou), 2 kusy 68B50 od ST fakticky nehrejú vôbec, takže nakoniec som tam nechal kus od ST 68B50. Zaujímavé zistenie, zjavne bola použitá rozdielna technológia výroby toho istého typu čipu.

 

Dodatok:

"Pomalé" čipy 6850 som na skúšku následne založil do Micro UK101 - tam fungujú a komunikujú bez najmenších problémov aj na zvýšenej hodnote clocku =4MHz samotného procesoru 65C02. Zaujímavé zistenie, len mi to potvrdzuje môj predpoklad že je to asi vecou timingu v SBC6809. Samotné SBC6809 už teraz funguje na jednotku, takže nevidím dôvod sa v tom nejako ďalej vŕtať, každý čip 68B50 v SBC6809 funguje naprosto bezproblémovo.


___________________________________________________________


Doplnok 18.04.2021:  

Obvod 6850 od výrobcu ST nechce korektne bežať v SBC6809, jeho rýchlejšia verzia 68B50 v zapojení ide výborne. Zato čipy od Motoroly tu bežia aj v pomalšej verzii bez najmenších problémov. Medzitým som zohnal ďalšie 3 kusy čipov 6850 (výrobca Motorola), pritom tieto kusy idú v SBC6809 na jednotku. Takže skutočne to závisí od výrobcu a použitej technológie, proste bez vyskúšania rôznych čipov od rôznych výrobcov (tie Motoroly boli vypájkované zo zlých dosák Atari ST, nevedel som že Atari ST v sebe používala čipy 6850, doteraz som si myslel že sú tam 68B50 - ale tam to beží na 8MHz - to je už naozaj slušné) to nezistíme. Rôzna technológia výroby = rôzne dosahované max. rýchlosti v prevádzke.


___________________________________________________________

 

V doske už osadený rýchlejší variant čipu 6850.

 

Do tejto dosky som osadil iba širokú pätičku pre pamäť RAM, tu nevidím dôvod osadzovať na tomto stroji pätičky pre "úzky a aj pre široký rozchod". Nakoniec v Micro UK101 viem RAM-ky pustiť na 4MHz, čo na väčšinu testovania postačuje. Tiež som tu otestoval v doske aj 32kB RAM čip AMIC A625308A, ktorý som už spomínal v súvislosti z jeho použitím a nasadením v Micro UK101, tu tak isto pracuje bez najmenších problémov.

 

Zatiaľ používam klasický null modemový káblik (7 vodičová verzia) popísaný v prvej časti, časom sa určite dopracujem k niečomu rozmerovo skladnejšiemu, teraz na testy a prvotné zoznamovanie s vlastným SBC6809 postačuje aj táto klasika - len ho treba mať pripravený (samodomo postavený, alebo zakúpený). Použitý null modemový káblik má vlastnú dĺžku =1.8m a prenosová rýchlosť 115.200Bd funguje bez najmenších problémov.

 

Jedna vec ktorá mi tu vyslovene vadí je to, že SBC6809 po zapnutí prevedie síce studený (Cold) reset, ale v prevádzke potom už máme k dispozícii iba teplý (Warm) reset (program zostáva prítomný v pamäti SBC6809 aj po resete). Je to niečo podobného ako na malom Atari, do "surového" stavu" to dostanete iba vypnutím napájania. Ak niečo testujete a podarí sa Vám v zápale testovania nejakého programu prepísať dôležité pracovné adresy a následne musíte počas 10 minút cca 15x vytiahnuť napájanie z konektoru SBC dosky aby počítač zase správne reagoval tak Vás nadšenie rýchlo prejde (príklad - keď som hľadal spodnú a hornú hranicu možného otestovania RAM). Áno, nastáva to len pri bádaní čo a ako, ale dokáže to skutočne poriadne otráviť. Najjednoduchšia cesta ako si poradiť - zaradiť do výstupu zdroja tlačítko (rozpínací kontakt) ktoré dokáže odpojiť napájanie a máme tak potom potrebný studený štart k dispozícii. (Alebo treba nájsť v SBC6809 adresu kde sa zapíše správna hodnota aby si počítač myslel že treba previesť studený štart, toto som ale za takú krátku chvíľu ešte nenašiel a priznám sa že ak aj takáto adresa existuje tak zapisovať nejaký POKE x,y pre reštart nepovažujem za pravé orechové.) Podobný problém u SBC6502 a Micro UK101 neexistuje, pretože tie obidva po resete priamo ponúkajú možnosť skočiť do studeného alebo teplého štartu.


Označenie konektoru samolepkou že sa používa iba 5V napájanie považujem za samozrejmosť (tiež po napálení a overení funkčnosti prelepenie okienka na Eprom-ke pre ochranu obsahu pred UV žiarením). Tu len podotýkam, že napríklad žiarivka dokáže vymazať obsah Eprom po cca 1-ročnom dennom svietení ak nie je okienko na Eprom prelepené. Samozrejme záleží to aj na vzdialenosti od zdroja UV žiarenia, takže tu odo mňa nejaké exaktné tabuľky na danú tému nečakajte, ak sa prelepí okienko na Eprom tak nemusíte v tejto oblasti nič ďalšie riešiť.

 

Ochranu proti prepätiu by som riešil 5W ZD na 5.6V, ktorá sa pripojí paralelne k dióde 1N400x ktorá je pri konektore napájania. (Lepšia nakoniec iba jedna spálená a skratovaná Zenerka ako zničený celý SBC ...)


Overclocking - procesor (68B09P) má oscilátor priamo zabudovaný v svojom tele a ide (papierovo) maximálne na 8MHz (teda reálne :4 t.j. beží max. na 2MHz). Tu si overclocking zatiaľ odpustím, tu mi tých 1.8432MHz ktoré sú k dispozícii zatiaľ musí stačiť. Tu len dodám že originál Tandy Coco 2 bežal na 0.895 MHz, čiže tu už vlastne v skutočnosti overclocking prevedený mám - SBC6809 beží 2.06x rýchlejšie. Je pravdepodobné že bez nejakých problémov by to malo bežať aj na clocku =10MHz/4, ale zatiaľ to neskúšam, pretože:


a. - musel by som robiť zásah priamo do dosky a vymieňať x-tal, čo naozaj robiť nechcem (alebo by som musel vyrobiť samostatnú doštičku pre procesor kde by na doštičke bol nový oscilátor, zase by sa to celé zastoklo na pôvodné miesto procesoru, pri tomto type procesoru je totiž možné použiť aj externý oscilátor pre clock)

 

b. - tiež by som musel buď prerušiť prívod z procesoru na Tx/Rx pre obvod 68B50 a priviesť sem clock=1.8432MHz zo samostatného zdroja o tejto hodnote (tu by ale napríklad pomohla nová samostatná doštička, tak ako v Micro UK101, ktorá by na sebe mala oscilátor a 68B50, celé by sa to následne zastoklo do pätičky 68B50, čiže tu by sa potom na základnej doske nemusel robiť žiaden zásah)

 

c.- obidve veci (a + b) sa síce dajú previesť a mali by byť funkčné, ale zatiaľ nepociťujem potrebu to riešiť

 
d. - ak by sa celková rýchlosť procesoru zvýšila na 2.5MHz (ak je x-tal=10MHz), (zisk by bol potom pridaných 685.800kHz na rýchlosti procesoru), ak by bol k dispozícii procesor od Hitachi kde oscilátor beží na 12MHz, tým by procesor reálne bežal na 3MHz - to už by bola iná káva ...


e. - je tu zjavne použitý iný timing a teda zvýšila by sa pravdepodobnosť že by nemuseli stíhať ďalšie obvody pri možnom rozšírení dosky o nejakú tú perifériu - a to by mi naozaj hodne vadilo, toto je zatiaľ najsilnejší argument proti možnému nasadeniu overclockingu

 

Vec čo ma zase na druhú stranu vyslovene potešila je to že je tu vyvedená externá Bus zbernica na konektor, takto je možné pridať buď RAM (získať sa dá +8kB RAM navyše, teda je možné mať k dispozícii 40kB RAM), alebo je tu možné pripojiť niečo na spôsob 6521, 6522 alebo 8255A, teda budeme mať vstupy a výstupy pre viacportové využitie, malo by stačiť mimo spomenutých čipov pridať ešte 2ks LS čipov. Použitie prídavnej 8kB RAM potrebuje tiež ešte 2ks LS čipov (dá sa skombinovať). Považujem na tejto doske SBC6809 za skvelú výhodu že sa tu priamo ráta s možnosťou rozšírenia - a aby som nezabudol, na ext. bus je vyvedený aj reset a teda na novej doštičke nejakého interface môže byť aj nové resetovacie tlačítko ktoré bude vyvedené spredu a stále máme k dispozícii aj invertovaný reset pre čip 8255A. Vzhľadom k timingu je ale možné že treba rátať s možným problémom výberu čipov pre "chodivé" rozšírenia portov, stále platí že ak nasadíme rýchlejší čip tak to bude určite lepšie. A ak máme čas (a nervy) tak následne môžeme skúsiť použiť aj čipy o ktorých si myslíme že by už v tomto zapojení nemuseli stíhať. Ak naozaj nebude, nevadí, nasadíme naspäť rýchlejšiu verziu konkrétneho čipu. Práve pre toto na takýchto doskách preferujem použitie pätičiek. (Ak čipy natvrdo zaspájkujem do dosky možnosti otestovania rôznych čipov sú v háji - ak by som urobil nesprávny výber použitých čipov mám zarobené na slušný problém, musím súčiastky ťahať von z dosky - pritom to je moja najneobľúbenejšia činnosť - práve preto sa jej snažím vyhnúť ako sa dá.

Pri takomto rozšírení sa už pohybujeme na hranici 10 čipov a možno ešte aj o jeden, dva čipy navyše, ale to som ešte ochotný akceptovať, pretože sa rozširujú možnosti počítača. V základe to ide aj samé bez rozšírení a teda ďalšie rozširovanie možností je už skutočne iba záležitosťou majiteľa  - teda či do toho ide - teda ak to potrebuje.

 

Ešte znova pripomínam - treba použiť tento typ procesoru !

(u mňa konkrétne: MC68B09CP)

Ako tak pozerám, čitateľnosť  označenia čipov je občas fakt mizerná, napravo

je čip 74LS00 - a tiež sa to v podstate nedá prečítať ...

 

Zaujímavé je rozloženie voľnej RAM (teda oproti SBC6502 a Micro UK101), tie majú úplne voľné aj najvyššie adresy RAM, u SBC6809 to ale neplatí. Zatiaľ som zistil že SB6809 používa pre seba adresy na hornom konci adresného priestoru a to 32504 ÷ 32767(dec), takže test vlastnej pamäte RAM musí byť organizovaný inak. Tzv. dolná voľná RAM začína od adresy 543 (teda ak nemám nahratý žiaden program), začiatok voľnej RAM je posadený omnoho nižšie ako u spomínaných SBC ktoré majú v sebe procesor 65C02.

___________________________________________________________


Na konci pridávam svoju klasiku - programy pre test RAM na SBC6809 napísané v programe Basic (všetky 3 programy už využívajú možnosť zápisu do dlhého programového riadku ktorú SBC6809 poskytuje):

 

Prvý program robí naozaj len tú najrýchlejšiu a naozaj najnutnejšiu diagnostiku, ale je zase najrýchlejší, ak prejde bez chyby tak je veľká pravdepodobnosť že je všetko v poriadku. Začiatok testovanej RAM je vygenerovaný v riadku 10 (obsah premennej A), rozsah konca testovanej RAM je vždy pevný (= obsah premennej B) - toto platí pre všetky 3 programy. Testujú sa bunky RAM iba na 2 hodnoty - 85 a 170, čo je binárne 01010101 a  následne 10101010. Rýchlosť je vysoká a tak začiatočný riadok programu pri výpise na obrazovku asi ani vôbec nezaregistrujete. Testovaný rozsah RAM je: 765÷32503.


PROGRAM 1:

 

1 PRINT CHR$(12):A=32559-MEM:PRINT "TINY RAM MEMORY TEST 1": ? "(c)2021 Igi":PRINT " Adress:":FOR F=A TO 32503:PRINT F:POKE F,85:IF PEEK(F)<>85 THEN 4
2 POKE F,170:IF PEEK(F)<>170 THEN 4
3 NEXT :END
4 PRINT "Problem at adress - data":PRINT F, PEEK(F)

 

P.S.: zápis programu sa dá ešte skrátiť a teda získať ďalších pár byte RAM na testovanie naviac (705÷32503):


1 PRINT CHR$(12):A=32559-MEM:PRINT " Adress:":FOR F=A TO 32503:PRINT F:POKE F,85:IF PEEK(F)<>85 THEN 4
2 POKE F,170:IF PEEK(F)<>170 THEN 4
3 NEXT:
END
4 PRINT "Problem :":PRINT F, PEEK(F)

 

Poznámka:

Číslo 32559 v prvom riadku dostávam ako hodnotu pamäte 32016 pre program - hodnota MEM + číslo 543, vyjadrené zápisom: A=32016-MEM+543. Číslo 32503 je najvyššia voľná pamäťová bunka RAM na testovanie.

_____________________


PROGRAM 2:

 

Druhý program vždy jednu pamäťovú bunku naplní postupne hodnotami od 0÷255 a porovná obsah. Ak je O.K., ide sa ďalej, ak nie program končí výpisom chyby. Ak použijete tento program tak testovaný pamäťový rozsah RAM bude =  757÷32503

 
1 PRINT CHR$(12):A=32559-MEM:PRINT "LONG SBC6809 RAM TEST 2":PRINT "Range:";A;"- 32503":PRINT "(c)2021 Igi":? " Adress:" :FOR F=A TO 32503:PRINT F:FOR X=0 TO 255:POKE F,X:IF PEEK(F)<>X THEN 3
2 NEXT:NEXT:END
3 PRINT "Problem:":PRINT F, PEEK(F):END

 

P.S.: aj tento zápis programu sa dá skrátiť a získať dodatočných pár byte RAM na testovanie naviac (675÷32503):

 
1 PRINT CHR$(12):A=32559-MEM:FOR F=A TO 32503:PRINT F:FOR X=0 TO 255:POKE F,X:IF PEEK(F)<>X THEN 3
2 NEXT :NEXT
:END

3 PRINT "Problem":PRINT F, PEEK(F)

 

Výpis v riadku 3 sa objaví ak je obsah RAM odlišný od požadovaného stavu. Toto je absolútne najnižšia hodnota aká sa dá otestovať týmto druhým programom.  Program počas testu neposkytuje žiadne informácie, iba vypisuje číslo testovanej bunky RAM.

_____________________

 

PROGRAM 3:

 

Tretí program na to ide inak, najprv vždy celý rozsah dostupnej RAM naplní 0, potom 1, atď. až nakoniec 255. Tu sa testuje obsah až s časovým odstupom, preto skôr dokáže odhaliť problém s niektorou pamäťovou bunkou RAM (teda či dokáže v sebe "podržať" správny obsah). Ak použijete tento program tak testovaný pamäťový rozsah RAM bude =  868÷32503:


1 PRINT CHR$(12):A=32559-MEM:PRINT "LONG SBC6809 RAM TEST 3":PRINT "Address:";A;"- 32503":PRINT "Test - Igi(c)2021":PRINT "data: W R result:":FOR F=0 TO 255:IF F<10 THEN PRINT" ";
2 IF F<100 THEN PRINT" ";
3 PRINT F;" W";:FOR G=A TO 32503:POKE G,F:NEXT:PRINT " R";:FOR G=A TO 32503:IF PEEK (G)<>F THEN 5
4 NEXT:PRINT "  O.K.":NEXT F:END
5 PRINT "Problem at address - data":PRINT G,F,PEEK(G)


Pretože tento program je dlhší, tak aj testovaná najnižšia bunka RAM je už samozrejme posadená vyššie, vlastný testovací program musí byť niekde "usadený" v pamäti a tak teda zaberá nejaké miesto v dostupnej RAM. Čím je dlhší tým menej RAM zostáva na testovanie k dispozícii, ako som už spomínal najnižšiu možnú voľnú RAM pamäťovú bunku dynamicky podľa veľkosti vlastného nahratého programu vypočíta príkaz v riadku č.10.


Po "ohlodaní" tohoto programu na jeho minimum sa dostaneme na testovaný rozsah  RAM = 799÷32503:

 

1 PRINT CHR$(12):A=32559-MEM:PRINT "Range:";A;"- 32503":PRINT "data: W R result:":FOR F=0 TO 255:IF F<10 THEN PRINT" ";
2 IF F<100 THEN PRINT" ";
3 PRINT F;" W";:FOR G=A TO 32503:POKE G,F:NEXT :PRINT " R";:FOR G=A TO 32503:IF PEEK (G)<>F THEN 5
4 NEXT:PRINT " OK":NEXT:END
5 PRINT "Problem:":PRINT G,F,PEEK(G)

 

P.S.: aj tu sa ešte dá ušetriť, výpis síce nebude zarovnaný ale rozsah testovanej RAM takto upraveného tretieho programu je v ňom najväčší = 760÷32503:

 
1 PRINT CHR$(12):A=32559-MEM:PRINT "Range:";A;"- 32503":PRINT "data: W R result:":FOR F=0 TO 255:PRINT F;" W";:FOR G=A TO 32503:POKE G,F:NEXT :PRINT " R";:FOR G=A TO 32503:IF PEEK (G)<>F THEN 3
2 NEXT:PRINT " OK":NEXT:END
3 PRINT "Problem:":PRINT G,F,PEEK(G)

------------------------------------

 

Nakoniec som sa ešte pohral s možným vzhľadom výpisu programu, rozsah testovaných buniek RAM je priamo vo výpise v Hypertermináli:


1 PRINT CHR$(12):A=32559-MEM:PRINT "Range:";A;"- 32503":PRINT "data: W/R result:":FOR F=0 TO 255:PRINT F;"   W";:FOR G=A TO 32503:POKE G,F:NEXT:PRINT CHR$(8);"R";:FOR G=A TO 32503:IF PEEK (G)<>F THEN 3
2 NEXT:PRINT CHR$(8);"     OK":NEXT:END
3 PRINT "Problem:":PRINT G,F,PEEK(G)

 

Testuje sa uvedený rozsah RAM, momentálne sa tam zapisuje 0.

 

Číta sa a kontroluje obsah v uvedenom rozsahu na zhodu s číslom 0.

 

Záver: test na uloženú hodnotu 0 prešiel, teraz sa zapisuje 1 (postupne až do 255)

 

Tu som si  v programe vyskúšal techniku "návratu" v riadku o jednu pozíciu doľava pomocou príkazu PRINT CHR$(8), funguje to.

_____________________

 

Uvedené trable v článku síce boli poväčšine moja "zásluha", ale aj napriek tomu odstránenie problémov skutočne netrvalo dlho a odvtedy sa môžem tešiť z ďalšieho malého SBC, ktorý je naozaj zaujímavý a rozhodne ho budem ďalej skúšať a zoznamovať sa s jeho programovacím jazykom Basic.

 

Na tomto SBC ma skutočne "dorazila" povolená možná dĺžka programového riadku, to je naozaj komfortná vymoženosť, tu sa bude dobre programovať ! Toto bolo jedno z najpríjemnejších prekvapení ktorého som sa po spustení SBC6809 dočkal.

 

SBC6809 počtom použitých čipov (=7) je hlboko pod hranicou 10 čipov ktoré považujem za naozaj "malý" SBC, je zaujímavé ako sa takéto malé mašinky majú k životu a pre mňa sú zárukou učenia sa a sú aj zdrojom zábavy. A kvitujem, že aj takéto malé SBC je životaschopné a dá sa bez problémov prevádzkovať. Pred tými rokmi (2015) som ani nehľadal či existuje na webe dostupná nejaká doska ktorá by umožnila postaviť takýto počítač, neviem, vtedy som sa ani takouto možnosťou nezaoberal (a môžem skonštatovať že vtedy táto doska našťastie neexistovala, inak by som určite nemal SBC6502). Vtedy som si postavil moju verziu SBC6502 a vydržal som pri tej mašinke skutočne dosť dlho. Po rokoch teraz nasledovali v rýchlom slede u mňa Micro UK101 a SBC6809, takže vyhradím si jeden šuplík pre tieto SBC, zaberajú málo miesta a každý z nich má svoje čaro. A už teraz viem že s najväčšou pravdepodobnosťou rezignujem na rozšírovanie Micro UK101, pretože SBC6809 má na to omnoho lepšie možnosti (hlavne ten vyvedený ext. bus ... to je naozaj paráda). Mám v hlave ako na to aj u Micro UK101, ale bolo by to dosť komplikované (nechcem robiť zásah do základnej dosky) a teda ak tu mám niečo kde sa to dá previesť omnoho ľahšie - tak volím cestu menšieho odporu. Kto si to neskúsil sám tak nevie čo to je si postaviť vlastnú mašinku a čakať či nabehne správny štart pri jeho prvom zapnutí. A ak sa aj objaví problém tak si viem problém identifikovať, nájsť a opraviť si to, síce niekedy sa kýžený výsledok dostaví o niečo neskôr ako autor dúfal - viď stavba SBC6502, niekedy okamžite - Micro UK101, niekedy s drobnými problémami - SBC6809, ale ak sa to dotiahne zdarne do konca tak je potom namieste naozaj dobrý pocit z dosiahnutého výsledku.  

____________________________________________________________

Vaše hodnotenie, Rate post:

SBC6809 - 7 chip computer - 32kB RAM. Part-2.

By Administrator at April 12, 2021 16:57
Filed Under: SBC8085-NCB85

SBC6809

 

Dnes sú tu niektoré dôležité veci k vlastnej stavbe - obsah binárky (+ ďalšie informácie), ktorú treba napáliť do Eprom typu 27256. Eprom následne založíme do pätičky (ešte bude treba na nej prelepiť okienko), spustíme Hyperterminál, nastavíme potrebné parametre a ak je všetko naprosto v poriadku  tak pripojíme napájanie - a na obrazovke sa zjaví nasledovné:

 

Po napísaní príkazu ? MEM sa vypíše voľná kapacita RAM.

 

Dôležité údaje:

 

Dĺžka programového riadku je 250 znakov čo je naozaj mimoriadne veľa, to je famózne, je to ohromný posun, teraz sa dajú písať v jednom riadku naozaj komplexné údaje ! Štandartne je nastavenie 80 znakov v riadku.

 

Pozrime si porovnanie medzi zápismi na SBC6502 a Micro UK101 voči SBC6809,

použitý je ten istý program pre zobrazenie Mandelbrotovej množiny:

(pre jednoduchosť som obidva výpisy listingov urobil na SBC6809, na SBC6809 vypadne označenie 80 znakov v riadku a tak tu nie je potrebný príkaz POKE 15,80 )

 

Zápis programu na SBC6502 a Micro UK101 (max.72 znakov v riadku).
(maximálnu možnú dĺžku zápisu v jednom riadku dobre reprezentuje riadok č.5 )



Možný zápis toho istého programu na SBC6809 (max.250 znakov v riadku).


(Riadok 10 prezentuje už väčšiu možnú dĺžku programového riadku, pritom ešte zďaleka nie je využitá plná možnosť jeho dĺžky, má tu "iba" 135 znakov čo je mierne nad polovicou z celkovej možnej dĺžky riadku. V prípade SBC6502 A Micro UK101 by sme skončili v tomto riadku príkazom B=CB, slučka FOR I= TO atď. by sa už do riadku "nezmestila" )

 

Samozrejme aj na SBC6502 a Micro UK101 sa dajú riadky "zdrcnúť" a nejaké to miesto sa dá ušetriť, ale rozhodne sa to nedá previesť tak efektívne ako na SBC6809. Skôr som len chcel poukázať na to že je možné do jednoho riadku dostať naozaj podstatne viac vecí a netreba to tak ako doteraz rozkladať do jednoduchších sekvencií viacerých riadkov, raz darmo - tých pár rokov vo vývoji je cítiť.

 

Obsah binárky pre Eprom typu 27256:

6809_27256.bin (32,00 kb)

 

Konkrétne schéma zapojenia SBC6809, je to mierne upravená verzia od pôvodného autora Searle Granta, ktorá už priamo využíva hardware handshaking priamo v praxi a preto môžeme ísť na celkom vysokú prenosovú rýchlosť bez obmedzení:

SBC6809.pdf (984,79 kb)

 

Popis MCU 6809:


MCU6809.pdf (5,37 mb)


Stránky autora Searl Granta (link), tu nájdete viac podrobností plus obsah 2 kníh pre tento počítač:

Searle Grant simple SBC6809

 

Tu už je osadený iný, mladší Basic (rok 1982) oproti tým SBC ktoré doteraz vlastním, takže bez nejakého toho učenia to tu zaručene nepôjde (teda aby sa to dalo naplno využívať - hľadajte na webe Tandy Coco 2, tých príkazov je požehnane ... je tam eXtended Basic). Zase je to maličké, dobre prenosné. Overclocking je tu sťažený (oscilátor je zabudovaný priamo v procesore), takže túto mašinku asi nechám bežať na jej pôvodnom clocku =1.8432MHz, táto rýchlosť bohato na všelijaké experimenty postačuje. Je zaujímavé že tomuto procesoru sa na webe venujú  hlavne autori z Japonska, čiže niektoré veci na čítanie, povedané slovami klasika "sú z neznámych dôvodov mierne sťažené". Laughing

Žeby to bolo tým že MCU68B09CP vyrábala aj firma Hitachi ? - naproti tomu moje procesory vyrobila Motorola. Ešte doplním - Hitachi vyrábala aj 3MHz verziu, teda x-tal bežal na 12MHz, menilo sa tu označenie na HD6309

Procesory som kúpil pred niekoľkými rokmi na nemeckom eBay od nemeckého usera a teda nehrozil mi v dodávke žiaden fake čip, našťastie, dnes už možno aj tam môže byť problém, ktohovie. Stačí sa pozrieť koľko procesorov 68B09CP na eBay dnes ponúkajú z Číny. A už len dodám, že moje procesory 68B09CP som zohnal niekoľko týždňov po postavení SBC6502 ... (vtedy som si povedal že nech sú doma, do foroty, že možno na nich časom skúsim niečo postaviť).

 

Upozornenie:

Zásahy do zariadenia sú na vlastné riziko majiteľa zariadenia. Autor týchto stránok nenesie žiadnu

zodpovednosť za škody spôsobené používaním zariadení postavených podľa tu uverejnených

schém alebo zobrazených úprav.


 

V nasledovnej časti si povieme ešte nejaké tie ďalšie informácie o vlastnej stavbe tohoto SBC a aj "oživovaní".

______________________________________________________

Vaše hodnotenie, Rate post:

SBC6809 - 7 chip computer - 32kB RAM. Part-1.

By Administrator at April 08, 2021 17:20
Filed Under: SBC8085-NCB85

SBC6809 - základná doska.

 

V šuplíku mi už dlhšie (cca 5 rokov) ležali 2 kusy procesoru MC68B09CP ktorý je považovaný za najlepší 8-bitový procesor v histórii tak už naozaj nastal čas postaviť si na tomto procesore nejaký SBC. (Hlavne som sa namlsal po úspešnom postavení Micro UK101.) Na webe (eBay) existuje veľmi šikovná, malá doska pre SBC6809, jej rozmery sú 100 x 86mm (rovnaký rozmer ako pri Micro UK101). Napájanie je tak isto priamo 5V, pamäť na takúto mašinku je tiež viac ako dostatočná - nezabúdajme že je odstránená grafika. Klasicky sa beží v terminálovom okne. Táto "mašinka" je v podstate Tandy Coco 2 minimalizovaný počítač. Aby som nezabudol - k doske je priložená schéma zapojenia, čo tak isto mimoriadne uľahčuje osadzovanie dosky a tiež pomáha v orientácii.

 

Upozornenie:

Zásahy do zariadenia sú na vlastné riziko majiteľa zariadenia. Autor týchto stránok nenesie žiadnu

zodpovednosť za škody spôsobené používaním zariadení postavených podľa tu uverejnených

schém alebo zobrazených úprav.

 

Špecifikácia:

16kB ROM

32kB RAM

procesor 68B09CP, x-tal=7.3728MHz / interne sa delí :4, t.j. procesor beží na 1.8432MHz

pozor, musí to byť tento typ ! - staršie procesory 6809 vyžadovali dvojfázové hodiny !

(upresnené: typ 6809EP sa v tomto zapojení dosky nedá použiť)

komunikácia: RS232, 115.200Bd, no parity, 1 stop bit, hardware handshake (RTS/CTS)

veľké plus - vyvedená systémová zbernica, to je pre moje hókusy pókusy ako stvorené

 

Komunikácia medzi USB ↔ RS232 a vlastným SBC6809 vyžaduje prepojenie nul-modemovým káblikom, jeho zapojenie je na priloženom obrázku (je dobré si ho vyrobiť dopredu, nech nás to potom na záver nezdržuje):

 

 

Potom ako prišla doska (objednával som ju po dopísaní článkov o Micro UK101, prišla za cca 2 týždne) som dnes začal s jej osadzovaním. Ak máte k dispozícii všetky súčiastky tak stavba pokračuje veľmi rýchlo, hotovo bolo tak za 2 hodiny - bez nejakého náhlenia. Súčiastok je o poznanie menej ako sa nachádza na doske Micro Uk101, čiže rýchlejšia stavba bola zákonitá. Čo mi mierne vadilo bolo že je naozaj zatiahnutá obloha a aj cez deň som to musel robiť pri zapnutej lampe.

 

Najprv som osadil do dosky pätičky, napájací konektor, rozširujúci konektor externej BUS zbernice, Reset a konektor pre RS232:

 

Tu chcem upozorniť na to, že na ebay koluje obrázok kde vpravo dole sú na doske použité odpory 2k7, na mojej doske sú už hodnoty =240Ω, sú to prívody pre TTL ↔ RS232 a priame prepojenie na prevodník USB ↔ TTL (vtedy neosádzame obvod MAX232 a jeho kapacity). V mojom prípade tento konektor osadím, ale zatiaľ nepoužijem,  ja idem cez USB ↔ RS232 a nullmodemový káblik. Už som na dosku SBC6809 tiež osadil konektor s vyvedenou externou zbernicou. Ak by som chcel v budúcnosti sledovať Tx a Rx pomocou jednoduchého rozšírenia (myslím tým indikáciu LED-kami), tak je konektor J2 potrebný.

 

Doska má výbornú nepájivú masku takže sa s ňou robí naozaj dobre.

 

V podstate kompletne osadené pasívne súčiastky, ešte bez čipov.

Už je osadený aj konektor J2.

 

Pohľad na spodnú stranu dosky, pekne vidieť kde sú vynechané nepájkované otvory po kondenzátoroch, ktoré je možné osadiť buď "na široko", alebo aj "na úzko". Naľavo hore je to vidieť na čipe MAX232, v strede hore zase na kapacitách pre x-tal, tiež sú voľné otvory pre jednu stranu nepoužitej úzkej pätičky pre RAM.

 

Pre uchytenie konektoru RS232 som nakoniec použil kratšie šróby.

(Ako vidieť fakt som zaťažený na používanie precíznych pätičiek.)

 

Kompletne osadená doska SBC6809. Na snímke je osadený obvod 6850,

ten som nakoniec musel nahradiť  jeho rýchlejšou verziou - 68B50.

 

Dtto - len pohľad na SBC6809 z opačnej strany

 

Nejaké drobnosti zo stavby:


- zase som urobil drobnú zmenu, kapacita C5 pre obvod MAX232 je namiesto hodnoty 100nF osadená keramikou s väčšou kapacitou 1uF, tu je to v poriadku, ostatné kapacity u MAX232 sú tantaly s predpísanou kapacitou =1uF

 

- tu som už do dosky neosádzal pätičky pre RAM tak aby sa dali použiť typy s úzkym rozchodom a aj s širokým rozchodom, zostal som iba na širokom rozchode 28pin pätičky (Micro UK101 už mám osadené aj-aj, takže tu som to už zopakovať nepotreboval.)

 

- obvod 68B50 (=2MHZ verzia), síce na fotkách tam mám osadenú pomalšiu verziu 6850 - ten ale funguje na tomto SBC už nespoľahlivo, občas to urobilo psie kusy, SBC zamŕzal, takže dajte tam rovno 68B50 a bude po vtákoch, rozhodne je to dané časovaním zbernice 68B09P, pretože tieto čipy 6850 (=1MHz) fungujú bezproblémovo ak sú osadené v Micro UK101 kde beží zbernica na 4MHz, zaujímavé, tu ide zbernica "iba" na 1.8432MHz, (žeby to bolo tým že interne sa delí hodnota x-talu :4 a tým potom bude výsledne aj kratší timing ?). Po osadení čipom 68B50 všetky problémy okamžite prestali a všetko beží tak ako má.


- do Eprom pamäte 27C256 som zatiaľ nahral obsah 2x za sebou, t.j. momentálne nezáleží na tom v ktorej pozícii je jumper JP2 (ON/OFF), proste sú tam za sebou dve úplne rovnaké binárky (2x 16kB)

 

- čo ma na doske trošku zarazilo je nie celkom šikovné označenie pre osadenie kapacít pre clock procesoru a tak isto pre obvod MAX232, podľa mňa by to označenie malo byť na doske opačné (nemyslím tým polaritu !), takto som si radšej vždy premeral ktoré z tých 3 pinov pre kondenzátor sú spoločné - vždy dva piny sú spoločné, ak osadzujete iba do krajných otvorov tak problém nenastáva a netreba nič merať

 

No a už to bolo treba len napáliť binárku do Eprom pamäte, potom zapojiť to na zdroj 5V, spustiť Hyperterminál zo správnymi parametrami (pretože sa používa hardvérový handshaking tak sa nenastavujú žiadne oneskorenia).


Ale o tom všetkom si povieme v ďalšej časti (bude tam tiež vlastná binárka do Eprom 27256 + schéma zapojenia + ďalšie informácie).

____________________________________________________________

Vaše hodnotenie, Rate post:

04_2021 Blog, Notes.

By Administrator at April 01, 2021 07:17
Filed Under: Blog

01.04.2021

Už dosť dávno som nezverejnil článok s týmto dátumom, tak rest napravujem - i keď obsah s dnešným dňom naozaj nesúvisí:

The Micro UK101 - COMPUKIT UK101, 4MHz + 38.400Bd. New solution. Part-5.

_____________________________________________________

08.04.2021

Tak nám letí minister financií s otvoreným náručím do Mosky (teda už tam lieta nielen Danko), náš skutočne "drahý" Sputnikovič. Akurát s tým rozdielom že jeden si tam mastil svoje ego a druhý si tam a svojmu hnutiu ide zachraňovať zadok. A to zo záchranou životov akosi priveľa nič spoločného nemá ... leda ich vlastných. A to jeho dnešné vyjadrenie nie je hodné ani 6.cenovej skupiny (ak by existovala), asi by som ju urazil. Len dokazuje, že kto to nevidí očami Sputnikoviča je to čo on vidí každé ráno v svojom zrkadle a označuje tým ostatných kto nezdieľajú jeho "vízie".

__________

Ďalší postavený malý SBC počítač - teraz s procesorom 6809P:

SBC6809 - 7 chip computer - 32kB RAM. Part-1.

Hneď po postavení a napísaní článkov o Micro UK101 som si objednal dosku na ďalší SBC počítač v rade ktorý chcem mať a chcel som si ho tak isto postaviť - SBC6809.

_____________________________________________________

09.04.2021

Minulý mesiac som sa v prvý deň čakárne zaregistroval na očkovanie. Fajn, prišiel mail s potvrdením, prišla aj SMS. Bola síce možnosť len jedného jediného strediska v BA (skutočne v ten deň bola iba jedna možnosť !), ale toto som nevedel ovplyvniť. Pred týždňom som do registra vošiel a previedol zmenu a aha ! už bola aj iná možnosť. Uložil som novú možnosť - a nič, ako obvykle. Dnes som buchol do stola, kompletne som zrušil svoju registráciu a - zaregistroval som sa okamžite nanovo. Možností už bolo viac viac, odklepol som a potvrdil - a za 20 sekúnd mi prišla SMS že na budúci týždeň mám termín očkovania.

Vážení ak toto nie je bordel v priamom prenose tak už neviem. Vie mi niekto vysvetliť ako je postavený a vzájomne zjavne neprepojený systém ? Človek aj s priemernou inteligenciou by právom predpokladal že na rezervačnom systéme sa pracuje minimálne od konca leta, ale ako to vyzerá náš samozvaný "génius" mal na takéto veci zjavne odlišný názor. A tak sme potom takto dopadli. Teraz vymýšľajú systém ako zaočkovať najprv starších a nedovoliť predbiehanie. Takže sa len potvrdilo že doterajší systém evidencie na očkovanie stál za h...o, tak ako vlastné preferencie toho čo treba od neuznaného "génia".

___________________________________________________________

12.04.2021

Druhý diel venovaný malému SBC6809:

SBC6809 - 7 chip computer - 32kB RAM. Part-2.

_____________________________________________________

16.04.2021

Tretí diel venovaný SBC6809 - poznámky zo stavby:
SBC6809 - zápisky zo stavby. Construction notes. Part-3.

_____________________________________________________

17.04.2021

Pred pár dňami som si na oldcompe vyžiadal nákup pár čipov 68B50. Zareagoval Kubík, predvčerom čipy prišli. Tri, všetky sú od Motoroly. Síce použité a vypájkované, ale to mi vôbec nevadí, hlavne že sú. Táto verzia funguje na vyššej prevádzkovej rýchlosti ako verzia 6850 a moje nasadenie vyžaduje práve takéto čipy. Dnes som nasadil jeden z nich, je určený na špeciálne miesto, dával som ho na maličkú doštičku kde je pripájkovaný a na spodnej časti má nové vývody pre pätičku. Teraz som ho zapojil aby som ho vedel otestovať, fičí bez najmenších problémov. Teraz už len zapojenie na doštičke prepojím pre moju špeciálku, toto ma dnes naozaj potešilo. Kubíku, ešte raz vďaka !

____________________________________________________________

18.04.2021

Dnešný nadpis článku:

Slovenská pošta plánuje nový terminál v Bratislave, reformuje aj doručovaciu službu.

Citácia: "Zámerom Slovenskej pošty je vytvoriť jednotný systém doručovania poslednej míle a optimalizovať tak náklady na celý doručovací proces," priblížila hovorkyňa.

Zjavne sa máme na čo tešiť. Len nechápem že v 21.storočí jednotný systém doručovania posledných 1.609km (námorná míľa to asi nebude i keď ktohovie ... - pre istotu, tá je =1.852km, pevne dúfam že to nebude ani rakúsko-uhorská míľa ktorá má 7.586km a pri doručovaní to aj potom veľmi často tak vyzerá). Po balíky si už dávno chodíme na poštu pretože adresát nebol pri doručovaní doma (ani nevie, pretože síce je doma, ale nikto ho pre istotu ani nekontaktuje) poplatok za doručenie samozrejme nevrátia. Pravdepodobne po novom budeme platiť pokutu ak si to nevyzdvihneme do niekoľkých dní a budeme platiť skladné. Najlepšie by bolo keby sme si sami zariadili aby balík došiel na miesto určenia mimo služieb SP (aby sme neotravovali), potom im už len bude stačiť zaplatiť. No čo už, náš zákazník, náš pán ! A mimochodom, na Slovensku máme už naozaj dávno zavedené kilometre ...

___________________________________________________________

21.04.2021

V Česku "veselo", u nás sa k tomu bez ministra financií akosi nevieme vyjadriť - ani ústami nového premiéra. No čo, hlavne že financmajstra nová pozícia baví ... ako vždy to má v sebe viac ako pomýlené.

_________

Po postavení SBC6809 som na webe objavil firmware ktorý obsahuje mimo Basicu aj monitor a je určený pre túto malú mašinku:
SBC6809 - new firmware1 - monitor ASSIST09 + Basic. Part-4.

____________________________________________________

25.04.2021

Upravený firmware od Jeffa Trantnera pre splnú spoluprácu (handshaking on) v plnej rýchlosti 115.200Bd pre SBC6809:

SBC6809 -firmware2- Basic Searle Grant + mon. ASSIST09 + Basic JT.Part-5.

____________________________________________________

28.04.2021

Niekto vo vláde mierne, alebo skôr viac "padol na hlavu", pohyb je uvoľnený do 21:00. Povolili divadlá, ktoré divadlo končí tak aby ste boli doma o 21:00 ? ...

____________________________________________________

Vaše hodnotenie, Rate post:

The Micro UK101 - COMPUKIT UK101, 4MHz + 38.400Bd. New solution. Part-5.

By Administrator at April 01, 2021 07:15
Filed Under: SBC8085-NCB85

Uvedené riešenie - do Micro UK101 stačí vložiť namiesto 4MHz x-talu nový 8MHz x-tal a bez ďalšieho máme k dispozícii rýchlosť 4MHz a 2MHz (tu už nemáme možnosť ísť na 1MHz). Záverom sú popísané ešte nejaké drobnosti zo stavby Micro UK101.

 

Micro UK101

 

Tu je potom potrebné J4 prepnúť do vyznačenej polohy 2MHz, potom pôjde clock procesoru reálne na 4MHz, pri prepnutí na značku 1MHz potom následne máme clock procesoru rovný 2MHz (len sa jednoducho dvojnásobne zdvihnú hodnoty clocku vyznačené na J4.


Aby som nezabudol, vďaka 8MHz x-talu a deleniu tejto hodnoty :13 v čipe 74LS163 dostávame automaticky a zadarmo priamo aj zvýšenú prenosovú rýchlosť =38.400Bd.


Celkom pekné a úsporné riešenie, nie ? V zapojení obvodu oscilátoru nie je potrebné meniť žiadnu súčiastku - teda meníme tu iba jednu jedinú - a to samostný x-tal. Oscilátor ochotne nabehne aj pri osadení novým 8MHz x-talom. (V inom zariadení s rovnakým oscilátorom s čipom 74LS04 a použitými hodnotami odporov=1k2 mi oscilátor nabiehal pri x-tale =25MHz, rýchlejší som doma nemal na otestovanie k dispozícii. Tu v zapojení sú použité odpory s menšími hodnotami, t.j. oscilátor by mal nabiehať ešte "ochotnejšie".)

 

Upozornenie:

Zásahy do zariadenia sú na vlastné riziko majiteľa zariadenia. Autor týchto stránok nenesie žiadnu

zodpovednosť za škody spôsobené používaním zariadení postavených podľa tu uverejnených

schém alebo zobrazených úprav.


 

Prečo som si to takto neurobil od začiatku ? Pretože rád skúšam netradičné veci a tak ako to mám postavené môžem kedykoľvek ísť aj na rýchlosť procesoru 1MHz, tu po výmene x-talu na 8MHz by to bolo už zložitejšie. (A už vôbec som nemal chuť robiť zmeny na kompletne zapojenej doske, jednoducho chcem mať ako základ neupravovanú dosku. teda nechcem na nej meniť ani x-tal - moje rozhodnutie.)

Uvádzam to z dôvodov aby si niekto nemyslel že v predchádzajúcich článkoch som len zbytočne komplikoval zapojenia - teraz si z tých viacero možností môžete vybrať sami. Napríklad po zvážení celého som sa rozhodol že zostanem na clocku procesoru =4MHz a rýchlosti =19.200Bd - to by sa pri použití 8MHz -xtalu nedalo celkom jednoducho previesť. Tých 19.200Bd umožňuje prevádzku USB ↔ RS232 na väčšiu vzdialenosť = hlavný dôvod prečo túto hodnotu nakoniec preferujem, (ešte nižšiu prenosovú rýchlosť osobne nepotrebujem i keď tiež by sa dala získať - ale to by sa dalo uskutočniť iba za cenu použitia dodatočného ďalšieho čipu navyše - teda pri použití x-talu =4MHz alebo x-talu =8MHz). Ale dá sa to aj inak, viď nasledovný odstavec.

____________________________________________________________


No a keď som už povedal A, poviem aj B:

Ak nasadíme do Micro UK101 x-tal =2MHz zase dostaneme ďalšie zaujímavé možnosti, síce menšiu maximálnu výslednú rýchlosť procesoru a zníži sa aj vlastná prenosová rýchlosť - ale môže to byť pre niekoho zaujímavé, naozaj existujú procesory 6502 pre max. 1MHz clock.

Jumper J4 nastavený vľavo (pôvodne 2MHz) bude teraz posielať clock =1MHz. Ak ho nastavíme vpravo (pôvodne 1MHz) pôjde do procesoru clock 500kHz. Prenosová rýchlosť v obidvoch týchto prípadoch bude =9.600Bd. Toto môže byť zaujímavé pretože potom prenosový káblik z PC USB ↔ RS232 na Micro UK101 už môže mať dĺžku až 150m, na vzdialenú komunikáciu ako stvorené.

/Prirátajte potom k tomu aj 2 vodiče pre relátko na vzdialený Reset ...Laughing/

Zase stačí iba výmena x-talu na doske Micro UK101, netreba robiť žiadnu ďalšiu zmenu.

Takže doska umožňuje skutočne zaujímavé kombinácie hodín procesoru a aj slušnú zmenu prenosových rýchlostí - aj keď som si to uvedomil až po postavení celého SBC.

 

Dodatok:

Ak tu na doske MICRO UK101 (x-tal = 2MHz) použijete v druhej časti popísaný dummy čip na mieste U8 (74LS74), tak môžete stále bežať na hodnote =2MHz pre procesor, čo je tak isto zaujímavá možnosť -  teda ak máte k dispozícii rýchlejší procesor ktorý dokáže na tejto hodnote pracovať. Prenosová rýchlosť zostáva =9.600Bd.

____________________________________________________________

 

Drobnosti zo stavby:

 

Namiesto úzkej 28 pinovej pätičky ktorú som doma nemal som použil 2x 14pin pätičky, sú použité v zapojení "za sebou". Funguje to naprosto v pohode ako ozajstná 28-pinová pätička.

 

Je možné tiež nasadiť RAM typu 62256 v úzkej pätičke, poväčšine sa nájdu doma (napríklad je to pôvodná cache RAM z dosák po 386-ke), síce majú naozaj krátku prístupovú dobu niekde medzi 15 ÷ 20ns (tu nevyužité), ale zase majú pomerne väčšiu spotrebu (až o 70mA viac oproti CMOS RAM 62256), to tu ale nemusí byť veľký problém a teda v ich nasadení do Micro UK101 nič nebráni.

 

Konkrétny použitý typ 32kB RAM pamäte v úzkom púzdre DIP 28 pin :

W24256AK-20

 

Ak použijete max. clock procesoru =2MHz, tak stačí použiť v zapojení Eprom 27256 na rýchlosť 250ns, alebo 200ns. Typ Eprom 27C256 má štandartne prístupovú dobu do 150ns (a má menšiu spotrebu).


Ako pamäť RAM 32kByte (typ 62256) som vyskúšal inakšiu RAM o rovnakej kapacite, ale od iného výrobcu - AMIC A625308A. Čo je na nej zaujímavé ? Je rýchlejšia o desiatky nanosekúnd (70ns oproti 100ns), má menší odber (35mA oproti 60mA), to je tu ale v zapojení Micro UK101 vec vedľajšia a nepodstatná. Naozaj zaujímavé je to že má inak na svoje piny vyvedené poradie adresných vodičov. Ak ju založíte namiesto štandartnej 62256 tak priamo pracuje pretože uloženie konkrétneho bytu v nej je jej naprosto interná záležitosť = funguje v zapojení rovnako. (Žeby sa tým obišlo nejaké patentové krytie ?) To len pre informáciu ak by niekoho vydesilo zapojenie pinov na tejto RAM. Otestoval som ju tak isto aj v SBC6502 s rovnakým finálnym výsledkom - všetko O.K. (Inak - je to naozaj šikovná RAM !- občas sa tieto pamäte RAM označujú aj ako SRAM - statická RAM. )

 

Porovnanie spomínaných dvoch 32KByte SRAM.

 

Síce som to nejako nezdôrazňoval, ale v doske je použitý konektor RS232 typu female, pretože sa zapája priamo do kábliku prevodníku USB ↔ RS232, už som to aj do prvého článku o Micro UK101 tiež doplnil, ak to nedodržíte tak budete potrebovať v ceste zapojiť nejakú prevodku - takto sa tomu vyhnete.


V dnešnej dobe je to už len zaujímavosť a nie je veľa ľudí čo by sa takouto technikou dnes zaoberali a dokonca jej ešte aj rozumeli, ale vo výsledku je to oddychovka a zábava a dúfam že mi to takto ešte nejakú chvíľu zostane - a vydrží. Viem si to napríklad predstaviť večer na chalupe (a nielen tam) a riešiť na tom vývoj nejakého programového vybavenia na domáce použitie, pretože programové vybavenie je skoro na 100% zhodné s SBC6502. A nemôžemi si pomôcť - najradšej niečo vyvíjam a robím na naozajstnom "železe", emulátory síce sú a existujú (aj na UK101), ale takto ma to určite baví viac.


P.S.:

Článok aj napriek dnešnému termínu uverejnenia nie je 1.aprílovým žartom.

____________________________________________________________

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: