Schachcomputer.info Community

Zurück   Schachcomputer.info Community > Computerschach / Computer Chess: > Mess Emu & andere Emulationen / Mess Emu and other Emulations


Antwort
 
Themen-Optionen Ansicht

  #1  
Alt 26.03.2019, 10:03
fhub fhub ist offline
Lebende Foren Legende
 
Registriert seit: 19.04.2010
Beiträge: 2.855
Abgegebene Danke: 567
Erhielt 6.912 Danke für 1.559 Beiträge
Aktivitäten Langlebigkeit
5/20 15/20
Heute Beiträge
1/3 sssss2855
AW: Mess Emulator für diverse Schachcomputer ist fertig!

Hi,

ich hätte mal eine technische Frage zum RAM an die Hardware-Experten:
was passiert eigentlich mit den Bits&Bytes im RAM, wenn der Schachcomputer aus- und wieder eingeschaltet wird?

Gestern hat nämlich 'hap' den Treiber für den Novag Delta-1 nochmals geändert, nachdem ich ihn über die 'seltsame' Spielweise der letzten Version dieser Emulation informiert habe, und dieses neue Update scheint jetzt tatsächlich korrekt zu funktionieren.

In der Ur-Version dieses Treibers war das RAM des Delta-1 durch MAME automatisch auf 0x00 initialisiert, aber damit hat sich die Emulation häufig 'aufgehängt'.
Dann hat 'hap' das komplette RAM mit 0xff initialisiert, womit die Abstürze verschwunden waren, allerdings machte der Delta-1 damit ziemlich unübliche Züge, völlig anders als das echte Gerät (laut Achim's Tests).
Und gestern hat er dann schließlich das RAM beim Start mit Zufallswerten gefüllt, und nun scheint der Delta-1 richtig zu funktionieren.

Ich würde natürlich gerne verstehen, warum das nun mit diesen zufälligen Werten im RAM anscheinend klappt - als Hardware-Laie habe ich nämlich folgende Vorstellung, was mit dem RAM nach aus- und wieder einschalten passiert, aber das würde diesen Zufallswerten widersprechen:
1) dynamisches RAM: verliert nach dem Ausschalten seinen Inhalt, und daher sind nach dem Wieder-Einschalten alle Bytes auf 0x00 gesetzt (oder auf 0xff?)
2) statisches RAM: da bin ich mir nicht sicher - entweder geht da (ohne Batterie-Pufferung) auch der Inhalt verloren wie beim dynamischen RAM, oder er bleibt erhalten (?)
3) NVRAM (non-volatile RAM): da bleiben die Bytes natürlich erhalten, ich weiß aber nicht, ob das nur mit Batterie-Pufferung geht oder auch ohne.

Da der Delta-1 keine Batterie hat, fällt Punkt 3) schon mal aus, und ich tippe auch eher auf Punkt 1) (d.h. dyn. RAM), weil das damals vermutlich üblich war.
Vorausgesetzt dieses neue Treiber-Update funktioniert jetzt wirklich korrekt, dann würde das bedeuten, daß meine Vorstellung vom dynamischen RAM falsch ist, und die Bytes im RAM beim Einschalten des Gerätes tatsächlich völlig zufällige Werte haben.

Kann mich da vielleicht jemand kompetent aufklären?

Grüße,
Franz
Mit Zitat antworten
  #2  
Alt 26.03.2019, 13:47
Hartmut Hartmut ist offline
Lebende Foren Legende
 
Registriert seit: 01.04.2010
Ort: Nürnberg
Alter: 61
Land:
Beiträge: 2.319
Abgegebene Danke: 3.495
Erhielt 1.895 Danke für 1.023 Beiträge
Aktivitäten Langlebigkeit
15/20 15/20
Heute Beiträge
1/3 sssss2319
AW: Mess Emulator für diverse Schachcomputer ist fertig!

Normalerweise hat das RAM beim Einschalten tatsächlich den Wert 0. Die Frage ist halt, ob beim Starten des Gerätes irgendetwas initialisiert wird (z.B. Programm vom ROM ins RAM schreiben, Initialisierung mit zufälligen Werten, Initialisierung mit bestimmten Werten, etc.).

