forum speccy.pl

Komputery z Z80 => TIMEX => Wątek zaczęty przez: trojacek w 2016.11.03, 17:51:14

Tytuł: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2016.11.03, 17:51:14
Interfejs M-397 wyczesany z OLX-a.
Dziwna ta płytka, zwykle była wpięta druga, a tu w to miejsce jakieś dziwne chipy bez oznaczeń...
Widział ktoś takie dziwo?
Nie wiem czy działa, złącze krawędziowe jest szczerbate i na dodatek pęknięte wzdłuż, robię tylko wstępny assessment zanim wyciągnę lutownicę.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: pear w 2016.11.03, 18:17:14
Dziwna ta płytka, zwykle była wpięta druga, a tu w to miejsce jakieś dziwne chipy bez oznaczeń...
Widział ktoś takie dziwo?
Ja nie mam żadnego dwupłytkowego M-397. Wszystkie 3 są jednopłytkowe z EFGJ161FN :(
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2016.11.03, 20:39:17
Dobra, odczepiłem ten wątek od ciekawostek aukcyjnych.
Te dziwne układy bez oznaczeń to oczywiście kości PAL 16L8. Jedną udało mi się odczytać, druga daje same jedynki, więc pewnie zabezpieczona. Albo padnięta. A jej zawartość byłaby cenniejsza, bo zastępuje całą płytkę, na której był PAL oraz 74LS109. Albo to ściema i ktoś przed sprzedażą wcisnął tę kość, by nie wyglądało, że interfejs jest niekompletny ;)
Pozostaje sczytanie metodą brute force.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: pear w 2016.11.03, 20:42:04
Może to te wsady ?
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2016.11.03, 20:45:45
Nie.
Ten z pozycji "40" jest nieco podobny do 40.jed, ale jednak się różnią. I inna jest też pętelka z drutu po stronie druku (do innej nóżki). Zatem jakaś mutacja. A ponieważ zawartość drugiego PAL-a ("16") ściśle zależy od wersji tego pierwszego, mogę się tylko domyślać, że tajemniczy PAL wpięty w miejsce drugiej płytki ma zaszytą bardzo nietypową, jak na ten interfejs, logikę.
Coraz bardziej się skłaniam ku opinii, że ten scalak to ściema, zatykacz dziury. Albo to nie jest PAL16L8 tylko np. PAL16V8, bo logika na drugiej płytce miała przerzutnik, który MUSI tam być. A PAL16L8 nie ma w środku przerzutników, nie widać też modyfikacji druku, by połączyć któreś wyjście z wejściem tego układu.
No cóż, muszę odgrzebać interfejs dwupłytkowy, gdzieś mam. I porównać ścieżki.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: Maryjan w 2016.11.03, 21:22:30
On był kupiony w obudowie ? czy też taki "golas" jak na zdjęciu ?.
Może to jakaś mutacja  Unipolbrit-owska ?.
Chyba, ze czyjaś manufaktura, albo tak jak Podejrzewasz - kość fejkowa.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2016.11.03, 21:33:54
W obudowie z napisem "TIMEX Interface", od spodu naklejka portugalska, czarny guzik RESET. To bardzo stary interfejs, tak na oko. Nieskażony Unipolbritem.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: Maryjan w 2016.11.03, 21:38:02
Hmm... to może być rzeczywiście unikat. Choć na razie strach go podłączać pod komputer, a co dopiero stację.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: steev w 2016.11.03, 21:52:00
Tutaj (http://hardware.speccy.org/hardware/IFDD3000-Timex/documentacion.html) gość podaje nawet gotowe wsady do 16v8
Więc jest spora szansa że ktoś po prostu zastąpił plecki jednym scalakiem.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2016.11.03, 21:52:12
Mam testowy komputer, a wyjście na kabel 15 pin wygląda standardowo.
Jutro podłączę :)

EDIT: Nie wytrzymałem i sprawdziłem. Truposz. Nie zgłasza się ROM interfejsu, więc logika w PAL leży i kwiczy.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2016.11.03, 21:54:13
Tutaj (http://hardware.speccy.org/hardware/IFDD3000-Timex/documentacion.html) gość podaje nawet gotowe wsady do 16v8

Dzięki, już Pear wrzucał to w zipie, a ja to wcześniej już sprawdzałem pod kątem podobieństw. Co innego w środku.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: steev w 2016.11.03, 22:05:08
Tak i nie.
Pear wrzucił JEDy dla zestawu PALi 40-16
Istniał jeszcze drugi zestaw, 23-16...
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2016.11.03, 22:08:03
O, nie zauważyłem, choć byłem nawet dziś ta tej czarnej stronie :)
Dzięki jeszcze raz!
Ale to też nie to...
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: blady w 2021.08.23, 21:19:59
Hej,

Szukam kogoś kto jest w stanie to naprawić.
Podłączone do prądu sygnalizuje obecność napięcia a oba napędy lekko drgną.
Podłączone do Timexa - bryndza - czarny ekran albo pasy.

Sam interface też wygląda na walnięty (a może tylko on?).
Przy okazji czy to standardowa budowa czy jakaś przeróbka?
Pytam o tę małą płytkę widoczną na zdjęciu.


Niby do szczęścia nie potrzebne ale za 10-20 lat już nikt tego nie naprawi.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2021.08.23, 21:22:36
To jest standardowy interfejs starego typu.
Skąd jesteś?
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: blady w 2021.08.23, 21:57:04
No i tu nastała taka niezręczna cisza.
No bo jak można powiedzieć, że z Grójca?
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2021.08.23, 22:08:17
No można :)
Ja tam do Grójca nic nie mam.
Podejrzewam, że w interfejsie "zapomniał się" EPROM, a może to tylko kwestia korozji styków (warto je przeczyścić izopropanolem, tak samo złącze krawędziowe w komputerze).
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: m0b w 2021.09.08, 15:16:12
A gdzie można znaleźć oryginalny wsad do tego EPROMa, ewentualnie coś, co spowoduje, że ta wersja interfejsu ruszy?
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2021.09.08, 15:36:06
Ale która wersja? Bo jest kilka, zależnie od tego, z jakim komputerem ma działać interfejs.
Detale są w wątku o klonie FDD3000, spróbuję zaraz znaleźć, chyba że Maryjan mnie uprzedzi (to on wrzucał kolekcję ROM-ów).

