Retro computing pozwala zapoznać się z historią technologii, pokazując, jak daleko zaszły nowoczesne komputery. Oto jak zbudować własną działającą replikę Apple I.

Komputery przeszły długą drogę od czasu, gdy firma Apple rozpoczęła działalność w 1976 roku. W czasach, gdy Steve Jobs i Steve Wozniak po raz pierwszy składali oryginalne zestawy komputerowe Apple I, wszystko było pozyskiwane i składane ręcznie.

Apple było małą firmą z siedzibą w garażu rodziców Steve’a Jobsa, a Apple sprzedawał zestawy komputerowe poza garażem.

Zestawy Apple I składały się z ogromnej płyty głównej, kilkudziesięciu układów logicznych, dużych kondensatory mocy, diody, rezystory, chip A ROM i procesor 6502 zaprojektowany przez Motorolę i wykonany przez MOS Technology.

Model 6502 był popularnym procesorem w latach 80-tych – używany w komputerach Apple, Atari i Commodore. Był to pierwszy naprawdę tani procesor do mikrokomputera i był kluczowym elementem, który umożliwił rewolucję w komputerach osobistych.

W przypadku Apple I pozostawiono również jako ćwiczenie użytkownikowi zbudowanie zasilacza homebrew i uzyskanie klawiatury pochodzącej od firmy o nazwie Datanetics, która później wyprodukowała klawiaturę Apple II.

Możesz zobaczyć zdjęcie z 1979 r. przedstawiające Jobsa z Apple II na stronie internetowej Muzeum Historii Komputerów.

Apple I był sprzedawany w formie zestawu — nie sprzedawano całkowicie zmontowanych jednostek.

Maszyna została po raz pierwszy wydana 11 kwietnia 1976 r. — zaledwie dziesięć dni po założeniu firmy Apple w prima aprilis tego samego roku. W ramach żartu Steve i Steve postanowili ustalić cenę maszyny na 666,66 USD.

Sprzedaż Apple I była niewielka, głównie ze względu na bardzo ograniczone możliwości. Dostępne były również znacznie bardziej zaawansowane zestawy innych firm, takich jak Sinclair z Wielkiej Brytanii, których maszyny oferowały wbudowane wideo, grafikę, klawiaturę, port kasetowy, a później kolor.

Oryginalny komputer Apple I Steve’a Wozniaka, zbudowany w garażu rodziny Jobsów i umieszczony w drewnianym pudełku, był pierwotnie wystawiany w wewnętrznym muzeum Apple w R+D Six on 1 Infinite Loop w Cupertino w Kalifornii , ale teraz znajduje się w Smithsonian Museum w Waszyngtonie.

Komputer uzupełniający, Apple II, dostarczony dwa lata później w całkowicie zmontowanej obudowie, wraz z wewnętrznym zasilaczem i klawiaturą. Zawierał tryb graficzny i obsługiwał język BASIC, który trzeba było ładować z dyskietki lub karty rozszerzeń opartej na pamięci ROM.

Drugi model, Apple II+ rok później, obsługiwał wbudowany język BASIC i uruchamianie z zewnętrznej dyskietki.

Apple II był pierwszym zabójczym produktem firmy Apple, a kiedy rok później Dan Bricklin i Bob Frankston napisali pierwszą zabójczą aplikację dla Apple II, VisiCalc, Apple stało się z dnia na dzień pierwszą firmą zajmującą się komputerami osobistymi w Dolinie Krzemowej, która zarobiła miliard dolarów.

Komputery Apple II znikały z półek, gdy księgowi i inni biznesmeni używali VisiCalc do zarządzania swoimi firmami oraz automatyzacji księgowości i prognozowania.

Apple I był poważnie ograniczony, głównie dlatego, że pamięć RAM była wówczas bardzo droga, a maszyna obsługiwała 4K lub 8K pamięci RAM z możliwością rozbudowy do 32K. Apple I był tylko tekstowy i brakowało mu trybu graficznego, koloru i sprite’ów do tworzenia gier.

Maszyna nie miała systemu operacyjnego-BASIC można było załadować z opcjonalnej kasety kompaktowej, popularnego formatu audio z lat 70., pod warunkiem, że użytkownik zbudował również opcjonalną kartę interfejsu rozszerzenia kasety, która pasuje do pojedynczego portu rozszerzeń maszyny.

