Notatnik Fana Starych Komputerów
 


Cobra

 


Moje zdjęcia

Powiększenie

Powiększenie

Powiększenie

      Wyjątkowo ciekawa konstrukcja. Co prawda, póki co, nie wiem o tym komputerku zbyt wiele, ale jest dla mnie tym, czym komputery Mark 8 albo Altair 8800 dla Amerykanów. Komputer Cobra to tak naprawdę płytka drukowana i elementy elektroniczne. Z tego, co pamiętam był zestawem do samodzielnego montażu, ale można go było też kupić egzemplarze w pełni zmontowane i uruchomione. Po włączeniu - Cobra w zakresie swojej funkcjonalności przypomina komputer Sharp MZ 700 - dostępny jest zbiór podstawowych komend programu monitor. Żeby skorzystać z możliwości programowania w języku Basic należy najpierw... wczytać go z kasety. Uważam, że każdy prawdziwy fan polskich ośmiobitowców pownien mieć Cobrę.



Nadesłane zdjęcia

Powiększenie

Powiększenie

Powiększenie
Cobra ze Złotoryi zbudowana w 1986 roku

Powiększenie
Cobra Jarka z Jastrzębia Zdroju zbudowana w 1990 roku

Powiększenie

Powiększenie

Powiększenie
Cobra Ryszarda z Gorlic

     



Programy

Poniżej znajduje się interpreter Basica w formacie wav. Należy podłączyć wejście magnetofonowe Cobry do wyjścia słuchawkowego PeCeta i po wydaniu polecenia L: CR należy włączyć magnetofon. Proceosowi ładowania programu towarzyszy migający znaczek w prawym górnym rogu, mrugające pasy obramowania ekranu (jak w Spectrusiu :) oraz wydobywający się z głośnika pulsujący dźwięk. Po wczytaniu Basica (Cobra informuje o tym napisem Stop tape) należy wydać polecenie G: 0 CR i jeszcze raz wcisnąć CR. Od tej chwili Basic jest gotowy do pracy :)

Interpreter Basic TRS (6,16 MB) Gorący start: G: 066

I jeszcze krótki program napisany w Basicu TRS, żeby można było sprawdzić poprawność działania Cobry oraz Basica. Żeby go wczytać należy wydać polecenie CLOAD CR i włączyć odtwarzanie pliku dźwiękowego. Po zakończeniu ładowania programu wydajemy polecenie RUN CR i można grać :) 
 
Oryginalna książeczka z opisem Basic-a dla Cobry: Andrzej Sirko, Basic dla mikrokomputera Cobra 1 (1,23 MB) 
 
Jako ciekawostkę załączam zeskanowaną dokumentację Basic-a - konwersję Basic-a Meritum w wydaniu na Cobrę: Dokumentacja Basic TRS dla komputera Cobra 1 (2,74 MB)

Tenis - Basic TRS (647 KB)

Zarówno interpreter jak i programik Basicowy otrzymałem od Jarka z Jastrzębia Zdroju za co w imieniu fanów Cobry bardzo dziękuję. Chciałbym również zachęcić innych właścicieli tego ciekawego komputerka do nadsyłania swoich bibliotek oprogramowania.

Żeby pokazać, że to wszystko działa - dwa zdjęcia ekranu w trybie Basic. W mojej Cobrze jest standardowy ROM z generatorem znaków bez małych liter, stąd zamiast pięknego Ready - Cobra wyświetla R%!$9, ale... kto by się tym przejmował ;)

Powiększenie

Powiększenie

Kolejne, nadesłane przez Jarka programy w TRS Basicu:

Łapanie jajek (1,51 MB)

Powiększenie

Powiększenie

Powiększenie

Powiększenie
Screen z Cobry Jarka ze zmodyfikowanym generatorem znaków

Mini riders (1,09 MB)

Powiększenie

Powiększenie
Screen z Cobry Jarka ze zmodyfikowanym generatorem znaków

Wilk i owce (1,42 MB)

Powiększenie

Odwracanka (1,54 MB)

Powiększenie
Screen z Cobry Jarka ze zmodyfikowanym generatorem znaków

Fanty (1,24 MB)

Powiększenie
Screen z Cobry Jarka ze zmodyfikowanym generatorem znaków

Nalot - wersja z semigrafiką (3,04 MB)

