Posiadam sprawne ACSI2STM, które działa poprawnie z 1040 STF TOS 1.04, ale kiedy podłączam do nowego nabytku 1040 STE z zastanym TOS 1.06 to urządzenie nie zgłasza się (nie montuje dysku, nie ładuej programu startowego ACSI2STM). Czy to może być problem za zbugowanej wersji TOS 1.06?
W wolnej chwili przystąpię do analizy mojego problemu, ale może ktoś spotkał się z podobnym problemem?
Na tą chwilę zanotowałem listę co będę sprawdzał: 1. Sprawdzić co wysyła ACSI2STM w wersji DEBUG na serial port, 2. Sprawdzić przewodność pinów portu ACSI (ewentualne czyszczenie z korozji, zimne luty, itp). 3. Sprawdzić oscyloskopem, czy pojawia się sygnał CS, A1, 4. Sprawdzić tętnienia na zasilaniu (jeśli są to recap PSU). 5. Zmiana wersji TOS na 2.06, 6. Sprawdzić oscyloskopem jakoś/kształt sygnałów na magistrali WD 1772. 6. Zrobić mod: 10k pullup na magistrali danych układu WD1772 → ->link<-
Co o tym sądzicie? Od czego zacząć? TOS i tak chciałem podnieść więc mam 2w1.
Ja w STE miałem toa 1.6 i ASCI działal bez zarzutu. Sprawdź też jakie DMA masz w STE. U mnie pullup'y na WD trochę pomogły. Ale dużą zmianę spowodowała wymiana DMA z STFM (mimo, że też teoretycznie na model problematyczny).
Problem miałem na pierwszym egzemplarzu z Tosem 2.6 i 4MB ram. Dlatego wyciągnąłem golasa z 1MB i Tosem 1.6. Na którym wszystko działalo bez zarzutu. Po sprawdzeniu układu dma okazalo się, że pierwsze ma niby bad dma, a drugie STE prawidłowe. Przełożenie ramu i tos'u do drugiego nic nie zmieniło, dalej wszystko hula bez problemow. W pierwszym z bad dma - zamieniłem dma na taki sam wariant z stfm i dorzuciłem pullapy na wd, asci2stm dziala teraz na obu. Trochę uwag dopisałem do wątku: ->link<-
Mam, też już komplet części do rozwiązania ST DMA Fix - plus kilka płytek pcb... ale mam teraz urwanie głowy w pracy i nie dałem rady jeszcze tego polutować i sprawdzić. Rozwiązanie jest przelotowe - ale wymaga wylutowania układu DMA. W moich stfm te układy są w podstawkach, natomiast STE jedno ma dobre w wariancie smd, a drugie miało układ w dipie, ale wlutowany w płyte, więc go sobie wylutowałem i wstawiłem podstawkę.
Sprawdziłem: mam konfiguracje STE z płytą tzw. BETA BOARD CA4003290 oraz wysoce podatną wersję układu DMA C025913-38.
Chociaż z tego co na świeżo piszą ->link<- to sam układ DMA nie świadczy o problemie a cały setup.
Piszą także, że mimo wszystko PULL-UP dla magistrali DMA rozwiązuje wiele problemów. Nie jest to trudne do wykonania, zatem spróbuję się z tym zmierzyć.
Jak nie pomoże to najpewniej wejdę także w ST DMA Fix. Tutaj jednak boję się trochę wylutowania układu DMA. Czy zamierzasz sprzedawać zlutowane układy lub komplety części?
Tak jak piszesz - jest kilka rewizji płyt Atari STE, niestety najbardziej problematyczna jest ta w wersji beta. Niestety różnice pomiędzy rewizjami oraz patche, które zostały zastosowane przez firmę Atari nie są chyba nigdzie opisane. Na przestrzeni ostatnich lat, wyszło w praniu, że układ DMA C025913-38, na niektórych płytach powoduje problemy podczas zapisu na partycjach dysku twardego, generalnie robi na nich sieczkę. Jak dobrze pamiętam, wyszło to w okresie, kiedy światło dzienne ujrzał satandisk. Początkowo ludzie wymieniali go na wariant teoretycznie niesprawiający problemów, ale z tego co czytałem, nie daje to też gwarancji stabilnej pracy zabawek ASCI. Zresztą nie jestem jedyną osobą, u której wymiana jednego DMA C025913-38 na inną sztukę dokładnie tego samego typu rozwiązała problem. Znaczenie ma też wygrzanie sprzętu - czasami problemy objawiąja się dopiero po kilkunastu minutach pracy komputera. Warto tez, abyś zobaczył jak wyglądają pojemności w zasilaczu Atari - bo ja w moim problematycznym STE miałem spuchnięte 3 sztuki, dlatego zrobiłem tam recap całości (tylko zasilacz). Płytek mam chyba 10, na swoje potrzeby zużyje 4, wiec resztę pewnie wystawię po kosztach na sprzedaż (wprawdzie elementy kupowałem na allegro, a nie w hurtowni elektronicznej, ale i tak cenny czesci wyszly tanio. Dam znać, jak polutuje i przetestuje 1 sztukę...
@pigula z tym przekładaniem takiego samego DMA poruszyłeś ciekawy temat. Na którymś forum (Atari-forum lub Exxos) w tym roku ktoś napisał że po wyjęciu i włożeniu tego samego DMA wszelkie kłopoty z zapisem znikneły w jego STE.
Opcji wyjęcia i włożenia tej samej kości DMA w sumie nie sprawdzałem. Podmiankę zrobiłem automatem jak tylko wylutowałem jeden układ i wstawiłem podstawkę. Jeżeli ktoś miał układ fabrycznie umieszczony w podstawce, to oczywiście mogło dojść na przestrzeni lat do jakiegoś zaśniedzenia i braku styku... ja z ST mam małe doświadczenie.
Ze swojej strony zrobiłem PULLUP na 8 liniach danych WD1772. Po tej zmianie zauważyłem różnicę w bootowaniu przy podłączonym ACSI2STM, teraz dostaję 2 bomby (drive not ready), czego nie było wcześniej. Jednak czytając twój opis, widzę, że mój problem różni się: ty masz problem z losowymi przekłamaniami, a u mnie w ogóle nie jest widoczny dysk. Muszę sprawdzić wszystkie sygnały z STE do STM.
Dwie bomby mam na 1 dma podczas testu programem tostest dla asci2stm, ale test leci dalej i finalnie mam jeden błąd na 432 testy. W tym STE nie mam aktualnie floppa a Tos to 1.62 eng. Na drugim takim samym DMA zero błędów przy takiej samej konfiguracji.
Ja kiedyś przekładałem DMA między różnymi płytami, i miałem efekty takie, że DMA z serii tzw. "bad" w jednej płycie działało dobrze, a w innej nie.
Wydaje mi się, że w wielu przypadkach może to być tak samo jak jest z "wadliwymi" GTIA, które też po przełożeniu w inne płyty czasem działają poprawnie, a czasem nie.
Wg mnie zarówno temat GTIA w małym Atari, jak i temat DMA w dużym, to jest podobny przypadek i wiąże się z dużym rozrzutem parametrów samych tych układów, ale też i parametrów sygnałów na płytach Atari. Po latach degradacji wszystko się jeszcze bardziej porozjeżdżało i zaczęły coraz częściej wychodzić tego typu kłopoty.
Fix-y robią jakieś tam poprawki i jest to dobre rozwiązanie często, ale szczerze mówiąc równie dobrze można by próbować przekładać kilka układów między kilkoma płytami i w ten sposób dobrać co w której płycie zadziała. Oczywiście problem jest w tym, że trzeba by mieć garść układów i stertę płyt, żeby to zrobić, a dodatkowo nie wiadomo na jak długo takie podmianki wystarczą, bo jeśli to jest kwestia degradacji układów, to problem może postępować i wracać znowu za jakiś czas.
@Mq - dlatego kiedy składałem sobie ASCI2STM, z którym początkowo miałem problemy, zacząłem szukać informacji o owych problemach w sieci. I chyba na AA czytając wątek natknąłem się na info, że u Paru osób przełożenie układu z innej płyty pomogło. Dlatego też to u siebie zrobiłem. I rzeczywiście tak jest. Dodam tylko, że nie należy pobadać za szybko w zachwyt, kiedy po podmianie układu początkowo wszystko śmiga. Bo należy jeszcze wykonywać testy na mocno wygrzanym sprzęcie. U mnie włożenie układu DMA C025913-38 do STE z płyty STFM dało pozytywny rezultat, ale przez 1 godzinę pracy (czasami, krócej - jeżeli komputer jest męczony np. programami demonstracyjnymi). Po tym czasie komputer dalej jest stabilny ale na SCI2STM program diagnostyczny pokazuje 2 błędy. Przez pierwszą godzinę 0 błędów. Na układzie WD mam pullapy 10K. Dołożenie fixa z trzema układami HC i drobnicą zaowocowało tym, że wczoraj przez 4h męczyłem komputer różnym softem i za każdym razem na zimnym jak i ciepłym komputerze testy diagnostyczne nie pokazują błędów. Po owych 4h podmieniłem DMA na to, które było zamontowane fabrycznie - podmiana nie trwa długo, bo nie mam skręconej obudowy więc to kilkanaście sekund... i ten sam program diagnostyczny zawsze kończy się już tylko 1 błędem (nie wiem, który z 432 testów się sypie - bo musiałbym jakiś graber podłączyć i nagrać materiał video i zobaczyć... zrobię to jak będę mial więcej wolnego czasu. Ale fix dużo daje nawet na nim, bo bez fixa program dignostyczny wiesza się w połowie a z fixem przechodzi go zawsze ale z 1 błędem. Mam w planach wymianę jeszcze 2 kondensatorów obok DMA, ale muszę je dopiero zamówić, bo nie mam bipolarnych na stanie.
Sprawdziłem ciągłość sygnałów z ACSI2STM do płyty głównej STE i wszystko wygląda doskonale. Sprawdziłem także sygnały od/do buforów buforów.
Zgodnie z opisem na stornie projektu wywaliłem także rezystory R9 - R11 z płytki bluepill.
Zaczynam się zastanawiać czy nie wymienić buforów w STE 74LS244N oraz 724LS345N (U302, U307) Koszt niewielki, a wykluczyłby ewentualność ich awarii.
Cały czas nie daje mi spokoju, że mój problem z DMA nie polega na rozwalaniu zawartości dysku przy zapisie, co jak czytam można wyeliminować nawet software'owo za pomocą odpowiedniego drivera. U mnie przy bootowaniu mam dwie bomby i nawet żadnego komunikatu z sprawnego ACSI2STM (tzn. działa z moim STF).
No chyba, że ACSI2STM ma jakiś felerny/klon układ, ale przy zakupie uważałem (no i działa z STF).
Nic to, wgram jeszcze firmware z rozszerzonym logowaniem verbose/debug. Zobaczę co powie ACSI2STM.
Jeżeli na STFM interfejs działa Ci prawidłowo - to nie jest to wina ASCI2STM.
- wywalenie R9 i R11 z płytki bluepill - daje tylko bezpieczeństwo zasilania z USB. Nie ma wtedy znaczenia co w jakiej kolejności podłączasz.
- zdejmij obudowę od zasilacza w STE i zobacz w jakim stanie są w nim pojemności, jeżeli jakiś jest spuchnięty to go wymień. Wszystkie są elektrolitami, na ich boku masz podaną pojemność i napięcie.
- obok układu DMA masz w ST dwa kondensatory bipolarne - je również warto sprawdzić i ewentualnie wymienić
- nie wiem jak masz obsadzony DMA w STFM - w niektórych płytach jest on w podstawce - dzięki czemu łatwo można go wyjąc i podmienić na drugą sztukę, z własnego doświadczenia wiem, że często zamiana układów miejscami w płytach rozwiązuje problem.
Doświadczenia nie mam, ale tak na rozum, ACSI2STM wydaje się ok.
- co do R9/R11, może w ferworze walki odwróciłem nieopatrznie kolejność zasilania i ucegliłem coś w STE. Ciekawe co poleciałoby pierwsze: bufory, DMA?
- PSU to dobry punkt: sprawdzałem już tętnienia oscyloskopem na liniach 5V i 12V, wydaje się, że zasilanie jest stabilne, na ile można to wyłapać, ale faktycznie są dwie pojemności, które górną część mają wybrzuszoną 4700uF/16V, 33uF/350V. Zamówiłem cały komplet elektrolitów NICHICON z niskim ESR w TME. Posiadam zasilacz ASPF34-4. Dodatkowa uwaga, że od czasu to czasu potrafi mi trochę poskakać obraz w STE, co prawie nie ma miejsca w STF.
- DMA w obu jest wlutowany, zatem czeka mnie mała rzeźba.
No to zacząłbym od wymiany pojemności w zasilaczu. W moim spuchnięte były 3 w tym oczywiście najdroższy po stronie pierwotnej na owe 400V. Tutaj bez obawy leciałbym każdy. Na samej płycie Atari już takim zwolennikiem całego recapu nie jestem. Jak tam coś jest niewylane i niespuchnięte to bym zostawił. Myślę, że raczej nic nie uwaliłeś - w końcu to Atari a nie sprzęt na literę C. Ja walcząc z ASCI2STM swojego ST nie oszczędzałem... Skakania obrazu u mnie nie zauważyłem, ale ja mam podpiętę ST przez Meduze do monitora. Jedyne co zauważyłem, to czasami podczas resetu Meduza przekłamuje mi jakąś składową RGB - ale wystarczy ją wyłączyć i włączyć i obraz jest już prawidłowy. Takiego efektu nie mam jak wyłączam i włączam Atari. Ale to może być wina samego przewodu - robiłem go 10 lat temu...
@havix: Może po prostu zamień testowo zasilacze i sprawdź, czy wstawienie tego z STFM do STe go nie uspokoi? Wtedy będziesz miał jednoznaczny dowód bez mierzenia.
Może porada będzie lamerska i prozaiczna... Ja kiedyś w STE miałem też dwie bomby, a przyczyną była pamięć, która nie łączyła w slotach. Wystarczyło docisnąć i usztywnić łącze i bombki zostały zneutralizowane. :-)
Nie wiem czy gdzieś nie ominąłem, ale czy stacja dysków działa Ci normalnie? W sensie bez ACSI2STM czy czyta dyskietki itp? Możesz jeszcze w celach testowych spróbować zrobić "zaślepkę" od Mq: ->link<-
W moim STE jest zainstalowana oryginalna stacja EPSON. Działa bardzo kulturalnie, a po wyczyszczeniu głowic jest całkiem przewidywalna i nie ma z nią najmniejszych problemów.
Teraz zauważyłem, że w ACIS2STEM miałem firmware 4.12 więc zainstalowałem najnowszy 5.0a. Niemniej dalej odpowiadają 2 bomby.
Tak sobie czytam jeszcze stronę projektu i napotkałem ciekawy zapis, który mówi, że można skompilować firmware z bardziej kompatybilnym algorytmem rozmowy urządzeń:
ACSI_FAST_DMA: If set to 1, unroll DMA code for faster performance. Fast timings may not be compatible with some ST DMA chips. You can try values between 2 and 5 for even faster performance, but this is glitchy.
A poniżej objaśnienie: // Push data faster in DMA transfers // Setting to non-zero unrolls the DMA transfer code but may be less compatible // with some ST DMA controllers. // // Values 1 to 5 select different algorithms, from the most conservative to the // fastest. It seems that the STM32 has hardware glitches in some corner cases, // and different algorithms do different tradeoffs for speed and compatibility. // Versions 3.x used algorithm 5 (the fastest) but had known issues. // // Algorithms apply to STM32->ST transfers, for ST->STM32 any non-zero value // will enable fast DMA. #define ACSI_FAST_DMA 1
Nie zdołałem do tej pory uruchomić przebudowanego programu. Wygląda na jakiś problem z bibliotekami i program po przebudowaniu dziła niepoprawnie. Nic to, sprawdzę później.
W międzyczasie wpadł mi w ręce analizator cyfrowy i postanowiłem prześwietlić swoje STF oraz STE pod kątem wystawianych sygnałów na porcie ACSI oraz ich zgodność z wymogami projektu: ->link<-
Ciekawe obserwacje: 1) Wyłączone ACSI2STM: * STF: sygnał CS pulsuje 8 razy z idealnym timingiem 250ns/50ms, * STE: także 8 pulsów, ale timing 250ns/120ms!!!
Pozostałe sygnały IRQ, DRQ, RST, ACK zgodne w wymogiem. W obu przypadkach A1 ładnie pokrywa CS.
2) Włączone ACSI2STM: * STF: dogadują się, więc zakładam protokół jest ok, * STE: pokazuje tylko 6 impulsów CS, jeden (pierwszy) pokryty A1, po czym ściąga IRQ do masy, wtedy lecą dwie bomby.
Dołączam diagram z bootowania STE z ACSI2STM. Pytanie dlaczego STE bez ACSI2STM zgłasza impulsy oddzielone 120ms okresem? Może firmware "dysku" nie jest gotowy na takie czasy, bo w STF jest idealnie 50ms tak jak w opisie projektu. Degradacja układów? Jakieś kondensatory?
Hej, jeżeli wyrobie się z zadaniami, które muszę zamknąć w weekend, to spróbuje skompilować ten wsad z tym zmienionym parametrem i jak coś wrzucę go tutaj jako załącznik... zobaczymy wtedy... Czy możesz też pokazać jakim ASCI2STM dysponujesz w sensie na jakiej płytce go złożyłeś.
A widzisz, dobry punkt. Zaćmienie. Jakoś zupełnie nie pomyślałem, że może być wiele wersji płytki - na mojej pisze rev. 1.1. Korzystam tylko z interfejsu ACSI i zegara. Nie korzystam z dodatkowego FDD.
Asz się boje, w 2025 roku wkraczam w świat 16 bit atari (sic!) ste, będę budował monstrum Sparrow wg. mojego widzimisię , oczywiście obudowę i klawiaturę wywalę, po co to komu z ste.
CommentTime16 Nov 2024 23:11 (4 dni temu) zmieniony
Aktualizacja:
Autor projektu wydał nową i ostateczną wersję softu ACSI2STM o numerze 5.00.
Nasz przypadek zainteresował autora i przygotował specjalną wersję firmware -PIO, która pozwala używać ACSI2STM z "uszkodzonym" chipem DMA. W naszym przypadku dotarliśmy do sedna problemu, którym okazało się brak sygnału ACK z DMA.
Wersja softu -PIO omija sterowanie przepływem za pomocą sygnałów DRQ/ACK, działa wolniej i nie pozwala się bootować z urządzenia ACSI2STM, ale wyśmienicie działa po załadowaniu drivera z dyskietki: - wypalasz firmware -PIO w ACSI2STM, - zgrywasz programik GEMDRPIO.TOS na dyskietkę, - bootujesz ATARI z dyskietki i podłączonym ACSI2STM, - uruchamiasz programik GEMDRPIO.TOS, - w menu ATARI wybierasz Install devices, → dysk twardy jest widoczny
W międzyczasie zakupiliśmy w UK fizycznie nowy układ DMA C025913-38. Tak to ten model, który aktualnie posiadamy i jest potencjalnie podatny na problemy BAD-DMA. Sprzedawca twierdzi, że to nówka sztuka i kosztuje 2 funty. Spróbujemy wymienić i zobaczymy czy sygnał ACK zacznie działać.
@pigula Tutaj chodzi o coś innego, o sprawdzenie czy można naprawić BAD-DMA programowo. Na Atari-Forum.com @czietz odkryl że inaczej programując DMA, może ono zacząć pracować dobrze. Jeśli to się potwierdzi to można zmodyfikować oryginalny TOS (źródła są dostępne).
Co do nie działających programów pod EmuTOS to ciekawe o które chodzi?
Jeżeli chodzi o soft - to wiesz ja głównie oglądam dema i dostaję info o błędnej wersji TOS. Samymi programami i grami się nie bawię - bo one mnie średnio kręcą. A o innym sposobie programowania DMA czytałem... to rzeczywiście, może być droga do rozwiązania tego problemu raz na zawsze...
Dziś wymieniliśmy układ DMA C025913-38 na nowy zakupiony w UK ->link<- Mamy sukces: nasz ATARI bootuje się z podłączonym ACSI2STM, nie mamy bomb przy starcie, ACSI2STM ładnie podaje dane w trybie ACSI oraz GEMDRIVE!!! Do testów użyliśmy firmware acsi2stm-5.00.ino.bin.
Sklep twierdzi, że mają nowe egzemplarze tych układów pochodzące ze starych zapasów. Wersje C025913-38 kosztuje 3 funty + przesyłka 2 funty + cło 8,50zł. Sklep posiada do STE także C398739-001, ale tam koszt 65 funty. Rozumie, że mit BAD DMA zrobił swoje ;) Sklep dostępny jest także na eBay - atarifreakz.
Nic to, jutro syn przetestuje solidnie maszynę, ale na tą chwilę wydaje się, że diagnoza uszkodzonego C025913-38 - brak wystawiania sygnału ACK jest poprawna.
Fajne uczucie przywrócić do życia ten sprzęt ;)
@Cyprian:
Nie znam EmuTOS, ale w wolnej chwili chętnie się zapoznam. Tak jak napisał @pigula, nasz przypadek to nie do końca słynne BAD DMA, gdzie objawem jest uszkadzanie danych na dysku. U nas odstawaliśmy dwie bomby na starcie przy podłączonym ACSI2STM.
@hawix tu nie chodzi o zwykłego EmuTOS , tylko o zmienioną pod DMA które działa nieprawidłowo. No ale w sumie to jest już po temacie bo wymieniłeś DMA na dobre.