EDIT: Nie znalazłem na forum, więc wrzucam to, co mam u siebie na dysku.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: m0b w 2021.09.08, 22:56:19
Dzięki, jeśli zacznę od tego opisanego jako oryginalny, to z czym on będzie działał, albo jakie ograniczenia mogę napotkać?
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2021.09.08, 23:16:55
Oryginalny jest dla oryginalnych Spectrum 48K, działa też z TC2048.
Tak w sumie powinien działać z każdym klonem, który ma oryginalny ROM 48K na starcie i zgodną szynę krawędziową.
Oraz sprawną linię /M1.

W tym oryginalnym ROM-ie jest błąd obsługi komendy NEXT*, która w związku z tym nie działa.

Gorzej, że były minimum 2 odmiany interfejsu i używały one innych portów do komunikacji  z FDD. Tak więc nie twierdzę, że cokolwiek zadziała z tej paczki, którą wrzuciłem.

Uzupełniając:
• stary interfejs miał 2 płytki (główną i dodatkową), tak jak na zdjęciu na początku wątku. Ale istniały jego 2 odmiany, które najłatwiej było rozpoznać po liczbach napisanych na układach PAL (albo były to 16 i 40, albo 16 i 23). Nie wiem, czy obie odmiany miały taki sam ROM, założyłbym, że nie. Stary interfejs miał 2 KB SRAM w jednej kości.
• nowy interfejs jest jednopłytkowy i ma duży układ SCLD zamiast kostek PAL oraz 1 KB SRAM w dwóch kościach.

Przydałyby się zdjęcia obu stron interfejsu ze zdjętą tą małą płytką. Jest szansa, że da się rozpoznać podwersję mimo brak wspomnianych napisów na układach PAL.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: Damianx w 2021.09.09, 13:34:58
na tej dodatkowej jest napisane flamastrem 16
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2021.09.09, 13:53:37
Na małej płytce zawsze jest któraś z wersji wsadu "16". Ważniejsze jest, co jest na IC4 (na dużej płytce) - 23 czy 40. A jak nie ma nic, to czy zwarte są piny 11 i 15, bo po tym też można rozpoznać podwersję.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: m0b w 2021.09.09, 14:51:27
Czyli jak rozumiem poza utratą zawartości EPROM'a istnieje jeszcze możliwość wyparowania zawartości PAL. Te ostatnie są chyba jednorazowe, czy to się da programować wielokrotnie? Ewentualnie czym zastąpić? Jakiś GAL? No i pytanie podstawowe: gdzie znaleźć zawartość układów PAL?
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2021.09.09, 15:03:52
PAL-e czasami padają. Tak, są jednorazowe, ale GAL-e mogą je zastąpić 1:1.
Wsady są (załączam), choć niekoniecznie poprawne, bo uzyskane przez reverse engineering. Nigdy nie miałem sposobności, by je sprawdzić instalując w interfejsie.

Mam jeszcze trzecią wersję wsadów, ale wyciągniętych z uszkodzonego interfejsu. W środku mają wszystko inaczej, niże te w załączeniu, więc nie wiadomo co to.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: m0b w 2021.09.13, 22:38:10
Dzięki trojacku za ROMy. W załączniku dodaję kolejny, zgrany z interfejsu od bladego. Ten różni się od wszystkich wysłanych przez Ciebie przede wszystkim wyświetlanym napisem: "Unipolbrit 2086 - TOS V".
Co mogę więcej napisać? Pod nasadzaną płytką jest układ PAL z oznaczeniem "40" (w podstawce), obok 74LS273 (wlutowany w płytkę) oraz 74LS244 (w podstawce). Podstawki pod ROM i RAM są "normalne", za to te pod logiką są wycięte z większych podstawek. Nasadzana płytka ledwo wchodzi w podstawkę (czy też raczej te nieszczęsne jej resztki) i siedzi pod kątem, gdyż układy opierają się na układach z głównej płyty. Zakładam, że nie jest to fabryczny stan, tylko ktoś w tym grzebał, aczkolwiek wolę się upewnić, bo może Timex i takie numery odstawiał :)
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2021.09.14, 00:02:34
Tak, odstawiał :)
Dzięki za ROM, porównam go z tym, który już mam (2086E).
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: m0b w 2021.09.14, 00:06:26
Serio?? Te ścinki podstawek wyszły z fabryki? Pytam, bo nie wiem, czy to wywalać, czy docenić wartość historyczną i zachować dla potomności ;)
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2021.09.14, 01:36:31
Tak, serio. Mam 3 interfejsy tego typu i wszystkie tak wyglądają :D
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: m0b w 2021.09.14, 16:23:17
Myślałem, że ten interfejs to partyzantka, ale potem zajrzałem do FDD3000 ... dlaczego tam jest wszystko nie tak jak powinno??? ;)
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2021.09.14, 16:40:09
Czyli jak? Może byś dodał jakieś zdjęcia?

W załączniku zdjęcie moich 3 interfejsów tego typu. Dwa są sygnowane przez UNIMOR, trzeci (niekompletny) - Timex Portugal.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: m0b w 2021.09.14, 17:09:04
No to u Ciebie jest różnie. Pierwszy z lewej - pełna profeska. Podstawki takie, jak powinny być. Drugi ma pociętą podstawkę pod dodatkową płytkę, ale LS244 jest nisko osadzony, więc płytka wejdzie w podstawkę głęboko i będzie dobrze trzymać. W trzecim płytki nie da się dobrze wcisnąć - będzie siedziała pod kątem i ledwo się trzymała. Tak samo jak w "moim" egzemplarzu.