Was nun genau beim Originalgerät passiert weiss ich natürlich nicht. Ich nehme auch an, dass es beim Reverse Enginieering nur schwer möglich ist, herauszufinden, was genau das Programm beim Einschalten da macht. Aber deine Vorstellung vom DRAM stimmt schon. Wie gesagt, die Initialisierung des Speichers am Anfang ist ja bereits eine Art Programm, das beim Einschalten automatisch abläuft (vergleichbar mit dem BIOS beim PC). Aber was da bei den entsprechenden Geräten geschieht... wenn das anhand der verfügbaren ROMs nicht nachvollziehbar ist, wird es schwer. Ist aber interessant dass diese Initialisierung so einen Effekt hat. Normalerweise ist das komplette Beschreiben des RAMs am Anfang ja nichts anderes als ein Speichertest soweit nicht ein bestimmter anderer Zweck verfolgt wird (wie eben ROM-Inhalt ins RAM kopieren).
__________________
Mein Profil beim ICCF (International Correspondence Chess Federation)
https://www.iccf.com/player?id=89948&tab=3
Mit Zitat antworten
  #3  
Alt 26.03.2019, 14:05
fhub fhub ist offline
Lebende Foren Legende
 
Registriert seit: 19.04.2010
Beiträge: 2.855
Abgegebene Danke: 567
Erhielt 6.912 Danke für 1.559 Beiträge
Aktivitäten Langlebigkeit
5/20 15/20
Heute Beiträge
1/3 sssss2855
AW: Mess Emulator für diverse Schachcomputer ist fertig!

Hallo Hartmut,
 Zitat von Hartmut Beitrag anzeigen
Normalerweise hat das RAM beim Einschalten tatsächlich den Wert 0.
vor kurzem hat mir auch 'hap' im MECA-Forum darauf geantwortet, und anscheinend sind von 'alles 0x00' über 'alles 0xff' bis 'alles zufällig' tatsächlich alle Varianten möglich und auch üblich, das hängt einfach von den RAM-Bausteinen ab (man kann also sogar nach fast 40 Jahren Computererfahrung immer noch etwas Neues lernen! )

Ich hab dieses RAM in der Delta-1-Emulation ja schon vor einiger Zeit im MAME-Debugger gecheckt, und dabei festgestellt, daß die ersten 128 RAM-Bytes (von insgesamt 256) beim Start ohnehin mit bestimmten Werten gefüllt werden (z.B. Brettstellung usw.), da spielt also eine Extra-Initialisierung keine Rolle mehr.
Die zweiten 128 Bytes scheinen allerdings tatsächlich von Bedeutung zu sein: beinhalten sie nur 0x00-Bytes, dann kommt's sporadisch zum Crash, bei 0xff-Bytes spielt er nicht wie das Original, und nur bei irgendwelchen anderen, zufälligen Werten funtioniert er anscheinend korrekt.
Das kann ich mir eigentlich nur so erklären, daß das Programm beim Start diese 128 (zufälligen!) Bytes aus dem RAM einliest und daraus vermutlich eine Startzahl für den Zufallsgenerator produziert - andernfalls wären diese Bytes beim Start ja irrelevant, denn im Laufe des Rechnens werden sie vom Programm dann ja schrittweise überschrieben (wahrscheinlich mit den jeweils gerade untersuchten Varianten).
Genau analysieren kann ich dieses ROM-Programm leider nicht, weil ich die F8-Assemblersprache nicht beherrsche.

Grüße,
Franz
Mit Zitat antworten
  #4  
Alt 26.03.2019, 14:27
fhub fhub ist offline
Lebende Foren Legende
 
Registriert seit: 19.04.2010
Beiträge: 2.855
Abgegebene Danke: 567
Erhielt 6.912 Danke für 1.559 Beiträge
Aktivitäten Langlebigkeit
5/20 15/20
Heute Beiträge
1/3 sssss2855
AW: Mess Emulator für diverse Schachcomputer ist fertig!

Hi,

da nach dem letzten Treiber-Update nun auch er Novag Delta-1 anscheinend korrekt funktioniert, habe ich nochmals eine neue MESS-Chess-Version hochgeladen.

Für das Plugin des Delta-1 mußte ich mir nochmals eine neue Methode überlegen, um das Ende der Rechenphase zu erkennen, und diese neue Methode funktioniert jetzt sicher - daher habe ich sie nun auch für die beiden Boris-Geräte verwendet.

