626

(709 odpowiedzi, napisanych Fabryka - 8bit)

no właśnie 4x4 piksele ... o tym przecież piszę ... :)  Gęściej koloru mapą nie da się zmieniać.

627

(709 odpowiedzi, napisanych Fabryka - 8bit)

Właśnie próbuję naciągnąć intersila na 5 dodatkowych układów DAC. Jak się uda, to będę miał ich na 9 szt. kart.

Co do mapy kolorów : jakby było to na mapie koloru to każdy kolejny kolor w takich pionowych barach miałby szerokość min. 4 pikseli a tu jest 1 piksel szerokości.

628

(709 odpowiedzi, napisanych Fabryka - 8bit)

overlay z prostym wzorkiem, inaczej mowiac, tak, to jest sprajt. Mapa kolorow nie dala by efektu zmiany koloru tla co 1 piksel.

629

(709 odpowiedzi, napisanych Fabryka - 8bit)

obrazek:

http://www.fotosik.pl/pokaz_obrazek/nw4 ... 5zv00.html

630

(709 odpowiedzi, napisanych Fabryka - 8bit)

Szukam kodera, który chętny jest napisać coś fajnego na to rozszerzenie. W zamian dostanie kompa z prototypem.

631

(709 odpowiedzi, napisanych Fabryka - 8bit)

ale osso chozi ? ;-)

Jeżeli chodzi o sczytanie konfiguracji z FPGA to producent układu nie przewiduje transferu w drugą stronę czyli prawdopodobieństwo, że zostanie to zrobione przeze mnie wynosi 0.00093 %.

Jeżeli chodzi zaś o odczyt jakiegoś znacznyka typu "nazywam się konfiguracja A1" z rejestrów np. na stronie 0xd6 to to akurat jest możliwe i w sumie powinno być standardem, że np. konkretny rejestr będzie zawierał bajt identyfikacyjny albo będą dwa takie bajty etc.

632

(709 odpowiedzi, napisanych Fabryka - 8bit)

Niektóre rzeczy dadzą się zmienić i można co nieco dodać, ale obecnie zajętych jest około 1100 na 1800 "Logic Elements" w FPGA. W to samo miejsce można wlutować układ EP1K50 (zamiast EP1K30) i mamy dostępnych 2800 LE.

Co do kart muzycznych etc... To czemu nie - tylko DAC audio trzeba podpiąć. Wszystko zależy od osoby opracowującej jądro dla FPGA. Samo wgrywanie nowego jądra jest bardzo proste i można to robić teoretycznie nieskończoną ilość razy bo FPGA oparta jest na RAMie a nie na FLASH czy EEPROM.

Co do pełnej emulacji GTIA - pomyślę nad tym ale raczej jako osobne jądro, w którym będzie pełna emulacja GTIA i nic poza tym. (Rozumiem jedyny sens emulacj GTIA jako możliwość oglądania zwykłych programów przez wyjście RGB).

633

(709 odpowiedzi, napisanych Fabryka - 8bit)

Tak, można. Ponieważ organizacja jest taka sama jak OVERLAYA (każda linia co 512B) to tak samo będzie działał FILL i BLITTER. Jedna uwaga: operacja rozpoczęta na obszarze OVERLAYA nigdy nie naruszy danych mapy koloru i vice-versa. Jest to zabezpieczone "sprzętowo". Po prostu mapa kolorów to taka sama pamięć jak dla OVERLAYA, dla której rejestr docelowego X ustawiamy na 384...511.

Detekcja kolizji polega na odczytaniu (po zakończeniu blitu) danych o pozycji X i Y kolizji oraz o napotkanym kolorze. Po prostu, gdy w trakcie blitu układ wykryje, że w miejscu do którego ma zapisać niezerową daną jest juz inna niezerowa dana to zapamiętuje X i Y tego punktu oraz nadpisany kolor. Możliwe jest zapamiętanie pierwszej lub ostatniej (do wyboru) kolizji w trakcie blitu.

634

(709 odpowiedzi, napisanych Fabryka - 8bit)

spod adresów 0,1,2 i 3.

635

(709 odpowiedzi, napisanych Fabryka - 8bit)

Ponieważ SRCA0 SRCA1 oraz SRCA2 służą do zaadresowanie pamięci liniowej 512KB a do tego potrzeba 19 bitów czyli 8 + 8 + 3.  SRCA0 jest częścią najmłodszą, SRCA2 najstarszą (3 bity)

636

(709 odpowiedzi, napisanych Fabryka - 8bit)