Nalot - wersja bez semigrafiki - ze standardowym generatorem znaków (2,94 MB)

Z maila od Autora:
...Wielkie podziękowania za zdobycie Basica na Cobrę.
Mając Basic udało mi się zrekonstruować jeden z programów,jakie napisałem w latach osiemdziesiątych na Cobre.
Jest to gra "NALOT".
W tamtym czasie gry pisałem głównie z myślą o synie.
Ponieważ wymieniłem w Cobrze standardowy generator znaków na przysłany z Warszawy (Eprom), mogłem korzystać z semigrafiki.
Program ten wykorzystuje semigrafikę, więc Ci użytkownicy, którzy jej nie posiadają - będą zawiedzeni.
Ponadto w Cobrze mam 64 kB RAM, więc i program jest dość spory.
Pewnie można by go uprościć, ale w tamtym czasie Basica dopiero się uczyłem.
Ważne, że działa i dość trudny do przejścia.
 
Powiększenie
 
Powiększenie

Screeny z Cobry ze zmodyfikowanym generatorem znaków:
 
Powiększenie
 
Powiększenie
 
Powiększenie
 
Powiększenie
 

Screeny z Cobry ze standardowym generatorem znaków:
 
Powiększenie
 
Powiększenie
 
Powiększenie
 
Powiększenie
 

Poniżej znajduje się interpreter Bascia - tym razem Basic TDL, który zapewnia większą dokładność obliczeń (i jednocześnie zostawia mniej pamięci do wykorzystania na program). W TDL Basic-u nie mam problemów z fontami, bo wszystkie wiadomości systemowe są wypisywane dużymi literkami.

Interpreter Basic TDL (6,21 MB)

Opis interpretera Basic TDL - w języku angielskim (9,29 KB)

Powiększenie

Poniżej - asembler procesora Z80 w wydaniu na Cobrę. Gorący start: G: 0140

Asembler (3,87 MB)

Poniżej - disasembler procesora Z80 w wydaniu na Cobrę. Gorący start: G: 0AF7

Disasembler (3,93 MB)

Do asemblera i disasemblera dla Cobry mam jeszcze nadesłane przez jej właścicieli skany instrukcji. Jeżeli ktoś zechciałby je przepisać do formatu tekstowego (MS Word) - proszę o przepisanie i podesłanie - chętnie w tej postaci zamieszczę te instrukcje w serwisie.

Instrukcje asembler i disasembler (733 KB)

     



Rozszerzenia sprzętowe

Poniżej znajduje się pełny opis i schemat rozszerzenia pamięci z podtrzymaniem bateryjnym opracowanego przez Ryszarda z Gorlic. Za przekazanie materiałów bardzo dziękuję.
Oto, co pisze autor:
 
Wczytywanie asemblera z taśmy było nieco uciążliwe i czasochłonne więc wykombinowałem iż dobrym rozwiązaniem byłaby jakaś dodatkowa pamięć gdzie można by było tego asemblera trzymać i szybko wczytywać. Ponieważ pamięci Eprom o dużej pojemności to było marzenie więc zastosowałem pamięć typu RAM i podtrzymanie bateryjne. Całość zmontowana na dodatkowej płytce i podpinana do złącza zewnętrznego Cobry. Poniższy układ został wykonany w 1987r i do dziś pracuje poprawnie.
 
Podstawowym elementem jest pamięć (U1) RAM typu 6264 (8k x 8b).Dekoder adresu pamięci składa się z (U2) 74 LS 138, (U3a) 7420, (U4c) 7404 oraz D1, D2 i R1.Do dekodera doprowadzono adresy A12 do A15 oraz sygnał CSR. Wolna przestrzeń adresowa Cobry to C800H do F7FFH czyli 12kb jednak moje wygodnictwo spowodowało, iż układ pamięci (U1) wybierany jest adresem D000H do EFFFH.
 
Elementy (U4d) 7404, (U3b) 7420, R4 i przełącznik S1 tworzą układ blokady zapisu. Zamknięte styki S1 blokują możliwość zapisu. Podczas użytkowania możliwość ta okazała się całkiem przydatna.
 
