atarionline.pl MicroChess - Forum Atarum

    Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.

    • :
    • :

    Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.

      • 1: CommentAuthorxxl
      • CommentTime13 Apr 2020 22:04
       
      nie musiszmi wierzyc. zagraj a zobaczysz ze komputer porusza figura ktora uwazasz ze krola w sposob jaki porusza sie krolowka :-)


      zycie :-)
      • 2: CommentAuthorzbyti
      • CommentTime13 Apr 2020 22:04 zmieniony
       
      Opiszę Ci po raz ostatni problem, jak nie zrozumiesz to ja swoje możliwości wyczerpałem.

      ---------------------------

      Załączniki "start".

      Tak wygląda po załadowaniu gry. Jeżeli piktogram na d1 to król bo zaczynam czarnymi to pole w lewym dolnym rogu powinno być oznaczone h8. W większości figur jakie widziałem królowa miała drobniejszą koronę od króla u ciebie jest na odwrót, ale ok. Skoro ja po 20-latach inaczej rozpoznałem figury i dla ciebie to żaden sygnał to spoko.

      Zrezygnuj z koordynat a,b,c 1,2,3 to w lewym dolnym będziesz miał zawsze prawidłowe czarne pole :P Inaczej przepisuj te koordynaty prawidłowo z a1 na h8.

      e2-e4 w tej pozycji wykonuje ruch od dołu szachownicy z przed figury którą uznajesz za królówkę, dlatego też automatycznie brałem tę figurę za króla.

      ---------------------------

      Załącznik "po-x" czyli wydaniu "X" - jeżeli umówiliśmy się co do wyglądu króla (na twoją wersję) to jest to pozycja prawidłowa do gry białymi.

      ---------------------------

      Załączniki "po-x&r" czyli po wczytaniu programy wydaję X i wydaję R pozycja nieprawidłowa bo król się zamienia miejscami z królową i e2-e4 wyprowadza piona z przed figury którą ty uznajesz za królówkę.

      Tak, to co uważasz za królówkę komputer faktycznie rusza jak hetmanem. Ja mogę i królem i hetmanem jeździć jak chcę bo nie ma sprawdzania poprawności ruchu tych figur dla gracza.
      • 3: CommentAuthorxxl
      • CommentTime13 Apr 2020 22:04 zmieniony
       
      po prostu zamienie piktogramy krol-krolowka.
      ---
      i etykiety dla czarnych w odwrotnej kolejnosci. trzeba bedzie tez odwrotnie dekodowac ruchy w zaleznosci od koloru...
      • 4: CommentAuthorzbyti
      • CommentTime13 Apr 2020 22:04
       
      I dobrze, zrobisz, ale edytowałem post więc przeczytaj jeszcze raz.
      • 5: CommentAuthorxxl
      • CommentTime13 Apr 2020 23:04
       
      w pierwszym poscie binarka
      • 6: CommentAuthorzbyti
      • CommentTime14 Apr 2020 00:04 zmieniony
       
      Po wczytaniu najnowszej wersji wciąż czarne bierki są u dołu. W tym ustawieniu kolumny mają prawidłowe nazwy dla ustawienia czarnych, za to linie wskazują, że powinienem mieć białe bierki.

      e2-e4 wykonuje prawidłowy ruch z przed króla (przy danych koordynatach). Dalej nie testuję

      ---------------

      Po [x] wszystko wygląda poprawnie i mogę rozpocząć prawidłową partię białymi do mata. Partia potoczyła się jak pierwsza z zamieszczonych tutaj, ekran końcowy zamieszczam.

      Wygląda jakby pojawił się po prawej pobity mi pionek ale nie widać pobitych bierek czarnych.
      • 7: CommentAuthorzbyti
      • CommentTime14 Apr 2020 00:04 zmieniony
       
      Teraz figury króla i królowej są w sposób widoczny prawidłowe, bo najczęściej król miał po środku królewskiej czapy krzyż, a królowa koronę o "gęstszych zębach" od króla.
      • 8: CommentAuthorxxl
      • CommentTime14 Apr 2020 01:04
       
      binarka w pierwszym poscie. kolumny pozmieniane, startowal bedzie bialymi.
      • 9: CommentAuthorzbyti
      • CommentTime14 Apr 2020 01:04 zmieniony
       
      Pograłem trochę inaczej by było więcej gry. Jest OK, w takim sensie, że można zagrać białymi od początku do końca, nie szukałem wad programu.

      Nie wiem co tam po prawej kombinujesz, że się figura wraz z polem pojawia, ale mniejsza.

      Na ten moment jest to mega słaby program który nie widzi mata w 1 ruchu, dobrze, że chociaż zamatowany umie to szybko "policzyć".

      Muszę się przyjrzeć tej wersji na Apple ][ co linkowałem, może po komentarzach w kodzie się zorientuję co jeszcze z tego kodu można wycisnąć.

      Na ten moment MiniChess mógłby kompletnie losować swoje ruchy i miałby takie same szanse jak z obecnie zaimplementowaną logiką szachową.
      • 10: CommentAuthorzbyti
      • CommentTime14 Apr 2020 01:04 zmieniony
       
      Przypomnę raz jeszcze autora MicroChess Petera Jenningsa.

      Warto odwiedzić jego stronę na ChessWiki ->link<- bo jest tam kilka ciekawych dokumentów.

      A co do potencjału MicroChess (czy też bardziej jego autora), czy też MiniChess to jego 5KB rozwinięcie w postaci Commodore ChessMate (1978) ->link<- czy też rok późniejszy ale tak samo obszerny Chess Champion MK II (1979) ->link<- grały już na przyjemnym dla amatora poziomie.

      • 11:
         
        CommentAuthorKaz
      • CommentTime14 Apr 2020 02:04
       
      Interesujące:

      ->link<-

      the code was sold on paper, so buyers had to type in the code to activate the program


      A gdyby ktoś się chciał pokusić o zabawę z kodem to nie trzeba go przepisywać z tej zapodanej przez xxl-a książeczki, wersja przystosowana do urządzeń z serial port można go też skopiować (są komentarze) stąd:

      ->link<-

      PS. Na tej stronce zresztą sporo innych ciekawych źródeł:

      ->link<-
      • 12: CommentAuthorzbyti
      • CommentTime14 Apr 2020 02:04 zmieniony
       
      @Kaz to co dajesz w drugim linku to wersja z jakiej korzystał @xxl.

      Jak zrozumiałem ma ona błędy powstałe podczas OCR.

      W linkach które podałem można dotrzeć do nowszej wersji z takim komentarzem:

      ;
      ; modified by Daryl Rictor to work over a
      ; serial terminal connection, August 2002.
      ;
      ; Updated with corrections to earlier OCR errors by Bill Forster, August 2005.
      ;

      Do pobrania tutaj ->link<-
      • 13:
         
        CommentAuthorKaz
      • CommentTime14 Apr 2020 10:04
       
      Nie wiem, czy to wersja z której korzystał xxl, bo xxl podał link do oryginału, który trzeba by przepisać (a więc nie było by błędów OCR). Ta, którą podesłałem, to wersja z 2002 roku. Daryla Rictora, przystosowana do terminali, zmienione adresy. W sumie tę wersję z 2005 roku trzeba by porównać.
      • 14: CommentAuthorzbyti
      • CommentTime14 Apr 2020 10:04
       

      Kaz:

      Nie wiem, czy to wersja z której korzystał xxl, bo xxl podał link do oryginału, który trzeba by przepisać (a więc nie było by błędów OCR).

      Patrz post #4 na poprzedniej stronie.
      • 15:
         
        CommentAuthorKaz
      • CommentTime14 Apr 2020 10:04
       
      Acha, ok.
      • 16: CommentAuthorzbyti
      • CommentTime14 Apr 2020 10:04 zmieniony
       
      Jest trochę poprawek w kodzie i w komentarzach, przykładowo takie:





      Gdzieś tam bne poprawione na beq itd. jest jeszcze trochę poprawek, kto ciekaw może sam porównać.

      Prawa kolumna wersja z 2005 z poprawkami.
      • 17: CommentAuthorxxl
      • CommentTime14 Apr 2020 10:04 zmieniony
       
      ale to sa poprawki do wprowadzonch rzeczy juz PO oryginale, nie maja zadnego wplywu na dzialanie programu.

      w kodzie sa bledy - niekontrolowany zapis na strone zero spoza zakresu itp.
      analizuje czy nie wynika to z oszczednosci na pamieci dla kodu ... mozliwe ze o tym wiedzial i "omijal" w zmiennych pozniej te zasmiecane obszary.

      narazie latam. ale przyjdzie czas na analize.

      ---
      zbite fiugury bede wyswietlal gdzies z boku
      • 18: CommentAuthorzbyti
      • CommentTime14 Apr 2020 11:04 zmieniony
       
      Pomijając poprawki w komentarzach i te nieistotne związane z assemblerem to są tylko 4 istotne różnice.

      Pierwsze wiersz plik z 2002 drugi z 2005
      ; JSR OHM ; CONTINUATION

      JSR GNM ; CONTINUATION

      ------------------------------------

      CKMATE LDY BMAXC ; CAN BLK CAP

      CKMATE LDX BMAXC ; CAN BLK CAP

      ------------------------------------

      bne pout25 ; white, print space

      beq pout25 ; white, print space

      ------------------------------------

      PrintDig PHY ; prints A hex nibble (low 4 bits)
      AND #$0F ;

      PrintDig AND #$0F ; prints A hex nibble (low 4 bits)
      PHY
      • 19: CommentAuthorxxl
      • CommentTime14 Apr 2020 11:04 zmieniony
       
      CKMATE LDY BMAXC ; CAN BLK CAP

      to jest blad druku a nie w kodzie. w kodzie jest A6 a to jest LDX :-)


      ; JSR OHM ; CONTINUATION

      to samo, blad w druku - w kodze jest ok.


      bne pout25 i dalsze nie maja wplywu na dzialanie programu to sa rzecz dodane juz przez kogos innego


      ---
      zerknij na oryginal - jest ok a w tym co podlinkowales jest blad.
      • 20: CommentAuthorzbyti
      • CommentTime14 Apr 2020 11:04
       
      Chyba się nie rozumiemy...

      Jest linkowana wersja jako źródło z 2002 i wersja z 2005 gdzieś ktoś poprawił pierwotny OCR i z tego co piszesz prawidłowo.

      Daje info tym którzy chcieliby zająć się plikiem z 2002 który ty i @Kaz podaliście.

      Nigdzie nie pisałem, że oryginalny program miał błędy, przecież jakby miał to by nie działał na tym KIM-1 a był przecież nawet w sprzedaży.

      To ty piszesz, że ma błędy i chętnie przeczytam ich zastawienie i opis jak skończysz.
      • 21: CommentAuthorxxl
      • CommentTime14 Apr 2020 11:04
       
      wzej masz wyraznie ze to co podlinkowales ma blad a nie w oryinale.

      natomiast ja mowie ze w orinale sa bledy istotne a nie drukarskie :-)
      • 22: CommentAuthorzbyti
      • CommentTime14 Apr 2020 11:04 zmieniony
       
      @xxl chętnie bym podyskutował ale mnie działanie AOL dziś w @#$%

      w tym z 2005 jest CKMATE LDX BMAXC ; CAN BLK CAP, więc tak jak mi pokazujesz.

      To ty linkowałeś 2002 gdzie jest LDY.

      Ja piszę o błędach które ktoś zrobił w pliku z 2002 roku.

      Tak czy inaczej mam nadzieję, że opublikujesz swoje źródła i będzie można MicroChess obejrzeć w pełnej krasie z wszystkimi poprawkami błędów drukarskich i autorskich.
      • 23: CommentAuthorxxl
      • CommentTime14 Apr 2020 11:04
       
      nie poprawiam bledow drukarskich... bo te mnie na szczescie ominely dissasemblowalem pamiec :-) do zdissasemblowanej pamieci KIM dopisalem etykiety z wydrukow :-)
      • 24: CommentAuthorzbyti
      • CommentTime14 Apr 2020 12:04
       
      @xxl i to jest dobre podejście :]
      • 25: CommentAuthorxxl
      • CommentTime14 Apr 2020 12:04 zmieniony
       
      zbite figury mamy z boku. w pierwszym poscie binarka
      • 26: CommentAuthorzbyti
      • CommentTime14 Apr 2020 14:04 zmieniony
       
      Tak sobie gram, i wszystko było by fajnie i pięknie gdybyś potrafił zrobić z tego program szachowy :D

      No ale nie masz takich ambicji jak rozumiem.

      Widać programy mające jakieś pojęcie o grze zaczynają się od 4KB.

      EDIT: nie pamiętam jak to było w MicroChess ale widzę, że nie ma bicia w przelocie.
      • 27: CommentAuthorzbyti
      • CommentTime14 Apr 2020 14:04 zmieniony
       
      Zgłaszam błąd.

      Byłem ciekaw czy program będzie ratował swojego hetmana (1 obrazek).

      2 obrazek to czarne dumają na ruchu, 3 obrazek to sytuacja na stole po jego wykonaniu, ewidentnie jakiś babol.

      Program nie ratował hetmana, do tego "zniknął" skoczka i poświęcił gońca dając szacha :D

      Jeszcze widzę, że program mi zniknął pionka na b4 gdy ja odbijałem gońcem na d4. A może zniknął mi piona b4 bijąc mojego skoczka na d4? Nie zwróciłem uwagi, że nagle gram bez piona b4 :] Dlatego zdziwił mnie ruch czarnych gońcem na b4, myślałem, że to była wymiana za piona, teraz z przebiegu na zrzutach widzę, że błąd był już wcześniej.
      • 28: CommentAuthorzbyti
      • CommentTime14 Apr 2020 15:04 zmieniony
       
      Zagrałem czarnymi, przynajmniej program potrafi dać najszybszego mata :D

      EDIT1: ciekawe jaki byłby jego następny ruch gdybym próbował grać pomimo mata :D sprawdzę to... :]

      EDIT2: sprawdziłem ;) ostatni ekran...
      • 29: CommentAuthorzbyti
      • CommentTime14 Apr 2020 16:04 zmieniony
       
      MicroChess 2.0

      BENREDIC:

      MicroChess was the first commercially successful chess game for home computers. The first version was for the KIM-1, with zero graphical capabilities, and it played like a horses ass. But it was chess on a home computer, which was a big deal in 1975.

      It was later improved and ported to a number of computers like TRS-80, Commodore PET, Sol 20, and Apple II. These versions included a graphical board on the screen and shows the moves on the side of the screen, making it a fully functional computer chess game. The game was also the brain behind a couple of dedicated chess computers, like Commodore Chessmate and Novag Chess Champion MK II.

      Version 2.0 has 8 difficulty levels, although I am having a hard time telling those apart except for the amount of time they spend calculating. Even on level 8 this program is easily beaten by any experienced player.

      Most of the basics of chess is covered here. It has a simple opening book and understands castling, pawn promotion and en passant. Draws by repetition or 50 moves are not covered, though. It also has one small quirk, which stems from the KIM-1 days. To conserve memory (the KIM-1 only had 1kB RAM) MicroChess does not store the board squares with the pieces; Instead it stores the pieces, and which squares they are on. This allows the program to store a complete position using only 32 variables instead of 64. The problem comes with pawn promotions: If you already have a queen on the board, you may not promote to a second queen. You need to promote to a piece that has been captured and is currently off the board. This is somewhat akin to if you play with a physical board and a pieceset without spare queens.

      ->link<- wkleiłem bo spodobał mi się zwrot "it played like a horses ass". U nas to się chyba "dupa wołowa" mówi? ;)
      • 30: CommentAuthorxxl
      • CommentTime14 Apr 2020 16:04
       
      w zwiazku z tym, ze niektorzy kreca noskiem na wyglad krolowki, QTZ przotowal nowa grafike tej figury.

      nie ma ani bicia w przelocie ani roszad ani przemian figur, nie ma nawet kontroli mata...

      jak widzisz blad to najlepiej nagraj video z rozgrwki a pozniej zrob save state - zerkne na pamiec. (startuj emulator bez zamontowanch atrow) - byc moze to ten blad o ktorm mowilem ze smieceniem po pamieci... poprawie o wkrotce.

      sprawdzilem jak wage ruchu oceniaja jeszcze dwa inne programy szachowe i sa podobienstwa (tak duze ze jesem 100% pewny ze to wlasciwe fragmenty kodu), ale tez duze roznice i nie tylko w samch "wagach" pewnch zdarzen co nawet ilosci skladnikow branch pod uwage wiec sadze ze temu programowi czegos brakuje...

      byc moze jestem na dobrej drodze zeby zmodfikowac ten program, a moze mi sie tylko wydaje.
      • 31: CommentAuthorzbyti
      • CommentTime14 Apr 2020 16:04 zmieniony
       
      @xxl zrób po prawej listę ruchów, to będzie zapis partii. Może niektóre błędy wtedy będą do odtworzenia albo z pozycji albo z przebiegu partii.

      To tak obok zrzutów emulatora oczywiście.
      • 32: CommentAuthorbob_er
      • CommentTime14 Apr 2020 16:04
       
      Jako obrazek króla i królowej/hetmana dajcie symbol marsa i wenus. To się nikomu nie pomyli :)

      btw: kiedyś przerobiłem te szachy jako relokowalna binarka dla Sparty, ale jakoś zapomniałem wypuścić :(.
      • 33: CommentAuthorzbyti
      • CommentTime14 Apr 2020 17:04 zmieniony
       

      xxl:

      sprawdzilem jak wage ruchu oceniaja jeszcze dwa inne programy szachowe i sa podobienstwa (tak duze ze jesem 100% pewny ze to wlasciwe fragmenty kodu), ale tez duze roznice i nie tylko w samch "wagach" pewnch zdarzen co nawet ilosci skladnikow branch pod uwage wiec sadze ze temu programowi czegos brakuje...

      Brakuje zapewne mnóstwa algorytmów i heurystyk odkrytych w międzyczasie a które ma CC4.0 czy Chessmaster, nawet SuperQuerg ma swoje AI o wiele potężniejsze niż to co tutaj upchnięto w 1KB.

      Nie jestem pewien ale chyba autor SuperQuerg wymienił jakie algorytm zaimplementował w notce dołączonej do programu, sprawdzę.

      EDIT: dobrze pamiętałem, co siedzi w SQ na screenach.
      • 34: CommentAuthorzbyti
      • CommentTime14 Apr 2020 17:04
       
      Na ten moment MiniChess ma problem nawet z najprostszym algorytmem szachowym ->link<- bo potrafi oddać gońca za piona itd.

      Tutaj podstawy ->link<-
      • 35: CommentAuthorzbyti
      • CommentTime14 Apr 2020 19:04 zmieniony
       
      Zagrałem z MicroChess 2.0 (Apple ][) na IQ=8. Bardzo słaby gracz ale już GRACZ!. Widać spory postęp względem MicroChess na KIM-1.
      • 36: CommentAuthorzbyti
      • CommentTime14 Apr 2020 20:04 zmieniony
       

      xxl:

      w zwiazku z tym, ze niektorzy kreca noskiem na wyglad krolowki, QTZ przotowal nowa grafike tej figury.

      A mam nastrój na droczenie więc skomentuję :D

      Powyższe powiedział gość który wziął piktogram hetmana, postawił na miejscu hetmana, nazwał królem i tak kazał mu się poruszać ;P

      Diagram po wystartowaniu programu (pierwsza udostępniona wersja z grafiką) i wykonaniu e2-e4



      Według @xxl na powyższym screenie na polu d1 stał król, bo e2-e4 to tak naprawdę d2-d4, ale to wiedział tylko on :D
      • 37: CommentAuthorxxl
      • CommentTime14 Apr 2020 20:04
       
      > Jako obrazek króla i królowej/hetmana dajcie symbol marsa i wenus
      > it played like a horses ass

      zmienic nazwe na LGBQTA CHESS

      cala para pojdzie teraz w podkolorowanie ramki
      • 38: CommentAuthorzbyti
      • CommentTime14 Apr 2020 22:04 zmieniony
       
      Podobny błąd ze znikaniem figur i niepoprawnym ruchem skoczka z poza szachownicy.

      Na screenie 1 czarne są na posunięciu, na 2 obrazku sytuacja po "wykonaniu" ruchu przez czarne.

      @xxl nie będę robił filmików bo nie robię Cię w wała. Masz savestate z Atari800 (4.2.0) w załączniku.
      • 39: CommentAuthorzbyti
      • CommentTime15 Apr 2020 00:04 zmieniony
       
      Tutaj ->link<- źródła prawilnie na github.

      W ogóle sporo kodu w asm dla 6502 na tym gicie.

      --------------------------------------------------------

      EDIT: no proszę, nie ma porządnego emulatora KIM-1?! ->link<-

      Co prowadzi mnie do pytanie związanego z:

      xxl:

      dissasemblowalem pamiec :-) do zdissasemblowanej pamieci KIM dopisalem etykiety z wydrukow :-)

      Możesz opisać jak to zrobiłeś? Jakiej binarki użyłeś do uruchomienia na KIM-1 i co to był za KIM-1?

      By chyba nie kompilowałeś źródeł za pomocą CC65 by puścić to na emu by zrobić zrzut?

      Poskładałeś ten zrzut taśmy co wcześniej zamieściłem? Oczywiście musiałbyś to znaleźć wcześniej.

      Po co robiłeś zrzut pamięci skoro wszędzie na sieci leży ten kod, dla sportu?

      Jak rozumieć w kwestii tego zrzutu pamięci słowa z pierwszego posta:

      xxl:

      przepisalem na atari microchess z KIM. zrodlo: ->link<-

      A może wrzuciłeś listing MichroChess w postaci HEX który jest w książce i to nazywasz "dissasemblacją"?
      • 40: CommentAuthorxxl
      • CommentTime15 Apr 2020 00:04
       
      tu jest binarka
      ->link<-

      a tu deasembler gdzie to mozna wkleic
      ->link<-


      :-)
      • 41: CommentAuthorzbyti
      • CommentTime15 Apr 2020 01:04 zmieniony
       
      Czyli jednak z książki HEX-y. I tu rozumiem nie ma błędów drukarskich :P

      MICROCHESS

      © COPYRIGHT 1976, ALL RIGHTS RESERVED

      -------------------------------------------------------
      | 00 0l 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F |
      |-------------------------------------------------------|
      | 0000: D8 A2 FF 9A A2 C8 86 B2 20 1F 1F 20 6A 1F C5 F3 |
      | 0010: F0 F6 85 F3 C9 0C D0 0F A2 1F B5 70 95 50 CA 10 |
      | 0020: F9 86 DC A9 CC DO 12 C9 0E D0 07 20 B2 02 A9 EE |
      | 0030: D0 07 C9 14 D0 0B 20 A2 03 85 FB 85 FA 85 F9 D0 |
      | 0040: BF C9 0F D0 06 20 4B 03 4C 9D 0l 4C 96 01 10 00 |
      |-------------------------------------------------------|
      | 0070: 03 04 00 07 02 O5 0l 06 10 17 11 16 12 15 14 13 |
      | 0080: 73 74 70 77 72 75 71 76 60 67 61 66 62 65 64 63 |
      | 0090: F0 FF 0l 10 11 OF EF F1 DF El EE F2 12 0E 1F 21 |
      | 00A0: 0B 0A 06 06 04 04 04 O4 02 02 02 02 02 02 02 02 |
      |-------------------------------------------------------|
      | 0100: A6 B5 30 5C A5 B0 F3 08 EO 08 D0 04 C5 E6 F0 2E |
      | 0110: F6 E3 C9 01 D0 02 F6 E3 50 1E A0 0F A5 B1 D9 60 |
      | 0120: 00 F0 03 88 10 F8 B9 A0 00 D5 E4 90 04 94 E6 95 |
      | 0130: E4 18 08 75 E5 95 E5 28 E0 04 F0 03 30 31 60 A5 |
      | 0140: E8 85 DD A9 00 85 B5 20 4B 03 20 B2 02 20 00 02 |
      | 0150: 20 B2 02 A9 08 85 B5 20 09 02 20 31 03 4C 80 17 |
      | 0160: E0 F9 DO 0B A5 60 C5 B1 D0 04 A9 00 85 B4 60 50 |
      | 0170: FD A0 07 A5 B1 D9 60 00 F0 05 88 F0 F1 10 F6 B9 |
      | 0180: A0 00 D5 E2 90 02 95 E2 C6 B5 A9 FB C5 B5 F0 03 |
      | 0190: 20 25 03 E6 B5 60 C9 08 B0 12 20 EA 03 A2 1F B5 |
      | 0lA0: 50 C5 FA F0 03 CA 10 F7 86 FB 86 BO 4C 00 00 00 |
      |-------------------------------------------------------|
      | 0200: A2 10 A9 00 95 DE CA 10 FB A9 10 85 B0 C6 B0 10 |
      | 0210: 0l 60 20 1E 03 A4 B0 A2 08 86 B6 C0 08 10 41 C0 |
      | 0220: 06 10 2E C0 04 10 1F C0 0l F0 09 10 0E 20 8E 02 |
      | 0230: D0 FB F0 D9 20 9C 02 DO FB F0 D2 A2 04 86 B6 20 |
      | 0240: 9C 02 D0 FB F0 C7 20 9C 02 A5 B6 C9 04 D0 F7 F0 |
      | 0250: BC A2 10 86 B6 20 8E 02 A5 B6 C9 08 D0 F7 F0 AD |
      | 0260: A2 06 86 B6 20 CA 02 50 05 30 03 20 00 0l 20 1E |
      | 0270: 03 C6 B6 A5 B6 C9 O5 F0 EB 20 CA 02 70 8F 30 8D |
      | 0280: 20 00 0l A5 B1 29 FO C9 20 FO EE 4C 0D 02 20 CA |
      | 0290: 02 30 03 20 00 01 20 1E 03 C6 B6 60 20 CA 02 90 |
      | 02A0: 02 50 F9 30 07 08 20 00 0l 28 50 F0 20 1E 03 C6 |
      | 02B0: B6 60 A2 0F 38 B4 60 A9 77 F5 50 95 60 94 50 38 |
      | 02C0: A9 77 F5 50 95 50 CA 10 EB 60 A5 B1 A6 B6 18 75 |
      | 02D0: 8F 85 B1 29 88 D0 42 A5 B1 A2 20 CA 30 0E D5 50 |
      | 02E0: D0 F9 E0 10 30 33 A9 7F 69 01 70 01 B8 A5 B5 30 |
      | 02F0: 24 C9 08 10 20 48 08 A9 F9 85 B5 85 B4 20 4B 03 |
      | 0300: 20 B2 02 20 09 02 20 2E 03 28 68 85 B5 A5 B4 30 |
      | 0310: 04 38 A9 FF 60 18 A9 00 60 A9 FF 18 B8 60 A6 B0 |
      | 0320: B5 50 85 B1 60 20 4B 03 20 B2 02 20 09 02 20 82 |
      | 0330: 02 BA 86 B3 A6 B2 9A 68 85 B6 68 85 B0 AA 68 95 |
      | 0340: 50 68 AA 68 85 B1 95 50 4C 70 03 BA 86 B3 A6 B2 |
      | 0350: 9A A5 B1 48 A8 A2 1F D5 50 F0 03 CA 10 F9 A9 CC |
      | 0360: 95 50 8A 48 A6 B0 B5 50 94 50 48 8A 48 A5 B6 48 |
      | 0370: BA 86 B2 A6 B3 9A 60 A6 E4 E4 A0 D0 04 A9 00 F0 |
      | 0380: OA A6 E3 D0 06 A6 EE DO 02 A9 FF A2 04 86 B5 C5 |
      | 0390: FA 90 0C F0 0A 85 FA A5 B0 85 FB A5 B1 85 F9 4C |
      | 03A0: 1F 1F A6 DC 10 17 A5 F9 D5 DC D0 0F CA B5 DC 85 |
      | 03B0: FB CA B5 DC 85 F9 CA 86 DC D0 1A 85 DC A2 0C 86 |
      | 03C0: B5 86 FA A2 14 20 02 02 A2 04 86 B5 20 00 02 A6 |
      | 03D0: FA E0 0F 90 12 A6 FB B5 50 85 FA 86 B0 A5 F9 85 |
      | 03E0: B1 20 4B 03 4C 00 00 A9 FF 60 A2 04 06 F9 26 FA |
      | 03F0: CA D0 F9 05 F9 85 F9 85 B1 60 00 00 00 00 00 00 |
      |-------------------------------------------------------|
      | 1780: 18 A9 80 65 EB 65 EC 65 ED 65 El 65 DF 38 E5 F0 |
      | 1790: E5 F1 E5 E2 E5 E0 E5 DE E5 EF E5 E3 B0 02 A9 00 |
      | 17A0: 4A 18 69 40 65 EC 65 ED 38 E5 E4 4A 18 69 90 65 |
      | 1780: DD 65 DD 65 DD 65 DD 65 El 38 E5 E4 E5 E4 E5 E5 |
      | 17C0: E5 E5 E5 E0 A6 B1 E0 33 F0 16 E0 34 F0 12 E0 22 |
      | 17D0: F0 0E E0 25 F0 0A A6 B0 F0 09 B4 50 C0 10 10 03 |
      | 17E0: 18 69 02 4C 77 03 |
      --------------------------------------------------------|

      Dzięki za deasembler. Zobaczę czy kod pójdzie na ->link<- jestem ciekaw czy oryginał robi takie same błędy jak MiniChess.
      • 42: CommentAuthorzbyti
      • CommentTime15 Apr 2020 02:04 zmieniony
       
      MicroChess for Apple I
      I use MESS as my primary Apple 1 emulator because I don’t own an apple 1 replica, nor do I own any type of Apple computer whatsoever.

      So here is the first game I was successfully able to convert from a hex dump to .wav for use with MESS.

      ->link<-

      Wybrałem grę normal białymi co odpowiada wersji twojego programu, który przygotowałeś pod moją rozgrywką z postu #17 na poprzedniej stronie.

      Gra potoczyła się identycznie aż do momentu w którym twoja wersja skiksowała i pobiła mi hetmana królem przez dwa pola a ta z Apple I grzecznie odeszła zaszachowanym królem na c7, co można zobaczyć na screenach.

      Więc możesz sobie "zdissasemblować pamieć" Apple I i zobaczyć gdzie masz błąd. Albo skorzystać ze źródeł ->link<- które już zamieszczałem.

      Przy tylu ruchach co wykonałem twoja wersja zawsze zdążyła zrobić fikołka.

      Rozgrywkę przerwałem w wygranej (bravo! :P) dla siebie pozycji na posunięciu czarnych.

      -------------------------------------------------------

      Wrzucam z podanej wyżej strony wersję na Apple I i instrukcję uruchomienia dla kompletności wątku ;)

      C100R
      1000.18FFR --> teraz daj play na magnetofonie
      1000R

      Program obsługuje się klawiszami które podałeś przed twoją zmianą C,E,P a ruch to wpisanie 4 koordynat i enter.
      • 43: CommentAuthorxxl
      • CommentTime15 Apr 2020 02:04 zmieniony
       
      dzieki. jeszcze powalcze :-)

      ok. zmienilem troche. ciekawy jestem jak teraz. mysle ze krolem juz nie bedzie robil takich numerow

      juz nie bedzie za wszelka cene staral sie zdobc srodka planszy. ale nadal na poczatku bedzie wychodzil krolowka... :/
      • 44: CommentAuthorzbyti
      • CommentTime15 Apr 2020 03:04 zmieniony
       
      Teraz bardzo długo nie wystąpił błąd z figurą z linii "9" ale w końcu się przydarzył.

      Program skoczył skoczkiem przez całą plansze i zdjął mi wieżę oraz zniknął w tym samym ruchu mojego piona na g2.

      Faktycznie coś musiałeś zmienić bo na e2-e4 odpowiedział e7-e6 czyli olał środek planszy. Rozumiem, że to taka prewencja przed szewskim matem? :D

      Błąd na screenach i zrzut pamięci w załączniku. F12 w emu się przydaje :D
      • 45: CommentAuthorzbyti
      • CommentTime15 Apr 2020 10:04 zmieniony
       
      KIM-1 Quick Reference ->link<-

      Jest tutaj mapa pamięci KIM-1 co może wyjaśniać dlaczego autor "śmieci na stronie zerowej", faktycznie nie ma dużo RAM-u dla własnego programu.
      • 46: CommentAuthorxxl
      • CommentTime15 Apr 2020 12:04 zmieniony
       
      no wlasnie... i chyba znalazlem :-) ... ciekawe dlaczego na apple to dziala ;-) (znaczy wiem, ale po co plakac nad AtariOS ;) podmienilem binarke.

      a moze zmienic nazwe tych szachow na HorseAss ... chcialem powiedziec HorseAce :-D
      • 47: CommentAuthorzbyti
      • CommentTime15 Apr 2020 12:04 zmieniony
       
      Wolał bym swojską nazwę "Dupa Wołowa Chess" ;)

      A tak na poważnie to napisać to na "kartce" i wbijać na KIM-1 w 1976?! Szacun dla pana Piotrka! :D

      Wydaje się, że teraz Ci się udało usunąć usterką. Partia chyba ~20 posunięć i błąd nie wystąpił, chociaż z drugiej strony czarne całą partię grały hetmanem, więc jeszcze sprawdzę jeżeli nie masz pewności, że poprawiłeś właściwe miejsce.

      Partia pokazuje, że wbrew opinii pewnego magistra napisanie czegoś co z sensem gra w szachy jest przynajmniej na poziomie trudności TRE ;)

      Screeny w załączniku co kilka ruchów, tak aby z grubsza zobrazować progres w partii.












      • 48: CommentAuthorxxl
      • CommentTime15 Apr 2020 14:04
       
      i jeszcze poprawki... najbardziej widoczna to nie trzeba juz potwierdzac posuniecia.
      • 49: CommentAuthorzbyti
      • CommentTime15 Apr 2020 14:04 zmieniony
       
      Zagrałem w najnowszą kompilację i oczywiście jest wygodniej.

      Jednakże program który wykonał (pozycja na screenie) d8-f6 to wciąż program losujący ruchy a nie porgram szachowy. Teraz moje posunięcie i biorę figurę za piona w następnym.

      @xxl ten program jak rozumiem widzi tylko na pół-ruchu (pełen ruch to posunięcie białych i czarnych) dlatego nie widzi mata w 1 posunięciu, a w tej pozycji co zamieszczam podstawia widełki?
      • 50: CommentAuthorzbyti
      • CommentTime15 Apr 2020 14:04 zmieniony
       
      EDIT: na powyższym nie zauważyłem z powodu wielkości szachownicy, że hetman po moim h2-h3 pionem jest w pułapce i dziwiłem się wymianie hetmana za piona.

      Dlatego moje uwagi na ten temat są nieaktualne.