@_tzok_: nie zrozum mnie źle, bo mam trochę wyrzuty, że akurat ostatnio się spotykamy w prawie każdym wątku - to zbieg okoliczności, bo akurat w tym samym czasie mamy nasilenie zainteresowania ST:-) Stąd cenię sobie pozytywnie to, że się spotykamy, i też czerpię trochę z Twoich postów ciekawej wiedzy, ale w tym konkretnym przypadku nie zgodzę się z Tobą:-)
Atmega w tym projekcie jest taktowana zegarem 4MHz, więc dobrze napisany program jest bez problemu w stanie przetworzyć dane PS2 i wysłać je do Atari szybciej i częściej niż Atari jest w stanie je przetwarzać. Oryginalna mysz od Atari nie jest analogowa, jak z resztą żadna mysz kulkowa. Wszystkie myszy działają w ten sam sposób: ruch kulki przekładają na rolki, a rolki obracają tarczami na których otwory zasłaniając i odsłaniając transoptor szczelinowy generują ciąg impulsów. Pomyśl: jaką częstotliwość jesteś w stanie wygenerować w ten sposób ręcznie przesuwając mysz? Bardzo małą w stosunku do częstotliwości o których mówimy. Na oko może maksymalnie kilkadziesiąt Hz?
W tym aspekcie akurat problem jest dokładnie odwrotny: trzeba specjalnie mocno spowalniać częstotliwość impulsów podawanych do Atari, bo nie nadąża on ich sczytywać i następują błędy spowodowane gubieniem tych impulsów przez Atari. Dlatego pisałem o tym, że szukałem takiego wsadu do PIC-a, który będzie działał przyzwoicie na Atari i Amidze, bo Amiga wielokrotnie szybciej potrafi sczytywać impulsy niż Atari i duża część interfejsów działających poprawnie na Amidze nie działa poprawnie na Atari po odpowiedniej zamianie pinów portu myszy. Problem ten opisał dokładnie w jakimś wątku na AOL Kuba Husak (można poszukać). Pierwotnie żeby użyć na Atari interfejsu, który działał mi na Amidze spowalniałem nieco zegar PIC-a do wartości, przy której Atari potrafiło sobie poradzić z impulsami, a zarazem transmisja w protokole PS2 pozostawała w zakresie częstotliwości podawanych przez specyfikację.
Programuję atmele i znam się na tym, ale nie chciało mi się robić kolejnego interfejsu do myszy, skoro jest ileś tam gotowców. Niemniej zgłębiłem temat i wiem, że błędy jakie popełniają programiści dotyczą niewłaściwego taktowania obu transmisji. Trzeba po drodze z odpowiednią częstotliwością komunikować się z PS2, zapisywać dane w jakiś tymczasowy bufor, przetworzyć je i wysłać z inną częstotliwością do Atari. Nie pamiętam częstotliwości, ale rzędy wielkości są takie, że komunikacja PS2 to jakieś kilkoherce, komunikacja z Atari to dziesiątki herców, a przetwarzać na atmedze możemy to wszystko w megahercach, więc wszystko powinno się bez problemu "zmieścić pomiędzy transmisjami" i być niezauważalne. Tak jak pisałem: testowałem kilka wsadów adapterów i nie ma kompletnie żadnych lagów w dobrze napisanych programach.
A o źródło tego interfejsu na atmedze zapytałem, bo tak jak mówię wolę atmela, bo go dużo programuję, a PIC już dziś jest przestarzały i trudniej dostępny. Ogólnie fajny projekt, a z tego co piszesz o tych lagach, to pewnie wymagał by dopracowania sam program.
Ja mam interfejs wg tych opisów:
http://eab.abime.net/showthread.php?t=66443
Wersja firmware 1.3 jest odpowiednia i działa zarówno z Atari jak i z Amigą. Nie ma żadnych lagów ani innych przypadłości. Działa idealnie.
Przepraszam za odbiegnięcie od tematu wątku...