Elektroda.pl
Elektroda.pl
X
Banner Multimetr Fluke 87VBanner Multimetr Fluke 87V
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Komputery starodawne np. Aplle1

Mateuszkordi23 23 Paź 2018 18:17 1551 25
  • #1
    Mateuszkordi23
    Poziom 3  
    Czy zna ktoś jakąś książkę z dokładna budowa komputera np apple 1. Chodzi mi o starodawny komputer. Tak do rzeczy chce zrobić komputer nie ważne ile miał bym go lutowac robić chce go zrobić. Muszę znać dokładna zasadę działania takiego komputera i jak go stworzyć bardzo mi na tym zależy wiec prosiłbym o pomoc.
  • Banner Multimetr Fluke 87VBanner Multimetr Fluke 87V
  • #2
    BlueDraco
    Specjalista - Mikrokontrolery
    Jeśli zadajesz takie pytania, to chyba nie jesteś w stanie tego zrobić. Schematy starych komputerów i wszelkie inne informacje na ich temat łatwo znaleźć - najpierw jednak trzeba posiąść trudną umiejętność używania Google, więc może zacznij od tego.
  • #3
    Mateuszkordi23
    Poziom 3  
    Właśnie w tym rzecz ze nie znam się na tym dlatego chciałbym nabyć książkę w której bym miał tego opisy mam taka np. O raspberry

    Dodano po 9 [minuty]:

    Mi nie chodzi o tym żeby zrobić taki wydajny komputer tylko poprzez tworzenie komputera zrozumieć dokładna zasadę jego działania
  • #4
    BlueDraco
    Specjalista - Mikrokontrolery
    Najpierw musisz zrozumieć całkiem sporo (o układach cyfrowych, procesorach, pamięciach, interfejsach, obsłudze klawiatury itp.), a potem zabierać się za składanie komputera. Takich konstrukcji retrokomputerów ludzie robią setki, ale robią to po wchłonięciu sporej wiedzy. Zajrzyj np. na retrobrewcomputers, skończ dobre studia informatyczne i zacznij zabawę w projektowanie i uruchamianie retromaszynek..
  • Banner Multimetr Fluke 87VBanner Multimetr Fluke 87V
  • #6
    Father
    Poziom 26  
    Mateuszkordi23 napisał:
    Czy zna ktoś jakąś książkę z dokładna budowa komputera np apple 1. Chodzi mi o starodawny komputer. Tak do rzeczy chce zrobić komputer nie ważne ile miał bym go lutowac robić chce go zrobić. Muszę znać dokładna zasadę działania takiego komputera i jak go stworzyć bardzo mi na tym zależy wiec prosiłbym o pomoc.


    Polecam rodzimego CA80 z bardzo dobrą dokumentacją.
  • #7
    ^ToM^
    Poziom 37  
    Mateuszkordi23 napisał:

    Mi nie chodzi o tym żeby zrobić taki wydajny komputer tylko poprzez tworzenie komputera zrozumieć dokładna zasadę jego działania


    Aby zrozumieć zasadę działania takiego kompa to polecam zakupić książkę:
    "Zrozumieć asembler" - Jeff Duntemann. Z tym że tak książka traktuje o komputerach pracujących w oparciu o architekturę Intela 8086 i następne generacje - co dla nauki nie ma znaczenia. Dodatkowo jak koledzy mówili już dobre są książki p. Gardynika CA-80. Z kolei ta jest oparta o świetny (nawet dziś) procesor Zilog Z80.
    Generalnie, aby zrozumieć zasadę działania takiego komputera (zresztą każdego innego także) trzeba zacząć od początku. Trzeba wpierw zapoznać się z systemami liczbowymi - binarnym i heksadecymalnym (bo dziesiętny znasz) następnie trzeba zapoznać się z podstawowymi bramkami AND, OR, itd. dalej przerzutniki i dzielniki cyfrowe i można przejść do opisu układów komputera czyli CPU, pamięci, I/O (portów wejścia-wyjścia. Trzeba zrozumieć jak działa rejestr, akumulator, itd.
    Nie da się tego nauczyć i zrozumieć w przypadkowej kolejności. Nauczyć się można na dowolnym CPU. Może to być 6502, Z80, 6800, 8080 czy 8086 albo nawet 8051. To wszystko jedno. Wszystkie te procesory działają w oparciu o identyczne mechanizmy logiczne - różnica tkwi w koncepcji zastosowania, co nie ma znaczenia dla nauki.
    Moim zdaniem, najlepiej opisane są procesory Z80, 8051 oraz 8080 i 8086. Dla większości z nich znajdziesz literaturę także w języku polskim.

    Zacznij więc od Z80 czyli CA-80 bo komplet materiałów od A-Z masz jak już wyżej podano na elektrodzie w postaci skanów. Poza tym, masz tu ludzi, którzy sami kiedyś zbudowali taki komputera (ot, chociażby ja).

    Jakieś materiały o A1 masz poniżej.
  • #8
    BlueDraco
    Specjalista - Mikrokontrolery
    Popełniłem niedawno retrokomputer, który można złożyć na płytce stykowej w pół godziny za 30 zł. W zasadzie może on udawać Apple I na poziomie podobnym do konstrukcji z linku powyżej. Niedługo opublikuję szczegóły tej konstrukcji. Procesor 65C02 lub 80C85, 16 KiB RAM, do 64 KiB ROM, możliwość ładowania plików .HEX z PC, monitor sprzętowy z pracą krokową i deasemblacją instrukcji, w pamięci można mieć np. jakiś zabytkowy BASIC.
  • #9
    jackfinch
    Poziom 16  
    Tu masz dokładny opis budowy polskiego komputera na z80, zwanego cobra1 który jest pisany dokładnie na elektrodzie, może cię to zainteresuje.

    Link

    Pozdrawiam
  • #10
    Użytkownik usunął konto
    Użytkownik usunął konto  
  • #11
    maciej_333
    Poziom 34  
    Też się bawię w coś takiego, ale na 8080. Lutowania jest jeszcze więcej niż dla Z80. Zobacz moją ostatnią wypowiedź w tym temacie: Link. Jak widać uruchomiłem układ wizyjny 8275. Aktualnie polutowałem już kontroler FDD GM82C765B. Zaczynam powoli jego uruchamianie, ale jak na razie zdążyłem odczytać z niego tylko status. Założyłem sobie, że stacja dyskietek 3,5" z PC będzie stanowić pamięć masową. Pokazałem też większość schematu komputera. W planach mam zresztą dalszą rozbudowę tego systemu. Po stacji dyskietek uruchomię CPM. Z perspektywy czasu stwierdzam, że mogłem dać znacznie mniejszą pamięć EPROM i więcej banków. Wtedy mogłoby być więcej RAM'u. Zresztą przez brak cieniowania EPROM muszę przerobić CPM, by mógł on się uruchamiać z EPROM a nie RAM, jak to jest normalnie. Ma to też zresztą jakieś zalety. TINY BASIC też już na tym uruchomiłem, ale nie było to takie oczywiste, jak się wydawało.

    Zastanów się, czy dasz radę poprowadzić jakieś 40 m kynaru na płytce uniwersalnej. Już samo polutowanie takiej płytki to masa pracy, a co dopiero jej uruchomienie. Coś takiego chciałem zbudować już w technikum, ale dopiero teraz, po trzydziestce mam dość wiedzy, sprzętu i zapału by samodzielnie robić takie rzeczy.
  • #12
    Mateuszkordi23
    Poziom 3  
    Dzięki na pewno się przyda. I tak sczerze to ja mam 14 lat ale muszę coś ze sobą robić nie potrafię siedzieć bezczynnie. Zaczynam od elektroda kończę na metodzie prób i błędów. Poczytam pewnie będę próbował nic z tego nie wyjdzie ale mam satysfakcjie z tego ze próbowałem. Bo inaczej to do końca życia sobie nie wybaczę ze nawet nie spróbowałem.
  • #13
    ^ToM^
    Poziom 37  
    Mateuszkordi23 napisał:
    Dzięki na pewno się przyda. I tak sczerze to ja mam 14 lat ale muszę coś ze sobą robić nie potrafię siedzieć bezczynnie. Zaczynam od elektroda kończę na metodzie prób i błędów. Poczytam pewnie będę próbował nic z tego nie wyjdzie ale mam satysfakcjie z tego ze próbowałem. Bo inaczej to do końca życia sobie nie wybaczę ze nawet nie spróbowałem.


    Próbuj, to sie szanuje. Większość jest tu jednak takich co nie miała odwagi spróbować. 🙂
  • #15
    ciasteczkowypotwor
    Poziom 41  
    @Mateuszkordi23 Wbrew pozorom, temat ciekawy, ale może się okazać trudny w realizacji, ponieważ, gro podzespołów nie jest już produkowana i ciężko je zdobyć, w realnych cenach.

    Należałby od zacząć od zbierania starych komputerów, na części. A i to może być niełatwe, bo nie dość, ze już tego mało zostało to jest drogie i poszukiwane. Ale wszelakie giełdy, bazary i wystawki, śmietniki i elektrośmieci, powinny stać się Twoim drugim domem.

    A poza zbieractwem, kłania się elektronika cyfrowa, warto się pouczyć.
  • #16
    ^ToM^
    Poziom 37  
    Na pewno da się załatwić Z80, 8255, trochę RAMU i EPROM i bramek. Mając to można próbować na płytce prototypowej uruchomić CA80.
  • #17
    MCbx
    Poziom 28  
    W 8-bitowcach kłopotliwe jest budowanie układu wizyjnego, który z reguły jest albo specyficznym scalakiem, albo jest skomplikowany. Ogólnie układ ten w jakiś sposób musi wygenerować całkiem spory "garniturek" sygnałów synchronizacji i w najlepszym przypadku monochromatycznego wideo. O ile jeszcze logika jest prosta do zrozumienia (często wręcz EPROM i rejestr przesuwny do wypychania linii) o tyle to co wychodzi z niektórych mikrokomputerów jako impulsy synchronizacji staje się później raczej "sygnałem compositeopodobnym" :). Stąd problemy w podłączaniu 8-bitowców za composite do nowoczesnych telewizorów.
    Do tego dodajmy ustrojstwo od multipleksowanej klawiatury i mamy komplikację projektu.
    Stąd na początku skupmy się na budowie komputera, a do wizualizacji i jako wejście wykorzystać można terminal szeregowy. Na początek polecam więc to: http://searle.hostei.com/grant/cpm/index.html.
    Zbudowałem na drukowanej płytce uniwersalnej łącząc chipy przewodami, jak nie pociągnie karty CF (wymaga to szczególnie powolnej karty) to dostaje się komputerek z BASICiem, jak pociągnie z CP/M.
    W tym komputerku jest parę trików związanych z optymalizacją projektu, ale są zrozumiałe.
  • #18
    hindoos
    Poziom 26  
    A ja być może przekornie zaproponuję stworzenie takiego "komputera" na mikrokontrolerze pokroju atmegi. Ekran LCD 4x20, tekstowy, jakiś buzzer, podłączyć klawiaturę AT, może dodać nawet port szeregowy, całość oprogramować w C albo lepiej - w asemblerze. Z czasem rozbudowywać o zapis na karcie SD, dodać trochę funkcjonalności, może jakieś programy - ot, kalkulator, notatnik, jakąś prostą grę. Myślę, że taka zabawa nauczy paru podstawowych rzeczy i będzie ciekawym wstępem. Jeśli Cię wciągnie, będziesz szedł dalej w stronę "starodawnych" komputerów z jakimś tam doświadczeniem, a jeśli zabawa Cię znudzi, to zawsze będziesz mógł użyć części do innego projektu.
    Uważam po prostu, że wejdziesz w temat i się odbijesz, zniechęcisz, a szkoda.
  • #20
    maciej_333
    Poziom 34  
    MCbx napisał:
    W 8-bitowcach kłopotliwe jest budowanie układu wizyjnego, który z reguły jest albo specyficznym scalakiem, albo jest skomplikowany.

    Nie jest to wielce złożony układ. Aplikacja 8275 nie jest specjalnie skomplikowana. Wstawiłem sprawdzony schemat dla tego układu.

    MCbx napisał:
    Ogólnie układ ten w jakiś sposób musi wygenerować całkiem spory "garniturek" sygnałów synchronizacji i w najlepszym przypadku monochromatycznego wideo. O ile jeszcze logika jest prosta do zrozumienia (często wręcz EPROM i rejestr przesuwny do wypychania linii) o tyle to co wychodzi z niektórych mikrokomputerów jako impulsy synchronizacji staje się później raczej "sygnałem compositeopodobnym" :). Stąd problemy w podłączaniu 8-bitowców za composite do nowoczesnych telewizorów.

    To niestety prawda. Sygnał, jaki wychodzi z mojego komputera nie jest zgodny z compsite video. Oczywiście wszystkie zależności obliczyłem dla 50 Hz dla V i 15625 Hz dla H. O ile jedna linia jest poprawna, poziomy się zgadzają, jak i parametry impulsu synchronizacji poziomej, to gorzej z tzw. dzielonymi impulsami synchronizacji pionowej. Jest to na zasadzie "mniej więcej". Nie ma też półobrazów. Nie dołączałem tego jeszcze do nowoczesnych telewizorów, ale analogowe nie mają nic przeciw.

    MCbx napisał:
    Do tego dodajmy ustrojstwo od multipleksowanej klawiatury i mamy komplikację projektu.

    Jest to tego specjalizowany układ 8279. Znalazłem go gdzieś, ale trudno go kupić. Ja zastosowałem 8042 z płyty głównej od PC. Działa to znakomicie, ale wymaga sporej ilości kodu, by odwzorować zachowanie klawiatury w PC. Jednak jest to fajna zabawa, można oprogramować sterowania diodami CAPS LOCK, NUM LOCK itd.

    Inny problem to pamięć masowa. Można wstawić kartę CF, ale ja wstawiłbym kartę SD w trybie SPI. Nie ma tu zdefiniowanej minimalnej częstotliwości zegara, więc można zrobić programowe SPI na 8255. Wprawdzie będzie to działać niezbyt szybko, ale nie o to przecież chodzi. Na karcie SD może być format plików CPM. Nie trzeba przecież przerabiać CPM, by zapisywał w FAT32... W moim projekcie jednak bawię się ze stacją dyskietek 3,5". W jakimś stopniu udało mi się ostatnio uruchomić GM82C765, ale nie chce on generować impulsów STEP do przesuwania głowicy. Zamówiłem już WD37C65, który jest niby tym samym układem.

    Do zabawy z układami retro oprócz multimetru, co zawsze jest potrzebne przydałby się też oscyloskop i analizator stanów logicznych. Bardzo trudno też coś zrobić bez symulatora EPROM.

    Autorowi tematu radziłbym zrobić coś prostszego na początek. Tak, jak doradza kolega hindoos zacząłbym od AVR, ale absolutnie nie Arduino. Można wstępnie zrobić coś prostszego najlepiej w asemblerze AVR, potem dopiero zacząć bawić się z Z80, czy 6502. 8080 to nie do końca CPU, więc jest za dużo zachodu by go uruchomić. Coś takiego zrobione na AVR pozwoli zrozumieć działanie procesora i ostatecznie da wstęp do układów retro. Trzeba się też zapoznać z pamięciami, ich działaniem, sygnałami z nimi związanymi itd. Potrzebna jest wiedza o bramkach, algebrze Bool'a, funkcjach Boolowskich itd. Ogólnie, jak już ktoś wcześniej napomknął są to podstawy techniki cyfrowej. Jeśli Ci się to spodoba, to możesz kontynuować swoją edukację w technikum elektronicznym, potem iść na studia techniczne.
  • #21
    Simon79
    Poziom 18  
    A może coś niezbyt skomplikowanego:
    http://searle.hostei.com/grant/z80/SimpleZ80.html
    Zrobiłem i jest fajna zabawa. Jedyny problem to zaprogramowanie EPROM'u.
  • #22
    JacekCz
    Poziom 37  
    BlueDraco napisał:
    Popełniłem niedawno retrokomputer, który można złożyć na płytce stykowej w pół godziny za 30 zł. W zasadzie może on udawać Apple I na poziomie podobnym do konstrukcji z linku powyżej. Niedługo opublikuję szczegóły tej konstrukcji. Procesor 65C02 lub 80C85, 16 KiB RAM, do 64 KiB ROM, możliwość ładowania plików .HEX z PC, monitor sprzętowy z pracą krokową i deasemblacją instrukcji, w pamięci można mieć np. jakiś zabytkowy BASIC.


    Zaciekawiła mnie kompatybilność z tak odmiennymi (rzekłbym do spodu różnymi) procesorami. Ile procent projektu jest wspólne?
  • #23
    BlueDraco
    Specjalista - Mikrokontrolery
    Cały projekt - to kawał oprogramowania na STM32 - łącznie ok. 30 KiB binariów. Moduły specyficzne dla procesora są dwa - inicjowanie sprzętu i pamięci oraz obsługa szyny uP (ok. 500 linii w C) i deasembler (250..600 linii). Reszta (taka sama dla wszystkich pięciu obsługiwanych CPU) to obsługa podwójnego VCOM USB, interfejs konsoli monitora sprzętu i peryferia dla komputera docelowego, w tym pamięć masowa - wirtualna dyskietka. Wersja z BluePill nie ma pamięci masowej i ma tylko 2 CPU do wyboru, bo na inne nie starcza nóg, ale poza tym potrafi wszystko, co ta "dorosła". Poza BluePill potrzebny jest tylko procesor, kondensator blokujący, płytka stykowa i jakieś 35 przewodów połączeniowych. Jeśli nie mamy procesora 80C85 (CMOS, który działa na 3.3 V), tylko NMOS na 5V - dodatkowo 6 rezystorów do dopasowania poziomów napięć. 6502 w NMOS nie da się użyć, a 65C02 działa na 3.3V. Zasilanie i komunikacja z PC przez USB. Procesory daje się kupić za ok. 1.5 USD, koszt reszty nie przekracza 5 USD.
  • #24
    BlueDraco
    Specjalista - Mikrokontrolery
    Ruszyła maszyna... z 65C02 ;) Komputery starodawne np. Aplle1 Komputery starodawne np. Aplle1
    Montaż (cięte na wymiar druciki zamiast gotowych od Chińczyka, żeby mniej się plątały i coś było widać na zdjęciu) zajął godzinę; ostatnie poprawki oprogramowania - kolejne pół godziny. Obie wersje komputerka za trzy dychy gotowe do upublicznienia, trzeba tylko skończyć opis, tabelki i obrazki.
  • #25
    tzok
    Moderator Samochody
    Dość ciekawą konstrukcją bazującą na komputerze SAP-1, jest komputer przedstawiony w serii filmów autorstwa Bena Eatera: https://www.youtube.com/user/eaterbc/videos
    Ten komputer nie posiada mikroprocesora i niemal w całości zbudowany jest na układach TTL, jedynie dekoder instrukcji oparty jest o pamięć EPROM (dzięki temu autor cyklu, niejako przy okazji, wyjaśnił ideę mikrokodu).

    BlueDraco napisał:
    Poza BluePill potrzebny jest tylko procesor,
    Czyli STM32 robi w tym projekcie za "glue-logic"? Ostatnio chodzi za mną temat "wejścia" w FPGA. Nawet kupiłem sobie zestaw ewaluacyjny z Cyclone IV. To by się o wiele lepiej nadawało do takich tematów.
  • #26
    BlueDraco
    Specjalista - Mikrokontrolery
    STM32 robi za wszystko poza procesorem - pamięć ROM i RAM, reset, zegar, port konsoli, timer i port LED, a dodatkowo za sprzętowy monitor z pracą krokową, deasemblacją, edycją pamięci, ładowaniem plików .hex i wieloma innymi funkcjami. Ogólnie FPGA nadaje się lepiej do takich zabaw, ale ciut trudniej się programuje i rzeźbi w nim złożone urządzenia USB, więc ja pozostałem przy technologii, którą znam lepiej niż FPGA. No i monitor sprzętowy w FPGA wymagałby zrobienia w nim procesora z oprogramowaniem.

    Z okolic, o których wspominasz, jest jeszcze Gigatron - 36 układów TTL.