c't

c't-Projekte - Mailinglisten


[Voriger (Datum)] [Nächster (Datum)] [Voriger (Thread)] [Nächster (Thread)]
[Nach Datum][Nach Thread]

RE: [ct-bot] Bot spielt Schach...

Absender: Menzel, Frank IT-OO4
Datum: Di, 13.10.2009 13:56:02
In-reply-to: <4553444F-45DC-45DB-A3D1-033CE76496E1@xxxxxxxxxxxxxxx>
References: <000001ca4357$57297170$0200a8c0@mexpnew> <F57D9173-9834-48DD-9B86-5C7A114FEB20@xxxxxxxxxxxxxxx> <096FD558C4D20046A1BABE72DFF0C6C33A5FBCEE11@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx> <11EBCBFB-9E12-4D2B-974D-B3800C3346DA@xxxxxxxxxxxxxxx> <096FD558C4D20046A1BABE72DFF0C6C33A5FBCEEFE@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx> <4553444F-45DC-45DB-A3D1-033CE76496E1@xxxxxxxxxxxxxxx>


Hallo Timo,
laut meinen öfters mit Computer Schach spielenden Kollegen, wird bei Rochade zumeist immer nur der Königszug angezeigt. Der Turm macht's dann immer automatisch. Wäre hier natürlich problematischer, wenn der Bot die von der Engine ausgegebenen Züge fährt und dieser eben fehlt.

Gruß, Frank

-----Original Message-----
From: ct-bot-entwickler-bounces@xxxxxxxxxxxxxxxxx [mailto:ct-bot-entwickler-bounces@xxxxxxxxxxxxxxxxx] On Behalf Of Timo Sandmann
Sent: Monday, October 12, 2009 12:24 PM
To: Entwicklung rund um den c't-bot
Subject: Re: [ct-bot] Bot spielt Schach...

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi Frank,

Am 07.10.2009 um 15:03 schrieb Menzel, Frank IT-OO4:
> Hallo Timo,
> wenn Du die angesprochene Sache mal ändern könntest und auf dem
> echten testen? Da wäre ich schon mal recht glücklich, wenn es
> funktioniert:-)

mit der Änderung funktioniert es jetzt auch auf dem echten Bot, ich
habe zwar kein komplettes Spiel durchgeführt, aber ich denke, wenn die
ersten zehn Züge funktionieren, ist das Problem beseitigt.

Was mir allerdings gerade aufgefallen ist: Wenn der Bot eine kurze
Rochade zieht (ist bei einer Langen vermutlich genauso), wird nur der
erste Zug angezeigt und gefahren (e8 nach g8), der anschließende Zug
des Turms fehlt hingegen.

Gruß,
Timo

>> Hallo Timo,
>> zu dem Fehler bei 3. hätte ich wohl doch die Lösung anzubieten:
>>
>> Die Arrays w und o sind als PROGMEM deklariert
>> , habe den Zugriff darauf später in den defines noch auskommentiert.
>> Bei MCU muss der Zugriff über pgm_read_byte und ...word erfolgen.
>> Dies muss dann also so aussehen, sonst funktioniert es auf dem
>> echten Bot nicht (in dem Patch ist auch noch das Underline hinter
>> pgm_read_byte zu viel):
>> #ifdef PC
>>       #define o(ndx)  (signed char)o[ndx]
>>       #define w(ndx)  (signed char)w[ndx]
>> #else
>>       #define o(ndx)  (signed char)pgm_read_byte(o+(ndx))
>>       #define w(ndx)  (signed char)pgm_read_word(w+(ndx))

-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2.0.12 (Darwin)

iEYEARECAAYFAkrTA8cACgkQDH/BX4067fLoFwCeNX74MNolxb8iWLz9IzyxwGmt
780AoJyfJ4aIsrPPy0WkXpBBqvK7LRH7
=JuGt
-----END PGP SIGNATURE-----

_______________________________________________
ct-bot-entwickler Mailingliste
ct-bot-entwickler@xxxxxxxxxxxxxxxxx
http://www.heise.de/bin/newsletter/listinfo/ct-bot-entwickler

Confidentiality note:
The information in this email and any attachment may contain confidential and proprietary information of Heidelberger Druckmaschinen AG and/or its affiliates and may be privileged or otherwise protected from disclosure. If you are not the intended recipient, you are hereby notified that any review, reliance or distribution by others or forwarding without express permission is strictly prohibited and may cause liability. In case you have received this message due to an error in transmission, we kindly ask you to notify the sender immediately and to delete this email and any attachment from your system.