Zdjęcia FDD3000 może zrobię jakieś wieczorem. Ogólnie nie podoba mi się nieco niechlujny montaż i dziwne rozwiązania problemów, których nie powinno być. Tak jak z tymi podstawkami w interfejsie - przecież to nie ma najmniejszego sensu. Tego typu manewry robi się, żeby zaoszczędzić, a takie podstawki kosztują (i kosztowały) grosze. Żeby z większych podstawek powycinać mniejsze, trzeba poświęcić czas, a po montażu jeszcze się okaże, że nie łączą i dalsza zabawa, albo reklamacje. Gdzie tu oszczędność?
Montaż elementów na płycie FDD3000 to też jakaś porażka. Sam projekt jest fajny np. przewidziano możliwość montażu zarówno kondensatorów osiowych jak i radialnych. No i w egzemplarzu bladego są radialne, ale powyginane tak, żeby pasowały w punkty lutowania osiowych - ktoś tracił czas na ich misterne wyginanie :D Część kondensatorów jest od czapy jeśli chodzi o wymiary, więc przynajmniej w jednym miejscu jest jakiś pająk. Ogólnie wygląda to jakby w garażu przez studenta składane, a Timex jest (i był) raczej sporą firmą.
Mógłbym tak jeszcze wymieniać i wymieniać: trafo przylutowane na stałe do płyty, gniazdo monitora przykręcone do obudowy i przewodami do płyty, mimo, że jest miejsce do jego wlutowania w płytę (trzeba się solidnie wysilić, żeby wyciągnąć płytę, tzn. rozkręcić co się da i najlepiej odlutować trafo), jakieś kosmicznie długie przewody do zasilania stacji, widać że zaadaptowane z innych urządzeń, bo mają na sobie odgiętki, reset przyklejony glutem itp itd. Porównując do innych urządzeń z epoki, jest raczej słabo. Niebezpiecznie blisko sprzętów z naszej strony żelaznej kurtyny, ale u nas przynajmniej można by to wytłumaczyć brakami materiałowymi.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2021.09.14, 17:24:24
Tak jak z tymi podstawkami w interfejsie - przecież to nie ma najmniejszego sensu. Tego typu manewry robi się, żeby zaoszczędzić, a takie podstawki kosztują (i kosztowały) grosze.

Chyba zapominasz, że część stacji (i zapewne egzemplarz "bladego") była montowana w Polsce. A w latach 80. nie wszystko było dostępne, nawet dla Unimoru. Jak były w zapasie podstawki innego rozmiaru, niż aktualnie brakujące, to się docinało. Alternatywą były przestoje w oczekiwaniu, aż "rzucą" odpowiednie podstawki.

Cytuj
Montaż elementów na płycie FDD3000 to też jakaś porażka. Sam projekt jest fajny np. przewidziano możliwość montażu zarówno kondensatorów osiowych jak i radialnych. No i w egzemplarzu bladego są radialne, ale powyginane tak, żeby pasowały w punkty lutowania osiowych - ktoś tracił czas na ich misterne wyginanie :D [...] Ogólnie wygląda to jakby w garażu przez studenta składane, a Timex jest (i był) raczej sporą firmą.

Ależ z pewnością były montowane przez praktykantów :) A jak komuś za pracę płaci się symbolicznie, to efekty tej pracy bywają bardzo różne ;) (na zasadzie: "Działa? Działa! No to od.. się!").
Ja praktyki odbywałem w warszawskich zakładach ELWA i dlatego, jak widzę sprzęt z kondensatorami tej marki, zalecam natychmiastową ich wymianę :)

Cytuj
trafo przylutowane na stałe do płyty
Again - zależnie, co przyszło jako transformatory. Oryginalnie montowany był toroid, dla którego przewidziano otwór montażowy w dnie obudowy.

Cytuj
gniazdo monitora przykręcone do obudowy i przewodami do płyty, mimo, że jest miejsce do jego wlutowania w płytę

Zapewne taki był plan, jednak produkcja trochę się rozjechała z planami (albo plany były nieprecyzyjne) i otwór na gniazdo wyszedł bodaj trochę za nisko względem PCB. A tej nie dało się obniżyć. Moja portugalska stacja ma tak dokładnie zainstalowane gniazdo video.

Cytuj
jakieś kosmicznie długie przewody do zasilania stacji, widać że zaadaptowane z innych urządzeń, bo mają na sobie odgiętki

Tu nie bardzo rozumiem, czy jako "stację" piszesz o FDD3000, czy o napędzie? Bo wcześniej pisałeś, że transformator jest przylutowany do PCB, więc o jakich przewodach piszesz? 230V?

Cytuj
reset przyklejony glutem

I tak właśnie było w oryginale. Chyba nawet celowo, po prostu w ramach cięcia kosztów produkcji. To, co można było zrobić dla takiego pstryczka w obudowie plastikowej (FDD3), okazało się zbyt kosztowne w przypadku obudowy metalowej.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2021.09.14, 20:57:27
No to u Ciebie jest różnie. Pierwszy z lewej - pełna profeska. Podstawki takie, jak powinny być.

Może to słabo widać na zdjęciu, ale ta podstawka wygląda na przycinaną. Ale przynajmniej jest monolitem ;)

Cytuj
W trzecim płytki nie da się dobrze wcisnąć - będzie siedziała pod kątem i ledwo się trzymała. Tak samo jak w "moim" egzemplarzu.