Nie tylko można, ale zawsze tak jest. Po prostu tam gdzie nie widzisz OVERLAYA znaczy to, że dane VRAM w tym miejscu mają wartość 0. Dzięki temu widzisz PLAYFIELD. Oczywiście dodatkowo ważne tu są priorytety ... Pytajcie o szczegóły a ja będę to umieszczał w dokumentacji, która będzie cały czas poprawiana / uzupełniana a za jakiś czas wypuszczę nową wersję.

637

(709 odpowiedzi, napisanych Fabryka - 8bit)

Asembler czy też C są tak samo dobre. Dla VBXE nie robi to różnicy.

Co do zamawiania PCB - Piguła nie jest tak źle jak piszesz. Ja zamawiałem 2 sztuki
i mógłbym zamówić nawet jedną. Tylko przy takiej ilości koszty są ogromne, bo uruchomienie produkcji swoje kosztuje. Za 2 szt. zapłaciłem 180 z przesyłką.

638

(709 odpowiedzi, napisanych Fabryka - 8bit)

Muszę jeszcze poprawić PCB - tzn. zintegrować interfejs programowania, tak aby dodatkowe przewody nie były potrzebne. Poza tym czeka mnie być może zmiana DAC, chociaż ... możecie zamawiać próbki intersila HI1178, może okaże się w pewnym momencie, że mamy ich dużo :)

Doumentacja jeszcze się pisze, z dużymi oporami - ale powstanie - przepraszam za opóźnienie.

Co do ewentualnej produkcji - najlepszą dla mnie opcją jest zamówienie PCB i sprzedawanie ich, nie chciałbym jednak być posądzonym o zdzierstwo :-) Całą resztę mogę udostępnić (schematy, pliki programowania). Tak to widzę na tę chwilę, co Wy na to ? Muszę też wiedzieć ilu jest naprawdę chętnych ...

639

(709 odpowiedzi, napisanych Fabryka - 8bit)

laoo - hę ? Ten tego coś się pomyliło ;-) ?

640

(709 odpowiedzi, napisanych Fabryka - 8bit)

Dzięki za linka do tego DAC. Sam DAC myślę, że dowolny wystarczy HI1178 sprawuje się bardzo dobrze ale jak będą trudności ze zdobyciem to znajdziemy inny :-)

Myślę że ten DAC będzie bardzo dobry. PCB i tak trzeba zrobić w wersji 2.0

641

(709 odpowiedzi, napisanych Fabryka - 8bit)

Trzeba jeszcze podłączyć interfejs konfiguracyjny (3 czy 4 przewody) i zegar 14MHz. (1 przewód)

642

(709 odpowiedzi, napisanych Fabryka - 8bit)

Układ nie wymaga żadnego programatora bo programowany jest przez ATARI. Na razie w dosyć infantylny sposób - to wymaga jeszcze dopracowania bo wykorzystuję 2 port joysticka.

zdjęcie:
http://www.fotosik.pl/pokaz_obrazek/5o7 ... fc4fi.html

643

(709 odpowiedzi, napisanych Fabryka - 8bit)

mapa kolorów:

są 2 tryby:

jeden dzieli ekran na kwadraty o wielkości 4x4 pixele
drugi dzieli ekran na kwadraty 8x8 pixeli

mapa kolorów jest definiowana przez pamięć vram nie wyświetlaną jako zwykły overlay ale dzięki zachowaniu identycznej organizacji (każda linia co 512 bajtów) można na niej wykonywać te same operacje fill i blittera.

Szerokość mapy kolorów (w bajtach) wynosi 128 na linię, wysokość mapy kolorów w liniach wynosi 64 linie czyli jej całkowita wielkość 128x64 = 8192 bajtów.

Położenie mapy kolorów względem ekranu definiuje się poprzez rejestry skrollingu poziomego i pionowego - można przesuwać wyświetlane okno po całym tym obszarze - po wyjściu poza jego brzeg następuje "zwinięcie" do początku. Przesuwanie możliwe jest z rozdzielczością 1 pixela.

Każdy bajt mapy kolorów decyduje o następujących parametrach kwadratu 8x8 lub 4x4

5 bitów: 1 z 32 zestawów kolorów PLAYFIELD PF0, PF1, PF2 i PF3
1 bit: zmiana rozdzielczości z na hi-res lub odwrotnie
2 bity: priorytet overlaya względem playfield.

Pamięć mapy koloru jest stronicowana - 16 stron jest dostępnych.

644

(709 odpowiedzi, napisanych Fabryka - 8bit)

Odpowiadam na dwa pytania, które na szybko wyłowiłem :

