Eksperymenty ze starymi procesorami - MOS6502

Tak naprawdę, to nie mam. Moje projekty potrafią niekiedy powstawać długimi miesiącami, kiedy aktywnie pracuję nad nimi przez wieczór albo dwa, a potem mam parę tygodni przerwy. ;) A co do nowoczesnych rozwiązań, to zrobiłem już sporo projektów na AVR oraz PIC32, do tego trochę na STM32, ESP8266 i Raspberry Pi. Nauczyłem się C, do pewnego stopnia ogarniam też parę innych wysokopoziomowych języków.

Po prostu chciałem teraz zobaczyć, jak to działa u podstaw. Jasne, że mógłbym po prostu podszkolić się w asemblerze AVR, ale gdzie tu zabawa? ;)

Reply to
Atlantis
Loading thread data ...

Dnia Sat, 2 Jun 2018 08:13:49 +0200, Andrzej napisał(a):

To strona z tymi nieoficjalnymi rozkazami.

J.

Reply to
J.F.

Tak swoją drogą, da się gdzieś dostać jeszcze peryferia (UART, port równoległy, timer, RTC itp.) kompatybilne z magistralą MOS6502? Ewentualnie, czy nie będzie żadnych problemów z podpięciem intelowskich układów (8251, 8253, 8255), jeśli zastosuję prosty układ konwertujący sygnał R/W i drugie wyjście zegarowe na sygnały WR i RD? W końcu i tak ich potrzebuję, żeby obsłużyć standardowe RAM-y i EPROM=y...

Reply to
Atlantis

W dniu 02.06.2018 o 17:43, Atlantis pisze:

Pisałem o tym trochę wcześniej. Możesz spokojnie użyć peryferiów Intela. Magistrala 6502 jest synchroniczna. Zapis do na magistralę następuje przy opadającym zboczu Fi2 przy aktywnym stanie niskim sygnału R/W. Strob zapisu w peryferiach intela jest asynchroniczny. Tak jak piszesz trzeba poskładać intelowskie sygnały WR i RD z kombinacji R/W z Fi2. Jeśli chodzi o RD to wystarczy negacja sygnału R/W. Sygnał WR robisz przez NOT Fi2 OR R/W lub NOT(NOT R/W AND Fi2) Druga metoda pozwala zrobić sterowanie na dwóch bramkach z 74LS00. Osobiście nie polecam 8251. Jest dość upierdliwy i było trochę błędów w dokumentacji. Chyba, że chcesz go użyć w podstawowym trybie asynchronicznym. Nie ma własnego dzielnika prędkości transmisji więc trzeba go poganiać z jednego licznika 8253.

Reply to
Grzegorz Kurczyk

Tu są ponizej 1E :D

formatting link
Twierdzą że działają ok.

Skuszę się na 4 sztuki (bo wtedy shipping jest za 0.66E).

Reply to
Sebastian Biały

W dniu 2018-06-02 o 10:33, jacek pozniak pisze:

Tak to był ten wsad do 8080A, zawierający prosty monitor oraz Basic. Razem niecałe 4KB. Amaterske Radio pro Konstruktery, chyba z 1983r. Nam to zdisasemlował kolega pracujący na R-10 czy 12.

Reply to
Andrzej

Tu jest fajny symulator pokazujący jak się tranzystory w procku przełączają podczas wykonywania programu :-)

formatting link

Reply to
Grzegorz Kurczyk

Dnia Sat, 2 Jun 2018 21:50:47 +0200, Grzegorz Kurczyk napisał(a):

A jesli dobrze rozumiem - tu jest wersja sprzetowa :-)

formatting link
J.

Reply to
J.F.

Korzystam z tego rozwiązania:

formatting link

Chodzi głównie o to, że parę sztuk 8251 znajdzie się w moich domowych zasobach. Pewnie udałoby mi się też jeszcze wygrzebać 8253. Z całą pewnością nie mam natomiast 6551. Nie wiem też, czy nie będzie problemu ze zdobyciem tego układy. No chyba, że ktoś zna jakieś źródło tych części, albo łatwo dostępną alternatywę, zgodną z magistralą 6502...

