Czyli wychodzi na to że tryb tekstowy zabiera najwięcej cykli, nawet więcej niż hi-res. W sumie to by pasowało do tego co zmierzyłem.
W takim razie albo kod na małe Atari jest dobrze zoptymalizowany, lepiej niż na C64 i C+4 albo architektura tamtych komputerów tez ma spory narzut na wydajność procesora.
Ps sprawdziłem jeszcze wynik przy widoku szachownicy 2d na Atari -48500. Czyli 2D czy 3D nie ma znaczenia.
Na A8 po wgraniu CC4 daję SHIFT+Q. Wyłączam książkę debiutową, wyłączam myślenie na ruchu przeciwnika, ustawiam głębokość ruchu na 3, włączam stół 2D, gram d2-d4 i SPACJA, wchodzę na ekran ewaluacji.
mój test nie uwzględnił SHIFT+T bo nawet jak kazałem C64 doliczyć do głębokości 3 to zatrzymał się po 11 sekundach mając tylko 2 pełne ruchy obliczone.
A8 natomiast, ustawiony takie samo ustawienie domyśle dla pojedynczego ruchu (10 sek) popracował 24 sekundy a nie 10, i doliczył 3 pełne ruchy w tym czasie.
C64 ustawione na 30 sekund na ruch i 3 pełne ruchy doliczył ich się w 36 sekund.
===
z tego widać, że algorytm zawiadujący czasem i nadający priorytet warunkom z ustawień jest inny.
jeszcze nie poznałem programisty który nawet robiąc port własnego kodu, jakby mógł coś ulepszyć to by tego nie zrobił, zwłaszcza w czasach gdy własny program grający w szachy był powodem do dumy ;)
ok. ustawiłem tak jak pisałem wyżej, tylko zostawiłem domyślną głębokość na 2 i czas na ruch obu dałem 30 sek i zagrałem d2-d4
C64 - pracował 36 sekund i obliczył 4364 pozycji na głębokość 3 pełnych ruchów A8 - pracował 30 sekund i obliczył 6161 pozycji na głębokość 3 pełnych ruchów C+4 - pracował 29 sekund i obliczył 4364 pozycji na głębokość 3 pełnych ruchów
===
dla mnie to zdecydowanie nie ten sam program na obu komputerach, za to na C64 i C+4 już być może, poprawił sprawę z czasem ale nie obliczanie wariantów.
EDIT: nie oznacza to, że 3 pełne ruchy obliczył wszystkie ale ruch który uważał za obiecujący miał 3 pełne ruchy wypisane.
Szachy na komputerze to przede wszystkim algorytmy, dopiero później jest wydajność. W sumie programy szachowe były pierwszymi, gdzie rozpętała się duża konkurencja między ich autorami, ba, od połowy lat 70. były nawet organizowane europejskie i światowe mistrzostwa programów komputerowych. Jeśli chciałoby się zrobić jakieś porównanie, to bardziej należałoby spojrzeć na daty powstania danego programu, a nie konkretną platformę. Jeśli weźmiemy różne programy szachowe na tej samej platformie, to różnice w ich sile będą znaczne. Co ciekawe, algorytmy na 6502 rozwijane przez wiele lat były znacznie silniejsze niż na inne procesory. Dlatego też czasami poważne programy nawet na komputery 16-bitowe działały na specjalnych akceleratorach na 6502, a z czasem 65C02. Dla c64 byla np. dostepna karta THE FINAL CHESSCARD firmy TASC B. V z 65c02 4MHz ktora byla tez dostepna w wersji na PC ISA.
Oglądnąłem tą drugą pojedynku szachowego Atari i C64 i już wiem co tam się odwaliło i jak to możliwe że słabszy teoretycznie komputer ograł mocniejszy. Poniżej moja analiza:
Grana jest partia angielska. W pierwszych posunięciach obie strony wymieniają się dwukrotnie skoczkami i a także pionkami. Gra jest dosyć wyrównana. W 11 ruchu Atari przeprowadza roszadę, C64 zwleka z roszadą aż do 18 posunięcia. Do 20 ruchu Atari wypracowuje sobie lekką przewagę pozycyjną. Od 21 do 26 dochodzi do masowej rzezi figur ciężkich – w wyniku wymiany z szachownicy znikają wszystkie hetmany i wieże. W toku wymiany Atari zdobywa piona przewagi i ma lepszą strukturę pionów, bo C64 na skrzydle hetmańskim ma aż dwa izolowane piony. Innymi słowy Atari wyrobiło sobie przewagę którą zdolny szachista miałby szansę zamienić na zwycięstwo w końcówce. Problem w tym że wszystko wskazuje na to że partia zakończy się końcówką pionkową, a Colosuss Chess jak i inne 8-bitowe programy kompletnie nie potrafią takich końcówek rozgrywać. Wracając zaś do partii, w dalszej części partii widać że Atari nie ma pomysłu na to jak wykorzystać przewagę piona, aby dokonać jakiegoś przełomu pionowego i doprowadzić piona do linii przemiany. C64 zaś dosyć rozsądnie rozstawia swoje dwa gońce w centrum szachownicy i generalnie czeka co dalej zrobi Atari, wykonując często ruchy pozorne, typu goniec jedno pole w lewo czy prawo tam i z powrotem. Gońce Atari stoją znacznie gorzej gdzieś na obrzeżach i nie mają za bardzo możliwości manewru. No i Atari wpada na pomysł aby te gońce powymieniać, co w tej sytuacji jak najbardziej ma sens. W 40 ruchu Atari wymienia się gońcami ciemnopolowymi, lecz to sprawia że C64 zyskuje pionka przejściowego na kolumnie e. Stockfish który pomagał mi w analizie uznał to za dobry ruch i wskazał na przewagę czarnych, no bo przecież czarny król był w pozycji w której mógł powstrzymać białego piona na linii e. Tyle że Colossus Chess nie zna teorii końcówek i nie rozumie czym jest pionek przejściowy ani co się stanie gdy tenże dojdzie do linii przemiany. No chyba że ten pionek znajdzie się już blisko linii przemiany i program będzie w stanie doliczyć pozycję do momentu samej przemiany. No i Atari najwyraźniej nie jest świadomy jakie zagrożenie stanowi pionek na linii e, więc w kolejnych ruchach Atari beztrosko odchodzi królem zostawiając białemu pionowi wolną drogę do linii przemiany. No i gdy C64 rusza pionem na przód to właściwie jest już pozamiatane. Atari wymienia się jeszcze gońcami jasnopolowymi, ale chwilę później C64 zyskuje hetmana, potem kolejnego i kończy partię matem po 57 ruchach. Tak więc ze strony Atari dobra gra w debiucie i grze środkowej, która pozwoliła na wypracowanie niewielkiej przewagi i na koniec niestety katastrofa w końcówce.
@gregor2 Ciekawy sprzęt ten final chess card. Znalazłem informację że tam był procesor 5MHz czyli sprzętowo to był komputer szachowy zbliżony do Mephisto Milano, czy Mephisto Nigel Short. Były dwie wersje, jako kartridż do C64 i karta ISA do PC. Jeśli chodzi siłę gry to chess wiki podaje wartość 1852 Elo, czyli dosyć słabo jak na taki hardware, bo np Mephisto Milano miał 2003 Elo a Mephisto Nigel Short 2012 Elo. Niemniej jednak w porównaniu do Colossus Chess który pewnie osiąga koło 1400-1500 to przepaść. ->link<-
Tu jest ciekawy ranking roznych programow. ->link<- Okazuje sie ze 6502 przy 3 MHz Fidelity Excellence 3MHz ->link<- mial wyzszy ranking niz Mephisto III Glasgow na 68000 12MHz. ;)
Motorola 68000 to procesor typu Cisc, a przy programach szachowych procesory typu Risc lepiej się sprawdzały. 6502 porównując taktowanie był pewnie ze 3 razy szybszy od Motoroli 68000 z tym samym zegarem w takim zastosowaniu. Mephisto III Glasgow to tez stary dosyć komputer jak i program stąd siła gry niższa niż późniejszych komputerów i programów.
Dużo większa lista rankingowa komputerów szachowych jest tutaj: ->link<-
I jako filmik z ewaluacją pozycji oraz sugerowanymi najlepszymi ruchami przez silnik z chess.com. ->link<-
(Nie wiem czy autor kanału tutaj czyta, ale pozwalam sobie wrzucić tu, bo YT prawdopodobnie odfiltruje komentarz z linkiem jako spam więc tam nawet nie próbuję. Taką ewaluację warto dodać do samego filmu podczas partii - wtedy każdy oglądający od razu widzi jaka jest dynamika partii i kto w danej chwili ma przewagę.)