No właśnie ten trzeci interfejs to jakiś dziwy jest. Kupiłem go bodaj na Allegro, oczywiście jako "niesprawdzony". W miejscu dodatkowej płytki siedział... pojedynczy scalak, wyglądający na PAL. Oznaczenia na obu PAL-ach zostały skrupulatnie wytarte i nie naniesiono żadnych innych. Zgranie zawartości nic nie dało, bo standardowy algorytm zrobił z tego mało sensowne równania. Być może ktoś eksperymentował ze zrobieniem przerzutnika w PAL (bo przecież brakuje 74LS109, "pamiętającego" aktualnie załączony ROM). Wtedy faktycznie mógłby być jeden scalak zamiast tej dodatkowej płytki, no ale... ten interfejs nie działa. Może go kiedyś podepnę do analizatora stanów, być może choć jakaś jego część zachowała funkcjonalność.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2021.09.15, 19:44:52
Rozrysowałem pinologię układów PAL wraz z najbliższym sąsiedztwem. A nuż może się komuś przyda przy naprawianiu interfejsu.
Zworki "23-40" nie istnieją, ale narysowałem logiczny ekwiwalent tego, co jest na PCB. W wersji z układem "40" piny 11 i 15 na PCB tego układu są połączone, ale nóżka 15 układu jest odgięta do góry. Tak więc linia p19 (pin 19 podstawki pod małą płytkę) idzie do pinu 11 PAL "40". Z kolei w wersji "23" nie ma odgiętego pinu ani dodanej zworki 11-15 na PCB, tak więc p19 idzie do pinu 15 PAL "23".
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: pear w 2021.09.28, 10:50:39
Może się przyda artykuł, który kiedyś trafiłem w sieci.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: m0b w 2021.09.28, 12:54:07
Dzięki :)
To jeszcze link (https://trastero.speccy.org/cosas/JL/FDD3000/ifdd3000.html) do oryginalnej strony w języku hiszpańskim. Może komuś wygodniej będzie włączyć tłumaczenie na angielski, bo polskie niestety nie wyszło za dobrze :)
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: KWF w 2021.09.28, 13:00:22
Do kompletu linki:

http://hardware.speccy.org/hardware/FDD3000-Timex.html

http://hardware.speccy.org/hardware/FDD3000-Timex(II).html

http://hardware.speccy.org/hardware/IFDD3000-Timex-i.html

http://hardware.speccy.org/hardware/IFDD3000-Timex-i(II).html

Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: m0b w 2021.10.12, 22:57:10
Dłuższy czas minął i na pewno już wszyscy czekają na ciąg dalszy sagi o interfejsie ;)

A więc od początku: trojacek zwrócił mi uwagę, że PAL "40" powinien mieć odgiętą nóżkę 15. Rzeczywiście, po przyjrzeniu się wcześniejszym zdjęciom w tym wątku, widać, że ta nóżka była już gięta - widocznie ktoś uznał, że jej odgięcie to błąd i wsadził ją w podstawkę. Odgiąłem więc nóżkę. Wywaliłem resztki podstawek i wstawiłem nowe. Musiałem przelutować piny w nasadzanej płytce - luty puściły i piny dawały się przesuwać. Po tych operacjach i kilku próbach (o czym później) interfejs zadziałał. Stacja z zamontowanym Gotekiem wczytała ładnie TOSa, a później parę innych rzeczy. Pobawiłem się około godziny i nastąpiła spektakularna awaria: na ekranie ZX'a kolorowe kwadraty, niezależnie czy z podłączonym interfejsem, czy bez. Interfejs po sprawdzeniu zwarć i innych cudów, wymianie 74LS244 (padnięty) oraz podłączeniu do innego ZX'a (z bijącym sercem), powodował kolorowe efekty na ekranie, ale już bez trwałych uszkodzeń komputera. Po wymianie pamięci i sklonowanej chałupniczo nasadzanej płytki interfejs znów działa. Obecnie wygląda jak na załączonych zdjęciach. Płytka mieści się w oryginalnej obudowie, przesunięcie układów bliżej pinów sprawia, że szansa zwarcia jest nikła, ale dla bezpieczeństwa można dodać przekładkę z tworzywa. No i przede wszystkim są podstawki, więc znacznie łatwiejsza serwisowalność. Pewnie dałoby się osiągnąć ten sam efekt przy odwróconych układach, instalując dłuższe piny, ale akurat dłuższych nie miałem.

Te "kilka prób" o których wcześniej wspominałem, spowodowały problemy z przewodem stacji (tym spiralnym). On niestety działa tylko w specyficznym ułożeniu - wygląda na to, że coś tam w nim jest przełamane, a w każdym razie ruszanie przewodem powoduje, że transmisja raz jest, a raz jej nie ma. Na razie zastanawiam się na co go wymienić, więc ciąg dalszy nastąpi ...

PS: Specjalne podziękowania dla trojacka, za cierpliwe odpowiedzi na tysiące nudnych pytań i przede wszystkim za sprezentowanie układów GAL, z których jeden widzicie na zdjęciu nasadzanej płytki.

PS2: Jak widać płytka jest mocno chałupnicza i trojacek namawiał mnie na opanowanie podstaw czegoś do projektowania i zrobienie wersji "profesjonalnej". Pytanie tylko, czy to się komuś przyda? Pewnie wszyscy używają klonów od pear'a, a te oryginalne M397 leżą na półkach jako eksponaty muzealne, ale może ktoś ma inne zdanie ;)
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2021.10.12, 23:21:30
Wielkie brawa za dociekliwość i cierpliwość!
Ten SRAM to z TV-SAT?
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: m0b w 2021.10.12, 23:56:31
Dzięki :) Tak, z tv-sat.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: blady w 2021.10.14, 23:11:44
Maćku,
Dziękuję za pomoc i gratuluję cierpliwości.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: jack_świdnik w 2021.10.15, 05:35:37
Ja na co dzien używam oryginału ale właśnie mi padł i raz czyta a raz nie zwiechy itp, wiec zmieniłem tymczasowo na interfejs pear-a
sprawdzę pozostałe co mam, nie mam wiedzy wiec chetnie bym je naprawił jak ktos bedzie chętny
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: m0b w 2021.10.15, 10:03:07
W pełni naprawialne są tylko interfejsy oparte na dwóch układach PAL/GAL - możesz w nich wymienić praktycznie wszystko. Jeśli masz wersję z funkcjami zintegrowanymi w jednym układzie PLCC, sprawa się komplikuje, ze względu na dostępność tego układu. Ale oczywiście zawsze można sprawdzić i ewentualnie poprawić połączenia, podmienić EPROM itp.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2021.10.16, 10:27:01
No i widzisz, maciekb, zostałeś ekspertem od M397 :)
Mam jeden do naprawy, rzucisz okiem? :D
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: m0b w 2021.10.16, 11:09:48
Proszę sobie ze mnie jaj nie robić ;)
A rzucić okiem mogę, zwłaszcza że części mam teraz w zapasie (czytaj: podmienię co się da). Tylko powiedzmy sobie szczerze, że pewnie już to robiłeś, więc problem leży raczej w ścieżkach, lutach, złączu. No chyba, że czasu nie miałeś się pobawić w przekładanki :)
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2021.10.16, 11:30:38
Nie.
Problem leży w całkowitym braku małej płytki :D
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: m0b w 2021.10.16, 11:40:18
Rozumiem, że nie przekładałeś płytek z pozostałych interfejsów, żeby sobie w razie problemów nie zmniejszać liczby sprawnych egzemplarzy? :) Mogę Ci oddać moją "prototypową", bo jednak naprawiłem oryginalną, tzn. opodstawkowałem i dałem dłuższe piny - mieści się w obudowie, działa. PAL był trafiony.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2021.10.16, 11:45:23
O, widzisz - i już rozwiązałeś mój problem :)
Czyli w pełni zasłużyłeś na miano eksperta od M397  8)
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2024.01.05, 17:30:27
W załączniku zdjęcie moich 3 interfejsów tego typu. Dwa są sygnowane przez UNIMOR, trzeci (niekompletny) - Timex Portugal.