Außerdem hab ich auch dem Intellekt-02 ein Plugin spendiert, aber da dieses Gerät eine völlig perverse Art zur Ein- und Ausgabe der Rochade hat, müßte man für diese Spezialzüge sogar das Hauptplugin 'init.lua' komplett umschreiben, und das wäre den Aufwand nicht wert. Man kann also damit selber spielen (wenn man bei Rochaden selbst Hand anlegt), aber für automatische Partien gegen andere Engines taugt das Plugin nicht. Allerdings dürfte dieses exotische Gerät (das ein Klon des Fidelity CC3 sein soll) ohnehin kaum jemanden interessieren.
(Übrigens, beim Novag MK1 hat man genau das gleiche Problem bei einer eigenen Rochade, d.h. auch der eignet sich nicht für ein Engine-Match)

Und schließlich gibt's jetzt auch noch einen 'CompuChess' in der Liste (hab ganz übersehen, daß 'hap' den vor kurzem eingebaut hat), aber dieses Gerät ist vom ROM-Programm her absolut identisch zum Novag MK1 - also auch nicht wirklich neu.

So, ich hoffe das war's dann für längere Zeit mit neuen MESS-Chess-Versionen -
außer es hat noch jemand vielleicht einen korrekten ROM-Dump vom Fidelity CC1 (dem angeblich allerersten Schachcomputer überhaupt)?
Den Treiber dafür hat 'hap' inzwischen ja schon geschrieben, nur war das ROM, das 'Berger' hatte, leider fehlerhaft, sodaß diese CC1-Emulation noch nicht funktioniert.

Grüße,
Franz
Mit Zitat antworten
Folgende 7 Benutzer sagen Danke zu fhub für den nützlichen Beitrag:
Agep (26.03.2019), germangonzo (27.03.2019), Hartmut (26.03.2019), Jo (27.03.2019), Mark 1 (26.03.2019), Robert (27.03.2019), Tibono (27.03.2019)
  #5  
Alt 26.03.2019, 15:13
Mark 1 Mark 1 ist offline
TASC R40
 
Registriert seit: 27.09.2006
Beiträge: 511
Abgegebene Danke: 851
Erhielt 344 Danke für 184 Beiträge
Aktivitäten Langlebigkeit
3/20 18/20
Heute Beiträge
0/3 ssssss511
AW: Mess Emulator für diverse Schachcomputer ist fertig!

Hallo Franz...

Kurz und bündig

Viele Grüße
Mark 1
Mit Zitat antworten
  #6  
Alt 27.03.2019, 13:34
Tibono Tibono ist offline
Resurrection
 
Registriert seit: 22.05.2018
Ort: Frankreich
Alter: 63
Land:
Beiträge: 592
Abgegebene Danke: 3.546
Erhielt 1.394 Danke für 470 Beiträge
Aktivitäten Langlebigkeit
6/20 7/20
Heute Beiträge
1/3 ssssss592
AW: Mess Emulator für diverse Schachcomputer ist fertig!

Hallo,

Novag Delta-1-Emulation: ich habe im Handbuch gelesen, das Zug "en passant" vom Gerät gesteuert wird. Aber weiß mit dem Emulator zu spielen, 10 Sekunden Level, 1.e2-e4 d7-d5 2.e4xd5 Ergebnisse ist "? ?".

Achim, vielleicht kannst du das mit deinem echten Gerät testen?

Und übrigens, das Timing der Delta-1 Emulation erscheint langsam, vielleicht +40% (natürlich auf 100% Geschwindigkeit eingestellt).

Grüße,
Tibono
Mit Zitat antworten
  #7  
Alt 27.03.2019, 14:20
fhub fhub ist offline
Lebende Foren Legende
 
Registriert seit: 19.04.2010
Beiträge: 2.855
Abgegebene Danke: 567
Erhielt 6.912 Danke für 1.559 Beiträge
Aktivitäten Langlebigkeit
5/20 15/20
Heute Beiträge
1/3 sssss2855
AW: Mess Emulator für diverse Schachcomputer ist fertig!

Hallo Tibono!
 Zitat von Tibono Beitrag anzeigen
Novag Delta-1-Emulation: ich habe im Handbuch gelesen, das Zug "en passant" vom Gerät gesteuert wird. Aber weiß mit dem Emulator zu spielen, 10 Sekunden Level, 1.e2-e4 d7-d5 2.e4xd5 Ergebnisse ist "? ?".
Hmm? Also bei mir kommt als Ergebnis 2... e7-e6 aber nicht "? ?".
Und wo siehst Du denn hier einen 'en passant'-Zug???
Zitieren:
Und übrigens, das Timing der Delta-1 Emulation erscheint langsam, vielleicht +40% (natürlich auf 100% Geschwindigkeit eingestellt).
Wie kommst Du auf diese 40% Geschwindigkeit?

