Zamień układ zegara w komputerze Mac SE/30 na ATTiny85

Zamień układ zegara w komputerze Mac SE/30 na ATTiny85

Węzeł źródłowy: 1895248

Jak wyjaśnia [Phil Greenland] w pierwsza część jego znakomitego tekstu, bateria litowa używana do podtrzymania zegara czasu rzeczywistego (RTC) w komputerze Macintosh SE/30 ma paskudny zwyczaj eksplodowania i wyciekania swoich żrących wnętrzności po całej płycie. Chcąc zarówno naprawić uszkodzenia w systemie, w którym doszło już do wyładowania baterii, jak i całkowicie uniknąć problemu na nieskazitelnych płytach, zaczął szukać sposobów na wymianę baterii na coś nieco bardziej nowoczesnego.

<img data-attachment-id="571063" data-permalink="https://hackaday.com/2023/01/13/swap-the-clock-chip-on-the-mac-se-30-with-an-attiny85/macrtc_detail2/" data-orig-file="https://platoaistream.net/wp-content/uploads/2023/01/swap-the-clock-chip-on-the-mac-se-30-with-an-attiny85-1.jpg" data-orig-size="925,708" data-comments-opened="1" data-image-meta="{"aperture":"0","credit":"","camera":"","caption":"","created_timestamp":"0","copyright":"","focal_length":"0","iso":"0","shutter_speed":"0","title":"","orientation":"0"}" data-image-title="macrtc_detail2" data-image-description data-image-caption="

Uszkodzenie spowodowane pękniętą baterią RTC.

” data-medium-file=”https://platoaistream.net/wp-content/uploads/2023/01/swap-the-clock-chip-on-the-mac-se-30-with-an-attiny85.jpg” data-large-file=”https://platoaistream.net/wp-content/uploads/2023/01/swap-the-clock-chip-on-the-mac-se-30-with-an-attiny85-1.jpg?w=800″ decoding=”async” loading=”lazy” class=”size-medium wp-image-571063″ src=”https://platoaistream.net/wp-content/uploads/2023/01/swap-the-clock-chip-on-the-mac-se-30-with-an-attiny85.jpg” alt width=”400″ height=”306″ srcset=”https://platoaistream.net/wp-content/uploads/2023/01/swap-the-clock-chip-on-the-mac-se-30-with-an-attiny85-1.jpg 925w, https://platoaistream.net/wp-content/uploads/2023/01/swap-the-clock-chip-on-the-mac-se-30-with-an-attiny85-1.jpg?resize=250,191 250w, https://platoaistream.net/wp-content/uploads/2023/01/swap-the-clock-chip-on-the-mac-se-30-with-an-attiny85-1.jpg?resize=400,306 400w, https://platoaistream.net/wp-content/uploads/2023/01/swap-the-clock-chip-on-the-mac-se-30-with-an-attiny85-1.jpg?resize=800,612 800w” sizes=”(max-width: 400px) 100vw, 400px”>

Uszkodzenie spowodowane pękniętą baterią RTC.

Okazuje się, że ATtiny85 jest kompatybilny pinowo z oryginalnym układem RTC komputera Mac i rzeczywiście [Andrew Makousky] napisał już jakiś kod co umożliwiłoby mikrokontrolerowi emulację. W rzeczywistości jest to nieco bardziej skomplikowane, niż mogłoby się wydawać, ponieważ oryginalny układ RTC spełniał podwójną funkcję: zawierał także 256 bajtów pamięci o dostępie swobodnym (PRAM), w której maszyna przechowywała różne fragmenty informacji, np. który dysk z którego chcesz uruchomić komputer i prędkość kursora myszy.

Jednak po zainstalowaniu moda komputer odmówił uruchomienia. Okazuje się, że projekt był ukierunkowany na wcześniejsze maszyny, takie jak Macintosh Plus i SE, a nie na jego wydajniejszy SE/30. Dzięki takim zasobom społeczności Odtworzenie w programie KiCad płyty głównej SE/30, współczesne dokumenty techniczne i swój sprawdzony analizator logiczny, [Phil] był w stanie stwierdzić, że zabrakło czasu — kod po prostu miał trudności z reagowaniem na szybszą maszynę.

[Phil] w dużej mierze zadziałał, wypychając dużą część kodu do procedury obsługi przerwań, zwiększając w ten sposób czas odpowiedzi. Ale działał na bardzo cienkiej linii, tylko na nowym kodzie właśnie synchronizacja mieściła się w granicach specyfikacji, a czasami zdarzały się odchylenia, co powodowało błąd. To wystarczyło, aby ponownie uruchomić maszynę, ale nie było to rozwiązanie długoterminowe, na które liczył.

Dopiero gdy dotrzemy do druga część tej przygody z retrokomputerami że [Phil] w końcu rozwiązuje sprawę. Zdał sobie sprawę, że rozwiązaniem pozwalającym uzyskać lepszą wydajność ATtiny85 jest wykorzystanie jego uniwersalnego interfejsu szeregowego (USI), który jest powszechnie używany do komunikacji SPI i I2C. Na szczęście protokół Apple RTC był na tyle blisko I2C, że nakłonienie wszystkich do mówienia tym samym językiem nie stanowiłoby problemu. Jedynym minusem było to, że do jego zdjęcia musiał użyć innego zestawu szpilek.

Ostatecznie musiał porzucić klasyczny ATtiny8 w stylu DIP-85 i zaprojektować małą, niestandardową płytkę PCB na bazie wersji SOIC-8. To nie tylko pozwoliło mu na inne poprowadzenie pinów, ale umożliwiło mu podłączenie zewnętrznego oscylatora kwarcowego, który może poszczycić się nieco wyższą rozdzielczością niż wbudowane funkcje chipa.

Widzieliśmy już kreatywnych (lub po prostu zdesperowanych) hakerów „przypnij ponownie” ATtiny85 obracając przewody i dodając przewody łączące; bardzo dosłowny hack, który mógł również tutaj zadziałać. Uważamy jednak, że niestandardowa płytka PCB była warta dodatkowego wysiłku, aby stworzyć trwałe rozwiązanie, które będzie można montować w dowolnym miejscu inni właściciele komputerów Mac SE/30 może skorzystać. W końcu to, co niektórzy uważają za najlepszy komputer jaki kiedykolwiek powstał nie zasługuje na mniej.

Znak czasu:

Więcej z Zhakuj dzień