forum speccy.pl
Komputery z Z80 => TIMEX => Wątek zaczęty przez: KWF w 2020.11.29, 09:16:45
-
Czas przedstawić Timmy'ego, czyli TC2048 na lekkich sterydach i po mojemu. Specyfikację podam, kiedy skończę testować wszystkie jego moduły, a na tę chwilę nic ponad standard:
- Z80A (3.5MHz)
- Timexowe SCLD z wianuszkiem złącz, dla zamiennika, o ile powstanie
- 16KB dolnego RAM
- 32KB górnego RAM
- 2 banki ROM po 16KB
- zasilanie z zasilacza o dowolnej polaryzacji
- przycisk reset
- poprawiony Kempston z dekoderem adresów z A5, A6 i A7
- klawiatura od Timexa
- format płytki i układ złącz jak w TC2048
Ma on jeszcze kilka rzeczy na sobie, ale nieprzetestowanych. A po co go zrobiłem? Ponieważ miałem ochotę i tyle w tym temacie.
Timmy w sumie ruszył od pierwszego strzału i jego część cyfrowa działa (testy (https://www.dropbox.com/s/vzox8mymlv0zhgh/Timmy_01.mov?dl=0)). Nie obyło się od kilku drobnych wpadek w okolicy ROMu i górnego RAM, ale tego jest kynar, aby pomagać w sytuacjach podbramkowych.
Część analogowa będzie najtrudniejsza do doprowadzenia do porządku. Najważniejsze, że obraz wychodzi na ekran.
Kilka podziękowań:
Piesiu: serdecznie dziękuję za logo i nazwę.
Maryjan: pokiereszowana płytka od Ciebie bardzo przydała się
trojacek: Twój schemat v5 rev1.4 jest prawie idealny, a prawie robi różnicę ;D
Tygrys: bez dopingu nie byłoby tego co mam na stole
Od czego zaczynałem:
(http://fatla.eu/pub/tc2048/timmy_01.jpg)
To co mam:
(http://fatla.eu/pub/tc2048/timmy_02.jpg)
(http://fatla.eu/pub/tc2048/timmy_03.jpg)
(http://fatla.eu/pub/tc2048/timmy_04.jpg)
-
Poprawiony Kempston oznacza również poprawioną polaryzację ?
Ładnie wyszło :)
-
Dzięki.
Tak, Kempston doprowadzony do normalności.
-
Gratki fajna płytka tylko pokaż w pełnej okazałości a nie przykryte zwłokami. Już wiem po co wymiarowałeś PCB Timexa. Jak będzie gotowy to chętnie wezmę jedno PCB. Choć zdaję sobie sprawę że ten układ specjalizowany jest nie do zdobycia.
-
Składam oficjalny protest - gdzie są zdjęcia!
Gratuluję wytrwałości!
-
Gratki fajna płytka tylko pokaż w pełnej okazałości a nie przykryte zwłokami. Już wiem po co wymiarowałeś PCB Timexa. Jak będzie gotowy to chętnie wezmę jedno PCB.
Dzięki i trzy sprawy.
1. Pokazuje tyle ile chcę pokazać, z różnych powodów, choćby takich, że to co widzisz, to na pewno działa.
2. Akurat nie po to wymiarowałem PCB, więc wniosek nietrafiony.
3. Dalsze losy projektu są jeszcze niesprecyzowane. Raczej nie będę bawił się w dystrybucję PCB, w takiej formie jak to wcześniej bywało na Bazarze.
-
Gratulacje. Kawał dobrej roboty. Akurat mam płytę wymagającą przeszczepu.
-
ale extra!
planujesz w przyszłości 128/144k i AY?
-
Czy teoretycznie możliwe jest wpięcie tam (z jakąś przelotką) Uli Plus? W sumie to pytanie dotyczy wszystkich Timexow.
-
A istnieje coś takiego jak fizyczna ULA+?
Nie, nie planuję 128K. Na płytce nie ma oddzielnej i pełniej logiki do AYka, więc z układem Timexa może być tylko PSG na portach takich jak w TC2068.
Robiąc płytkę, starałem się aby oznaczenia elementów odpowiadały oryginałowi TC2048 w wydaniu 5. Ułatwi to przeszczepy. Cały RAM jest zbudowany na 4 kościach pamięci dynamicznych:
- dolne 16K: 2 x 4416-150ns
- górne 32K: 2 x 4464-150ns (w moim przypadku obsadzone 41464-100ns)
Z80A w NMOS nie startuje, a chińska malowanka Z80-20MHz w CMOS grzeje się. Kemston i klawiatura są odczytywane poprawnie. Płyta startuje poprawnie z ROMem z TC2048 w którym jest zerowanie 255 przy starcie. Inne ROMy (nawet testowe) trzeba oszukać, aby poprawnie działały.
Z rzeczy do zrobienia to całe wyjście wideo, bo synchro sypie się niemiłosiernie.
-
A SLAM 48 nie implementuje Uli plus łącznie z timexowami hiresami?
-
Piękne, piękne :)
Cieszę się, że w jakimś stopniu mogłem przyczynić się do ułatwienia Ci pracy przy tym klonie.
Jak ruszyło, to już teraz z górki :)
-
SLAM nie ma zaimplementowanej obsługi portu 244 (w TC2048 nieistotne), ma wyjścia różnicowe dla sygnałów wideo, a nie RGB. SLAM nie obsługuje buforów trójstanowych na szynie adresowej i szynie danych.
-
Hmm, czyli to znowu taki jednoosobowy klon zrobiony na zasadzie" u mnie działa a u was nie musi" ;) Cóż.... Nie pierwszy to i niestety nie ostatni to hardware od Klaudiusza ;)
-
zaxon, zamiast trollować przeczytaj jeszcze raz do napisał Klaud. Złośliwości do niczego nie prowadzą.
-
Klaud jak planujesz małą serię płyt na sprzedaż to był bym chętny na 1szt złożoną lub zestaw kit a jak nie to na 1 pcb
-
zaxon: chętnie przeczytam Twoje merytoryczne uwagi do tego, co napisałem w tym wątku. Jeżeli masz zamiar nadal zachowywać się jak przekupa z obwoźnego straganu z odpustowymi świecidełkami, to nie znajdziemy wspólnego języka.
-
Test 80K RAM (przełączanie banków po 32K) https://www.dropbox.com/s/wviqut5vuwtuv0i/Timmy_03.mov?dl=0 (https://www.dropbox.com/s/wviqut5vuwtuv0i/Timmy_03.mov?dl=0)
80K jest wbudowane w płytę i jest ono rozszerzeniem opisywanym w Bajtku swego czasu, a które chciałem mieć w swoim oryginalnym Timexie.
-
najs.
-
Było kilka rozszerzeń do 80k dla ZX Spectrum o różnych kompatybilnościach z ZX 128k.
Zasada działania była taka sama - przełączanie 32k RAM - ale podejście trochę inne.
Wkomponowałeś to w płytę ?
-
Ciekaw jestem czy uda się jeszcze zdobyć jakieś programy potrafiące wykorzystać ten dodatkowy RAM.
Poza jednym programem kopiującym, były też chyba jakies zmodyfikowane gry. czy programy.. ale pewnie będzie kłopot je teraz zdobyć?
-
Na płytce były przeciągi, połowa górnego RAM i tak leżała odłogiem, więc wrzuciłem logikę przełączania górnych 32K.
No i kolorki ruszyły: Timmy_04.mov (https://www.dropbox.com/s/hi2lbacz2wljevf/Timmy_04.mov?dl=0)
Mam jeszcze drobne problemy z synchro, lekką błękitną dominantą oraz BRIGHT mógłby być lepszy.
Zostało mi sprawdzić we/wy audio, głośniczek oraz złącze krawędziowe.
-
Logika 80K:
(http://www.fatla.eu/pub/tc2048/timmy_06.jpg)
Koder PAL:
(http://www.fatla.eu/pub/tc2048/timmy_05.jpg)
W sumie zastanawiam się czy nie zamienić AD724 na inny układ, który jest zasilany z +5V i jest w obudowie DIP np. CXA1645.
-
CXA1645 wygląda obiecująco, jednak nie posiada on własnego oscylatora i wymaga podania zewnętrznego sygnału 4,43MHz 0,5Vp-p na wejście SCIN.
Dojdzie Ci wtedy kolejny TTL na generator, warto też dać wtedy trymer by można dostroić zaskok koloru oraz dzielnik wyjściowy by uzyskać odpowiednią amplitudę sygnału SCIN dla układu CXA1645.
Nie polecam stosowania gotowych generatorów 4,43MHz (jeśli nawet taki znajdziesz), bo pewnie będzie problem z dostrojeniem koloru.
-
CXA1645 wygląda obiecująco, jednak nie posiada on własnego oscylatora i wymaga podania zewnętrznego sygnału 4,43MHz 0,5Vp-p na wejście SCIN.
Tak samo jak AD724, tutaj niewiele zmieni się. Dojdzie jeden kondensator. Gotowa aplikacja CXA1645 jest podobna to tej z A600/1200 z CXA1145.
-
Akurat AD724 może pracować z zewnętrznym oscylatorem jak i z samym kwarcem 4.433 MHz lub 17.734 (posiada wewnętrzny oscylator), więc adaptacja jest nieco uproszczona.
Nie wiem jak z dostępnością CXA1645 w wersji DIP, na Ali...coś mają jednak mogą to być jakieś malowanki.
-
Chyba patrzymy na inne karty katalogowe układów z serii CXA1645, w tej co mam jest napisane:
"SCIN - Both sine wave and pulse can be input as a subcarrier"
Schemat aplikacyjny pomijając obwody LC i audio jest identyczny z CXA1145:
(http://www.waveguide.se/?article=51&file=amiga600_cxa1645_mod_6.png)
-
Zwróć uwagę że pin 5 w układzie CXA1645 jest NC (niepołączony z niczym w samym chip'ie) , natomiast w CXA1145 jest on wykorzystywany wraz z pinem 6 do wewnętrznego oscylatora.
W/g mnie zapis "SCIN - Both sine wave and pulse can be input as a subcarrier" - nie oznacza że ma własny oscylator a jedynie możliwość podawania sygnału dwojakiego rodzaju :)
-
To może inaczej. Skoro CXA1645 i CXA2075 nie maja oscylatorów na pokładzie, to dlaczego działają jako zamienniki CXA1145 bez modyfikacji w układzie podawania częstotliwości podnośnej w A600 i A1200? W Amigach jest ten układ, który pokazałem powyżej.
-
fajnie. 80k i przelaczanie banków coraz bardziej mi sie podoba ten klon timexa.
A dorobisz jakas sygnalizacje led przelaczania tych banków?
-
To może inaczej. Skoro CXA1645 i CXA2075 nie maja oscylatorów na pokładzie, to dlaczego działają jako zamienniki CXA1145 bez modyfikacji w układzie podawania częstotliwości podnośnej w A600 i A1200? W Amigach jest ten układ, który pokazałem powyżej.
W Amigach 600/1200 dla systemu PAL G/I podnośna podawana jest na pin6 z zewnątrz i nie wymaga to wewnętrznego oscylatora enkodera. Jedynie opcjonalnie dla systemu PAL N i M dla regionu Ameryki Południowej wewnętrzny oscylator jest tam wykorzystywany.
To może dlatego CXA1645 działa tam jako zamiennik z podniesionymi kilkoma nogami i doklejonymi kilkoma elementami dyskretnymi na tzw "barana" ;)
W Amigach 600 i 1200 istotnie jest układ scalony CXA1145 ale nie taki ma schemat połączeń jaki wcześniej podałeś. :P
-
Podziękował ślicznie :) warto zapytać bardziej doświadczonych kolegów.
-
Wyjście RGB sprawdzone, przełącza TV w forma 4:3, obraz ładny, czysty i lepszy niż po kompozycie. W przypadku wyjścia kompozytowego jakość obrazu i "dot crawl" wiele zależą od kwarca i kondensatora przy nim. Jest miejsce na trymer, więc można dostroić, a do testów drogą eksperymentów wsadziłem ceramika 8pF i jest OK.
Programy wczytują się przez wejście EAR, wewnętrzy BEEPer jest też dostępny na złączu RGB (standard HQ48). Zmieniłem głośność bzyczka, bo w oryginalnym Timexe ryczy tak, że obudzi umarłego.
Zostało mi sprawdzić pokładowego AYka na portach Timexa (sterowany jest z SCLD), bo chwilowo milczy.
A dorobisz jakas sygnalizacje led przelaczania tych banków?
Na płytce są dwie diody, które świecą w zależności od aktywnego banku 32K. A tak na na marginesie, coraz mniej podoba się mi to bajtkowe rozszerzenie 80K, ponieważ trzeba je wyłączać dla programów korzystających z portu 0xFF (np. Timmy). W ostateczności wyleci ono z płytki.
-
A opcja wyłączania 80k zworka/ami? sygnalizacja ok.
Czyli będzie standard 48k? buzera mógłbyś zostawić jak to ma byc w klon timexa
-
Tak, na zdjeciu z logiką 80K jest pokazana zwoka (czerwona) i nią można zablokować bankowanie pamięci. W przypadku wyłączenia bankowania Timmy zachowuje się jak zwykłe 48K.
AY odzywa się na portach Timexa, ponieważ PSG jest sterowane z SCLD (ULA). Testy ze scrackowanego DiagROMu można zobaczyć tu: Testing Timmy (https://youtu.be/dC0ZgcBu8rQ)
Schemat Timmy'ego udostępniłem dla zainteresowanych: Timmy_sch_v.0.12 (https://drive.google.com/file/d/1LmT7OOL4-7EOE0OqoxAHWQpaIwAvuV78/view?usp=sharing)
-
Czy w obudowie Timex'a 2048 trzeba będzie robić jakieś dodatkowe otwory na złącza lub przełączniki albo lampki, czy wszystko jest dopasowane do oryginalnej obudowy bez przeróbek?
-
Podstawowe gniazda (RGB, Audio, EAR/MIC, joy, zasilanie, monitor) są w tych samych miejscach co na oryginalnej płytce więc prasują do oryginalnej obudowy). Z dodatkowych "bajerów" i przełączników są:
- mikser ACB/ABC (zworki)
- reset (przycisk lub złącze kołkowe)
- beeper wyprowadzony na wewnętrzny głośnik lub wyjście audio - zworka
- wyłączanie 80K - zworka
- sygnalizacja banków 80K - dwie diody
- wybór banku ROM - zworka
Te zworki niestety wymagają wiercenia w obudowie, albo można z nich nie korzystać i ustawić konfigurację na sztywno.
-
Wyjście RGB:
(http://fatla.eu/pub/tc2048/timmy_RGB_01.jpg)
-
Klaud nieśmiało zapytam czy kolor soldermaski będzie ten zielony czy będziesz miał do wyboru zielony, czarny, kolor zieleni z oryginału?
chciałem zapytać o reset czy jest ale widzę że jest, rgb też jest super
ja mam obudowę już z otworami fabrycznymi, pozostałość o interfejsie sieciowym, też są dwie diody i reset w obudowie, przynajmniej u mnie tak jest i nie musiałbym nic przerabiać
-
Też mam takiego Timex-a z tymi otworami na diody.
A widział ktoś tą płytkę ? która była tam wbudowana ?
Bo ja już miałem bez niej.
Swoją drogą, jakby kiedyś były pcb do tego klona, to jestem chętny na sztukę.
Mam jeszcze jedna ULA od Timex-a, to szkoda by leżała :)
-
AY odzywa się na portach Timexa, ponieważ PSG jest sterowane z SCLD (ULA). Testy ze scrackowanego DiagROMu można zobaczyć tu: Testing Timmy (https://youtu.be/dC0ZgcBu8rQ)
A może zmieściłbyś gdzieś dekoder na standardowych portach ?
-
Też mam takiego Timex-a z tymi otworami na diody.
A widział ktoś tą płytkę ? która była tam wbudowana ?
Bo ja już miałem bez niej.
Mam takiego Timexa z diodami dodatkowymi, w środku faktycznie jest coś dużego. Jak będę w domu to zrobię fotki. Przypomnij się na priv ewentualnie.
-
O.k.
Dzięki :)
-
Jacek: na razie nie jestem w stanie obiecać czegokolwiek, np. płytki do Timmiego z poprawkami potestowymi, czy złożonego Timmiego. Kolor maski zakładam raczej zielony, ponieważ taki był w Timexach. Nie zdecydowałem jeszcze jaki będzie los tego klona, możliwa zamrażarka albo upublicznienie całego projektu z licencją Creative Common w wersji BY-NC-SA (Attribution + Noncommercial + ShareAlike). Na tę chwilę schemat udostępniłem kilka postów wyżej. Jeśli masz obudowę z gotowymi otworami pod dodatkowe LEDy/przełączniki, proszę o jej zdjęcia.
Maryjan: Jeśli masz Timexa 80K (lub jego jakąś formę) prosiłbym o zdjęcia.
skoti: miejsce na dodatkowy dekoder AYka znalazłoby się, ale tego nie przewidywałem. Korzystam z funkcji wbudowanych w SCLD. Może przy następnej edycji schematu pojawi się taki dekoder.
Jeśli ktoś byłby chętny na testowanie na prototypie, zapraszam na PW, ponieważ mam dwie płytki do oddania za koszty wysyłki z jUKej. Jest kilka poprawek do zrobienia kynarem, logika 80K nie musi być obsadzona, aby Timmy działał w trybie 48K.
-
Mam Timex-a z dziurkami po diodach bez płytki sieciowej.
Było tam rozszerzenie do 80k, ale zostało zdemontowane wraz z płytką.
Niestety, ja tego nie demontowałem. Stan taki już wewnątrz zastałem.
Zostały mi się jedynie otwory po tej dodatkowej logice :(
-
Wrzucaj zdjęcia tego co masz. Interesuje mnie w jaki sposób kiereszowano obudowy na te dodatkowe zabawki.
-
ok, jasne
zdjęcia mojej obudowy
https://photos.app.goo.gl/ctFeWth4fs5tc5Mf6 (https://photos.app.goo.gl/ctFeWth4fs5tc5Mf6)
-
Właśnie sobie uświadomiłem, że jest to pierwszy na świecie klon Timex-a, który powstał i działa.
Tym większy mój ukłon w stronę jego twórcy.
Wiem ile jest pracy przy takim projekcie.
Jeszcze raz gratuluję wytrwałości i zapału.
-
Dzięki, ale to dopiero początek drogi do klona ;) chyba że teraz Kickstarter, 1mln orzeszków na koncie i obiecanki nowej klawiatury za 3 lata + poślizg drugie 3 ;)
-
:D
No to Ci się, Klaud, udało :)
Ale mimo wszystko chętnie bym ten produkt zobaczył, nawet za 3 lata.
-
Tak z ciekawości zapytam czy ktoś prowadzi jakieś prace nad zamiennikiem ULA 2068, czy Timmy bardziej będzie jako nowe mobo dla starych Timexów ze sprawną ULA.
-
Skoro powstał klon ULA - Slam z trybami Timex-a, to przypuszczam, że powstanie klona PAL 2068 jest tylko kwestią czasu.
To wszystko zależy, czy będzie taka potrzeba i czy komuś się zachce.
Należy zauważyć, że Timex-y, to jednak pewne "odgałęzienie" pnia Sinclair-a popularyzowane tylko w niektórych krajach.
-
To ten sam układ co posiada Unipolbrit?
-
A czy jest ogólnie dostępna dokumentacja tego układu ?
-
To ten sam układ co posiada Unipolbrit?
Tak. TC2048, TC2068 i UK2086 mają to samo "serce".
A czy jest ogólnie dostępna dokumentacja tego układu ?
W sensie? Pinout jest w miarę znany, i to właściwie wszystko. Ktoś kiedyś jakieś oscylogramy wyciągał. I podejrzewam, że nic innego nie istnieje jako dokumentacja, co najwyżej może powstać na bazie reverse-engineeringu.
Skoro powstał klon ULA - Slam z trybami Timex-a, to przypuszczam, że powstanie klona PAL 2068 jest tylko kwestią czasu.
Czasu, potrzeb, chęci. Układ Timexa ma inne timingi video (bardzo zbliżone do gumiaka, ale... jeden szczegół rozkłada np. efekty borderowe). Tak więc klon powinien to respektować, czy jednak ułatwić życie użytkownikom i ujednolicić je z którymś z oryginałów? 48? 128?
Brak floating bus, implementacja portów 244 i 255 - to kolejne kwestie w temacie (nie)zgodności sprzętowej.
Jeśli klon ma pracować w oryginalnych płytach Timexa, to również trzeba zadbać o dołożenie odświeżania ósmego bitu rejestru R.
Kłopoty z instalacją jakiegokolwiek modułu w miejsce po chipie PLCC68 też do banalnych nie należą.
-
Układ TS2068 PAL był montowany w TC2048, TC2068 i UK2086.
Ostanimi czasy wrzucałem rozpiskę (sprawdzoną) wyprowadzeń z TS2068 PAL do wątku ze schematem Trojacka: https://www.speccy.pl/forum/index.php?topic=2472.msg90273#msg90273
Jako takiej dokumentacji do tego Timexa układu nie ma, a jest on podobny do SCLD z amerykańskiego TS2068 pod oznaczeniem TS2000. Oba układy są zbliżone w swoim działaniu do ULA'i z serii 5C112E.
Aby rozgryźć sposób działania MMU (port 0xF4) oraz trybów graficznych (port 0xFF) w Timexach należy sięgać do DTRki do TS2068.
-
Kłopoty z instalacją jakiegokolwiek modułu w miejsce po chipie PLCC68 też do banalnych nie należą.
Tak na szybko wykombinowałem...
Da się to zrobić tanim sposobem tylko nie będzie to rozwiązanie idealne.
W miejscu oryginalnego chipa PAL2068 na płycie komputera lutujemy podstawkę PLCC68 w wersji SMD.
Bierzemy dowolny chip w obudowie plastikowej PLCC68 i rozwiercamy środek układu (by się pozbyć struktury krzemowej) wykonując otwór około fi8, następnie lutujemy go do modułu jaki mamy zamiar obsadzić w miejscu PAL2068.
Koncepcja nieco odwrotna do tej zastosowanej w przypadku montażu FastRAM w komp. Amiga 600. :)
W przypadku Timmiego to Klaudiusz przewidział już z tego co gdzieś chyba widziałem odpowiednie otwory pod szpilki na dodatkowy lub zamienny moduł ULA jeśli dobrze kombinuję. ;)
...chyba że to do celów diagnostycznych
-
W przypadku Timmiego to Klaudiusz przewidział już z tego co gdzieś chyba widziałem odpowiednie otwory pod szpilki na dodatkowy lub zamienny moduł ULA jeśli dobrze kombinuję. ;)
...chyba że to do celów diagnostycznych
Do celów diagnostycznych i przydały się mi kilka razy. Jeżeli ktoś zrobi zamiennik, to będzie można wpiąć go przez te otwory na złącza kołkowe/podstawki.
(http://www.fatla.eu/pub/TC2048/Timmy_03.jpg)
Swoją drogą są wtyczki wpinane w podstawki PLCC i montowane SMD do płytki na drugim końcu.
(https://media.rs-online.com/t_medium/R7419653-01.jpg)
-
Jeżeli ktoś zrobi zamiennik, to będzie można wpiąć go przez te otwory na złącza kołkowe/podstawki.
No właśnie, customowa PCB jest moim zdaniem jedynym uzasadnionym wyborem. I ten obwarzanek z pinów jest bardzo OK. Nie ma co się łudzić, że zamiennik powstanie jako chip PLCC68 (choć może kiedyś będzie można zamówić wykonanie w jakiejś fabryce scalaków i nie będzie to kosztowało tyle, co Tesla).
Bierzemy dowolny chip w obudowie plastikowej PLCC68 i rozwiercamy środek układu (by się pozbyć struktury krzemowej) wykonując otwór około fi8
Hmm, nie - dziękuję, postoję.
-
Klaud w tej rozpisce wyprowadzeń TS2068 nie ma czasami literówki. KB0-BD4, nie powinno być KB0-KB4 ?
-
Ano jest błąd, poprawię przy następnym wrzucie rozpiski. Dzięki.
-
Jest możliwość rozbudowania pamięci do 144kB -> https://8bit.yarek.pl/upgrade/zx.tc2144/index-pl.html w zgodności z ZX 128k.
Może w następnej rev. płyty ?
-
Klaud chyba pisał wczesniej ten projekt bedzie miał 48k i rozszerzenie do 80k i nie więcej. Tak założył i tak zrobił :) i chwała mu a ja kibicuje bo mi sie ten projekt podoba.
Mnie zastanawia czy jestem w ogóle w stanie sam odtworzyć takie rozszerzenie do 144k na podstawie tej dokumentacji ze strony yarka. Sama płytka na skomplikowaną nie wygląda ale coś siedzi jeszcze pod romem i pytanie jaki rom ma wsad.
-
Klaud chyba pisał wczesniej ten projekt bedzie miał 48k i rozszerzenie do 80k i nie więcej. Tak założył i tak zrobił :) i chwała mu a ja kibicuje bo mi sie ten projekt podoba.
Jedni by chcieli, inni nie... Zawsze tak jest ;)
Najlepiej mieć wybór - ładujesz do CPLD taki wkład, jaki Tobie odpowiada.
Moim zdaniem zgodność ze 128K ma większy sens, niż 80K. Ale to moje zdanie.
Mnie zastanawia czy jestem w ogóle w stanie sam odtworzyć takie rozszerzenie do 144k na podstawie tej dokumentacji ze strony yarka. Sama płytka na skomplikowaną nie wygląda ale coś siedzi jeszcze pod romem i pytanie jaki rom ma wsad.
To nie ROM, to flash 128KB zainstalowany w specjalnym adapterze.
Według Jarkowych opisów, pamięć ta zawiera m.in. oryginalny ROM TC2048 oraz ROM Spectrum 128K. Ale jako że jest to flash, możesz sobie załadować coś innego - np. paczkę gier, jak do Dandanatora.
Według mnie schemat przeróbki nie powinien stanowić dużego problemu. Mechanizm sterowania pamięcią w modelach 128K jest powszechnie znany, a patent z dodatkowym blokiem 16KB można sobie spokojnie odpuścić (powstał on głównie ze względu na specyfikę PCB Timexa 2048, gdzie są 3x2 gniazda DRAM).
-
Najlepiej mieć wybór - ładujesz do CPLD taki wkład, jaki Tobie odpowiada.
Do takich zabaw masz cała plejadę na FPGA, m.in. ZX Spectrum Next, ZX-Uno, ZX-DOS, MIST i inne.
-
FPGA to nie ten próg cenowy, nie ten poziom satysfakcji.
-
Dla zainteresowanych lista materiałowa zwana BOMem (http://fatla.eu/timmy/)
-
znalazłem tą płytkę z 80k z timexa 2048
-
:) Jak z Bajtka, żywcem malowana.
-
Matko boska timeksowska...
Nawet UNITRA CEMI się załapała do tego białego kruka :)
-
To jest to pcb, co wyciągnąłem z jednego z Timex-ów z tymi dwoma diodami w obudowie.
Płytki sieciowej już nie było, ale za to była ta i LED-y były podłączone jako sygnalizacja przełączania banków.
-
tak dokładnie tą płytkę mam od Maryjan-a, leży i czeka aż podłaczę do któregoś timexa co mam
-
Dla zainteresowanych poszło w świat: Timmy (https://github.com/McKlaud76/Timmy)
-
Klaudiusz
liczyłeś może jaki może być koszt gotowego komputera?
płyta + elementy do obsadzenia
robocizna własna
-
Bez układu SCLD lub jego zamiennika, koszt materiałów powinien zamknąć się do 300zł.
-
Kawał dobrej roboty. Dzięki
-
Dzięki za udostępnienie projektu. Tak się składa że mam płytę Timexa w trochę złym stanie więc będzie można użyć do Timmyego.
-
chciałbym kupić płytkę lub zestaw bom z płytką lub gotowca
-
Prawdopodobnie z najważniejszym elementem PAL 2068 będzie problem jeśli chodzi o zestawy DIY i gotowce, bo to raczej element niedostępny i jedynie możliwy do pozyskania z kanibalizacji innych starych Timex'ów 2048/2068. ???
Chyba że ktoś znalazł już źródło z nowymi PAL'ami albo ma pomysł na implementację czegoś w zamian ?
-
Szukałem kiedyś układów CPLD w obudowie PLCC68, by zrobić 1:1. Były tylko same małe "pojemności", znalezienie czegoś z minimum 128 makrocelami graniczy z cudem. Dodając do tego różnice w rozmieszczeniu pinów masy/zasilania - niewykonalne.
Dlatego fajną inicjatywą jest wianuszek gniazd dookoła, jak to Klaud zrobił. Tylko szkoda, że tak ciasno - trudno będzie zrobić płytkę z PLCC84. Pozostaną więc tylko "stonogi", ale w sumie są one dostępne, w miarę tanie i wystarczająco pojemne, więc czemu nie.
Chyba, że któregoś pięknego dnia powstanie fabryka custom chipów z sensownymi cenami. Już widziałem gdzieś w necie, że takie coś gdzieś powstało, ale układy wychodziły drogo (nie pamiętam dokładnie, ile).
-
Z custom'ami to jest zwykle tak, że im więcej zamawiasz tym masz taniej, w przypadku rynku retro-hobby nie jest to do przeskoczenia, bo taki rynek się szybko nasyca i ilości liczone w setkach a nie milionach sztuk nie pozwolą na opłacalność takiej produkcji wliczając koszty przygotowania procesu.
-
Tak, ale nie ;)
Cały myk z fabryką custom chipów to ma być udostępnienie (stale taniejących) technologii dla niskich nakładów. W milionach mogą sobie tłuc Intel, AMD w swoich fabrykach na Tajwanie czy gdzieś tam w Chinach. Zrobienie CPLD ze 128, 256 czy nawet 512 makrocelami to nie jest żaden rocket science - może to było na topie 20 lat temu, ale obecnie to technologia stara jak EEPROM-y (i ideowo bardzo bliska, nawiasem mówiąc).
Oglądałem niedawno stronkę jakiegoś studenta, który w domowych warunkach wyprodukował układ scalony :) Fakt, że był to analog i w obudowie DIP (obudowy kupił gotowe), ale strukturę układu sam zaprojektował i następnie wytrawił na krzemowym waflu. Pierwszą wersję chyba nawet ręcznie drutował, potem zdobył do tego jakąś maszynę.
Myślę, że trzeba cierpliwie poczekać, a pojawi się nowa usługa - i wtedy zrobimy zrzutkę na nowe ULA od 48K oraz SCLD do Timexów.
EDIT: Oto stronka tego studenta: http://sam.zeloof.xyz/
-
W milionach to może istotnie przesada, ale tysiącach to już prędzej, jednak coś około setki to zdecydowanie za mało by się opłacało jak się domyślam. :D
Zastanawiam się ile czasu by się musiała sprzedawać setka takich układów np na ebay'u i w takich cenach by pokryć koszty produkcji i jeszcze wygenerować minimalny zysk za tzw fatygę. ;)
-
Mam o tyle komfortową sytuację, że posiadam dwa układy SCLD. Jeden wyrwałem ze swojego starego Timexa, bo jego płyta była/jest w opłakanym stanie i wsadziłem mu inną, w tym samym wydaniu. A drugi układ trepanowałem z TC2068, którego płyta poszła do innego pasjonata na testy, dawcę i uratowanie innego egzemplarza.
Zamiennik SCLD jest wyzwaniem, ze względu na dodatkowe "bajery" w nim zawarte (MMU, tryby wideo, dodatkowe porty, sterowanie AYkiem, sterowanie pamięciami dynamicznymi). Ułatwieniem jest, że SCLD jest w pełni cyfrowe i nie zawiera w sobie obwodów analogowych (np. generowania różnicowych sygnałów wideo). By wszystko zmieścić może okazać się że i 144 makrokomórki to za mało.
-
Myślę, że 160 makrocel to jest rozsądne minimum do pierwszych przymiarek. Pewnie i tak bez 256 się nie obejdzie.
Można jednak zrezygnować w podstawowej wersji z wszystkiego, czego w TC2048 nie ma - czyli AY i MMU. Tryby graficzne (i ewentualnie blokada przerwań, choć tu zbytnio nie widzę zastosowania) to już by było coś.
Co by było za to przydatne, to możliwość blokady portu #FF z jednoczesną implementacją "floating bus".
I jeszcze jedna, dość oczywista sprawa - fizyczny RESET powinien przywracać #00 w porcie #FF.
-
Jeśli ma pasować w miejsce SCLD, to o zerowaniu portu #FF przez RESET zapomnij. Tego nie ma w oryginale. Całą zabawą w pisaniu implementacji będą linie /RAS i /CAS (0, 1 i 2), sterowanie buforami, buforowanie i miksowanie A7 z /RFSH. A cała reszta prawie jak z OpenCores uszłaby.
-
Akurat ja 1szt tego ukladu pal mam i dlatego chcialbym1szt
Klaud a Ty nie masz w zapasie 1szt pcb Timmiego? A moze ktoś juz zamówił i bedzie mial do odstapienia? Tak pytam z ciekawości
-
Nie, nie mam. Timmy w obecnej formie jest wersją rozwojową, wiec raczej nie do produkcji.
-
Ja zamówiłem płytki 5 sztuk. dwie na pewno będę składał. Wystarcza mi wersja rozwojowa. I tak jest tam więcej niż powinno. Co do odstąpienia dla użytkowników forum to nie wiem jak się Klaud na to zapatruje. Wiem że miał z "górki" na handlarzy PCB i słusznie. Póki co czekam bo zdaje się że chińczycy znów świętują. Mnie kosztowało to 180PLN czyli 36PLN za sztukę co jest do przyjęcia. Przydał by się obrazek PCB w skali 1:1 bo tego co jest na git nie potrafię przeskalować. Zastanawia mnie ten przycisk RESET na płycie czy nie będzie kolidował jak w złączu będzie TIof TTL w fabrycznej obudowie ?
-
Nie widzę problemu. A do czego potrzebujesz obrazek? Link do BOMu jest w tym wątku i na githubie.
-
no właśnie chciałem sprawdzić czy ten reset nie koliduje z obudowa TI of TTL
-
Dodałem wydruk płytki w skali 1:1 na A3.
-
Dzięki. sprawdzę
-
Ja zamówiłem płytki 5 sztuk. dwie na pewno będę składał. Wystarcza mi wersja rozwojowa. I tak jest tam więcej niż powinno. Co do odstąpienia dla użytkowników forum to nie wiem jak się Klaud na to zapatruje. Wiem że miał z "górki" na handlarzy PCB i słusznie. Póki co czekam bo zdaje się że chińczycy znów świętują. Mnie kosztowało to 180PLN czyli 36PLN za sztukę co jest do przyjęcia. Przydał by się obrazek PCB w skali 1:1 bo tego co jest na git nie potrafię przeskalować. Zastanawia mnie ten przycisk RESET na płycie czy nie będzie kolidował jak w złączu będzie TIof TTL w fabrycznej obudowie ?
1szt chętnie kupię, ja dla siebie a nie na handel
-
Jakby PCB było do odkupienia to jestem zainteresowany, nie mam luźnego PAL ale może coś ze swoich klonów z CPLD wymyśle na zamiane.
-
Skoro będziecie budowali klona w wersji deweloperskiej, ze swojej strony opiszę i podpowiem, od czego zacząć jego składanie i uruchomienie. Wskazówki będą zawierały informacje od czego zacząć, co jest niezbędne do jego działania, co można pominąć na początkowym etapie.
Elementy funkcjonalne i jak z nimi postępować będą opisane w oparciu o schemat w wersji 0.12 i podzielone na posty:
- Zasilanie, elementy bierne i podstawki
- Procesor, ROM i dolny RAM
- Układ wyjścia wideo i we/wy audio
- Kempston i AY
- Górny RAM
- Układ bankowania górnego RAMu, czyli 80K
Posty mogą pojawiać się nieregularnie. Oczywiście wszelkie uwagi i poprawki do Timmy'iego oraz do instrukcji będą mile widziane.
-
Pominę kwestię kompletowania części, możliwych zamienników i zaczynamy od pustego PCB. Zakładam, że multimetr jest pod ręką.
Część 1 - Zasilanie, elementy bierne i podstawki
Zanim cokolwiek zostanie przylutowane do płytki, warto sprawdzić, czy nie ma na niej zwać pomiędzy zasilaniem +9V i +5V na masą. Do tej czynności wystarczy multimetr ustawiony na pomiar rezystancji. Sprawdzamy:
- zasilanie z zasilacza - pomiędzy polami gniazda zasilania,
- linia +9V - pomiędzy polami kondensatora C18,
- linia +5V - pomiędzy polami dowolnego kondensatora odsprzęglającego, np. C20,
- linia +5V dla obwodów analogowych - pomiędzy polami kondensatora C12,
Skoro nie ma zwarć, pierwszą należy przylutować podstawkę pod SCLD (U2). Jest ona typu PLCC68 w SMD i aby ułatwić sobie lutowanie można z niej usunąć wewnętrzną płytkę. Nie należy żałować topnika oraz zwrócić uwagę na orientację podstawki. W układach w obudowie PLCC68, noga numer 1 jest oznaczona kropką, a róg układu na lewo od kropki jest ścięty. Na płytce Timmy'ego, noga nr 1 jest od strony układu U16 (74LS32). Po jej przylutowaniu warto sprawdzić noga po nodze, czy jest przejście od podstawki do złącz kołkowych wokół niej.
Budowę układu zasilania zaczynamy od wlutowania mostka BR1, kondensatorów C18 i C20, rezystora R50, stabilizatora/przetwornicy DC +5V i gniazda zasilania. Po montażu tych elementów podłączamy zasilanie z zasilacza +9V o dowolnej polaryzacji. Jeśli nie mamy wyłącznika SW2, możemy zewrzeć na sztywno odpowiednie jego pola. Włączany zasilanie i jeśli zamontowaliśmy diodę LED LD1, powinna ona zaświecić się. Warto zmierzyć napięcia w kilku miejscach na płytce, aby potwierdzić, że zasilanie dochodzi do wszystkich miejsc.
Jeśli zasilanie działa tak jak powinno, montujemy:
- wszystkie diody,
- rezystory o numerach poniżej R100 bez R21, R28, R29, R30 i R49 (75R),
- kondensator tantalowy C2,
- kondensatory elektrolityczne poza C25, C38 i C47,
- kwarc X2 14MHz,
- kondensatory ceramiczne o numerach poniżej C100 bez C12, C33, C35, C36, C37 i C42,
- drabinę rezystorową R56-R63,
- tranzystory Q4 i Q6,
- kołki pod zworki JP3 i JP101,
- podstawki pod układy scalone o numerach poniżej U100 i bez U5,
- gniazdo miniDIN-8 MD1,
- gniazda audio J2 i J100,
- przycisk RESET SW2,
- złącze klawiatury KB1.
Sprawdzamy czy nie zrobiliśmy zwać, podłączamy zasilanie i sprawdzamy napięcia zasilania w kilku miejscach na płycie. Tyle na początek wystarczy.
-
Część 2 - SCLD, procesor, ROM i dolny RAM
W poprzedniej poście opisałem montaż elementów biernych potrzebnych dla minimalnej konfiguracji, aby uruchomić Timmy'ego. Teraz zajmiemy się układami logicznymi, które będą niezbędne.
SCLD (U2): pierwszy z układów w podstawkę należy włożyć SLCD. Czynność ta może wymagać odrobiny siły, zależnie od tego czy układ został dobrze oczyszczony z resztek cyny. Warto usunąć z jego kontaktów nadmiar spoiwa przy użyciu plecionki i dobrego topnika, a następnie wymyć go w izopropanolu przed montażem. Należy pamiętać, żeby obchodzić się z SCLD z wyczuciem i przegrzać układu, bo zamienników nie ma!!! Przy jego wkładaniu w podstawkę, należy zwrócić uwagę na orientację. Jeśli podstawka została zamontowana poprawnie, kropka przy nodze 1 powinna być po prawej stronie.
Procesor (U1): tutaj nie ma filozofii i każdy Z80 w technologii CMOS z zegarem od 4MHz w górę powinien działać.
ROM (U3): Timmy został zaprojektowany pod układ typu 27C256, który ma dwa razy większą pojemność niż wielkość ROMu TC2048. Pozwala to na zaprogramowanie dwóch obrazów ROMu i przełączanie ich zworką JP3. ROMy można wybrać sobie dowolnie z jedną uwagą. ROM musi zerować port #FF (255) przy uruchomieniu lub resecie. Najprościej wziąć obraz ROMu z TC2048, a w drugą połówkę zaprogramować dowolny ROM diagnostyczny. Zamiast EPROMu typu 27C256 można wykorzystać EEPROM np. 27E257, 27C257 lub inny o takiej samej kolejności wyprowadzeń.
Dolny RAM (U6 i U7): Timmy tak samo jak TC2048 w swojej budowie wykorzystuje jednonapięciowe pamięci dynamiczne o organizacji 4-bitowej (seria 44xx). Dolny RAM jest zbudowany z układów 4416, które mają pojemność 16KB x 4bity. Zamiast układów 4416 można użyć pamięci 4464 lub 41464. Mają one 4x większą pojemność, ale tylko 16KB będzie wykorzystane.
Układy logiczne: aby uruchomić komputer brakuje jeszcze kilku układów logicznych:
- bufora szyny danych 74LS245 (U4),
- multiplekserów 74LS157 (U13 i U14),
- bufora szyny adresowej 74LS244 (U15),
- logika linii /CS ROMu,
Jeśli nie mamy układu 74LS245, zamiast niego można zamontować osiem rezystorów 470R łącząc nimi: 2-18, 3-17, 4-16, 5-15, 6-14, 7-13, 8-12 i 9-11 U4.
Następnym elementem niezbędnym do uruchomienia jest jedna braka OR z układu U201 (74LS32). Jeśli mamy scalak pod ręką, wkładamy go w podstawkę i sprawa załatwiona. Jeśli nie, możemy zbudować taką bramkę z diody Schottky'ego (np. BAT82) i rezystora 1k0 w następujący sposób:
- rezystorem 1k0 łączymy /MREQ z /ROM_INT: 1-3 układu U201,
- diodą łączymy /ROMCS_EX z /ROM_INT: 2 (anoda) - 3 (katoda) układu U201
Ostatnią rzeczą wartą wykonania przez uruchomieniem Timmy'ego w minimalnej konfiguracji, jest wykonanie zwory pomiędzy linią adresową A0 i sygnałem BNK. Możemy zewrzeć nogi 13-14 układu U13 lub połączyć pole pod nogę nr 6 U200 (A0) z polem nr 5 U202 (BNK).
Klawiatura: jeśli mamy klawiaturę od TC2048 lub TC2068, podpinamy ją. Jeśli nie, można wykorzystać klawiaturę z ZX Spectrum. Złącze klawiatury ma 14 podłączeń a folia od ZX Spectrum ma ich 13 (5+8). Złącze Timexa na pierwszym polu jest podłączone do masy (GND), którą możemy zignorować. Następne 5 pozycji to złącza szyny danych klawiatury (KB0-KB4) i są one w takiej samej kolejności jak wyprowadzania folii klawiatury ZX Spectrum. Pozycje od 7 do 14, to jest 8 linii adresowych, w tej samej kolejności co w ZX Spectrum. Podłączamy:
- taśma z danymi 5 połączeń: 1-6,
- taśma z adresami 8 połączeń: 7-14.
Jeżeli mamy głośniczek o impedancji 32 omy, możemy podłączyć go pod pola LS1, a zworka JP101 powinna być w pozycji 2-3.
Pierwsze uruchomienie: sprawdzamy wszystko, podłączamy TV kablem takim samym jak HQ48, ustawiamy JP3, tak by był wybrany bank z ROMem TC2048 i włączamy Timmy'ego. Po włączeniu zasilania Timmy'ego TV powinien automatycznie przestawić się w trym RGB o proporcjach obrazu 4:3. Na ekranie po charakterystycznym teście pamięci powinien pojawić się znany komunikat:
(c) 1982 Sinclair Research Ltd
a po naciśnięciu dowolnego klawisza znak zachęty "K". Aby sprawdzić dostępną pojemność pamięci RAM wystarczy wykonać prosty program w BASICu:
PRINT PEEK 23732 + 256*PEEK 23733 - 16384
W tej konfiguracji, w jakiej jest Timmy, na ekranie powinna pojawić się odpowiedź: 16383. Podczas pisania na klawiaturze, z głośniczka powinno dochodzić delikatne klikanie. Nasz Timmy działa tak samo jak ZX Spectrum 16K.
Zamiast ROMu TC2048 możemy uruchomić Timmy'iego z ROMem diagnostycznym. Powinien przejść wszystkie testy ULA, CPU, RAM, generowania kolorów łącznie z BRIGHT i FLASH dla ZX Spectrum 16/48K poza testem górnej pamięci, której fizycznie nie ma.
Jeśli nie pojawił się ekran powitalny ... "Houston, mamy problem". Diagnostyka i poszukiwanie błędów wykracza poza zakres tego opisu, ponieważ mogą one być powodowane wieloma czynnikami uzależnionymi od konkretnego egzemplarza, użytych części, montażu, itd.
-
Klaud dzięki za dokładny opis montażu i uruchomienia
możesz wskazać listę części BOM? bo nie mogę się doszukać, ewentualnie spiszę ze schematu
-
Link do BOMu jest na githubie, ale proszę bardzo: http://timmy.fatla.eu/
-
Część 3 - Układ wyjścia wideo i we/wy audio
Timmy ruszył, przyjmuje komendy wpisywane z klawiatury i wyświetla obraz po RGB.
Złącze RGB typu miniDIN8 (MD1) zostało zaprojektowane, aby do podłączenia Timmy'ego do TV przez SCART, można było wykorzystać taki sam kabel jak do Harlequina 48 i kilku innych klonów. Typu kabla nie należy mylić z nowszym kablem RGB(miniDIN9)-SCART przystosowanym do ZX Omni 128. Podłączenie Timmy'ego do TV przez SCART powinno przestawić telewizor w tryb RGB i przełączyć proporcje ekranu na standard 4:3. Wszystko jest uzależnione czy zastosowany kabel jest w pełnej konfiguracji, oraz czy model telewizora poprawnie rozpoznaje sygnały "RGB switch" i "blanking".
Jeżeli komuś wystarczy, że obraz jest dostępny tylko przez RGB, może pominąć poniższy opis układu wyjścia wideo.
Wyjście kompozytowe: SCLD generuje sygnał wideo w formie cyfrowej (sygnały TTL). Generowane są trzy składowe kolorów (R, G i B), sygnał BRIGHT oraz zespolony sygnał synchronizacji (CSYNC). W oryginalnej konstrukcji Timexa, koder PAL był zasilany +12V. W tym klonie zastosowałem nowszy układ AD724JR, który wymaga tylko zasilania +5V, ale jest w obudowie SMD. Aby podłączyć Timmy'ego pod TV z wejściem kompozytowym należy przylutować następujące elementy:
- koder PAL AD724JR (U12),
- kwarc 4.43MHz (X1),
- empirycznie dobrany do kwarcu kondensator C33 - w moim przypadku 8pF było wystarczające, a 10pF było za dużo.
- rezystory R28-R30 i R49,
- kondensatory ceramiczne C12, C35-C37 i C42,
- kondensatory elektrolityczne C25, C38 i C47,
- gniazdo RCA (J4),
- induktor osiowy (L2) lub zamiast niego rezystor 15R (R48).
Jeżeli Timmy wyświetla kolorowy obraz po RGB, uruchomienie układu zespolonego wyjścia wideo ogranicza się do poprawnego wzbudzenia kwarcu X1. Zamiast C33 można wlutować trymer 4-20pF i dostroić go tak, aby kolory po wyjściu kompozytowym były stabilne.
Wejście audio: tak samo jak TC2048, Timmy generuje dźwięki (w sumie piski) przez wbudowany głośniczek. Ponad to dźwięk można wyprowadzić na wyjścia audio na dwa sposoby:
- przez gniazdo J100 (2 x mono),
- na telewizor podpięty pod złącze RGB (mono).
Aby dźwięk generowany przez Timmiego wychodził na zewnętrzny wzmacniacz, głośniczek/słuchawki lub TV, należy wlutować kondensatory C103 i C104 oraz przestawić zworkę JP101 w pozycję 1-2. Jeżeli w gniazdo J100 nie zostanie wsadzona wtyczka, sygnał dźwiękowy popłynie do gniazda RGB i dalej do telewizora po SCART. Należy pamiętać, że w złączu RGB dźwięk jest zawsze monofoniczny.
We/wy magnetofonowe: sygnały EAR i MIC zostały podłączone do gniazda stereo J2. Tor ten jest wzorowany na tym z TC2048 w wydaniu 5 i w pozwala na wczytywanie programów z większości źródeł. Istotnymi zmianami w stosunku do TC2048 są:
- programy wczytywane przez EAR są słyszalne w wyjściu audio,
- do wczytywania i zapisu programów należy użyć kabelka mini jack stereo do 2 x mini jack mono. Taki sam kabelek był używany z ZX Spectrum +3.
Jeśli komuś nie odpowiadają poziomy głośności BEEPera lub we/wy magnetofonowego wyprowadzone z Timmy'ego, należy samodzielnie dobrać nowe wartości rezystorów R32, R38 i R39.
-
Część 4 - Kempston i AY
Kempston: Timmy nie byłby pełnym klonem TC2048, gdyby nie posiadał portu joysticka w standardzie Kempston, czyli na porcie 31 (0x1F). Kilka słów wyjaśnienia, pomimo że ten typ interfejsu jest dobrze znany i opisany w wielu miejscach. Port joysticka TC2048 jest obarczony dwoma niedogodnościami. Pierwszą jest niepełny dekoder adresu portu, który bada tylko stan linii adresowej A5. Taki dekoder powoduje, że port 31 jest odczytywany także dla wszystkich odczytów portów z linią adresową A5 w stanie niskim. Jego konstrukcja mogła wynikać z braku niezbędnej ilości bramek logicznych w zastosowanych układach scalonych. A zmiana konstrukcyjna wymagałaby zwiększenia ilości elementów i co za tym idzie wzrost kosztów produkcji mikrokomputera. Drugą i największą bolączką portu joysticka TC2048 jest jego polaryzacja, która jest odwrotna do przyjętej konwencji. Styki zwierane są do napięcia zasilania, a nie do masy. Budując Timmy'ego zmieniłem dekoder na taki, w którym brane są pod uwagę stany linii A6 i A7, tj. adres Kempstona jest dekodowany jako 000xxxxx. Polaryzacja portu też została przywrócona do "normalnej".
Za bufor wykorzystałem układ 74LS540. Dlaczego ten typ, a nie bardziej popularny 72LS240? "Pinologia" 74LS540 z wejściami po jednej stronie układu scalonego i wyjściami po przeciwnej bardziej mi pasuje. Układ 74LS240 wymaga odrobinę pokręconych ścieżek na płytce, a z natury jestem leniwy. Port joysticka wyposażyłem w organicznik prądu, w przypadku bezpośredniego zwarcia +5V do GND w porcie, w postaci rezystora R21. Jeśli ktoś nie ma rezystora o mocy 0.5 lub 1W, na własną odpowiedzialność, może w jego miejsce wlutować zworę.
Program testujący interfejs Kempstona został opisany na łamach numer 3 Zina80 i warto się z nim zapoznać. Można także samodzielnie napisać trzy linijki programu testującego joystick w BASICu. Dla bardzo leniwych pozostają opcje diagnostyczne wbudowane w niektóre ROMy testowe.
Programowalny układ dźwiękowy (AY): TC2048 wyposażono w ten sam układ SCLD co TC2068/UK2086. Większe Timexy zaprojektowano z układem dźwiękowym typy AY-3-8912 sterowany bezpośrednio z SCLD. Tej funkcjonalności nie wykorzystywano w TC2048. Dlaczego? Możliwe, że z powodu większej kompatybilności z ZX Spectrum 48K oraz wykorzystanych innych portów, niż były ogólnie przyjęte w świecie ZX Spectrum. Timexy do kontrolowania układu PSG (AY) używają portów 0xF5 i 0xF6, zamiast 0xBFFD i 0xFFFD z ZX Spectrym 128K. PSG w TC2068 jest napędzany zegarem 1.75MHz zamiast 1.77MHz używanym w ZX128K lub 1.79MHz z przystawek dźwiękowych tj. Melodik i pochodne.
W Timmy'im zaprojektowałem tor dźwiękowy z PSG typu AY-3-8910 w obudowie DIP40. Układ ten oraz jego klony są tańsze i łatwiej dostępne od mniejszego AY-3-8912, oraz są one w pełni zgodne programowo. Linie sterujące BC1 i BDIR oraz zegar układu PSG zostały podpięte to sygnałów dostępnych z SCLD, co powoduje zgodność Timmy'ego z rodziną Timexa, a nie Sinclaira. Tak, zamierzona niedogodność i odstępstwo od przyjętych standardów, ale takie podejście nie wymagało dodatkowego nakładu pracy i części do dekodera adresów PSG. Możliwe, że w kolejnym wydaniu Timmy'ego zmienię sposób sterowania "grajkiem".
Aby uruchomić tor PSG, należy wlutować wszystkie brakujące elementy o numerach z serii 100, np. R100, C100, itd. Dźwięk trzech kanałow A, B i C jest miksowany do dwóch z możliwością wyboru trybu miksowania: ABC/ACB przez zworkę JP100. Wyjście stereo zostało wyprowadzone na gniazdo J100. Do obu kanałów audio, zostały dodane dźwięki generowane przez BEEPer oraz zapis i odczyt z taśmy (zworka JP101). Jeśli w gnieździe audio nie ma wtyczki, cały dźwięk jako mono jest podawany na gniazdo RGB (MD1).
Programowanie PSG zostawiam innym, ale dla chcącego nic trudnego i każdy może spróbować własnych sił w napisaniu prostego programu w asemblerze, który zamiast portów ZX128K wykorzysta porty Timexa. Punkt startowy poniżej:
ayctrl equ $FFFD ; AY control port (0xFFFD)
aydata equ $BFFD ; AY data port (0xBFFD)
ay_snd ld bc,ayctrl ; select control port
out (c),d ; send specified value
ld bc,aydata ; select data port
out (c),e ; send specified value
ret
-
Pytanie - czy ROM od 2068 zadziała? Wtedy można powalczyć z AY też z Basica. Kiedyś chciałem przerobić Unipolbrita tak, aby AY działał na portach 2068 i 128. Ale nie udało się wylicytować :(
-
Nie, nie zadziała. TC2068 ma ROM zbliżony/bardzo podobny do tego z TS2068, a nie ZX Spectrum. Poza tym ROM z TC2068 ma wielkość 24K i jest podzielony na dwie porcje: 16K + 8K.
Moim zdaniem sama przeróbka ROMu nie wystarczy, ponieważ dekoder adresów obsługujących PSG jest zintegrowany z SCLD.
-
Część 5 - Górny RAM
Uruchomienie 16K dolnego RAMu opisałem kilka postów wcześniej (https://www.speccy.pl/forum/index.php?topic=6033.msg91994#msg91994). Na tym etapie Timmy powinien przechodzić wszystkie testy pamięci, tak samo jak ZX Spectrum 16K. Gry i programy wymagające tylko 16K powinny działać bez problemów. Z demami uważałbym, ponieważ nawet jeżeli będą tylko 256 bajtowe, może okazać się, że korzystają one z pamięci powyżej adresu 32768 (0x8000) i nie ruszą na Timmy'im (na razie).
Górny RAM (32K): Na początek dygresja na temat budowy pamięci w TC2048. W TC2048 wykorzystano pamięci dynamiczne o organizacji 4-bitów. Dolna pamięć została zbudowana z dwóch układów o pojemności 16K. W przypadku górnej pamięci Timex zastosował dwa rozwiązania.
- pierwsze wymagało czterech układów o pojemności 16K typu 4416,
- w drugim zastosowano dwa układy o pojemności 64K typu 4464.
W komputerach z górną pamięcią złożoną z czterech szesnastek (2 x 4bity x 16K + 2 x 4bity x 16K) każdy z jej bloków 16K jest sterowany przez SCLD poprzez dedykowaną linię /CAS. Drugim przypadku organizacji górnej pamięci z wykorzystanie układów o pojemności 64K i tylko dwa układy scalone znajdziemy na płycie głównej. Poza tymi układami (4464 lub 41464) znajdziemy także dwie diody oraz rezystor tworzące bramkę AND dla linii /CAS górnego RAMu.
Odświeżaniem całej pamięci (dolnej i górnej) zajmuje się SCLD, które do linii adresowej A7 dokłada sygnał /RFSH. Sygnał ten znajdziemy na schemacie z oznaczeniem A7RB. Zastosowane pamięci dynamiczne przez Timexa wymagają multipleksowania szyny adresowej i w TC2048 znajdziemy dwa multipleksery typu 74LS157. Są one wspólne dla dolnego i górnego RAMu, oraz sterowane przez SCLD. Takie podejście jest diametralnie różne od tego z ZX Spectrum, w którym dolny RAM jest sterowany własną parą multiplekserów i przez ULA, a górny RAM zbudowano niezależnie z wydzieloną logiką. Z typem zastosowanych pamięci oraz multipleksacją adresów w Timexie są związane pewne niedogodności przy rozbudowie do 128K z bankowaniem pamięci zgodnym z ZX Spectrum 128K.
Od strony sprzętowej Timmy jest zgodny z drugim rozwiązaniem organizacji górnej pamięci RAM. Jeżeli wcześniej wlutowaliśmy rezystor R64 i diody D22, D23 nie mamy wiele do wykonania. Wystarczy włożyć układy U8 i U9 w podstawki. Po włączeniu Timmy powinien zachowywać się jak poprzednio i możemy ponownie wykonać test:
PRINT PEEK 23732 + 256*PEEK 23733 - 16384
na ekranie powinna pojawić się odpowiedź 49151, która oznacza 48K [(49151+1)/1024] pamięci RAM. Dla pewności można przetestować cały RAM dowolnym ROMem diagnostycznym.
Ktoś może zapytać, po co układy o pojemności 64K, skoro wynikowo dostajemy:
16K dolnego RAM + 2 x 16K górnego RAM = 48K
Konia z rzędem temu, kto znajdzie jednonapięciowe układy pamięci dynamicznych o pojemności 32K na 4 bitach. No chyba, że ktoś chce pobawić się w Sir Sinclaira i poszukać układów, które mają uszkodzoną połowę struktury.
Faktycznie w Timmy'im zainstalowane jest 16K dolnego RAM + 32K górnego RAM + 32K niewykorzystanej pamięci. Wolnym obszarem 32K zajmę się w ostaniej części opisu Timmy'ego.
-
Część 6 - 80K na pokładzie
Ze swojej strony mógłbym zakończyć opis klona na tym etapie i zapomnieć o leżącej odłogiem połowie pojemności układów górnej pamięci. Projektując Timmy'ego postanowiłem te dodatkowe 32K RAM jakoś zagospodarować, a historia ma swój początek we wczesnych latach 90-tych. Będąc nastolatkiem, i po ukazaniu się artykułów w Bajtku o rozbudowie ZX Spectrum do 80K oraz kilka miesięcy poźniej po przeczytaniu drugiej części o łatwym rozszerzeniu Timexa o dodatkowe 32K, zacząłem kompletować części. W owym czasie miałem już PCta, więc zabawa w przeróbki przestarzałego i leżącego na dnie szafy komputera wydawała się dziecinnie prosta. W myśl hasła: "Mam lutownicę i nie zawaham się jej użyć" dokonałem dzieła zniszczenia. Owa zabawa skończyła się źle dla mojego TC2048, który umarł i został porzucony przez mnie na strychu na ponad dwie dekady (https://www.speccy.pl/forum/index.php?topic=2803.msg40211).
Projektując i budując Timmy'ego wróciły szczenięca marzenia. Skoro teraz mam chęci i odrobinę umiejętności, to dlaczego nie mam ich spełnić. Odkopałem Bajtka, po raz n-ty przeczytałem oba artykuły i przeniosłem logikę na schemat Timmy'iego. Faktycznie proste i w tym rozszerzeniu pokładałem jakieś niesprecyzowane nadzieje.
Dla dociekliwych rozbudowa ZX Spectrum do 80K była opisana na łamach Bajtka nr 9-10/90. W numerze 11-12/90 Bajtka zajdnduje się opis przeróbki Timexa. Autorem obu artykułów był p. Stanisław Winiecki (STAVI). Muszę dodać, rozbudowa zaproponowana przez STAVI nie jest jedyną a jedną z kilku. W okolicy roku 1983, w Wielkiej Brytanii firma East London Robotics sprzedawała przystawki 80K do ZX Spectrum Issue 1 o nazwie SP80 (https://spectrumcomputing.co.uk/entry/1000377/Hardware/SP80).
Od strony sprzętowej aby uruchomić dodatkowe 32K należy:
- usunąć wcześniej wykonaną zworkę pomiędzy pomiędzy sygnałami A0 i BNK,
- zamontować wszystkie brakujące elementy z serii 200 (prawy dolny róg płytki),
- zworkę JP200 pozostawić w pozycji otwartej.
Po montażu sprawdzamy czy nie popełniliśmy błędu lub zwarcia i włączamy komputer. Jedyną zmianą do stanu poprzedniego jest świecąca się dioda BK0. Uruchamiając ROM diagnostyczny, zostanie on wykonany tak samo jak poprzednio, ponieważ nie obsługuje stronnicowania bloków 32K na porcie 255 (0xFF). Pozostaje nam samodzielne przetestowanie tę funkcjonalność wykonując poniższy progam w BASICu:
10 CLEAR 32767
20 POKE 50000,121
30 OUT 255,32
40 POKE 50000,212
50 OUT 255,0
60 PRINT PEEK 50000
70 OUT 255,32
80 PRINT PEEK 50000
90 OUT 255,0
Po jego wykonaniu na ekranie powinniśmy zobaczyć dwie liczby: 121 i 212, które zostały zapisane i następnie odczytane z komórki pamięci o adresie 50000. Każda z tych liczb jest przechowywana pod tym samym adresem w oddzielnym banku pamięci. Dokładny opis działania programu jest w Bajtku, więc nie będę wnikał w szczegóły.
Od strony wizualnej po wydaniu komendy OUT 255,32 dioda BK0 zgaśnie, a zaświeci się BK1, wskazując drugi bank 32K jako aktywny. Fajny bajer? I tak, i nie, ponieważ wykorzystanie portu 255 (0xFF) do przełączania banków jest niefortunnym rozwiązaniem w przypadku Timexa. Koliduje ono z przełączaniem trybów graficznych. Dowolne demo, które przełącza tryby graficzne Timexa oraz wystawia 1 na szóstym bicie na szynie danych (D5=1) spowoduje zawieszenie komputera przy włączonych 80K. Aby wyłączyć całe rozszerzenie, wystarczy włożyć zworkę JP200 i Timmy zachowuje się normalnie, tak jak przystało na komputer z 48K RAM.
Po chwilowym zauroczeniu znajomością z 80K, mogę stwierdzić, że jest i działa, ale jest one zupełnie nieprzydatne. Może 30 lat temu, miało ono sens. Współcześnie na rynku są dostępne klony 128K i nie kosztują równowartości dwóch rocznych pensji. To rozszerzenie jest echem przeszłości i ciekawostką przyrodniczą.
Na tym kończę powieść w odcinkach, a wznowienia oraz sezonu drugiego nie planuję.
"To już jest koniec, nie ma już nic
Jesteśmy wolni, możemy iść ..."
-
dzięki za te opisy, to jest niezły materiał na artykuł
klony 128k są ale nie ma żadnego z 80k !
a jesteś pierwszy co zrobił klona Timexa 2048 i w dodatku 80k :D
tylko pogratulować
-
@Jacek: dzięki. Na pewno kilka rzeczy można poprawić w tym klonie albo zrobić inaczej.
-
Gratuluję wytrwałości... to bardzo ciekawy kawałek hardware jaki wypełnia pewną lukę wśród konstrukcji ZX'owych.
Moją fantazją jest powstanie konstrukcji bazującej na TC2048, jego obudowie i dodatkowych trybach graficznych ale z adresowaniem 128KB zgodnym z ZX Spectrum 128. Najlepiej bez dedykowanego układu PAL :)
-
Płytki już u mnie. Zamówiłem 5 sztuk ze złoceniem. Tak jak myślałem przycisk RESET wypadł w trochę niefortunnym miejscu. Gdy się włoży w złącze TIof TTL w obudowie to blokuje on RESET. Więcej miejsca jest przy porcie Composite. Powoli trzeba będzie zabrać się za składanie.
-
Temat zasilania ogarnięty. Użyłem fabrycznego zasilacza Timexa 2048.
-
ja też wystartowałem i składam
u mnie też świeci :)
-
Upewnij się czy płyta zamknie się w obudowie jeśli w dolnym rzędzie wlutujesz podstawki precyzyjne (tam gdzie jest RAM i logika 80kB). Raczej powinny być zwykłe.
-
Ledwo bo ledwo ale coś tam i u mnie świeci ;)
-
Zamiennik dla SCLD ? :o
-
Nie mam wolnego SCLD wiec kombinuje ;) Nie wiem czy starczy mi samozaparcia, żeby cos sensownego powstało. Póki co polutuje przejsciówke na CPLD i zaczne myśleć jak tu sygnały dla pamięci dynamicznych wygenerować. Opcje są dwie, 74LS31 albo zegar 28MHz
-
Dodatek - RAM i co dalej z 80K
Timmy żyje swoim ślamazarnym, angielskim życiem, a mnie dopadło lenistwo, marazm lub według współczesnej diagnozy psychoza maniakalno-depresyjna. W ramach stanów euforycznych i gimnastyki wyprostowanych zwojów mózgowych, naszło mnie kilka myśli, w jaki sposób wykorzystać bezużyteczne 80K na pokładzie. Pierwsza myśl, była "128K tak jak w Toastraku", druga mniej optymistyczna "Po co? Skoro tyle klonów ZX128K żyje na wolności.", a trzecia "Nie ma sensu, bo i tak nie dam rady.". Fakt, nie dałem rady na pełne 128K z przełączanym bankiem drugiego obrazu. Proszę bardzo, można sobie poużywać, śmiać się i przytykać "A nie mówiłem? Wyszło tak jak zawsze.", "Przecież to można było przewidzieć!" albo "Ja dałem rade w Speccy, to jesteś cienki Bolo". Cała para w gwizdek i 128K w Timmym nie będzie.
Dlaczego nie i skąd te trudności? Niby wszystko jest na stronie Yarka, opisy, zdjęcia, ale Timex to nie ZX Spectrum. O ile rozbudowa górnego RAMu do pełnych 64K i jego dowolne szatkowanie na bloki 32K, albo 16K nie stanowi żadnego problemu. O tyle, grzebanie przy dolnym RAMie zaczyna się od różnic w adresowaniu pamięci 4416 i 4464, poprzez sposób multipleksacji adresów od strony procesora, do sposobu wewnętrznej multipleksacji adresów przez SCLD.
W Części 2 (https://www.speccy.pl/forum/index.php?topic=6033.msg91994#msg91994) opisu Timmiego, napisałem:
Dolny RAM (U6 i U7): [...] Zamiast układów 4416 można użyć pamięci 4464 lub 41464. Mają one 4x większą pojemność, ale tylko 16KB będzie wykorzystane.
Moje twierdzenie było tylko częściowo prawdziwe i radzę zostawić 4416 w obszarze dolnego RAM. Tak, Timmy ruszy z pamięciami 4464 w dolnym RAMie, ale tylko połowa obrazu będzie wyświetlana prawidłowo. Nie należy spodziewać się, że górna, lub dolna połowa będzie ze śmietnikiem, lecz dolna połowa każdej tercji. Na ekranie pojawi się 6 pasków, każdy o wysokości 4 znaków, z czego co drugi będzie zawierał poprawny obraz. Takie zachowanie Timmiego, a także każdego innengo Timexa (TC2048, TC2068, czy TS2068) wynika, że pamięci 4416 w dolnym RAMie wymagają adresowania 8 wierszy w 6 kolumnach, a 4464 adresowania 8 wierszy w 8 kolumnach. W ZX Spectrym pamięci 4116 wymagają adresowania 7 wierszy w 7 kolumnach, a 4146 i 4164 8 wierszy w 8 kolumnach. Tak to wygląda w praktyce:
Adres VRAM | *ZX Spectrum | *Timex (SCLD) | *Timex (CPU) |
VA0 | A0 i A7 | A0 i A7 | A0 i A0 |
VA1 | A1 i A8 | A1 i A8 | A1 i A8 |
... |
VA6 | A6 i A13 | A6 i A13 | A6 i A13 |
VA7 | - | A7 i A7 | A7R* i A14 |
* A7R linia adresowa A7 z sygnałem /RFSH
Adresy w kolorze czerwonym są ignorowane przez pamięć typu 4416, ale zaczynają odgrywać istotną rolę, przy ich wymianie na 4464. Adresowanie przez CPU i przez SCLD nie zawsze będzie trafiało do komórek pod ten sam adresem, stąd druga połówka każdej tercji pamięci obrazu skutkuje śmietnikiem na ekranie.
Rozbudowa dolnego RAM w ZX Spectrum nie nastręcza większych trudności, ponieważ linia VA7 jest nieużywana dla układów 4116, multiplekser 'LS157 ma jedną linię wolną i poza detekcją oraz przełączaniem drugiego banku obrazu, nie nastręcza ona większych trudności technicznych. Układy 4146 są tożsame z 4116 dla linii VA0 do VA6, a VA7 możemy sobie wykorzystać według "własnego widzi mi się". Poza tym można żywcem podpatrzeć i skopiować dekoder portu 0x7FFD z Toastracka. Należy dodatkowo rozpoznać, czy jedna z multipleksowanych linii adresowych ULA podaje ustalony stan 0 albo 1, czy też jest w stanie wysokiej impedancji, kiedy pamięci są adresowane przez CPU.
W przypadku Timexa, sprawa komplikuje się. O ile mamy dostęp do sygnału sterowania buforem na multipleksowanych liniach adresowych, o tyle trzeba jeszcze oszukać SCLD i przekrosować odowiedno linie VA0 i VA7, oraz fizycznie rozdzielić je od linii MA0 i MA7 górnego RAM. Ilość układów scalonych potrzebnych do tego zadania, aż prosi o wykorzystanie układu programowalnego, np. CPLD, w tym celu. I tu zatrzymałem się.
Górne 64K RAM - czyli 80KB na pokładzie.
Zostawiam dolny RAM o pojemności 16K, ale nadal górny jest o pojeności 64KB, z 32K wykorzystanymi zgodnie z zamysłami inżynierów Sinclair Research. Drugie 32K jest bankowanie w Timmym, ale jak wspominałem, moim zdaniem bezużyteczne w praktyce. Było kilka innych rozwiązań 80K w ZX Spectrum, każde z nich opierało się o to, że całe 32K jest przełączane, każde z nich wykorzystywało inny port do tego celu i w zasadzie żadne z nich nie było w jakikolwiek sposób zgodne z bankowaniem pamięci z Toastracka, poza jednym: Wonder 80K. Cały opis i schemat tego rozwiązania jest na stronie Yarka. Sprawdziłem w praktyce i działa ono po drobnych korektach w dekoderze adeesu portu. Nie jest to pełne przełączanie tak jak w Toaskracku, a pewna zgodność z tym rozwiązaniem. W zakresie adresów 0xC000 - 0xFFFF są umieszczone 3 banki po 16kB każdy. Banki 1 i 2 są adresowane w miejsce par banków 1-4, 3-6 z bankowania Toastracka. Programy korzystające z tych par i tylko z tych par np. na muzykę do AYka, dostaną nowe życie, którego nie miałyby na 48K z dopiętym AYkiem.
Konkuzja? Raczej w stronę Wonder80K pójdzie zmiana w Timmym.
-
Proszę bardzo, można sobie poużywać, śmiać się i przytykać "A nie mówiłem? Wyszło tak jak zawsze.", "Przecież to można było przewidzieć!" albo "Ja dałem rade w Speccy, to jesteś cienki Bolo". Cała para w gwizdek i 128K w Timmym nie będzie.
Wyluuuuuuuzuj :) Chyba, że to objaw tej psychozy, biedaku ;)
Do mnie dotarło, że po prostu gra niewarta świeczki, za dużo logiki trzeba dopakować, i tyle.
Z drugiej strony - szkoda, bo brakuje dobrego, taniego klona (klona! Nie emulatora!) ze 128K i trybami timexowymi.
Ja ze swej strony dziękuję za solidną analizę problemu i podzielenie się szczegółami oraz konkluzjami.
Raczej w stronę Wonder80K pójdzie zmiana w Timmym.
Szkoda, ale co zrobić.
Osobiście nie widzę wielkiego sensu w rozszerzaniu pamięci do 80K, bo jest bardzo mało programów, które z takiego rozszerzenia korzystają.
Pozostaje mi żyć nadzieją, że kiedyś powstanie klon Timexa, pozbawiony jego pierwotnych ograniczeń - analogicznie, jak powstały klony 48K z pamięciami SRAM w miejsce DRAM.
-
Dzięki Jacku. No i jestem wyluzowany, prozak z rana i po sprawie :P
Sam SRAM zamiast DRAM to bułka z masłem, o ile ma być klon, który nie będzie oparty o SCLD lub jego potencjalny zamiennik. Wtedy całego Timexa możnaby zamknąć w 6 układach (Z80, ROM, 128K RAM, CPLD/FPGA, AY i AD724).
-
Za 'bajtkowym' 80k przemawia fakt że, przynajmniej ja, spotkałem się z dziesiatkami gier przerobionych tak aby grały muzę w grach. Innych sensownych zastosowań nie było (oprócz jednego kopiara autorstwa Kato, o ile dobrze pamiętam), nawet dema z kolekcją muzyczek tego nie wykorzystywały. Główny powód za tym 80k -- sentyment oraz kilka gier, które gdzieś leżą na kasetach/dyskach i zostały przerobione tak aby działały z tym rozszerzeniem.
Podejrzewam że Wonder80k ma podobny sens.
-
Trzy stany świadomości Timmy'ego:
(http://fatla.eu/pub/TC2048/SCLDv3_01.jpeg)
To nie jest moja implementacja, tylko ją testuję. Implementacja nie jest publiczna.
W implementacji zawarte są wszystkie tryby Timexa, sygnały z oryginalnego SCLD łącznie z liniami /BE, /ROSCS, /EXROM, 50/60Hz, sterowaniem multiplekserami i buforami, zaimplementowano porty 244 i 255, oraz możliwość wyboru sterowania AYkiem na portach Timexa lub ZX128.
-
No, panie kolego, jak widać blisko, coraz bliżej.
-
No i dla mnie to jest przełom. Nareszcie będzie lekarstwo na bolączkę braku SCLD.
No i jest też drugi aspekt - być może któregoś pięknego dnia obecne klony Spectrum z wystarczająco pojemnymi SCLD staną się klonami Timexów :)
Tak czy siak - chapeau bas!
-
Super :) Co za CPLD tam siedzi ?
-
Jak znam życie, to jakiś Xilinx.
-
Platforma testowa:
(http://fatla.eu/pub/TC2048/SCLDv3_02.jpeg)
I pierwsze testy:
- ROM diagnostyczny (https://youtu.be/Kbmt1aaxG9M)
- Shock (https://youtu.be/hHNBAHijcB0)
- Timmy (https://youtu.be/iiBXe4liC-s)
-
Klaud, a wiesz może, czy synchronizacja INT do ramki (lub odwrotnie) jest po gumiakowemu, czy po timexowemu?
-
14336/14335 w Speccy vs 14321 w Timexie, będę musiał sprawdzić. Na tę chwilę są raczej spektrumowe.
-
Przymiarka mniejszej wersji zamiennika do płyty TC2048 na kołeczkach o rastrze 1.27mm.
-
Ładne cacko :D
-
Czas napisać kilka słów o zamienniku SCLD, bo taki jest i działa, ale od początku. Autorem tego zamiennika jest Mark Smith, który zaprojektował dobrze znanego SLAMa. Dzięki uprzejmości Marka, otrzymałem od niego wsad oraz 4 płytki. Jedna płytka poszła na znajdowanie błędów w ścieżkach i jedną uszkodziłem przy próbach z montażem elementów SMD. W ostateczności zbudowałem 2 w pełni działające zamienniki. Od kilku tygodni bawię jednym z nich w Timmym. Od strony implementacji CPLD nie ma co rozwodzić się, ponieważ Mark wykonał kawał dobrej roboty i zaimplementował wszystko to co było w oryginalnym SCLD. Wyzwaniem było i jest zmieszczenie samego CPLD i układów pomocniczych na płytce o wymiarach obudowy PLCC-68 , tj. 25,4 x 25,4 mm. Wymiary PLCC68 narzucają ograniczenie się do układów o 100 wyprowadzeniach, a i tak jest ciasno. Ponad to CPLD powinno, albo działać na napięcie +5V, albo akceptować takie poziomy napięć na wejściach. Wyboru nie ma za wiele, chociaż oba potencjalne układy są typów które wyszły lub zaraz wyjdą z produkcji. Mając do dyspozycji 160 albo 144 makrokomórki, nic dodatkowego nie zmieści się w nich. W tym konkretnym zamienniku jest Altera MAX7000S. Mark ma w opracowaniu wersję na Xilinxie, ale jest w nim odrobinę za ciasno. Wszystkie układy pomocnicze wylądowały na spodniej stronie płytki i aby zminimalizować wysokość całości, PCB jest o grubości 1mm zamiast standardowej 1,6mm.
(http://fatla.eu/pub/TC2048/SCLDQ_02.jpg)
Bez książki o ULA'i ZX Spectrum oraz działającego SCLD, nie byłbym w stanie uruchomić tego zamiennika. Najwięcej problemów miałem ze znalezieniem brakującego pull-upa na jednej linii wejściowej oraz z wyjściem na magnetofon/beeper. Na szczęście w płytę Timmy'ego ze złączami kołków wokół gniazda PLCC, montować i demontować zamiennik bez najmniejszych problemów.
(http://fatla.eu/pub/TC2048/SCLDQ_01.jpg)
Na tę chwilę mam pewien pomysł w jaki sposób można by zamontować ten zamiennik w oryginalnym Timexie i aby był on zdejmowany. W grę wchodzą tylko złącza kołkowe o rastrze 1,27mm (0,05") i takie same gniazda. Mam nawet kandydata, którego pozbawię SCLD. Zanim wezmę się za niego, muszę potrenować zdejmowanie przyspawanego układu w PLCC i montaż gniazd na czymś innym, bo płyta Timexa jest zbyt delikatna. Tak na marginesie, przeprojektowałem płytkę ALE zrobiłem na niej błąd i otwory na złącza kołkowe są przesunięte 0,635mm i nie pasuje ona do Timmy'ego.
(http://fatla.eu/pub/TC2048/SCLDQ_03.jpg)
Czy i kiedy będzie ten zamiennik dostępny w sprzedaży? Nie mam pojęcia, ponieważ wsad jest objęty licencją i osobiście nie planuję jego produkcji, bo od tego są specjaliści.
-
No panie kolego, to chyba najlepsza wiadomość na 2021r. - jak dla mnie.
Gratuluję wytrwałości.
Mark pokazał jeszcze raz pokazał klasę w dziedzinie implementacji z SCLD do CPLD.
Mam nadzieję, że będzie można kiedyś nabyć takowy zamiennik, bo mój SCLD, na którym chciałem uruchomić Timmi-ego okazał się uszkodzony.
-
Gratulacje Klaud! Dopiąłeś w końcu projekt do końca!
-
Ktos wie jak Mark to robi ? Analiza oryginalu z zewnatrz czy od srodka ? No to zaczynam wierzyc, ze powstanie zamiennik ASICa do Sama i JustSam :)
-
ULA do ZX Spectrum jest dobrze udokumentowana, a dodatkowe "ficzery" Timexa sa opisane w kilku dokumentach TMX. Potem pozostaje metoda prob i bledow, poprawki w kodzie i duzo czasu na ich weryfikacje. Z tego co rozmawialem z Markiem, SLAMa zaczal ok 2015r i w sumie wiele nowych rzeczy dszlo przy SLAMie 48K. Dla SCLD dolozyl kilka rozwiazan zwiazanych ze specyfika Timexa, a swoja implementacje weryfikowal w hardware TC2068.
-
Szacunek dla czlowieka. Co prawda Polacy ULE tez rozlozyli i to w starych czasach, ale diabel w detalach, a w SCLD jest tego troche. Moze jednak Mark pokusi sie na ASICa z SAMa.
-
W obecnej wersji Timmy'ego (0.12) jest poważany błąd na płytce związany ze złączem krawędziowym. Wszystkie sygnały w złączu są zamienione stronami, czyli te które powinny być na górze są na dole, a te z dołu na górze. Schemat jest poprawny.
-
Też sobie tak ostatnio zrobiłem w jednym interface :)
Zgodnie z przysłowiem "Ten się nie myli, co nic nie robi".
-
Mój Timmy ożył.
Dzięki uprzejmości konstruktora stałem się posiadaczem SCLD Q - roboczej wersji zastępującej PAL 2068 :)
Jak widać na załączonych zdjęciach, na błąd złącza też jest sposób :)
Zaczynam testować interface, które posiadam.
Jak na razie DivMMC i kilka jego mutacji działa bezproblemowo.
-
:) Ładna przejściówka do złącza krawędziowego i gratuluje uruchomienia.
Pamięci jakie mają czasy dostępu?
Widzę, że przy kwarcu dla AD724 dałeś kołeczki do których jest przylutowany kondensator. Jaką ma on pojemność?
Czy masz stabilny obraz po kompozycie i czy jest on bez przebawień na literach (papier biały, litery czarne, bright wyłączony)?
Z DivMMC nie było problemów z zegarem? Chociaż w sumie nie powinno, ponieważ na zamienniku jest dedykowany inwerter dla sygnału zegarowego wyprowadzonego na złącze krawędziowe.
Pewnie zauważyłeś, że CPLD jest dość ciepłe, w zasadzie od samego włączenia.
-
dół - TMS4416 -12
góra - M4164 -10
Pojemność kondensatora wynosi u mnie 6,8pF.
Obraz jest jak żyleta. Czy to przez RGB, czy to przez CVSB.
Podłączałem DivMMC z fix-em zegarowym i bez. Oba działają poprawnie.
Fakt, CPLD jest ciepłe. Pewnie nieźle tam się w środku dzieje :)
Jutro się pobawię FDD 3000, choć w zasadzie będzie to FDD 35 i Ti-of-TTL.
-
W następnej wersji (o ile taka będzie) można pokusić się o wyprowadzenie portów I/O z AY-ka.
Np. w postaci punktów lutowniczych, czy też kołków.
Ostatnio pojawia się trochę projektów wykorzystujących te porty.
-
Jasne, że można by. Tylko jak to wyprowadzić? Zwykłe 8 pinów w jednym rzędzie i niech użytkownik martwi się jak te I/O wykorzystać? Jeśli pisząc o tych nowych projektach na portach I/O AYka i miałeś na myśli WiFi, to jest kilka nieścisłości związanych z zastosowaniem modułów ESP. Na pierwszy rzut przychodzi pytanie, który moduł ESP-01 czy ESP-12? Oba są na 3,3 V i nie są tolerancyjne dla sygnałów TTL (logika 5 V). Dochodzi do nich dodatakowe zasilanie, translacja poziomów dla sygnałów od AYka do ESP. I w sumie na koniec zostaje do uporządkowania bałagan w samych implementacjach. ZXSpectrum Next ma na pokładzie ESP-01, a rozwiązanie które używa np. Tygrys ESP-12, a każde z nich używa innych GPIO w ESP. Ostatnio w Harlequinie i podobnych pojawił się moduł WiFi, ale on z kolei raczej używa innych linii portu AYka, niż te w ZX Spectrum 128K. Jest bajzel i tyle.
ALE przeszło mi przez myśl, aby zrobić "uniwersalne" złącze pod ESP-01 + adapterek pod ESP-12 i coś tam narysowało się.
-
Tygrysowe Wi-Fi też, ale są jeszcze moduł RS232 i jakiś interface MIDI.
Widzę kilka zmian na pcb. Min. reset przeniesiony obok wyłącznika zasilania.
Jednak musiałem na SCLD Q przykleić radiator, bo mi się płyta po ok 45 min pracy zaczeła "wieszać".
Radiator wyeliminował tą przypadłość.
-
Nie wiem co to za CPLD, ale taki Xilinx ma w opcjach możliwość pracy z obniżonym poborem energii.
Nie zauważyłem, żeby ten tryb pracy zmniejszał wydajność, a temperatura znacząco spada.
-
Rzucę okiem na wybraną optymalizację w Quartusie, lecz nie oczekiwałbym wiele, ponieważ Altera pęka w szwach.
Co do złącza portu AYka, wyprowadzę 2x4 piny i na nich sygnały:
1 - GND
2 - IOA7 (Rx - wejście 1)
3 - IOA6 (CTS - wejście 2)
4 - n/c
5 - IOA2 (RTS - wyjście 2)
6 - /RESET
7 - IOA3 (Tx - wyjście 1)
8 - +5 V
Układ sygnałów prawie identyczny do tego z ESP-01, tylko poziomy są TTL a nie LVTTL. Podłączenie MAX232 będzie banalne i zgodne z tym co jest w toastracku. Podłączyć ESP-12 też można, ale będzie potrzebny regulator napięcia i kilka rezystorów. Propozycja WiFi Tygrysa pójdzie wprost, bez dodatkowych elementów.
-
Więc FDD 35 i Ti-of-TTL działają.
Udało mi się wczytać terminal w wersji dla Timex-a oraz uruchomić CP/M 2.2
Wszystko działało poprawnie.
Program kopiujący wykrywający rozbudowę do 80k działa.
Trochę zdjęć poniżej.
-
Dzięki za te testy i poświęcony czas.
Chyba możemy nieśmiało napisać, że na speccy.pl powstał w 99% działający klon Timexa TC2048.
-
Jak dla mnie, jest super.
Trzeba by tylko jakoś opanować ten "krzak gorejący" SCLD Q :)
-
Super że udało się sklonować Timexa oraz SCLD, a całość działa prawidłowo!
-
Może pójść za ciosem w stronę Timex TC2144 ?
-
Nie wiem co to za CPLD, ale taki Xilinx ma w opcjach możliwość pracy z obniżonym poborem energii.
Nie zauważyłem, żeby ten tryb pracy zmniejszał wydajność, a temperatura znacząco spada.
Ale z tego co zrozumiałem, ta wersja jest na Alterze EPM7160, bo Xilinx XC95144 okazał się za ciasny.
Może pójść za ciosem w stronę Timex TC2144 ?
No właśnie? Ale pewnie rozchodzi się o brak źródeł i Mark musiałby to zrobić? Bo bez modyfikacji wkładu raczej nie będzie drugiego ekranu.
No i raczej bym tu widział 128 KB, a nie 144. Tu akurat więcej nie oznacza lepiej. Bo lepiej trzymać się standardu, niż protezy.
-
Z tego, co pamiętam Yarek rozbudował Timex 2048 do 144kb i to działało w zgodności z ZX 128k.
No chyba, ze coś pokręciłem, to zweryfikujcie.
-
Z tego co ja wiem, nie było w tej implementacji drugiego ekranu. Problem wynika z trudności instalacji pełnych 64 KB jako "dolny" RAM. Tak więc yarkowe rozwiązanie nie dotyka "dołu", implementując 2x64 KB na "górze", z mechanizmem bankowania zbliżonym do 128K (toastrack/+2) tylko w zakresie najwyższej ćwiartki pamięci (49152-65535).
-
Ale jakaś zgodność z ZX 128k jednak była.
Choć bez drugiego ekranu to raczej rozbudowa taka sobie.
-
Może się mylę. Ale nawet nie mam jak zweryfikować.
Wiem, że Yarek coś kombinował z demontażem SCLD i podłączeniu go przez przejściówkę, więc może właśnie o to w tym chodziło. I wersja, jaką przywiózł kiedyś na party do W-wy, właśnie miała SCLD podrutowane do PCB.
EDIT: na jednym ze zdjęć widzę, że Yarek przełożył 2x4464 do sekcji B (16384-32767), a 2x4416 pozostało w sekcji C (32768-49151) i to jest to dodatkowe 16 KB. Może więc jednak był drugi ekran! Na podstawie zdjęć trochę trudno jest wszystko rozszyfrować...
A sprawa nie jest banalna, bo konsekwencje zamiany dolnego RAM z 4416 na 4464 dość szczegółowo opisał już Klaud (https://www.speccy.pl/forum/index.php?topic=6033.msg92743#msg92743).
-
Zaletą SCLD jest to, że z niego wychodzi sygnał do sterowania buforem 74LS244 o nazwie TS (Tri-State). Jest on w stanie niskim, kiedy wyjścia adresowe SCLD (VA0 do VA7) są w stanie wysokiej impedancji, czyli procesor może sobie sięgać do dolnego RAM. W ZX Spectrum tego sygnału nie ma, bo też nie ma bufora na szynie adresowej i cała zabawa z drugim obszarem pamięci obrazu kręciła się wokół wykrycia tego stanu ULA.
Jeśliby wewnętrznie w SCLD zmienić multipleksację szyny adresowej pamięci obrazu dla adresów VA0 (MA0') i VA7 ( MA7') na:
- VA0: A0 i A15
- ...
- VA7: A7 i A14
to 128K z wykorzystaniem kostek 4464 i zewnętrznym dekoderem portu #7FFD jest na wyciągnięcie ręki. Taka multipleksacja daje zgodność wsteczną z każdym Timexem bez rozbudowy do 128K i w którym dolny RAM jest na układach 4416. Jednak dla potrzeb klona można by pójść krok dalej zmieniając multipleksowane linie na:
- VA0: A0 i A7
- ...
- VA7: A14 i A15
oraz na multiplekserach zewnętrznych:
- MA0: A0 i A7
- ...
- MA7: A14 + /RFSH i A15
Mielibyśmy w zasadzie przeszczep z ZX Spectrum.
Ponad to mając dostęp do dekodera portu #1FFD (w sumie można to zrobić na jednym układzie wraz z dekoderem #7FFD) i dokładając jeden przerzutnik D z uwzględnieniem stanu D2, mamy sterowanie dwoma bankami ROM i odpowiednik ZX128K +2A/B i +3.
-
A po co /RFSH? Ze względu na zmianę na VA7 (A14 zamiast A7)?
Ponad to mając dostęp do dekodera portu #1FFD (w sumie można to zrobić na jednym układzie wraz z dekoderem #7FFD) i dokładając jeden przerzutnik D z uwzględnieniem stanu D2, mamy sterowanie dwoma bankami ROM i odpowiednik ZX128K +2A/B i +3.
Bez All-RAM? Jaki w tym sens?
-
Tak, 4464 wymagają 8-bitowego odświeżania. O ile możemy odpuścić odświeżanie dolnego RAMu, ponieważ w cyklu 4ms zawsze będzie jakaś operacja na pamięci obrazu (na pewno odczyt), co nam załatwia odświeżania. O tyle górny RAM może nie być odświeżany, bo będzie leżał sobie odłogiem.
"All RAM" fajnie, zawsze można o nim pomyśleć, ale mając dwa banki ROM możemy mieć IDE z ROMem +3e i RAMdysk.
-
Może to i głupie pytanie, ale do czego tak w praktyce przydaje się tryb All-RAM ?
W sensie, jakie oprogramowanie potrzebuje takiego rozwiązania.
Mogę sobie wyobrazić że chyba CP/M, czy coś jeszcze?
-
Aby zbudować zamiennik ASICa z +2A/B i +3 z trybami Timexa ;)
-
Kiedyś chyba jeszcze trafiłem na jakiś manager plików czy player gdzie ktoś w opisie wspomniał o o All-RAM mode.
-
All-RAM otwiera drogę do CP/M (co z trybem hires ma większy sens, niż w oryginalnym +3), jak również do eksperymentów z MP/M i innymi mutacjami CP/M, fuzixem (https://www.speccy.pl/forum/index.php?topic=5141.0) itp.
Aby zbudować zamiennik ASICa z +2A/B i +3 z trybami Timexa ;)
O, to, to :)
-
Wolne chwile z termometrem i kartą SD z demami, aby zaprząc do roboty CPLD. Pomiary robiłem sondą do multimetru, przyklejoną do układu. Sonda taka jaka była w pudełku z miernikiem, wiec raczej nie sama temperatura jest istotna, a jej zmiany. Temperatura w pokoju 24°C:
- SLCD Q w stanie spoczynku 68°C,
- SLCD Q przy demach: do 74°C i po jej przekroczeniu śmietnik na ekranie
Nowa wersja wsadu z ograniczeniem poboru mocy:
- SLCD Q w stanie spoczynku 53°C,
- SLCD Q przy demach: do 58°C.
Pomiary temperatury były bez dodatkowych radiatorów na CPLD.
Znalazłem inną Alterę z tej samej rodziny, która chodzi na 3,3 V i jest "+5V tolerant". No i bez zmian pasuje do płytki, po ucięciu jednej ścieżki i dodaniu małego LDO. Kilkanaście zielonych to nie majątek, więc jedzie z Chin.
-
Można by to obadać kamerką termowizyjną, byłby to może ciekawy temat na post ;D
Mam dostęp do kamery Fluke, jednak brak Timmiego utrudnia mi sprawę ;)
-
Już jestem po "upgrade" firmware w ALTERA.
Przy okazji wyszło, że lepiej mieć dwa różne programatory - klony USB BLASTER.
Jeden pokazywał, że 100% ok i Timmy był martwy obrazowo.
Drugi zatrzymał się na 93% po czym po dłuższym namyśle dobrnął do 100% i Timmy ruszył.
Faktycznie, jest chłodniej a przede wszystkim stabilniej.
Nie znalazłem w swojej kolekcji interface, który by nie ruszył z Timmy-m.
Jak na razie też, żaden program, albo demko się nie wykrzaczyły.
Niektóre nie działały, ale te, co ruszyły, to już działały.
-
Od 3 dni męczę ten "wsad" na moim podrutowanym Timmy i docelowej płytce pod SCLD. Co do niedziałających demek, u mnie nie ruszył "Aeon", ale nie wiem czy on działa na TMX.
A czy AY bzyczy w demkach tak jak powinien? Na zamienniku SCLD jest możliwość przestawienia portów na Timexowe dla jego pełnej zgodności w oryginałem. Domyślnie zamiennik pędzi AY-ka na portach 128K.
-
U mnie gra w każdym demie. Jak na razie.
Tylko zabrakło mi AY-3-8910 i musiałem podeprzeć się Yamahą.
Niestety, nie brzmi dźwiękowo tak samo jak AY z wiadomych wewnętrznych powodów.
-
Wersja 0.2 w pełnej krasie. Więcej info będzie później.
-
Ładne, ładne.
Nawet bardzo ładne.
Cóż to za zamiennik AY-ka tam stoi ?
I widzę, ze wi-fi też już siedzi.
No panie dzieju, nowoczesność w domu i zagrodzie ;)
-
Super się prezentuje :o
A zamienników do AY trochę jest https://www.speccy.pl/forum/index.php?topic=4087.msg62245#msg62245
Z80 to chyba CMOS. Nie ma problemów ?
-
Cóż to za zamiennik AY-ka tam stoi ?
Firmy File. Spotykany głównie w automatach do gier. Też mam ich garść, bo za pół darmo na Ali były kiedyś :) Tak samo Winbondy. I jeszcze jakieś Microchipy się do mnie przykleiły, ale chyba nie z Ali.
-
Kilka wyjaśnień:
- PSG jest klonem AY-3-8910 produkcji File, bo mam ich kilka. Mam też JFC i Winbondy. Wszystkie działają tak samo jak PSG z GI czy Microchipa.
- Na złącze kołkowe w lewym dolnym rogu są wyprowadzone 4 porty PSG dla dowolnego wykorzystania. Ich opis jest na płytce.
- Ten Z80 jest CMOS, ale jest chyba chińską malowanką. Tak, działa bez problemów, ponieważ sygnał zegarowy jest taki jaki powinien być.
- Z80 Ziloga w CMOS też działa poprawnie. Z NMOSów testowałem tylko z NEC D760C.
- To nie jest WiFi a BT audio, o którym pisałem kilka postów wcześniej. Można wczytywać bezprzewodowo z komórki czy laptopa, zamiast z TZXduino.
Maryjan testował różne interfejsy, które są czułe na jakość sygnału zegarowego na złączu krawędziowym. W zasadzie, wszystkie działały bez zająknięcia. Sam sprawdziłem z DivMMC, z którego wyrzuciłem "polepszacz" zegara i działał bez problemów.
-
Strona "eko" i poboru energii Timmy'ego przy zasilaniu z zasilacza labolatoryjnego napięciem + 9V:
Test | TC2048+SCLD PAL | Timmy+SCLD Q | Timmy+SCLD Q eko |
stan jałowy | 0,32 A / 2,9 W | 0,39 A / 3,5 W | 0,31 A / 2,8 W |
stan jałowy + DivMMC | - | 0,43 A / 3,9 W | 0,36 A / 3,2 W |
DivMMC + demo | - | 0,46 A / 4,2 W | 0,38 A / 3,5 W |
W TC2048 jest zamontowana przetwornica DC-DC zamiast stabilizatora LM7805.
Moim zdaniem 3,5 W w trybie "eko" ;) z dodatkowymi zabawkami na pokładzie (logika 80K RAMu, AY i BT), w porównaniu z golasem TC2048 nie jest złym wynikiem.
-
Bardzo fajne porównanie, no i świetny wynik. Rozumiem, że pobór prądu dotyczy tylko SCLD/zamiennika?
Swoją drogą, zastanawia mnie różnica między stan jałowy + divMMC od DivMMC + demo. Sam CPU, czy się stoi, czy się leży, zużywa mniej więcej tyle samo energii, bo Z80 nie ma trybu idle/low power itp. Tak samo pamięć - dostępy są mniej więcej regularne. główną różnicą będzie więcej dostępów do RAM, a mniej do RM. Czy to demo na bieżąco korzysta z divMMC?
-
Nie, pobór energii dotyczy całego komputera. Stan jałowy, to taki kiedy poza napisem powitalnym na ekranie nie ma nic więcej. Przy DivMMC, nie ma znaczenia czy jest ono wpięte i wisi bezczynnie, czy czyta z karty. Kilka mA nie robi różnicy. Mam DivMMC na karty mikro, więc może być inaczej przy tych które mają pełnowymiarowe karty SD, albo wręcz DivIDE z kartą CF.
Tryb "eko" to jest uaktualniony wsad, aby zamiennik SCLD nie robił za patelnię do jajek.
Testowałem różne dema i Timmy najwięcej "żarł prądu"przy demach które albo robiły efekty na całej rameczce, albo takich w których następowała duża i częsta zmiana jasności całego obrazu.
-
Używałem swojego Timmy-ego co najmniej 2h bez przerwy przez kilka dni.
Leciały różne demka oraz były podłączane różne interface.
Wszystko działa sprawnie i bezproblemowo, a mam wersję płyty 0.2 - jedną z pierwszych.
Oczywiście gry/dema, które nie działają z oryginalną płytą TC2048, tu też nie ruszą.
Myślę, że osoby z uszkodzonymi TC 2048 jeśli dowiedzą się o tym projekcie, mogą być zainteresowane.
Jak tak miałem, jak dowiedzieli się o klonie Opus Discovery :D
-
Maryjan: masz płytę 0.11, tę wymagającą drutowania górnego RAM, ROMu i złącza krawędziowego. Fakt jest ona z pierwszej wersji która poszła do produkcji.
Wersja 0.12 była udostępniona na githubie, ale już nie jest. Wersja 0.2 nie jest dostępna w domenie publicznej.
Co do tych chętnych ... nie sądzę, bo TMX jest niszą. Poza tym, nie mam manufaktury, bo nie mam na to czasu ani chęci.
-
W sensie, nie będzie można kupić PCB? Ani zamiennika SCLD? Czy po układ należy się meldować do autora wkładu, a projekt PCB gdzieś leży online?
-
Faktycznie, mam rev. 0.11
Co tym bardziej wychodzi na plus, że w w/w rewizji płyta działa wręcz koncertowo.
Tym bardziej chciałem Ci podziękować, bo mam unikat :)
-
Schemat Timmy'ego 0.2 jest upubliczniony na githubie (https://github.com/McKlaud76/Timmy), a BOM leży na mojej stronie (http://timmy.fatla.eu).
Myślę nad serią 10 sztuk płyt wraz z gotowym zamiennikiem. Jeśli się sprawa zmaterializuje, info będzie na bazarku.
-
Myślę nad serią 10 sztuk płyt wraz z gotowym zamiennikiem. Jeśli się sprawa zmaterializuje, info będzie na bazarku.
O, i to jest dobra wiadomość :) Bo schemat i BOM to jednak za mało (przynajmniej dla takich dwuleworęcznych leni i malkontentów, jak ja).
-
Warto czekać, oj warto :)
Zwłaszcza, jeśli ktoś ma obudowę od TC 2048.
Wg. mnie, naprawdę udana konstrukcja.
-
Przyszedł czas na przetestowanie tzw. interface stacji dysków.
Wiec tak:
- FDD 3000/3 działa bez problemu
- D+ - działa bez uwag
Natomiast:
- Interface 1 + Microdrive - nie chciał mi ruszyć,
- Opus Discovery (klon) - nie działa - śmieci na ekranie,
- Beta disk 128, Beta disk 48 - działają połowicznie.
Po wywołaniu linii poleceń i wpisaniu komendy CAT, występują efekty takie jak na załączonym obrazku.
Przypuszczam, że to problem z portami np. inaczej czytana klawiatura, etc.
ROM-y sobie podmieniałem i nadal nic.
Ale na oryginalnym TC 2048 też one nie działały :)
-
Przypuszczam, że to problem z portami np. inaczej czytana klawiatura, etc.
Klawiatura? Rozwiniesz myśl?
Może to po prostu kolizja portów, korzystających z niepełnego dekodowania, z portami SCLD?
No właśnie - @Klaud, może byłoby możliwe zaimplementowanie w zamienniku możliwości blokowania dodatkowych portów (244 i 255)? W ten sposób podniesie się trochę kompatybilność. Nie wiem, jak tam Kempston - dekoder jest poza CPLD, prawda?
-
Generalnie chodziło mi właśnie problemy z portami, gdyż jak widać na zdjęciu, ekran przełącza się w któryś z trybów Timex-a.
Mogą występować kolizje lub tzw. "śmiecenie" na skutek np. siania danymi po portach.
-
No właśnie na tym zdjęciu niewiele widać, jest niewyraźne. Ale to się hires włączył?
-
Tak.
Co ciekawe, można przerwać funkcję BREAK i powraca do znaku zachęty z numerem napędu.
Więc nie "wisi", tylko przełącza tryb obrazu.
Ale jest to BETA Disk interface więc tam wszystko jest możliwe :)
Ale kto dzisiaj używa czegoś więcej niż Dandanatora lub DivMMC ?
A to działa.
Co ciekawe, implementacia TR-DOS dla Beta Disk 128 w DivMMC działa.
-
Beta Disk może gryźć się z każdym TMX, ze względu na porty, z których korzysta, przede wszystkim 0xFF. SCLD korzysta z tego samego portu do sterowania trybami graficznymi.
Porty używane przez Betę (https://worldofspectrum.org/faq/reference/ports.htm):
Peripheral: Beta 128.
#define P_TRDOS_CMD 0x1f /* Command */
#define P_TRDOS_STATE 0x1f /* State */
#define P_TRDOS_TRACK 0x3f /* Track */
#define P_TRDOS_SECTOR 0x5f /* Sector */
#define P_TRDOS_DATA 0x7f /* Data */
#define P_TRDOS_SYSTEM 0xff /* System */
Beta używa portu 0xFF (255) do wyboru napędu, stąd jej taki zachowanie w Timmym. Oliwy do ognia doleje włączenie 80K, ponieważ mechanizm bankowania pamięci też jest na porcie 0xFF.
Dekoder adresu Kempstona w TC2048 jest zrobiony poza SCLD tylko na podstawie jednego adresu A5. W Timmy dekoder adresów jest rozszerzony do 3 adresów (A5, A6 i A7) i też poza SCLD.
Mechanizm blokowania portów 0xF4 (244) i 0xFF (255) wymagałby dodatkowych podłączeń do PLCC68, a wolnych pinów brak. W zamienniku, w CPLD kilka I/O pozostało wolnych, ale zabraknie zasobów na ich rozsądne użycie. Do dalszego rozwoju do wyboru byłyby dwie drogi:
1. zgodność z SCLD takim jakim zrobił do TMX i możliwość wykorzystania zamiennika w płytach TC2048 i TC2068,
2. większa zgodność z dodatkami do ZX Spectrum i zmiana koncepcji klona z własnym SCLD.
Pozostanę przy opcji nr 1. Jeśli nawet zmienię CPLD na inne, o większej ilości zasobów, wolałbym zachować zgodność wsteczną i dołożyć możliwość prostego rozszerzenia RAMu do pełnego 128K.
-
Myślę, że kompatybilność z oryginałem jest już na poziomie 99%, więc ja bym tak zostawił.
Zresztą, do serii Timex była dedykowana FDD3000 lub FDD 3.
-
Filmik (https://www.youtube.com/watch?v=6aF5sbaApuk)
-
Myślę nad serią 10 sztuk płyt wraz z gotowym zamiennikiem. Jeśli się sprawa zmaterializuje, info będzie na bazarku.
Tak jak pisałem bardzo do tego namawiam i już zapisuje się na jeden zestaw :)
Dodaje bazar do ulubionych ;)
-
zacząłem jakiś czas temu składać pierwszą wersję płyty 0.12, niewiele mam bo czasu brak a widzę że już jest 0.2 fajniejsza. Klaud to już ostateczna rewizja bo się zastanawiam czy składać dalej czy zamawiać 0.2?
może ktoś ma wolną płytkę 0.2?
-
Najnowsza wersja 0.2 jest na te chwile ostatnią, a pliki do jej produkcji nie są upublicznione.
W wersji 0.12 była wersją roboczą i był błąd na złączu krawędziowymi. Aby ja używać z interfejsami, należy zamienić strony (górę z dołem), tak jak to zrobił Maryjan. Poza tym jest w pełni działająca.
https://www.speccy.pl/forum/index.php?topic=6033.msg94497#msg94497
-
Tak wiem o tym ze zlacze do modernizacji, reset w innym jest miejscu. Ale widze tez miejsce na plytke bt. Kilka elementów w innych miejscach. To jak nie ma płytki nowej to ok skladam dalej. Jak bedzie kiedyś to pewnie kupię i ta nową.
-
mam trochę teraz więcej czasu więc robię
stan na dziś
mam trochę braków co nie mogłem nabyć lokalnie, poszukam w necie, kilka drobiazgów jeszcze wylutuje ze starych płyt co mam po kasach fiskalnych czy płytach głównych
pytanie do Klauda czy C2 to ma być koniecznie tantalowy? C34 w BOM jest 16p a dałem 15p mam jeszcze 18p jakieś będą z tym problemy?
-
C2 może być elektrolityczny ale o niskim ESR. Tantalowy jest w Timexach.
C34 może być 15pF. 16pF jest w Timexach.
-
szukam i potrzebuje pomocy gdzie nabyć braki
w tme znalazłem chyba wszsytkie LSy i drabinki rezystorowe, diody BAT82 na allegro
AY mam same 8912 te krótkie, układ PAL mam luzem z innego timexa bo na układ ten pcld pewnie będzie trzeba poczekać z zakupem
References,Value,Quantity
C33,4-20pF trymer,1
"R5-R12, R56-R63",8 x 10k drabinka,2
"D17, D25, D26, D27",BAT82,4
D18,12V/0.5W,1
U200,74LS30,1
"U8, U9",TMS4464,2
U5,74LS540,1
U15,74LS244,1
U100,AY-3-8910,1
X2,14MHz,1
MD1,RGB Out,1
M400,MH-M18,1
LS1,32/50 ohms Speaker,1
SCLD1,10 to 26,1
SCLD2,27 to 43,1
SCLD3,44 to 60,1
SCLD4,61 to 9,1
KB1,6-520315-4,1
"Q4, Q6, Q400",PN2222A,3
J1,DC PWR,1
J500,AY-IOA,1
J4,CVBS Out,1
-
C33,4-20pF trymer,1. - może być kondensator ceramiczny dobrany eksperymentalnie, coś pomiędzy 5-8pF
U200,74LS30,1
"U8, U9",TMS4464,2 - pamięć typu 41464 (4-bity, 64k)
U5,74LS540,1 - może być 74HCT540
U15,74LS244,1
U100,AY-3-8910,1 - może być dowolny odpowiednik tego układu np. YM2149F, WF19054, JFC95101 lub KC89C72
D18,12V/0.5W,1 - dioda Zenera 12V/0,5W (BZX88-C12, 1N4742A)
X2,14MHz,1 - kwarc 14MHz
MD1,RGB Out,1 - gniazdo miniDIN-8, np. MD-80SM
M400,MH-M18,1 - nie potrzebujesz
LS1,32/50 ohms Speaker,1 - można obyć się bez niego, ponieważ beeper jest wyprowadzony na złącze audio (jack),
SCLD1,10 to 26,1 - złącze kołkowe żeńskie (precyzyjne) 2x17 pinów o ile masz zamiennik SCLD
SCLD2,27 to 43,1 - jw.
SCLD3,44 to 60,1 - jw.
SCLD4,61 to 9,1- jw.
KB1,6-520315-4,1 - złącze klawiatury, numer zamówieniowy podany jest w BOM,
Q4, Q6, Q400,PN2222A,3 - tranzystor NPN
J1,DC PWR,1 - gniazdo DC 2,1mm
J500,AY-IOA,1 - nie potrzebujesz
J4,CVBS Out,1 - złącze RCA np. RCJ-01
Jeśli chcesz używać SCLD, przydałaby się podstawka PLCC68 SMD.
-
czy zamiast diody D18,12V/0.5W,1 - dioda Zenera 12V/0,5W (BZX88-C12, 1N4742A)
mogę użyć diody zenera 12V/0,5W BZX55C12 bo takie mam?
-
Tak.
EDYTA:
SCLD1,10 to 26,1 - złącze kołkowe żeńskie (precyzyjne) 2x9 pinów
-
Zlacz kolkowych póki co nie bede dawał. większość brakow mam zamówione. te pamieci 4464 z tego co widzę to sa tez w c64 a mam kilka plyt takich ze szrotu wiec sobie pożyczę.
Skad kupić to gniazdo minidin8 i złącze klawiatury?
-
miniDIN-8 powinni mieć w TME.
Złącza klawiatury kupowałem bezpośrednio w TE. Szukaj ich tez jako: DS1020-14ST1D.
-
Klaud zamiast LS7430 znalazłem UCY7430 mogę zastosować?
zamiast bramek 10K zastosowałem 8 rezystorów 10k taki patent widziałem w HQ48
zamiast tego trymera kupiłem lokalnie ceramiczne 5.6p 6.8p i 8.2p do testów
do próby odpalenia zabraknie mi 74LS540,74LS32, złącza klawiatury,gniazda RGB i gniazda RCA (jeszcze w tme nie zamawiałem)
-
7430 może być.
Drabinki można zbudować z pojedynczych rezystorów.
Za C33 na początek wlutuj 6.8pF i AD724 powinien ruszyć.
'LS540 nie potrzebujesz na pierwsze uruchomienie. Ten układ jest do portu joya.
Którego LS32 nie masz? Obu czy jednego? Jeśli jednego, to zamontuj go jako U201. U16 jest dekoderem portu joysticka, a skoro nie masz 'LS540 chwilowo, to go nie potrzebujesz.
Bez gniazd miniDIN-8 i RCA będziesz musiał przylutować się z kablem do monitora wprost do płytki.
-
ok, dzięki za info
nie mam 74LS540, a 74LS32 jeden mam i go założyłem na U16, drugi mi potrzebny do rozszerzenia 80k ale jak mówisz że wystarczy do odpalenia U201 to ok, I tak muszę poczekać na reszte elementów co wczoraj zamawiałem
dopiero w przyszłym tygodniu będę próbował odpalać
-
Jeśli masz scalaki z serii HCT, też będą działały. Seria HC (CMOS) może nie działać poprawnie.
-
LS32 oraz pamięci wylutowałem dziś z płytki 80k do timexa tej bajtkowej w tego wątku co mam planowałem ją wlutować do któregoś TC2048 ale odpuszczam oraz jednej z płyt c64 połamanej, czy są te pamięci sprawne to nie mam pojęcia
może kiedyś zrobię to rozszerzenie bajtkowe na uniewersalnej płytce bo wytrawiać ja nie umiem i nie mam zamiaru
doszły już AY, kwarce i głośniczek - dzięki maciekb za szybki odzew i pomoc
tranzystory NPN oraz bramki są już na płycie
do romu 256k wgrałem sobie taki bin z TC2048/diagrom
prawa strona bez switcha resetu jest kompletna, lewa jeszcze troszeczkę :)
-
miniDIN-8 powinni mieć w TME.
Złącza klawiatury kupowałem bezpośrednio w TE. Szukaj ich tez jako: DS1020-14ST1D.
W tme pl te zlacza tylko na zamowienie i min 2000szt. Chętnie kupię tu od kogoś 1-2szt jak ktos ma.
mam złącza krotkie do zx spectrum 48 moze dalo by radę je skleić.
Ile jest juz działających egzemplarzy Timmiego w pl? Kto jeszcze składa?
-
Gniazda mini din są w Warszawie: https://sklep.vega-tronik.eu
-
Chodzi mi o złącze klawiatury a nie mini din do rgb te juz kupiłem.
-
po podłączeniu nic się nie dzieje, czarny ekran
nie mam jeszcze złącza klawiatury, 74ls540 i złącza video
-
Masz sygnał zegarowy na nodze nr 6 Z80?
Czy jest SCLD generuje sygnał synchronizacji (punkt opisany CSYNC pomiędzy SCLD a U16)?
-
a jak to mam sprawdzić? oscyloskopem? mam ale nie za bardzo się nim umiem posługiwać
procesor, układ pal sprawny sprawdzałem
eprom ten 2w1 nie wiem, ale wsadziłem eprom z timexa sprawny i też nie odpala
w części 2 napisałeś coś takiego ja tego nie zrobiłem
"Ostatnią rzeczą wartą wykonania przez uruchomieniem Timmy'ego w minimalnej konfiguracji, jest wykonanie zwory pomiędzy linią adresową A0 i sygnałem BNK. Możemy zewrzeć nogi 13-14 układu U13 lub połączyć pole pod nogę nr 6 U200 (A0) z polem nr 5 U202 (BNK).
"
-
Tak, np. oscyloskopem, analizatorem lub sondą stanów logicznych.
Na moje oko nie ma sygnału zegarowego. Możesz spróbować wylutować prawą nogę C34 i podłączyć ją do pola opisanego X2.
P.S.
Ale Ty nie odpalasz w minimalnej konfiguracji z 16K czy 48K na pokładzie, a od razu 80K.
Jeśli komputer ruszy bez ROMu, na ekranie pojawią się pionowe pasy (białe, niebieskie i czarne) oraz czerwony "border".
-
zrobiłem tą modyfikację i obraz jest ale taki
zmieniłem procesor i mam taki
ramka biała/czarna
na reset nie reaguje
oscyloskopem pobawię się jutro
-
po wyjęciu romu, czarnobiałe paski są i obraz zniekształcony
-
Po wyjęciu ROMu paski są prawidłowe. Zniekształcenia mogą wynikać z niepoprawnej pracy kodera PAL AD724 (U12). Możliwe, że będziesz musiał dobrać kondensator C33.
Warto byłoby podpiąć się po RGB (kabelek taki sam jak do Harlequina 48K).
Jaki procesor wsadziłeś, typ?
-
ten co jest na fotce NEC wcześniej miałem założony Zilog
-
Zegar działa, więc warto zacząć od najprostszej konfiguracji (16K):
1. wideo przez RGB,
2. wyjąć z płyty: U3, U8, U9, U100, U200, U201 i U202, aby było tylko 16K RAM.
Za dolny RAM muszą być układy typu 4416 (4-bity x 16K).
Po uruchomieniu na ekranie po RGB powinien pokazać się taki obraz:
(https://8bit.yarek.pl/computer/zx.tc2048/emptyrom.gif)
Jeśli nie, warto przejrzeć wszystkie luty.
Jeśli tak, to wsadzić w podstawkę U3 (ROM) i U201. Jeżeli ROM jest poprawnie zaprogramowany np. ROMem diagnostycznym lub tym z TC2048, to powinien wystartować.
-
ok, tak się dziś pakowałem że zapomniałem tego przewodu od HQ48, więc mogę dziś powalczyć tylko na tym video, monitor zmieniałem jest ta sama kaszanka na ekranie
Klaud możesz podpowiedzieć jakie dac kondensatory c33?
zaraz przerobię tą mniejszą konfigurację
edit, po wyjęciu układów dalej kaszanka na ekranie, przejrzę luty
rom od timexa jest ok bo mi działa na timexia, ten 2w1 też powinen ale mam gdzie sprawdzić
-
C33 do U12 (AD724RJ) ma miec taka pojemnosc, jaka bedzie poprawnie dzialala z Twoim kwarcem i dawala stabilne oscylacje 4,43MHz. U mnie jeden chodzi na 8pF inny na 6.8pF, dlatego na plycie jest miejsce na trymer. W BOM jest trymer 4-20pF o rozstawie nozek 5mm (najczsciej jest on w kolorze czerwonym), mozna sprobowac wsadzi z takim o zakresie do 10pF (bialy).
Dotknij lekko wilgotnym palcem nozek kwarcu 4,43MHz lub C33 i zobacz czy cos zmienia sie na ekranie.
Prosze pisz precyzyjnie albo wrzucaj zdjecia, bo stwierdzenie "kaszanka na ekranie" jest zbyt ogolne. Przeciez pisalem, ze po wyjeciu ukladow bedziesz mial paski. U Ciebie do tego sypie sie synchro na koderze PAL, to na dokladke dostajesz ich znieksztalcenia geometryczne.
-
narazie nie mogłem nigdzie kupić tego trymera
zdjęcia oczywiście mogę robić tylko pisz jakie obszary robić, a kiszka taka sama jak poprzednio więc nie wrzucałem zdjęć wcześniej
może napisz gdzie podłaczyć sody oscyloskopu to porobie zdjęcia
-
Na razie podlaczyc sie po RGB i tyle do dodania.
Trymery 4-20pF leza po 1.50zl na Alledrogo.
-
ok, w takim razie dopiero jutro sprawdzę po rgb, a trymery już zamawiam
dzięki
luty już sprawdziłem wg mnie są ok
-
takie trymery dostałem z sąsiedniego sklepu, ale nie ma oznaczeń, mogę próbować je testować
-
podłączyłem przewód od HQ48 i dałem C33 6,8p i mam ten obraz bez romu
po założeniu romu od TC2048 27C128 mam taki z niebieskimi paskami
-
A jumper nad EPROM-em jest zapięty ?
Zależy jeszcze w której pozycji, bo generalnie to jest do wyboru połówek EPROM-u 27c256.
Ty Masz 27c128, więc być może jumper wskazuje połówkę EPROM-u której tu nie ma.
-
jumper przy romie przestawiałem, tak wiem że jak 256 to 2w1 i można wybrać
przy jednym ustawieniu zworki ekran jest taki jak by nie było w ogóle epromu a przy drugim właśnie taki z niebieskimi paskami, ale też się ten ekran zmienia za każdym razem jak włącze timmiego, na reset reaguje
w sumie nie wiem co dalej mam sprawdzać, mogę wszytkie podstawki przedzwonić miernikiem i pomierzyć napięcia na każdej podstawce czy jest 5V
-
Ja bym sprawdźił lutowania nóżek podstawek i same podstawki.
-
A U201 (‘LS32) jest w podstawce?
I aby było jasne, przy obrazie po RGB C33 nie ma najmniejszego znaczenia i możesz go wymontować.
-
nie U201 nie ma w podstawce a brak C33 zdążyłem już zauważyć że też działa ekran
Klaud jesteś wielki :D założyłem LS32 i ...
jeszcze troszeczkę mi ten napis pływa
-
To go wsadź (U201).
Proszę, czytaj uważnie to co piszę:
https://www.speccy.pl/forum/index.php?topic=6033.msg95624#msg95624
Gratuluję. Teraz tylko ROM diagnostyczny zanim zaczniesz dalej obsadzać scalaki.
-
założyłem rom 2w1 co mam i lipa, pewnie mam źle zaprogramowany lub nie ten wsad
masz może gotowca do kości 27C256? to bym jutro sobie wgrał taki TC2048/Diagrom albo sam diagrom do kości 256?
-
W załączniku są dwa pliki:
- tc2048.rom - oryginalny ROM TC2048
- DiagROM_vTMX.rom - ROM diagnostyczny, zmodyfikowany tak, aby testował AY-ka na portach Timexa
Jeśli chcesz opalić Timmy'ego z 48K, potrzebujesz:
- wsadzić pamięci 4464 lub 41464 za górny RAM (U8 i U9)
- zrobić zworę pomiędzy liniami A0 i BNK czyli nogą 13 i 14 U13 (wymaga lutowania) lub nogą 6 U200 i nogą 5 U202 (można połączyć w podstawkach).
-
Jeśli 48K działa i przechodzi testy, możesz wsadzić pozostałe scalaki i spróbować przełączanie banków górnego RAMu.
-
tak pozakładałem scalaki, rom ten co mam działa
ale do pełni szczęścia brakuje mi klawiatury, trymera c33 i modyfikacji złącza bo nie mam jak wybrać nr testu oraz wczytać program
o nawet się w tv odbiłem :D
coś wykombinuję z tą klawiaturą
doszły juz pozostałe elementy złacze composite, scalak 76ls30 i 76ls540
obraz poprzez composite video bez tego kondensatora c33 jest nawet w miarę
-
Kolory jak NTSC, a nie PAL, ale są :).
-
To ekran z rgb
A intensywność nasycenia kolorow da się jakos regulować?
modul mh18 bloototh ma znaczenia jaka revizja 4.0 czy 4.2?
-
Jak z RGB? Z mini-DIN8 takie wyprane kolory? Sam napisałeś, że z RCA:
obraz poprzez composite video bez tego kondensatora c33 jest nawet w miarę
Przedtem z RGB pokazywałeś nasycone: https://www.speccy.pl/forum/index.php?topic=6033.msg95642#msg95642
MH-M18 - dowolny.
-
a ok, ale nie ten tv i nie ta pora dnia, może to kwestia światła
-
ma ktoś może takie płytki? potrzebowałbym 1-2 szt
-
Nawt jesli nie znajdziesz kogos, kto ma, to w miare latwo jest zaprojektowac i zlecic wyprogdukowanie kilku sztuk.
-
https://projectspeccy.com/2019/01/02/adapt-evolve/
Podobne i gotowe można kupić w sklepie divide.cz pod nazwą "PCB of Bus expander A".
-
ok, o to mi chodziło dzięki wielkie
o nawet jest większy wybór tych płytek i złacza są do zx super
-
Ile jest juz działających egzemplarzy Timmiego w pl?
Jacek: jesteś drugą osobą, która samodzielnie uruchomiła Timmy'ego.
Działających Timmych jest 5 sztuk:
- 2 szt. w wydaniu 0.11 (jedna w PL),
- 1 szt. w wydaniu 0.12 (w PL),
- 2 szt. w wydaniu 0.2 (jedna w PL).
-
Chodzi mi o złącze klawiatury a nie mini din do rgb te juz kupiłem.
Ostatnio nawet krosówki są z drewna owiniętego folią Al, nie idzie tego lutować, a jak się uda to się i tak urwie po chwili, ale zamiast złącz kołeczki i coś takiego:
(https://static5.abc-rc.pl/pol_pm_Przewody-kable-zworki-DuPont-F-F-40-szt-20cm-zensko-zenskie-8808_1.jpg)
?
-
Ok mam takie taśmy i te plastiki sa kruche.
dojechały mi juz moduły bluetooth mh18 i nie mogę odszukać tego posta jak go podłączyć do płyty
Klaud cieszę sie ze sam uruchomiłem ale bez Twojej pomocy i innych użytkowników tego forum bym tego nie zrobił.
-
Sam BT to za mało dla Twojej wersji Timmy'ego. Potrzebujesz jeszcze tranzystor, dwa rezystory i kondensator. Więcej detali jest tu:
BT Audio (https://www.speccy.pl/forum/index.php?topic=6368.msg94461#msg94461)
-
ok, tak wiem właśnie tego wątku szukałem, dziś zrobie
jeszcze mam pytanie klawiaturę z zx spectrumm podłaczę do timmiego? zx ma taśmy 5+8 a Timmy 13, po prostu wpinam się 1-1 licząc od lewej?
-
Pierwszy pin z lewej jest podpięty do masy, pozostałe są w takiej samej kolejności jak w ZX Spectrum czyli 5+8.
-
ok, dzięki Klaud
temat klawiatury tymczasowo ogarnąłem, klawisze wszystkie działają ok
prórubuje standardowo wczytać z taśmy giere i po wpisaniu LOAD "" biały cały ekran i nic
przewód EAR-OUTPUT w magnetofonie, podpiąłem mono ten oryginalny z timexa
w Timmym są gniazda stereo może w tym problem?
-
ok już ogarnąłem magnetofon, przewód tylko zmieniłem tez mono
-
AY gra ale bardzo cicho, dźwięk jest z monitora przez przewód RGB-SCART
brakuje mi czerwieni, nie ma intensywnych kolorów
podpiąłem do tego monitora Timexa 2048 z RGB i kolory czerwień jest a tu na Timmim mam taki ciemny pomarańcz
-
AY gra w jakim sofcie, demo Timmy? Z oryginalnym SCLD AY odezwie sie tylko na portach Timexa, a nie 128K.
Do wyjscia audio jest domieszany beeper do AYka i wejscia z magnetofonu. Beepr jest cichy, bo mnie denerwowal. Chesz go miec glosniej, zmien rezystor R38 na mniejszy.
Na temat kolorow trudno jest mi wypowiadac sie, ale powinny byc tak samo jasne i poprawne, jakie masz w Timexie. Sprawdz czy masz poprawnej wartosci rezystory R25-R27 (180R), R40-R14 (150R) oraz diody (D25-D27). Chyba, ze TV przestawil sie w tryb "composite", a nie RGB. Jakie masz napiecia na R44?
-
nie demek jeszcze nie puszcałem, muszę zrobić sobie najpierw złącze do podłączania interfejsów lub ten AudioBT
testuje na grach co mam pod ręką z kaset
gra co ma dźwięki z AY to Joe Blade
Beepera (ten głośniczek 32ohm) nie podłączałem jeszcze w ogóle, do gniazda audio też zewnętrzych głośników jeszcze nie podłaczałem
dźwięk co mam to z monitora i z magnetofonu svi przy wczytywaniu z taśmy
pomierzę napięcia i rezystory i dam znać
Joystick działa prawidłowo :)
-
Dzwiek z monitora masz, ten sam co na wyjsciu audio, tylko w mono. Sa tam: AY, BEEPer i wejscie magnetofonu razem.
Jakos nie wierze, ze ta gra porafi zgrac AYkiem na portach Timexa, wiec raczej slysz tylko sciszony beeper.
-
R25-R27 (180R), R40-R14 (150R) - są ok
diody (D25-D27) mam BAT82 na allegro nabyłem i takie mają oznaczenia
napięcia na R44: 4,97 V i 1,09 V
raczej pilnowałem listy BOM
-
napięcia na R44: 4,97 V i 1,09 V
Wygladaja prawidlowo i TV powinien przelaczyc sie w RGB, o ile rozpoznaje te linie w SCART.
Choc dla pewnosci moznaby zmienic R44 na 180R. Poprawie to na schemacie i BOM.
-
filmik z testów magnetu https://photos.app.goo.gl/Xqzt2M3GpznktB838 (https://photos.app.goo.gl/Xqzt2M3GpznktB838)
zdążyłem jeszcze dziś zmontować AudioBT ,ale dalsze testy już jutro
-
podłaczyłem AudioBT do Timmy zgodnie ze schematem i mruga dioda niebieska ale nie wiem jak się mam podłaczyć komórką
jaka jest nazwa tego MH18? bo w ogóle na liście nie mam
-
Te moduły mają różne identyfikatory BT, w zależności kto jest ich producentem czy dostawcą. Wyłączyć komputer, aby BT nie odzywali się, a w telefonie wyszukać dostępne urządzenia BT. Teraz włączyć komputer i odczekać chwilę, aby moduł zaczął mrugać LEDem. Ponownie włączyć wyszukiwanie urządzeń BT w telefonie i powinien pojawić się jakiś nowy identyfikator, którego nie było przy poprzednim wyszukiwaniu. Sparować się z nim i tyle.
-
to wiem, czytałem że ma być nazwa HM18 coś z tym stylu ale nic się nie pojawiało dlatego pytałem, mam jeszcze 2szt BT więc posprawdzam może pierwszy jest uszkodzony
nazwa na scalaku rzeczywiście jest inna niż u Ciebie
-
TC2048/Timmy i bufor 74LS245
Jest jedna rzecz, o której nie znalazłem za wiele informacji, a mianowicie dotyczącej buforów na linii danych pomiędzy CPU a ULA. W ZX Spectrum szyna danych procesora od szyny danych ULA jest oddzielona rezystorami. Zresztą tak samo jest w kilku innych konstrukcjach, np. ZX81 lub w ZX80 oraz Jupiterze (nie od ULA, a od logiki, co na jedno wychodzi). Timex w TC2048 wykorzystał bufory dwukierunkowe sterowane przez SCLD (ULA). Niby proste, eleganckie rozwiązanie, ale jeśli zbudujemy interfejs, który będzie korzystał z portu 254 (0xFE) to możemy zapomnieć o jego używaniu z TC2048.
Pytanie: Po co korzystać z portu 254, skoro port ten, jak i każdy parzysty, jest zajęty przez SCLD/ULA?
Odpowiedź: Na przykład po to, aby wczytywać dane z zewnętrznego źródła przez złącze krawędziowe, z wykorzystaniem standardowej procedury LOAD w ROMie i bez udziału wejścia EAR. W taki sposób można by zbudować TZXduino, które mogłoby samoczynnie odpalać wczytywanie wybranego programu po wybraniu LOAD "" - ENTER. Oddzielny dekoder portu 254 i wczytywanie przez złącze krawędziowe wykorzystałem do zewnętrznego BTaudio (https://www.speccy.pl/forum/index.php?topic=6368.msg95601#msg95601).
Z konstrukcji TC2048 można bardzo prosto wyeliminować tę drobną niekompatyailiność z ZX Spectrum, montując osiem rezystorów 470R zamiast 74LS245 (U4).
Z TC2068/UK2086 jest galimatias, ponieważ fabrycznie może być zamontowany układ 74LS245 (U17) albo rezystory.
-
No ale ten problem rozwiązuje chyba poprawka /IORQGE?
https://8bit.yarek.pl/computer/zx.tc2048/index-pl.html
-
Dzisiaj przymierzyłem moją wersję płyty Timmy-ego do obudowy Timex-a 2048.
Jak widać, na zdjęciach poniżej, wszystko pasuje idealnie odnośnie wycięć i otworów.
Lecz niestety, na zamienniku PAL-a obudowa się nie domknie.
Natomiast, przy zastosowaniu oryginalnego PAL TS 2068, nawet w podstawce, obudowa się domyka.
-
już wiem co źle zrobiłem, podłączyłem do drugiego co mam czystego BTAudio samo zasilanie i się sparowałem z komórką bez problemu. nazwa mojego BT to XFW-M18
więc zakładając że jest uszkodzona ta pierwsza to wymieniłem włączyłem Timmy i dalej nic, dioda tylko mrugała i nie mogłem się sparować
zmierzyłem napięcie na BT i miałem 4.24V a nie 4,94V, zmieniłem punkt zasilania z Timmiego na inny tz z głośniczka i działa już ok
na pierwszy ogień włączyłem przez BT demko Timmy i jest ok, AY działa, nic się nie wiesza
-
Super, gratulacje :)
-
Lecz niestety, na zamienniku PAL-a obudowa się nie domknie.
Natomiast, przy zastosowaniu oryginalnego PAL TS 2068, nawet w podstawce, obudowa się domyka.
Zamówiłem najniższe z możliwych gniazda pod kołki, mają mieć wysokość 3.5mm. Może uda się zejść z wysokością o jakieś 2-3mm ale nie więcej.
No ale ten problem rozwiązuje chyba poprawka /IORQGE?
https://8bit.yarek.pl/computer/zx.tc2048/index-pl.html
I tak, i nie. Jeśli chcesz wyłączyć w SCLD/ULA całkowicie dekodowanie portów we/wy, wtedy /IORQGE nadaję się do tego celu idealnie. Jeśli jednak chcesz zostawić obsługę ich w ULA i tylko "wstrzykiwać" dane z taśmy w tym samym momencie, w którym ULA robiłaby to, to już nie.
... na pierwszy ogień włączyłem przez BT demko Timmy i jest ok, AY działa, nic się nie wiesza
Gratulacje za samodzielne rozwiązanie problemu :)
-
temat kolorów rozwiązałem zmieniając monitor na inny
-
dorobiłem złącze i testuje interfejsy, zauważyłem że nie działa mi AY z DividePlus jak grę wczytuje, z tzxdunio czy z AudioBT AY działa
-
Proszę jeszcze raz od początku.
Jaką grę wczytujesz? Jak ją wczytujesz? Czy ta gra obsługuje AYka na portach Timexa?
-
podlaczylem pod złącze divide plus i wczytuje np demo boa które wielokrotnie odpalalem pod timexem. Po prostu nie słychać dzwieku z ukladu AY
dzis za mało testowałem odalanie gier i dem przez złącze wiec sie wiecej nie wypowiem jutro
-
Pewnie wcześniej używałeś zewnętrzny AY z Timexem i dlatego miałeś dźwięk z AY.
Powtórzę po raz kolejny (chyba 10 raz): Timmy z oryginalnym SCLD gra wbudowanym AY-kiem tylko i wyłącznie na portach Timexa, bo AY jest obsługiwany przez SCLD. Aby Timmy zagrał wbudowanym AY-kiem na portach ZX128K w demach, grach, które obsługują AY-ka na 48K, potrzebujesz zamiennik SCLD Q.
-
Klaud nie denerwuj się ja i tak nic nie czaje :D
Ok ok mam timexa z doczepionym AY na płycie to jutro sprawdzę czy tak samo jest.
Czyli jak bym miał ten nowy zamiennik to bedzie grać AY
-
No i zakładam, że jakbyś miał jakieś demo (grę?) napisane specjalnie dla Timex, to też by grał :)
-
Klaud nie denerwuj się ja i tak nic nie czaje :D
To proste :)
Oryginalny PAL 2068 - kompatybilność Timmy-ego z TC 2068 (taki dłuższy z klapką po prawej stronie. Ma wbudowany AY-k) - gra kilka dem i być może kilka gier.
Układ SCLD Q - kompatybilność Timmy-ego z TC 2048 (ten krótszy - bez klapki) z zewnętrznym AY-kiem - grają dema i gry znów niektóre, które grają na ZX 48k z zewnętrznym AY-kiem.
Swoją drogą, ciekawa przejściówka złącza.
O takim rozwiązaniu nie pomyślałem :)
-
paroos: demo to Timmy, ono w 100% wykorzystuje dary Timexa. W latach świtności TC również były dema, które korzystały z trybów Timexowych ale robiły je jakby przy okazji, tak aby nadal całość działała na 48k.
A poza tym polecam, póki co skromną, ale jednak bibliotekę programów na Timexa: https://www.speccy.pl/archive/comp.php?comp=TC20X8
-
potestowałem dziś na Timmy-m kilka gierek na 48k z AY i póki co żadna nie grała AY pomimo że mała muzykę czy efekty pod AY
może napiszcie mi jakie mam gry i demka potestować żeby ten AY posprawdzać na Timmym z oryginalnym układem pal
demko Timmy i testy z Diagrom działają ok słychać AY
ok, teraz już rozumiem że AY w Timmy-m to nie jest ten sam AY co jest doczepiany pod zx48 czy TC2048 i nie jest to też ten sam wlutowany na płytę co robił rubikos bo takie mam i takie mi działają z TC2048
czyli żeby w pełni korzystać z Timmy-ego to koniecznie trzeba zakupić ten nowy zamiennik układu pal
-
Zrób eksperyment.
Zdemontuj AY-ka z płyty Timmy-ego i podłącz zewnętrzny interface z AY-kiem.
Może być ten od Rubikosa :)
Może zagra poprawnie ?
-
ok, tak mam zamiar zrobić ale jutro bo Timmy został w robocie
to jest mój Timex eksperymentany z tego zapożyczyłem układ pal i na nim AY testuje gry i demka
-
... Zdemontuj AY-ka z płyty Timmy-ego i podłącz zewnętrzny interface z AY-kiem. ...
Nie ma takiej potrzeby, ponieważ AY podłączony przez złącze krawędziowe, czy każdy inny z własną logiką dekodera portów, będzie niezależny od tego wbudowanego. Jeśli ktoś ma Melodika, Wonder AY czy jakiegoś innego grajka, może go podłączyć tak samo jak do każdego innego ZX Spectrum.
Jacek ma ROM testowy (DiagROM TMX), który został zmodyfikowany tak, aby testował wewnętrznego AYka w Timexie, sterowanego przez SCLD. Ten ROM nie zagra AYkiem przez złącze krawędziowe. Info jest na dole ekranu wyświetalengo przez ten ROM (patrz zdjęcie). Zmodyfikowałem ten ROM, aby mieć czym testować TC2068/UK2086 i przy okazji Timmyego z oryginalnym SCLD.
-
Timmy pasuje do obudowy TC2048
jedynie z uwag to gniazdo kempston oryginalnie jest inne i w moim żeby włożyć płytę należało wykręcić śruby modujące blaszkę od gniazda 9 pin żeby je wpasować
podpowiecie gdzie nabędę ten wyłącznik kołyskowy taki sam jak jest w TC2048 bo ja dałem taki jaki miałem ale nie za fajnie to wygląda w obudowie
Klaud ten plik z wsadem z TC2048 po wgraniu działa ok tyle że ma taki czarny kwadrat, myślałem że źle wgrałem ale to nie to, jeszcze spróbuje swój zgrać i wgrać do tego 2w1 wcześniej kasując
-
Jeśli dobrze zrozumiałem SCLD Q jest zamiennikiem TC2068PAL i można go zamontować na oryginalnej płycie Timexa zamiast oryginalnego SCLD. Choć pewnie to trochę karkołomne i ryzykowne na starej płycie...
-
Zamiennik Timex TS 2068 PAL, czyli SCLD Q (https://www.speccy.pl/forum/index.php?topic=6410.0)
Swoją drogą nie istnieje układ oznaczony jako TC2068 PAL.
-
Przepraszam, miałem na myśli TS2068PAL.
Przepraszam, nie doczytałem,.
Dziękuję za informację.
-
Timmy pasuje do obudowy TC2048, jedynie z uwag to gniazdo kempston oryginalnie jest inne i w moim żeby włożyć płytę należało wykręcić śruby modujące blaszkę od gniazda 9 pin żeby je wpasować
Można kupić gniazda DB-9 bez śrub, a takich jak oryginalne nie byłem w stanie znaleźć. Modele bez śrub: MHDD9F-T-B-S-RBM, DE09-SL-24, LD09S13A4GX00LF i podobne.
-
Można też wykręcić śrubki i zrobić na tzw. "trytytki", jak ja to zrobiłem :)
-
Albo skorzystać z jakiegoś dawcy. Np. +2, niektóre Atarynki, albo klony konsol 8-bit. Ja tak pozyskałem kilka sztuk, jedną też z interfejsu RS-232 do Spectrum/Timex.
-
Ale te stare (plastikowe) mają inne wymiary, więc nie będą pasować do płytki Timmy'ego.
Dobra, znalazłem te retro za 14 funtów za sztukę + przesyłka ... podziękuję. Dla chętnych numery zamówieniowe: FK100307 / C019062 / CO19062.
-
Chyba patent na "trytytki" to najtańszy wariant :)
-
klejem mozna złapać i będzie bez śrub
tak tez pomyślałem o gniazdach z plyty atari 65, mam taka i gniazdo jest cale.
-
Cześć,
Stałem się posiadaczem PCB Timmy. Kto z szanownego grona z Warszawy podjął by się wlutowania powierzchniowego wraz podstawką układu TS2068 ( Dawcę w postaci PCB TC2048 mam) ?
Z przewlekanymi sobie radzę ale powierzchniowe lutowanie to dla mnie nowość.
Pozdrawiam.
-
Ech, trzeba było powiedzieć, że chcesz, aby te elementy były przylutowane.
-
Hmm, widzę, że nikt się nie wyrywa, by pomóc koledze.
Paweł, jak Ci się mocno nie spieszy, to mogę się tym zająć, jednak nie wcześniej, niż za tydzień.
-
Hmm, widzę, że nikt się nie wyrywa, by pomóc koledze.
Paweł, jak Ci się mocno nie spieszy, to mogę się tym zająć, jednak nie wcześniej, niż za tydzień.
Luz , spieszyć mi się nie spieszy . Kupiłem to szkoda by luzem leżało.
Większość z moich znajomych żyje już okresem świątecznym. Po nowy roku się zgadamy.
-
Ech, trzeba było powiedzieć, że chcesz, aby te elementy były przylutowane.
Nic się nie stało. Nie wiedziałem że tak też możesz. :D Pozdrawiam.