Bez języka BASIC, jeśli użytkownik chciał zaprogramować Apple I, musiał użyć języka asemblera Motorola 6502 i wbudowanego monitora maszyny, WozMon.

Oryginalny Apple I.

Przewiń do przodu o czterdzieści pięć lat

W dzisiejszym świecie płytki obwodów drukowanych (PCB) można zaprojektować w oprogramowaniu w ciągu godzin lub dni, a plik zapisać i przesłać przez internet do zakładów produkcyjnych PCB na całym świecie. Kupujący może mieć deski pod drzwiami w ciągu tygodnia-prawie za darmo.

Połącz to z nowoczesnymi postępami w procesorach i mikrokontrolerach, takimi jak układy FPGA, flash EPROMS i urządzeniami IoT, takimi jak Arduino, a uzyskasz wszelkie zadatki na nową rewolucję komputerową w stylu retro.

Kilku przedsiębiorczych przedsiębiorców odtworzyło oryginalną płytkę PCB Apple I i teraz sprzedaje je online, w tym na eBayu i Etsy. Możesz kupić jedną z tych płyt i samodzielnie zapełnić ją częściami, tworząc zupełnie nową, działającą dokładną replikę oryginalnego Apple I.

Musisz także znaleźć oryginalny działający chip Apple I ROM oraz zbuduj własny, niestandardowy zasilacz do płyty głównej lub znajdź gotowy w Internecie. Oryginalną dokumentację Apple I można również znaleźć w Internecie, ale należy pamiętać, że dokument nadal jest materiałem chronionym prawem autorskim należącym do firmy Apple, Inc.

Replika Apple I PCB na sprzedaż w serwisie eBay od sprzedawcy „newton-computer”. Dołączona jest również płytka drukowana interfejsu kasety.

Płytka PCB repliki RC6502

Jeśli nie jesteś w stanie kupić i złożyć wszystkiego, co jest potrzebne do wykonania nowy oryginalny Apple I, jest lepszy sposób. Tebi z Norwegii stworzył małą nową płytkę PCB o nazwie RC6502 który wykorzystuje oryginalną pamięć Apple I ROM, pojedynczy układ SRAM, procesor 6502 pracujący z częstotliwością 1 MHz i pojedynczy układ 6821P PIA, również oryginalnie wyprodukowany przez firmę Motorola.

Płytka wymaga również pojedynczego Arduino Nano, do którego trzeba załadować program, a także kilku innych małych elementów. Możesz także wykonać opcjonalną płytkę PCB, aby dodać inne funkcje, w tym wyświetlacz wideo.

Zmontowany komputer RC6502.

RC6502 jest open source i możesz pobrać pliki Gerber i zamówić własne online lub zamówić płytkę od sprzedawców w serwisie eBay, Amazon, Etsy i wielu innych punktach sprzedaży online. Plik Gerber to wygenerowany komputerowo schemat obwodu elektronicznego, który jest używany do produkcji płytki drukowanej.

Dużą zaletą RC6502 jest jego rozmiar i niewielka liczba komponentów, ponieważ całkowity koszt budowy płytki wynosi mniej niż 50 USD.

Pierwsze kroki

Przyjrzyjmy się samej płytce drukowanej:

Replika płytki PCB Apple I RC6502.

W lewym górnym rogu znajdują się 3 elementy: oscylator kwarcowy 1 MHz chip, wspólny układ timera 555 i układ szeregowego interfejsu peryferyjnego (SPI) MCP23S17-E/SP. Ostatni, wykonany przez Microchip Technology Inc. z Chandler, AZ, pomaga płycie komunikować się z Arduino Nano.

Moduły MCP23S17-E/SP mogą być nieco drogie i trudne do znalezienia ze względu na problemy z łańcuchem dostaw spowodowane pandemią COVID, ale powoli stają się coraz bardziej dostępne.

Wydaje się, że DigiKey ma teraz ogromne zapasy, lub wypróbuj AliExpress. Znaleźliśmy naszą na AliExpress, ale kosztowała 7 USD, wliczając wysyłkę w okresie niedoboru.