Zastosowanie 8251 byłoby najprostszym rozwiązaniem m.in. dlatego, że już go kiedyś używałem w innym projekcie, z procesorem zgodnym z 8080. Chodzi mi o prosty UART. Oczywiście zastosowanie układu produkowanego z myślą o wykorzystaniu z 6502 byłoby bardziej eleganckim rozwiązaniem.

Reply to
Atlantis

A da się to w ogóle gdzieś jeszcze kupić? ;)

Reply to
Atlantis

Wyszarpać ze złomu. Tyle że ten złom tani nie jest bo "retro".

Reply to
Sebastian Biały

W dniu 2018-06-01 o 08:03, Atlantis pisze:

ZTCP 6520, 6522 - port równoległy, 6551 szeregowy

/M

Reply to
Michał Baszyński

Po przemyśleniu sprawy doszedłem do wniosku, że jednak zastosuję elementy zgodne z magistralą Intela. Po prostu takie mam pod ręką, a szkoda czasu i pieniędzy na szukanie układów pasujących do 6502. Chodzi mi przede wszystkim o przyjrzenie się procesorowi i jego asemblerowi, a o tak mam już generowane sygnały RD i WR na potrzeby pamięci.

BTW istnieje jakiś prosty kontroler CRT zgodny z magistralą 6502 albo Intela? Wystarczy mi prosta konsola tekstowa. Głównie zależy mi na tym, żeby układ wymagał jak najmniej elementów zewnętrznych i zajmował możliwie niewiele miejsca na płytce. Nie chcę stosować współczesnego mikrokontrolera albo układu FPGA. :)

Reply to
Atlantis

Nie wykluczone że da się taki zrobić tanio na jakimś uC.

Jeśli chcesz ręcznie to:

Natywnie:

formatting link
Intel Outside:

formatting link
Niestety muszę Cię zmartwić: często w grę wchodzi DMA wiec jak masz machloje z magistralą i brak sygnału HALT to za bardzo się nie pobawisz.

Jeśli nie chcesz DMA to masz też taką możliwość:

formatting link
... i kilka innych w rodzinie

Ale to scalak i dodatkowa vram.

Ogólnie brak HALT w 6502 (głównie w sensie odpinania sie od magistrali) był prawdziwym problemem dla Atari i C64. Oba rozwiązały to na swój sposób, ale piekne toto nie jest.

Jak bym się za to zabierał to prawie na pewno zakończyło by się to na jakimś AtTiny bo najprościej a po chwili krecenia trybkami w głowie wziąłbym STM32 bo tam już mozna zrobić bardzo ładne VGA bez wypruwania żył jak w AVR :).

Reply to
Sebastian Biały

na allegro jest jeszcze troche takich c64 lub amig. Szukaj uszkodzonych w cenie zlomu. w pelni sprawne od 100-150pln.

No i dziwi mnie ze od konca sie za temat zabierasz. Najpierw IO teraz CRT.

Nie prosciej sobie c64 zorganizowac i na nim pobawic? Albo wogole emulatorem ogarnac? Emulator zestawisz w godzine razem z narzedziami. Pewnie nawet jakies ide na pc jest do tego.

Jak nie masz zamiaru nic konkretnego montowac z tego to po co brnąć w kostki? A jak cos zmontujesz na emulatorze to spokojnie mozesz sie uprzec i z sprzetow z allegro sobie zmontujesz co potrzeba...

Reply to
sczygiel

Bo tak naprawdę od zawsze bardziej interesował mnie hardware niż software. Możliwość samodzielnego sklecenia komputera z układów scalonych wydaje mi się ciekawsza niż pisanie dem i gier (ponoć nowe produkcje wciąż powstają) na Commodore C64. A to, że przy okazji podszkolę się z asemblera to tylko dodatkowa zaleta.

Reply to
Atlantis

No właśnie, jak to jest z tą odpornością na promieniowanie? Ponoć NASA m.in. z tego powodu korzysta(ła) ze starszych procesorów w swoim sprzęcie. Gdzie jest granica? Chodzi o antyczne procesory w technice NMOS (np. właśnie MOS6502 albo rozmaite 8080 czy starsze Z80)? A może jakieś starsze CMOS-y też się kwalifikują, np. wczesne 8051?

Reply to
Atlantis

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.