Główny wątek projektu jest tu:
http://forums.parallax.com/showthread.p … input-port
Za CPU robi Propeller; pozbawiłem go układów wideo żeby trochę oszczędzić na LE. Ma za to dodaną instrukcję MUL.
Wideo mogłem spokojnie wywalić bo zrobiłem własne. Pracuje w 1920x1200, ale jakby się komuś nie mieściło na ekranie, rejestry timingów są programowo dostępne. Sporo co prawda zostało jeszcze wkodowane na sztywno, ale 1680x1050 da się zrobić.
Prawdziwy retrokomputer musi mieć ramkę z własnym rejestrem kolorów. To, co zostało wewnątrz ramki, jak na retromachinę przystało może mieć 12 trybów graficznych o na ogół prostokątnych pikselach :) Te podstawowe, z kwadratowymi pikselami, to 1792x1120x4 kolory, 896x560x16 kolorów i 448x280x256 kolorów. Paleta ma 1024 wpisy o 24-bitowej głębi koloru.
Jako że nie ma retromachiny bez sprajtów, to są. 6 sztuk, 32x32 piksele, 256 kolorów, kolor 0 jest przezroczysty. Skalowane x2 i x4 niezależnie po x i y.
Nie obeszło się bez prostej displaylisty, w której można ustawić tryb graficzny, numer palety i adres początku wyświetlania. Jest też rejestr płynnego scrollingu oraz możliwość przełączenia palety w poziomie od podanego piksela.
Do dźwięku jest 1 kB bufor oraz 4 paulopodobne kanały syntezatora. Jeśli syntezator nie gra, można ustawiać wartości sampli programowo z Propellera.... tam jest sidcog... Jako że propeller na FPGA ma 114 MHz i dodany MUL, sidcog idzie @64 kHz i z 12 dB/okt filtrami. Tego sidcoga po takich przeróbkach muszę jeszcze dostroić, tyle że mam za mało wiedzy o sidzie. Właśnie sobie słucham sidowych muzyczek i eksperymentuje z ustawieniami :)
Jest też audio input, 44100/16 bitów stereo. Output zresztą też pracuje z tymi parametrami.
Całość współpracuje z 2 MB SRAMU który robi za chip-ram dla video i audio, oraz 128 MB sdramu (fast ram :) ) Wyprowadzona jest też klawiatura, mysz i karta SD, wszystko to obsługiwane z poziomu Propellera
Brak póki co Basica :) i oprogramowania systemowego. Zabawkę można programować standardowymi narzędziami do Propellera (Propeller Tool) i ładować program z pomocą Propeller Pluga poprzez GPIO. Jako że Propeller Plug jest u nas kompletną egzotyką, można też zapisać skompilowany program pod nazwą boot.sys na karcie SD - maszyna bootnie się z niego :)
Machina zajmuje 26000 LE.
Dawno nie miałem takiej zabawy z retrocomputingiem. :) :) :)