No tak trochę głupio, bo cytuję samego siebie ;)
Ten trzeci z moich interfejsów prawdopodobnie wcale nie miał drugiej płytki. A ja się dziwiłem, że nie mogę go uruchomić na płytce pożyczonej ze sprawnego M-397...
Otóż - M-397 istniał również w wersji z 2 układami PAL lub GAL, ale na jednej płytce! I nie jest to ściema, bo ten interfejs działa.
PCB nie wygląda na fabryczne, ale układ ścieżek pokrywa się mniej więcej z tym moim "niekompletnym" interfejsem.
Niestety GAL-e zabezpieczone przed odczytem, a w jednym z nich musi być przerzutnik, więc nie da się odczytać kombinatorycznie.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: Johnny Red w 2024.01.05, 20:41:20
Factory boards look like those :)
(http://www.encarnado.com/ssc/2xTI.jpg)
I have not tested those yet.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: ArturM w 2024.01.06, 09:37:46
Niestety GAL-e zabezpieczone przed odczytem, a w jednym z nich musi być przerzutnik, więc nie da się odczytać kombinatorycznie.
Ale w sumie wiemy jak powinien działać system przerzutnika (jakie adresy wyzwalają, jaki kasuje) więc można by dokonać kilku odczytów w znanych stanach.

Jeśli płytki są takie same - nie dokonano żadnych dodatkowych "krosów" - i oba układy są typu 16L8 to hipotetyczny schemat tego może wyglądać tak jak w załączniku. Narysowałem go, składając go ze schematu dwupłytkowego.
Układ IC3 mógłby być typu 16R8 (mający przerzutniki D), ale połączenia raczej na to nie wskazują. Gdyby tak było to /MREQ musiałoby powędrować na pin 1, a pin 11 musiałby być ściągnięty do masy. Zatem raczej zrobili przerzutnik "dyskretnie".
IC4 odpowiada głównie za generowanie sygnałów sterowania portów IO i brakującej logiki adresacji pamięci, zaś IC3 to głównie dekoder adresów i przerzutnik. Teraz tylko rozpisać pełne równania i podzielić je na dwa układy - wykorzystując 3 połączenia między układami.

Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2024.01.06, 11:16:52
Artur, dzięki za szybką analizę!
Wersja jednopłytkowa prawie na pewno musi mieć krosa między pinami 11 i 16 układu IC4 (moja, ze zdjęcia z 2021 roku, ma!). Wersja, której zdjęcie zrobiłem wczoraj, ma zamiast krosa dodatkową ścieżkę, ale nie jest to oryginalna płytka.
Pinologia układów programowalnych jest nieco inna, niż w wersji dwupłytkowej.

IC3:
1 - zwarty z pinem 18 (przerzutnik na bramkach?)
2 - A14
3 - A13
4 - A10
5 - A9
6 - A3
7 - A2
8 - /MREQ
9 - /M1
11 - GND (nie wiem, czemu)
12 - sterowanie /ROMCS
13 - IC4 pin 13
14 - IC4 pin 14
15 - /CE RAM (piny 18 i 20)
16 - /CE ROM (piny 18 i 20)
17 - A15
18 - zwarty z pinem 1
19 - IC4 pin 15

IC4:
1 - A12
2 - /IORQ
3 - /RD
4 - A8
5 - A11
6 - A7
7 - A6
8 - A5
9 - A4
11 - zwora do pinu 16
12 - LS273 pin 11
13 - IC3 pin 13
14 - IC3 pin 14
15 - IC3 pin 19
16 - A1
17 - /WR
18 - A0
19 - LS244 piny 1 i 19

Do klasycznego przerzutnika brakuje jeszcze jednego mostka wyjścia z wejściem, moim zdaniem. Chyba, że zostało jakoś zaimplementowane wewnątrz? Nie wiem, czy w GAL jest to możliwe. Możliwe, że dziabnąłem się gdzieś...
No ale dzięki tej nieoryginalnej płytce udało mi się przywrócić do życia mój stary interfejs, który myślałem, że musi być dwupłytkowy :)

GAL (a raczej PAL) IC4 udało mi się odczytać. Oto równania:

i1=1 i2=2 i3=3 i4=4 i5=5 i6=6 i7=7 i8=8 i9=9 GND=10 /i11=11 o12=12
f13=13 o14=14 o15=15 o16=16 f17=17 f18=18 o19=19 VCC=20

@ues 50414c20444f4c00
@ptd unused

equations

/o19 = /i2 * /i3 * f18 * i6 * i7 * /f13 * /i9 * /i11
/o15 = /i3
/o14 = /i1 * /i4 * /f18 * /i5 * /i6 * /i7 * /i8 * /i9 * i11
/o12 = /i2 * f18 * /f17 * i6 * i7 * /f13 * /i9 * /i11
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: ArturM w 2024.01.06, 11:34:18
Pinologia układów programowalnych jest nieco inna, niż w wersji dwupłytkowej.