Użyj kwarcowego układu oscylatora 1 MHz. Oryginalne Apple również działało z częstotliwością 1 MHz.

W prawym górnym rogu płytki znajduje się miejsce na nagłówki Arduino Nano, które należy wlutować, aby można było do nich podłączyć Arduino.

Poniżej znajdują się 3 popularne układy logiczne: 74HCT138N, 74HCT04N i 74HCT00N. Są to bramki logiczne, multipleksery i falowniki, a wszystkie kosztują około kilku dolarów za sztukę.

Pod trzema układami logicznymi znajduje się pojedynczy układ SRAM (HM62256BLP-7 wyprodukowany przez firmę Hitachi lub jego odpowiednik) oraz pojedynczy pamięć EPROM z możliwością flashowania, w tym przypadku Atmel AT28C64-15PC). Będziesz także potrzebował programatora USB do flashowania układu Atmel.

Liczba „-7” na końcu HM62256BLP-7 wskazuje szybkość pamięci RAM — w tym przypadku 70 ns, ale możesz być w stanie sprawić, by działały nieco wolniejsze chipy, być może nawet 100 ns (lub „-10” na końcu nazwy modelu chipa). W większości przypadków, jeśli prędkość jest zbliżona, pamięć RAM można spowolnić, aby dopasować ją do szybkości płyty.

Chip Hitachi HM62256BLP-7 SRAM.

Na lewo od pamięci RAM i EPROM znajduje się procesor Motorola 6502, pracujący z częstotliwością 1 MHz, chociaż być może uda się uruchomić również współczesny odpowiednik 6502, 65C02. 65C02 jest nowoczesnym zamiennikiem modelu 6502 i jest produkowany przez Western Design Center (następcę firmy MOS Technology) z siedzibą w Mesa w Arizonie.

Model 65C02 wykorzystuje bardziej nowoczesną konstrukcję, zużywa mniej niż 1/10 mocy oryginalnych 6502 i może pracować ze zmienną prędkością do 14 MHz. Pin 37 to pin wejściowy zegara, więc procesor może być sterowany przez zewnętrzny oscylator-w tym przypadku kryształ 1MHz.

Nowy procesor WDC W65C02S6TPG-14, który może działać z częstotliwością do 14 MHz i zużywa mniej energii.

Jeśli nie używasz 65C02, musisz zaopatrzyć się w działający używany 6502 lub New Old Stock od sprzedawców internetowych. Można je znaleźć w serwisie eBay, czasem na Amazon, na AliExpress lub wielu innych zagranicznych sprzedawcach.

Chociaż Motorola wyprodukowała oryginalne 6502, później uzyskały one licencję MOS, więc możesz zobaczyć modele 6502 obu firm. 6502 był również później licencjonowany dla Rockwell International i UMC.

Nadal można znaleźć NOS Rockwell i UMC 6502, które mają dziesiątki lat, ale nigdy nie były używane.

NOS UMC 6502, kod daty „9028T” – drugi tydzień ósmego miesiąc 1990.

Zwykle chipy mają na sobie kod daty z tygodniem, miesiącem i rokiem, w którym zostały wyprodukowane. Rok jest zazwyczaj wymieniony jako pierwszy w kodzie daty — ale nie zawsze.

Na poniższym zdjęciu kod datownika 6502 to „0988” — oznaczający wrzesień 1988 r.

Procesor 6502 i układ Motorola MC6821P PIA. MC6822P również może działać.

W większości przypadków ogólnie lepiej jest uzyskać najnowsze możliwe chipy, ponieważ niektóre wczesne serie produkcyjne mogły mieć problemy, aw większości przypadków materiały, z których wykonane są chipy, z czasem ulegają degradacji. Tak więc chip wyprodukowany w 1992 roku byłby ogólnie lepszy niż ten wyprodukowany w 1979 roku.

Zwykle oryginalne Motorola 6502 mają logo Motoroli „M”, ale nie zawsze. Niektóre chipy trafiają jako e-odpady w Chinach lub Indiach i są wyciągane z desek, odnawiane i odnawiane, zwykle z ogólnym nadrukiem, takim jak ten pokazany powyżej.