Grüße,
Franz
Mit Zitat antworten
  #8  
Alt 27.03.2019, 17:13
Tibono Tibono ist offline
Resurrection
 
Registriert seit: 22.05.2018
Ort: Frankreich
Alter: 63
Land:
Beiträge: 592
Abgegebene Danke: 3.546
Erhielt 1.394 Danke für 470 Beiträge
Aktivitäten Langlebigkeit
6/20 7/20
Heute Beiträge
1/3 ssssss592
AW: Mess Emulator für diverse Schachcomputer ist fertig!

Entschuldigung zu Alle, Tippfehler......

1.e4 d5 2.exd5 e5 3.dxe6 ("en passant")

Die Einstellung von 15 Sekunden pro Zug führt zu ca. 20 bis 22 Sekunden effektive... Und mit der Zeitanzeige-Taste kann ich zusehen, wie Sekunden langsam laufen.

Grüße,
Tibono
Mit Zitat antworten
  #9  
Alt 27.03.2019, 17:23
fhub fhub ist offline
Lebende Foren Legende
 
Registriert seit: 19.04.2010
Beiträge: 2.855
Abgegebene Danke: 567
Erhielt 6.912 Danke für 1.559 Beiträge
Aktivitäten Langlebigkeit
5/20 15/20
Heute Beiträge
1/3 sssss2855
AW: Mess Emulator für diverse Schachcomputer ist fertig!

 Zitat von Tibono Beitrag anzeigen
1.e4 d5 2.exd5 e5 3.dxe6 ("en passant")
Also ich kann diese Zugfolge leider nicht nachvollziehen, denn nach 2.exd5
zieht Delta-1 immer 2... e6, und damit ist natürlich kein enpassant möglich.
Wer hat denn hier Weiß, Du oder Delta-1?
Zitieren:
Die Einstellung von 15 Sekunden pro Zug führt zu ca. 20 bis 22 Sekunden effektive... Und mit der Zeitanzeige-Taste kann ich zusehen, wie Sekunden langsam laufen.
Ja, mir scheint die Uhr auch etwas langsamer zu laufen, aber im Treiber ist die F8-CPU mit 2 MHz eigentlich so wie der echte Delta-1 getaktet.
Wie das beim realen Gerät aussieht kann nur Achim vergleichen.
Mit Zitat antworten
Folgender Benutzer sagt Danke zu fhub für den nützlichen Beitrag:
Luis (27.03.2019)
  #10  
Alt 27.03.2019, 20:18
Tibono Tibono ist offline
Resurrection
 
Registriert seit: 22.05.2018
Ort: Frankreich
Alter: 63
Land:
Beiträge: 592
Abgegebene Danke: 3.546
Erhielt 1.394 Danke für 470 Beiträge
Aktivitäten Langlebigkeit
6/20 7/20
Heute Beiträge
1/3 ssssss592
Re: Mess Emulator für diverse Schachcomputer ist fertig!

Hallo Franz,

Ich habe Weiß gespielt.

An den zweiten schwarzen Zug, nach e6, denkt der Delta-1 an e5 und später an Springer g8-f6.

So ist die Denkzeit wichtig, 10s ist ein bisschen kurz, ich könnte den e7-e5 bauer Zug ein paar Mal reproduzieren, indem ich 13s pro Zug einsetze, und mehrere Male 15s pro Zug, aber es ist in der Tat ziemlich zufällig.
Dann d5xe6 fehlt mit ? ?

Handbuch - 5b
Der Computer nimmt automatish "en passant" an solange die internationalen Schach-Regeln beachtet werden. Sie geben lediglich Ihren Zug ein und der gschlagene Bauer wird automatisch entfernt.

Achim bitte, bestätigst du das?
Mit freundlichen Grüße,
Tibono
Mit Zitat antworten
Antwort

Themen-Optionen
Ansicht

Forumregeln
Du bist nicht berechtigt, neue Themen zu erstellen.
Du bist nicht berechtigt, auf Beiträge zu antworten.
Du bist nicht berechtigt, Anhänge hochzuladen.
Du bist nicht berechtigt, deine Beiträge zu bearbeiten.

BB code ist An
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.

Gehe zu

Ähnliche Themen
Thema Erstellt von Forum Antworten Letzter Beitrag
Info: Mephisto Emulator für den Mac fertig RolandLangfeld Die ganze Welt der Schachcomputer / World of chess computers 3 09.09.2007 22:56


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:32 Uhr.



Powered by vBulletin (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
©Schachcomputer.info