IC3:
1 - zwarty z pinem 18 (przerzutnik na bramkach?)
(...)
11 - GND (nie wiem, czemu)
(...)
18 - zwarty z pinem 1
Jeśli to co rozpisałeś dotyczy układów GAL to taki układ ma jak najbardziej sens.
Pin 1 to IO/CK zatem tędy podaje się zbocze by przerzutnik D w komórce OLMC zmienił stan. Ale też w takim przypadku pin 11 ma rolę IO/~OE więc trzeba go ściągnąć do masy.

Do klasycznego przerzutnika brakuje jeszcze jednego mostka wyjścia z wejściem, moim zdaniem. Chyba, że zostało jakoś zaimplementowane wewnątrz? Nie wiem, czy w GAL jest to możliwe. Możliwe, że dziabnąłem się gdzieś...
Uważam, że pin 18 ma tu kluczową rolę związaną z /M1 & /MREQ i zmiana jego stanu doprowadza do uaktualnienia stanu wewnętrznego przerzutnika.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2024.01.06, 12:48:35
Jeśli to co rozpisałeś dotyczy układów GAL to taki układ ma jak najbardziej sens.
Pin 1 to IO/CK zatem tędy podaje się zbocze by przerzutnik D w komórce OLMC zmienił stan. Ale też w takim przypadku pin 11 ma rolę IO/~OE więc trzeba go ściągnąć do masy.

Bazowałem na tym, co fizycznie mam w rękach: nieoryginalna płytka ma 2xGAL, a moja - oryginalna - ma wytarte oznaczenia, ale od spodu widać wypukłe logo NS. Teoretycznie GAL-e już istniały w 1985 roku, ale to moje zgadywanie. Na zdjęciu Johna widać płytki oryginalne z układami NS, ale nie widać całego oznaczenia: DMP(AL?)...8ANC. Nie wyguglałem niczego sensownego. GAL-e tej firmy mają zwykle na końcu coś typu "-25" plus literki. Ale mogły być różne wersje oznaczeń, w sumie.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: pear w 2024.01.06, 14:42:35
DM PAL 10H8 ANC lub DM PAL 10L8 ANC
H = Active high
L= Active low
A = 25 ns
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2024.01.06, 17:21:25
Ale oba te typy PAL nie mają rejestrów, więc teoria upada.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: pear w 2024.01.06, 20:27:28
A po co rejestry ? Z góry zrobiliście sobie założenie, że 1 i 18 są wykorzystane globalnie, a wcale tak nie musi być.
W całej konstrukcji jest tylko jeden przerzutnik RS i to może być właśnie zawrócone na zewnątrz wyjście (18) do wejścia (1), a druga część jest połączona wewnętrznie.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2024.01.06, 21:03:56
A po co rejestry ? Z góry zrobiliście sobie założenie, że 1 i 18 są wykorzystane globalnie, a wcale tak nie musi być.
W całej konstrukcji jest tylko jeden przerzutnik RS i to może być właśnie zawrócone na zewnątrz wyjście (18) do wejścia (1), a druga część jest połączona wewnętrznie.

Przecież o tym pisałem:
Do klasycznego przerzutnika brakuje jeszcze jednego mostka wyjścia z wejściem, moim zdaniem. Chyba, że zostało jakoś zaimplementowane wewnątrz? Nie wiem, czy w GAL jest to możliwe.

Ale pin 11 na masie daje mi do myślenia, że to jednak musi być GAL. Chyba, że w oryginalnych PCB ten pin wcale nie jest na masie, bo dla PAL nie miałoby to sensu... Natomiast płytka-samoróbka (z masą na pinie 11) mogła być zrobiona w czasach powszechności układów GAL.

@Johnny, could you please post an image of the bottom side of these PCBs? TIA.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: Johnny Red w 2024.01.07, 09:18:14


@Johnny, could you please post an image of the bottom side of these PCBs? TIA.

Here :)
They are in the same position. You can see because the 15 D connector is different.
The green boldge wire from RAM is broken on the right TI.
(http://www.encarnado.com/ssc/2xTIback.jpg)
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2024.01.07, 11:06:05
Thanks Johnny!

Noo, niezły galimatias. To dopiero wygląda na wersję beta. I ten napis "Spain" daje do myślenia. Wiem, że FDD było oferowane na rynku hiszpańskim (bodajże pod marką Inves, czyli Investrónica), ale nie podejrzewałem tam żadnej produkcji.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: Johnny Red w 2024.01.07, 11:31:55
Thanks Johnny!

Noo, niezły galimatias. To dopiero wygląda na wersję beta. I ten napis "Spain" daje do myślenia. Wiem, że FDD było oferowane na rynku hiszpańskim (bodajże pod marką Inves, czyli Investrónica), ale nie podejrzewałem tam żadnej produkcji.

No problem.
We know boards were made in Spain. We don't know if only those were made there or others.
One of the EPROMs have a date and the FDD was released in 1984, so yes, those can be some of the first versions.
The LOAD ZX Museum have a previews one that looks like a prototype, but I have not yet seen it.
Investronica was going to release the FDD3 as InvesDisk 200 but it seems it was not popular.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: ArturM w 2024.01.08, 08:12:38
Noo, niezły galimatias. To dopiero wygląda na wersję beta.
To jest najprawdopodobniej ta wersja w której przeniesiono komunikację z bitów 0-3,4,6 na 0-3,6,7. Dokładnie to robią te górne krosy.
Dolny zaś doprowadza do EPROM adres A11. Przedtem na tym pinie było 5V, zatem płytka przed przeróbką miała mieć pamięć 2716 a nie 2732.

Układ pozostałych ścieżek w okolicy układów PAL też się nieco różni z wersją dwupłytkową.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2024.01.08, 21:34:31
Dolny zaś doprowadza do EPROM adres A11. Przedtem na tym pinie było 5V, zatem płytka przed przeróbką miała mieć pamięć 2716 a nie 2732.

Ale to byłaby niezła sztuczka, bo w standardowym EPROM (2732) pozostało niewykorzystanych raptem kilkanaście bajtów. Czyżby w okrojonej wersji nie były zaimplementowane jakieś funkcjonalności?
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2024.02.24, 11:43:11
Pozostaje sczytanie metodą brute force.

Małe speleo na własnym wątku, hehe :)
Dopiero sprawdzenie daty mojego wpisu uświadomiło mi, że to tyle lat trwało, ale... układy zostały rozszyfrowane :)
Klasyczne brute force okazało się niemożliwe, ponieważ w IC3 (GAL-u, który jest zabezpieczony przed odczytem) jest zaimplementowany rejestr. Oczywiście wiedząc, gdzie jest Q (wyjście), a gdzie CLK, i mając w łapkach schemat interfejsu (nawet niekompletny - wystarczy rozpisać, jaki sygnał jest na każdym pinie IC3), mogłem zacząć wyciągać wnioski, jak powinna wyglądać logika okołorejestrowa.