Pamiętaj, że niektóre chipy z Chin są fałszywe i chociaż mogą działać, mogą nie być niezawodne lub działać długo.

Będziesz także potrzebował kilku gniazd IC, zworek, plastikowych zworek w stylu płyty głównej PC, różnych rezystorów i kondensatorów ceramicznych-głównie, ale nie wszystkie 104 lub 0,1 uF.

Pełna lista zestawień materiałów (BOM) dla projektu znajduje się na stronie GitHub Tebi.

Gniazda lutownicze i podstawowe części

Najpierw będziesz chciał wlutować wszystkie rezystory, kondensatory ceramiczne, jeden kondensator elektrolityczny, jeden mały chwilowy przełącznik przyciskowy i zworki. Nie spiesz się i sprawdź wszystkie połączenia lutowane.

Istnieją dwa rodzaje gniazd układów scalonych: jeden rodzaj (tańszy rodzaj) ma płaskie złącza przypominające listki i plastikową ramkę, która przylega płasko do płytki drukowanej.

Chociaż są tańsze, są również mniej niezawodne: małe metalowe listwy, które trzymają piny IC, mogą się przemieścić i nie można zobaczyć pod plastikową obudową, ponieważ jest ona osadzona równo.

Inny rodzaj gniazda wykorzystuje zaokrąglone wypukłe styki z okrągłymi otworami na górze i jest często pozłacany, aby zapobiec korozji nawet na kilkadziesiąt lat w przyszłości. Drugi typ gniazda kosztuje nieco więcej, ale jest tego wart.

Pozwalają również sprawdzić górną stronę połączeń lutowanych na płytce drukowanej, aby upewnić się, że nie ma niepożądanych mostków między otworami (znanych jako przelotki).

Pamiętaj, że gniazda i układy scalone mają zazwyczaj półkoliste wycięcie na jednym końcu. Zwykle płytki PCB mają również oznaczenia z półokrągłym wycięciem. Wlutuj gniazda tak, aby wycięcia pasowały do ​​oznaczeń PCB.

Wycięcia zapewniają prawidłowe włożenie układów scalonych do gniazd. Zapobiega to smażeniu frytek z powodu wkładania do tyłu.

Musisz także przylutować mały przełącznik resetowania lub nagłówki do zewnętrznego przełącznika, zasilania i diody LED zasilania w prawym górnym rogu płytki.

Długa listwa pinowa wzdłuż dolnej części płytki zawiera różne złącza, w tym zasilanie i inne funkcje. Zobacz stronę GitHub i dokumentację, aby uzyskać pełny układ pinów wszystkich długich pinów zworki.

Pierwotna kompilacja z zainstalowanymi wszystkimi małymi komponentami wygląda tak:

Wstępny montaż małych części RC6502: wszystko oprócz układów scalonych, kryształu i Arduino.

Zainstaluj chipy

Następnie, przylutuj dwa rzędy gniazd pinowych dla Arduino Nano w prawym górnym rogu płytki i zainstaluj wszystkie układy w ich gniazdach z wyjątkiem układu Atmel EPROM.

EPROM oznacza wymazywalną programowalną pamięć tylko do odczytu. Będziesz musiał użyć programatora USB na komputerze PC, aby sflashować układ EPROM.

Po sflashowaniu włóż układ Atmel do gniazda. Przylutuj również kryształ 1 MHz w lewym górnym rogu płytki.

Podczas wkładania układów scalonych do gniazd należy zachować szczególną ostrożność, aby upewnić się, że żadne styki nie zostaną wygięte ani nie wypadną z otworów w gnieździe.

Następnie dodaj małe plastikowe zworki do styków zworki zgodnie z opisem w dokumentacji. Istnieją zworki dla ilości pamięci RAM, włączenia PIA, włączenia ROM i innych. Każde ustawienie zworki modyfikuje zachowanie płytki.

Płyta montażowa i opcjonalne wideo

Wcześniejsza wersja RC6502 Apple Użyłem płyty montażowej, którą nadal można zbudować, oraz kilku kart-córek, które zworki włączone lub wyłączone. Ale nowsza wersja płytki to projekt komputera jednopłytowego (SBC), który jest samowystarczalny.