buforowanie - tak, są 4 strony po 128KB z których jedna może być widoczna na ekranie a na drugiej można w tym czasie rysować. (oczywiście programista ma tu pełen wybór)

blitter: ma tylko copy, dorobienie jakichś innych operacji nie byłoby duzym problemem. Oczywiście uwzględniany jest kolor przeźroczystości, tzn. kiedy bajt w pamięci vram jest równy zero wówczas wyświetlany jest normalny playfield. Dodatkowo, gdy bajt w vram równy jest 255 wówczas wyświetlany jest playfield ale w palecie kolorów spriteów. Umożliwia to tworzenie np. cieni. Podczas kopiowania możliwa jest podmiana tylko części bitów vram dzięki czemu można uzyskać różne kolory spritea bez zmiany jego definicji w pamięci.

Do piątku będzie polska dokumentacja - będę pisał ją w pracy :)

Edit: czas transferu 1 ekranu (powiedzmy 128KB chociaż tak naprawdę około 100) z pamięci atari do rozszerzenia można sobie obliczyć. Aby przesłać cały obraz wystarczy 128x1024xSTA $d608. Reszta zależy od pętli, która to obsługuje.

645

(709 odpowiedzi, napisanych Fabryka - 8bit)

Panowie, spokojnie : można full screenowe pixy robić bo układ tak naprawde wyświetla
kawał pamięci na full screenie a funkcie blittera służą do przemieszczania obiektów po tej pamięci.

Poza tym zapędziliście się : tak wielkich sprajtów nie da rady przewalać tak szybko !
Weźcie pod uwagę, że 1 pixel to 1 bajt a układ ma taktowanie 14 MHz więc też swoje ograniczenia ma. W ciągu 2 lub 3 cykli tego zegara (zależy od kilku rzeczy) przeniesie 1 pixel. Może w przyszłości udałoby się podnieść taktowanie np. dwukrotnie ale trzeba mieć generator a atari ma właśnie 14 MHz i nie więcej. Oczywiście Atari z układem Freddie.


Pisałem o 30 obiektach o wielkości 32x32  a nie 256x256 :-) na ramkę ...

646

(709 odpowiedzi, napisanych Fabryka - 8bit)

Pin ty czytasz wszystko czy nie ? Masz dwa wyjścia video z kompa. Stare i nowe. Na starym wszystko zostaje ... po staremu a na nowym .... po nowemu. Działają oba równolegle.

647

(709 odpowiedzi, napisanych Fabryka - 8bit)

Co do strony D6 czy D0 - to naprawdę nie ma żadnego znaczenia z mojego punktu widzenia - sprzętowo się w układzie nic nie zmienia, tylko drobna zmiana w kodzie HDL...
Jest to bardzo proste.

Czy będzie działało z dopałką Pasia - nie wiem - ale w sumie jest to tylko jakby dodatkowy układ IO na szynie więc powinno, najwyżej po drobnej modyfikacji w kodzie HDL znowu.

Jeżeli chodzi o programowe wykrycie układu to jest możliwe - niektóre rejestry są do odczytu. Mogę też zrobić żeby w jakimś rejestrze była zawsze określona wartość.

Projekt faktycznie zajął mi trochę czasu, ale nie spieszyłem się - pierwsze plany snułem około 2001-2002. A tak poważniej zająłem się tym od początku  zeszłego roku.

648

(709 odpowiedzi, napisanych Fabryka - 8bit)

W tygodniu zrobię coś na kształt uproszczonej dokumentacji. Mam nadzieję, że wyjaśni ona co nieco.

PS. Nie olewam Was. Odpowiedzi na niektóre z pytań postaram się udzielić jutro ... Jak wiadomo w pracy lepiej się
czyta forum niż w domu :)

649

(709 odpowiedzi, napisanych Fabryka - 8bit)

mirusvf: to nie fotomontaż tylko zdjęcie telewizora.

heaven: heh, there is no cpu / gpu on the board. All work is done by Altera FPGA and 512 KB 10ns RAM... Additionally there is a true-color DAC installed.

Sikor: 2 monitory ? hę ? Napisz se taki program to będziesz miał. Ale. zasadniczo oba wyjścia pokazują to samo tylko dodatkowe nieco "więcej". Częstotliwość 50Hz. SYNC dalej generuje stare GTIA.

650

(709 odpowiedzi, napisanych Fabryka - 8bit)

dobrze myślisz.

Kochani, dajcie myśli zebrać - wieczorkiem może jeszcze coś napiszę na razie ... dziecko się obudziło.

na deser taka mała próbka:

http://www.fotosik.pl/pokaz_obrazek/v4v ... 2oae1.html