Na razie nic nie udostępniam, bo jeszcze będę testował w rożnych konfiguracjach, by się upewnić, że nie ma tam jakiegoś kruczka.
W odczytaniu IC3 z pomocą przyszedł mi programator Advantech, a w szczególności - procedura testowania z zadanymi wektorami. Drobnymi kroczkami, porównując wyniki z oryginalnym GAL, doszedłem do stanu, w którym komputer wstaje i poprawnie wczytuje programy z dyskietki.

Na czym testowałem:
- Gumiak z ROM NEC i procesorem SGS.
- TC2048 z ROM NEC i procesorem NMOS Zilog.
- FDD3000 oryginał (duża płyta).
- Interfejs, oczywiście, jak w wątku.

ROM w TC2048 raczej nie był tam oryginalnie, bo to standardowa wersja gumiakowo-plusowa. Ale diabli wiedzą, co ten komputer przeszedł, choć na szczęście nie ma śladu żadnych modów. A właśnie płyta 2048 standardowo pracuje z EPROM-em, więc mod proponowany dla NEC-a jest już fabrycznie zaimplementowany :)
Co nie zmienia faktu, że na obu komputerach nie działa TI-of-TTL...

PS. Dziś rano odkryłem jeszcze jedną drobną różnicę w stosunku do oryginału. Małe niedopatrzenie, które nijak nie zmienia działania, ale widzę, że warto jeszcze pocyzelować ;)
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: Maryjan w 2024.02.24, 19:35:21
Widzę Jacku, że się "zawziąłeś".
Ale temat jak najbardziej ciekawy.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: maxit w 2024.02.24, 23:20:58
Są tacy co nie dają mu spokoju, więc Jacek nie ma wyboru ;)

Odkąd dowiedział się, że Interface do FDD3000 na dwóch GAL-ach istnieje i działa, jego życie nie jest już takie samo ;)
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2024.03.02, 13:18:01
No i trafił mi się kolejny M-397 do naprawy.

Od razu widać, że zmieniane było złącze. Jest znacznie krótsze (bo ma krótkie piny), przez co generalnie źle styka z komputerem. Ale da się wsunąć do końca na gołą płytę komputera.
Pierwsze odpalenie to oczywiście porażka, bo korozja na złączu - normalna rzecz.
Drugie i kolejne również. No to trzeba sprawdzić EPROM.
Po rozkręceniu widzę EPROM z napisaną sumą kontrolną 05FAF2, czyli inną, niż w moim oryginalnym interfejsie (05F7E2). Po odczycie w programatorze suma się zgadza z zawartością.
Wkładam więc swój EPROM (05F7E2) i... interfejs rusza.
Ktoś kiedyś mocno kombinował i mu nie wyszło ;)

Porównałem obie zawartości EPROM i:
- ten z sumą 05F7E2 używa maski CFh, co działa z wszystkimi moimi interfejsami (na 2-płytkowym, na jednopłytkowym na GAL-ach i jednopłytkowym na EFGJ),
- ten z sumą 05FAF2 używa maski 5Fh, taki interfejs mi się jeszcze nie trafił.

Ale ewidentnie takie też istnieją, bo:

Dla porządku jeszcze dodam, że w posiadanych przeze mnie wersjach ROMów dla TI, oprócz romów z sygnałami maskowanymi bajtem $c0 (flagi transmicji na bitach 7,6) znajdują się też romy maskowane bajtem $50 (bity 6,4)
BYĆ MOŻE różnice dotyczą wersji interfejsu (Asic / TTL)

Osobiście podejrzewam, że wersje z EPROM z sumą 05FAF2 (maska 5Fh) są na 2xGAL, tylko po prostu inne są wsady lub układy ścieżek.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: Johnny Red w 2024.03.03, 12:33:53

Porównałem obie zawartości EPROM i:
- ten z sumą 05F7E2 używa maski CFh, co działa z wszystkimi moimi interfejsami (na 2-płytkowym, na jednopłytkowym na GAL-ach i jednopłytkowym na EFGJ),
- ten z sumą 05FAF2 używa maski 5Fh, taki interfejs mi się jeszcze nie trafił.

I believe the 05FAF2 ROM is the most common in Portugal.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: Johnny Red w 2024.03.08, 15:19:22
Porównałem obie zawartości EPROM i:
- ten z sumą 05F7E2 używa maski CFh, co działa z wszystkimi moimi interfejsami (na 2-płytkowym, na jednopłytkowym na GAL-ach i jednopłytkowym na EFGJ),
- ten z sumą 05FAF2 używa maski 5Fh, taki interfejs mi się jeszcze nie trafił.

Now that I read this again, can you send me or where can I get this 05F7E2 ROM?
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: trojacek w 2024.03.08, 15:36:22
Attached.
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: Johnny Red w 2024.03.08, 19:23:01
Attached.

Thank you!!
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: Johnny Red w 2024.03.08, 20:47:43
Attached.

So in your opinion what does this difference in 7 bytes on TI ROMs?
0x542 C0 -> 50
0x551 80 -> 10
0x55A C0 -> 50
0x563 80 -> 10
0x589 C0 -> 50
0x590 80 -> 10
0x598 C0 -> 50