Jeśli chcesz użyć płyty tylnej, musisz użyć kątowego złącza na SBC dla długiego złącza, aby można było podłączyć płytkę pionowo do płyty montażowej.

Jeśli chcesz używać rzeczywistego wyświetlacza wideo z płytą, musisz dodać dwie małe, dodatkowe płytki (zwane jednostkami wyświetlania wideo) oraz płytkę montażową. Jeśli nie, połączysz się z płytą SBC przez połączenie szeregowe przez Arduino.

Zobacz dokument Bus.md na strona GitHub, aby uzyskać pełny opis magistrali systemowej i układu pinów.

Zasilanie

Jeśli chcesz zasilić płytkę za pomocą złącza USB Arduino, a nie używasz płyty montażowej, dodaj zworkę do dwóch-pin header tuż obok diody zasilania oznaczonej „USB Power”.

Jeśli nie, płyta montażowa dostarcza zasilanie z gniazda zasilania prądem stałym na stykach 17 i 18 długiego złącza w SBC. W przypadku połączenia Arduino USB możesz potrzebować kabla USB z włącznikiem zasilania, aby można było włączać i wyłączać zasilanie.

Gdy wszystko będzie gotowe, podłącz kabel USB Arduino, podłącz go do komputera Mac i włącz przełącznik zasilania.

Połączenie Arduino

Po włączeniu musisz uruchomić aplikację Arduino IDE na komputerze Mac lub PC w Narzędzia-> Płytki->Arduino AVR Boards wybierz Arduino Nano. Po wybraniu może być również konieczne ustawienie portu szeregowego w Narzędzia->Port, jeśli nie zostanie wybrany automatycznie.

Po podłączeniu do Arduino IDE prześlij program do szkicowania PIA Communicator do Arduino za pomocą IDE, jak wspomniano w dokumentacji. Pozwala to monitorowi szeregowemu IDE komunikować się z Apple I i wyświetlać jego dane wyjściowe w oknie na komputerze Mac.

Jeśli masz problemy z połączeniem, sprawdź szybkość transmisji — szybkość, z jaką dane są przesyłane przez połączenie szeregowe. Powinien być ustawiony na 115200.

Jeśli wszystko działa zgodnie z planem, na monitorze szeregowym w Arduino IDE powinien pojawić się pojedynczy wykrzyknik: „!”. Możesz teraz wpisać dowolny adres szesnastkowy, aby wyświetlić jego zawartość.

PIA Communicator umożliwia także przesyłanie programów asemblera 6502 i BASIC do Apple I i uruchamianie ich. Po załadowaniu BASIC-a na Apple I możesz wpisywać programy BASIC bezpośrednio do Apple I przez połączenie szeregowe i uruchamiać je.

BASIC przełącza wiersz poleceń, aby wyświetlał „>” zamiast „!” w oknie szeregowym.

Wbudowane aplikacje

W pamięci Apple I ROM wbudowane są trzy aplikacje. Są one wymienione z tyłu płytki drukowanej RC6502 pod procesorem, wraz z adresami pamięci ROM w systemie szesnastkowym, których potrzebujesz, aby uzyskać do nich dostęp. Są to:

Integer BASIC (E000) Krusader Assembler (F000) Woz Monitor (FF00)

Aby uruchomić dowolny z trzech programów, w punkcie „!” monit wpisz adres szesnastkowy, następnie spację, potem wielkie „R”, a następnie naciśnij Return. Na przykład, aby załadować Integer BASIC na Apple I z okna szeregowego Arduino na Macu, wpisz:

i naciśnij Return.

Powinieneś zobaczyć komunikat okna szeregowego, który zmieni się na: „>”.

Używasz teraz języka BASIC i możesz pisać w programach języka BASIC. Po wprowadzeniu programu BASIC wpisz uruchom i naciśnij Return, aby go uruchomić.

Świat retro komputerów się rozwija, a RC6502 to szybki i niedrogi sposób na rozpoczęcie pracy z komputerem Apple I.

Zajrzyj też do niezwykłego książka Apple I Replica Creation: Back to the Garage (6 USD w formacie PDF) — która zawiera wstęp autorstwa samego Steve’a Wozniaka.

Categories: IT Info