Układy (U4b, e, f) 7404, (U5c, d) 7408 i D4 oraz D3 wraz z R2 i R3 tworzą możliwość wizualizacji zachodzącego procesu. Można z wizualizacji zrezygnować, aczkolwiek w fazie rozruchu może być pomocna.
 
Układ (U1) zasilany z accu (3,6V) poprzez rezystor R5. Wartość rezystora należy dobrać na odpowiedni prąd doładowania accu (dla 3,6V iC = 60mA). Do złącza zewnętrznego Cobry doprowadzono +5V. Buforem zasilania jest dioda D5.Jeśli zamiast accu zastosujemy baterię to wówczas w miejsce R5 należy wstawić diodę. Na schemacie nie uwzględniono zasilania układu U5 (14-VCC, 7-GND).
 
Złącze zewnętrzne mojej Cobry zostalo nieco zmodyfikowane (A, B12 – 0V, A31, 32 - 5V) więc należy sprawdzić zgodność opisu z oryginałem. Myślę że z tym problemów nie będzie.
 
Po sprawdzeniu poprawności połączeń całość powinna działać bez problemów.
 
Celem sprawdzenia działania płytki należy:
- Wyłączyć zasilanie Cobry
- Wtyknąć płytkę do złącza zewnętrznego Cobry
- Załączyć zasilanie. Jeśli pojawił się znany obraz to połowa sukcesu
- Wpisać:   D: D000,D01F
   System wydrukuje na ekranie zawartość pamięci .Wartości te powinny być przypadkowe
   Powtórzyć czynność. Porównać zawartość wydruków – powinny być identyczne.
   Uwaga: wydruk wartości C3 C0 03.... to zawartość Eprom monitora i błąd połączenia - sprawdzić A12 - A15 i połączenia dekodera adresu
Wpisać:   Z: D000,DFFF,FF (CR)   Z: E000,EFFF,00 (CR)
Sprawdzić poprawność zapisania ww obszarów poprzez D; D000,EFFF
Sprawdzić działanie przełącznika S1.Zaznaczyć pozycję wpisu.
Jeśli wszystko działa poprawnie to 75% sukcesu
 
W celu korzystania z pamięci musimy mieć odpowiednie procedury.
Jak zwykle poszedłem na skróty: LD HL, nn  21 n nH   adres źródła
LD DE, nn  11 n nH   adres przeznaczenia
LD BC, nn  01 n nH   ilość bajtów
LDIR  ED B0H   transmisja w przód
Teraz wystarczy wczytać Asembler. Wpisać poniższą procedurę pod adres np.3E00 funkcją M.
21 00 00 11 00 D0 01 CF 1F ED B0 76 Uwolnić zapis na karcie (S1). Wpisać: G:3E00 (CR) Zablokować zapis. Reset Cobry. Sprawdzić zawartość pamięci D: D000,EFFF (CR)
Uruchomić Asembler G:000 (CR). Jeżeli działa to Reset Cobry. Wpisać Z:0,3DFF,FF (CR)
Wpisać procedurę pod adres np.3E20:
21 00 D0 11 00 00 01 CF 1F ED B0 C3 00 00 76  Ta procedura kopiuje zawartość dodatkowej pamięci do pamięci Ram Cobry. Uruchomić G: 3E20 (CR)
Powinien uruchomić się asembler. Procedurę 1 umieścić w pod adresem początkowym EFD0 drugą pod adresem EFE0 i tą będziemy najczęściej wykorzystywać. Można je również umieścić w wolnym obszarze Eprom Monitora.
 
Wszelkie uwagi mile widziane.
R.G
 
Schemat w Protelu: Schemat (5,29 KB)
i schemat w postaci pliku graficznego:
Powiększenie

     



Dokumentacja

Poniżej znajduje się zbiór zeskanowanych artykułów z czasopisma AV oraz fotografie zawartości EPROM-u Cobry, za przesłanie których bardzo dziękuję Panu Zdzisławowi... Do ich przeglądania niezbędna jest wtyczka do przeglądarki stron internetowych DjVu Browser (2,34 MB).

Artykuły z AV - Audio Video (2,88 MB)

Zawartość EPROM (577 KB)

I jeszcze zawartość EPROM-u w postaci heksadecymalnej do wykorzystania w programatorze - otrzymałem ją od Pana Wiktora Szymanowskiego za co bardzo dziękuję: Zawartość EPROM (1,92 KB)