1

Mam dwa komputery (800XL i 600XL) w których nie zawsze działają klawisze funkcyjne: SELECT, OPTION, START. W teście klawiatury (SELF TEST) wszystko jest ok za każdym razem. W niektórych grach też ok, ale w innych np. Boulder Dash one nie działają. Wczytywanie gry odbywa się przy pomocy SIDE2 lub SIO2SD. Na innych komputerach (800XE, 65XE, XEGS, inny 800XL) te same pliki-gry czytane z tych samych urządzeń, obsługują bezproblemowo te klawisze.
Próbowałem podmieniać pokey, ale to nie przynosi rezultatu.

Poza tym komputery są sprawne (testowane przy pomocy Acid800).

Nie wiem czy to ma jakieś znaczenie, ale w 800XL mam zamontowane Ultimate+Stereo, z kolei 600XL jest rozszerzone do 64kB i było w nim kiedyś Ultimate montowane.

2

Sprawdź prostym programem w BASIC-u, lekko, powoli naciskając klawisz, czy nie ma opóźnienia lub niepewnego działania klawiszy funkcyjnych. Np. po naciśnięciu START, czy przez chwilę nie pojawia się na ekranie "przeplot" cyfr 7 i 6. Przyczyną problemów może być zakurzona klawiatura. Teoretycznie powinna być szczelna, ale po latach kurz się dostaje.

1 ? PEEK(53279):GOTO 1

3

Wszystko działa poprawnie, zarówno w Twoim programie jak i w SELF TEŚCIE. Dopiero po wczytaniu gry klawisze zachowują się dziwnie, czyli np START nie działa. Doczytałem, że może to być GTIA i podmieniłem go na inny (tylko że on ma wadę i źle wyświetla grafikę, co w tym przypadku nie ma znaczenia). W obu komuterach przyniosło to pozytywny efekt czyli START w grze działa.

Nie rozumiem dalej, czemu ten poprzedni działa/nie działa tylko w jakichś tam przypadkach.

No i druga zagadka, jak mogło dojść do uszkodzenia tych układów? Jestem przekonany, że tej wady wcześniej nie było. W obu komputerach bawiłem się rozszerzeniami typu Ultimate i Stereo, oczywiście zgodnie ze sztuką. Może to tu tkwi problem i dane rozszerzenie w jakiś sposób uwala GTIA?

4 Ostatnio edytowany przez stRing (2017-12-29 23:52:15)

Ok mały błąd, napisałem że działa wg Twojego programiku, ale zamiast wartości 6,5,3 przy wciskaniu klawiszy funkcyjnych pojawiają się liczby 13,14,11. Porównałem na sprawnym GTIA i tym uszkodzonym. Co to może oznaczać - czwarty bit jest wymagany do dwucyfrowej liczby. Może stereo ustawia jakoś ten bit na 1 (15 nożka GTIA to jeden z sygnałów do Stereo).

Update:
Na sprawnym GTIA po włączeniu zasilania, na 15 pinie jest coś ponad 100ohm do masy. Jak dam taki opornik na "wadliwym" GTIA to bit 4 powinien się wyzerować. Wtedy PEEK(53279) powinien dać wartość 7 zamiast 15. Wtedy wg mnie START powinien zadziałać. Najwyraźniej niektóre gry przy wciśnięniu START sprawdzają jedynie wartości 0110 w komórce 53279, a inne 0110 i 1110.

Pytanie, jak w ogóle do tego doszło? I czy GTIA jest faktycznie uwalony i czy da się ten bit wyzerować bez tych kombinacji? Ogólnie stawiam, że to U-Switch coś zamieszał lub został źle podpięty, chociaż robiłem to dokładnie jak na stronie Lotharka.

5

update 2:

Napięcie na 130XE (stockowy) na dobrym GTIA na nóżce 15 wynosi ok 0V, podczas wciskania klawiszy ok 0,8V. Napięcie na tej samej nóżce na 800XL (Ultimate, Stereo, U-switch), który ma problem z klawiszem START z wadliwym GTIA wynosi 1,3V i nie zmienia się. To chyba zbyt mało, żeby otrzymać logiczną jedynkę, no ale dobra niech będzie że tam jest, czego dowodzi PEEK(53279). Brak dźwięku klawiszy podczas wciskania na 800XL.

6

Czasami, choć w  sprzęcie 8-bit rzadko, pojawia się "niedopasowanie" układów do siebie, tzn. ten sam scalak w jednym komputerze działa bez zarzutu, podczas gdy w innym egzemplarzu sprawia problemy lub nie działa w ogóle.
Takie przypadki miałem kilkukrotnie z MMU.