Left is 05F7E2, right is 05FAF2
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: ArturM w 2024.03.08, 21:12:49
These values change the bit mask in this low level communication section:

  1322    SENDONE:LD      B,1             ;ilość bajtów = jeden
 1324            JR      SENDONE1        ;omiń pobranie danej
 1326    SEND:   LD      A,(HL)          ;bajt do A
 1327    SENDONE1:
                 LD      D,A             ;wpisz go do D
 1328            ADD     A,C             ;-------------
 1329            LD      C,A             ;-------------
 1330            PUSH    BC              ;zachowaj ile wysłał
 1331            LD      A,D             ;odtwórz bajt
 1332            AND     %00001111       ;wyślij młodsze
 1334            OUT     (239),A         ;z d6 i d4 jako zero
 1336            LD      E,A             ;młodsze do E
 1337            LD      A,D             ;bajt do A
 1338            AND     %11110000       ;wydziel starsze
 1340            RRCA                    ;SWAP A
 1341            RRCA                    ;
 1342            RRCA                    ;
 1343            RRCA                    ;
 1344            LD      D,A             ;zpisz starsze
 1345            LD      BC,80           ;B=0, C=%01010000
 1348    A_1348: IN      A,(239)         ;odczytaj port
 1350            AND     C               ;maskuj bity
 1351            CP      64              ;czy d6 ustawiony
 1353            JR      Z,L_94          ;jeśli tak to dalej
 1355            DJNZ    A_1348          ;inaczej powtórz w pętli 256 razy
 1357            JR      COMERR          ;skok bo się nie udało
 1359    L_94:   LD      A,E             ;weź młodsze
 1360            OR      16              ;ustaw d4
 1362            OUT     (239),A         ;wyślij do portu
 1364            LD      B,0             ;znowu powtarzamy 256 razy
 1366    A_1366: IN      A,(239)         ;odczytaj port
 1368            AND     C               ;maskuj bity
 1369            CP      80              ;czy d6 i d4 ustawione
 1371            JR      Z,L_97          ;tak to dalej
 1373            DJNZ    A_1366          ;inaczej powtórz w pętli
 1375            JR      COMERR          ;skok - nie udało się
 1377    L_97:   LD      A,D             ;starsze w D
 1378            OR      16              ;ustaw d4
 1380            OUT     (239),A         ;wyślij do stacji
 1382            LD      A,D             ;d4 teraz będzie zerem
 1383            OUT     (239),A         ;wyślij do stacji
 1385            LD      B,0             ;pętla 256
 1387    A_1387: IN      A,(239)         ;odczytaj ze stacji
 1389            AND     C               ;maskuj bity
 1390            JR      Z,L_99          ;jak wyzerowała to skocz
 1392            DJNZ    A_1387          ;inaczej powtórz jeszcze raz
 1394    COMERR: LD      A,0             ;wyślij informację do stacji
 1396            OUT     (239),A         ;że się nie udało
 1398            POP     BC              ;zdejmij ilość bajtów
 1399            POP     HL              ;to już koniec
 1400            JP      A_1233          ;--ERROR--
 1403    L_99:   POP     BC              ;wszystko ok, zdejmij ilość bajtów
 1404            INC     HL              ;następny bajt
 1405            DJNZ    SEND            ;wyślij
 1407            XOR     A               ;zeruj A bo już wszystkie
 1408            RET                     ;powróć

 1409    GETONE: LD      B,1             ;licznik bajtów
 1411    GET:    PUSH    BC              ;liczba bajtów na stos
 1412            LD      A,64            ;ustaw bit d6
 1414            OUT     (239),A         ;wyślij do stacji
 1416            LD      BC,80           ;B=256, C=%01010000
 1419    A_1419: IN      A,(239)         ;odczytaj z stacji
 1421            LD      E,A             ;odbierz pierwszy nibble
 1422            AND     C               ;maskuj bity
 1423            CP      16              ;czy d4 ustawiony
 1425            JR      Z,L_102         ;jeśli tak to dalej
 1427            DJNZ    A_1419          ;powtórz 256 razy
 1429            JR      COMERR          ;inaczej błąd
 1431    L_102:  LD      A,80            ;ustaw d6 i d4
 1433            OUT     (239),A         ;wyślij do stacji
 1435            LD      B,0             ;licznik
 1437            IN      A,(239)         ;wczytaj z portu
 1439            LD      D,A             ;odbierz drugi nibble
 1440            AND     C               ;czy d6 i d4 ustawione
 1441            JR      Z,L_104         ;tak, to dalej
 1443            DJNZ    -6              ;jak zawsze 256 razy
 1445            JR      COMERR          ;inaczej błąd
 1447    L_104:  OUT     (239),A         ;wyślij bajt
 1449            LD      A,E             ;pierwszy nibble do A
 1450            AND     %00001111       ;tylko 4 młodsze bity
 1452            LD      E,A             ;wpisz z powrotem
 1453            LD      A,D             ;drugi nibble
 1454            AND     %00001111       ;tylko 4 młodsze bity
 1456            RLCA                    ;przesuwamy o 4 bity
 1457            RLCA                    ;SWAP A
 1458            RLCA                    ;
 1459            RLCA                    ;
 1460            OR      E               ;łączymy nibble w bajt
 1461            LD      (HL),A          ;a wynik do pamięci
 1462            POP     BC              ;zdejmij ilość bajtów
 1463            ADD     A,C             ;
 1464            LD      C,A             ;--------------
 1465            INC     HL              ;następny bajt
 1466            DJNZ    GET             ;jak już wszystkie to
 1468            XOR     A               ;zeruj A
 1469            RET                     ;i wychodzimy bo już wszystkie
Tytuł: Odp: Interfejs M-397 naprawa
Wiadomość wysłana przez: steev w 2024.03.08, 21:16:25
There are two bits used to sync transfer.
One bit, 6 (0x40) is used in both versions of firmware.
Second bit varies :
Bit 7 (0x80, mask 0xc0) in one, and bit 4 (0x10, mask 0x50) in another.

(TT3000 uses bits 4&5, mask 0x30)