Einzelnen Beitrag anzeigen
  #1001  
Alt 01.05.2016, 13:13
fhub fhub ist offline
Lebende Foren Legende
 
Registriert seit: 19.04.2010
Beiträge: 2.572
Abgegebene Danke: 431
Erhielt 5.654 Danke für 1.304 Beiträge
Aktivitäten Langlebigkeit
12/20 14/20
Heute Beiträge
1/3 sssss2572
AW: Mess Emulator für diverse Schachcomputer ist fertig!

Hi,

gerade rechtzeitig zum Tag der Arbeit bin ich nun mit meiner eigenen Arbeit am Fidelity Elite Avantgarde fertig geworden - ich hätte nicht gedacht, daß es so aufwendig ist, eine Brett- und Figurenunterstützung für ein Schachmodul in MESS komplett von Anfang an zu schreiben!
Daher wird der Elite Avantgarde vermutlich auch meine erste und letzte Implementierung für die Fidelity-Programme bleiben, vor allem da die anderen Module ja ziemlich spielschwach und daher nicht unbedingt interessant sind.

Hier also meine Endversion 'Fidelity' (außer jemand entdeckt noch irgendwelche Bugs, was ich aber nicht hoffe) - ohne ROMs (und natürlich auch ohne Virus), sodaß der Link diesmal hoffentlich nicht gelöscht wird:
Nicht mehr aktuell!

Neuerungen:
1) Auswahl der Figur bei eigener Bauernumwandlung klappt jetzt
2) angeklickte Ausgangsfigur wird jetzt 'markiert' (statt einfach zu verschwinden), genauso wie auch in CB-Emu
3) Stellungseingabe (PB = Problemmodus) funktioniert jetzt
4) Zugrücknahme (TB =Take Back) klappt jetzt auch für Schlagzüge
5) zusätzliche Randfiguren am unteren Brettrand ermöglichen die Auswahl der geschlagenen Figur bei Zugrücknahme (und noch ein paar weitere Tricks, die ich aber nicht genauer erläutern will)

Damit sollten nun wirklich alle Features des Elite Avantgarde implementiert sein -
hier noch ein paar Hinweise zu speziellen Funktionen:

Stellungseingabe (PB):
Die Methode, die der Elite Avantgarde zur Figuren- und Farb-Auswahl benützt, ist ein wenig umständlich (und hat mich viel Zeit gekostet, das im Programm korrekt umzusetzen) - am besten im Handbuch nachlesen!
Will man eine komplett neue Stellung (mit nur wenigen Figuren) aufbauen, dann startet man am besten von der Grundstellung aus (z.B. mit 'Hard Reset' im Menü), klickt auf PB (Problemmodus), und dann auf OPTION - das leert die interne Brettstellung, natürlich aber nicht das reale Brett (wie auch beim echten Schachcomputer), d.h. die Figuren stehen trotzdem noch auch dem Brett. Ich habe sie in diesem Fall alle 'markiert', damit man nicht vergißt sie zu entfernen - und das geschieht durch Anklicken all dieser markierten Figuren (es geht aber auch komfortbler, indem man einfach bei gedrückter Maustaste langsam über die 4 Reihen 1/2/7/8 drüber fährt - erfordert etwas Übung, damit auch wirklich alle Figuren verschwinden). Erst dann sollte man mit dem Aufstellen der gewüschten Figuren beginnen - beendet wird die Stellungseingabe mit CL.

Zugrücknahme (TB, oder auch direkt ohne TB):
Bei Schlagzügen wird man nach Rücknahme des eigentlichen Zuges vom Fidelity aufgefordert, die geschlagene Figur zurückzustellen (durch LED auf entsprechendem Feld) - hier wählt man nun die richtige Figur (welche das ist, wird rechts angezeigt!) am unteren Brettrand aus (grüne LED zur Kontrolle der Auswahl), und klickt dann auf das Brettfeld mit der LED.
(sollte die grüne LED nicht erscheinen, dann ist in diesem Moment keine Figurenauswahl möglich bzw. sinnvoll)

Bauernumwandlung:
Bei eigener Umwandlung wird automatisch erstmal eine Dame aufs Feld gestellt, der Fidelity verlangt aber trotzdem immer eine Figurenauswahl durch die Figurentasten rechts, d.h. man muß bei eigener Umwandlung immer die Figur angeben (und kann damit also auch eine andere Figur als die Dame wählen). Wenn der Computer umwandelt, wird man leider nicht über die Umwandlungsfigur informiert (der Fidelity macht das intern und automatisch). Daher habe ich für diesen Fall auch immer die Dame verwendet (was ja praktisch immer der Fall sein wird), man kann (und sollte) danach aber mit der Stellungsüberprüfung (PV = Position Verify) testen, ob intern auch wirklich in eine Dame umgewandelt wurde - falls nicht, kann man das entweder nur durch die Funktion 'Stellungseingabe (PB)' korrigieren, oder durch einen Trick, den ich im Programm eingebaut habe: Figur anklicken (sodaß LED leuchtet), gewünschte Randfigur anklicken, und dann wieder auf die Brettfigur, wodurch diese ersetzt wird (diesen Trick aber nur mit Vorsicht verwenden, denn damit kann man auch ein totales Chaos erzeugen, d.h. daß die angezeigte Stellung mit der intern im Fidelity gespeicherten überhaupt nicht mehr übereinstimmt).
Bei Zugrücknahme einer Bauernumwandlung benötigt man diese Randfiguren (nämlich die Bauern) auch schon dann, wenn z.B. die umgewandelte Dame zurückgestellt wird (die ja vorher ein Bauer war), und evt. dann nochmals, falls der Umwandlungszug ein Schlagzug war.

Enpassant- und Rochade-Züge:
Diese funktionieren wie üblich, man muß nur die korrekt Reihenfolge einhalten (auch bei Rüchnahme eines dieser Züge).

An den langen Erklärungen erkennt ihr schon, wie aufwendig und kompliziert es ist, so eine Brett- und Figuren-Unterstützung zu implementieren, sodaß die angezeigte Brettstellung mit der im Fidelity intern gespeicherten Stellung immer synchron ist, denn auf diese intern im Schachmodul (RAM) vorhandenen Informationen (z.B. die aktuelle Stellung) hat man im Treiber leider keinen Zugriff. Daher hat es auch so lange gedauert, bis jetzt wirklich alles korrekt funktioniert - hoffe ich jedenfalls!

Also dann viel Spaß mit diesem 'Elite Avantgarde'-Modul, und hegt keine großen Erwartungen auf weitere Fidelity-Module (jedenfalls nicht von mir).

Grüße,
Franz

Geändert von fhub (10.08.2016 um 17:51 Uhr)
Mit Zitat antworten
Folgende 18 Benutzer sagen Danke zu fhub für den nützlichen Beitrag:
achimp (01.05.2016), Agep (01.05.2016), Didi (01.05.2016), Drahti (01.05.2016), ferribaci (01.05.2016), Hartmut (03.05.2016), Jo (01.05.2016), kiteman † (01.05.2016), Lecter (08.05.2016), Luis (01.05.2016), Mapi (01.05.2016), mclane (01.05.2016), Michael (03.05.2016), Mythbuster (01.05.2016), Robert (02.05.2016), Stranger (01.05.2016), Supergrobi (07.05.2016), Theo (01.05.2016)