Cyrus

aus Schachcomputer.info Wiki, der freien Schachcomputer-Wissensdatenbank
Version vom 7. Februar 2024, 13:11 Uhr von Chessguru (Diskussion | Beiträge) (Textersetzung - „Z80“ durch „Z80“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Cyrus war Richard Langs erstes Schachprogramm, geschrieben in Assembler für eine Z80 CPU. Als Lang im Januar 1981 mit der Programmierung begann, war sein Turnierdebüt bei der 2. Europäischen Mikrocomputer-Schachmeisterschaft auf der PCW Show 1981 in London bereits ein Durchbruch. Cyrus war der klare Sieger mit 5 aus 5 in einem Feld von 12 Micros. Cyrus lief auf einem Nascom-Mikrocomputer mit einer 4-MHz-Z80-CPU, und Lang wurden sofort zwei Verträge von David Levy und Kevin O'Connell angeboten, einer für Cyrus, und einer, um als Programmierer für Intelligent Software zu arbeiten. Lang nahm an, und Cyrus IS-Chess für den Sinclair ZX Spectrum war sein erster kommerzieller Beitrag, gefolgt von Programmen für verschiedene spezielle Schachcomputer, die von Intelligent Software vertrieben wurden, sowie einer weiter verbesserten Version von Cyrus, Cyrus II. In einem Interview aus dem Jahr 2003 erklärte Richard Lang, dass in den aktuellen Versionen von Chess Genius noch viel von Cyrus zu finden ist. Zum Beispiel habe er nie die Ruhesuche benutzt und sich stattdessen auf eine statische Auslagerungsroutine verlassen.

Screenshots

Richard Lang - Question & Answer Interview given to a German magazine in 2003

1) place / date of birth?

Born in Wokingham, England in 1955

2) education / programmer background?

First class degree in physics from Imperial College, London I have no computing qualifications but the physics course did include some programming in FORTRAN

3) job before professional chess programming?

Experimental research work with "British Gas" involved with accessing safety of Liquid Natural Gas storage.

4) is it true that you were a well known British marathon runner?

I have never been well known as a marathon runner! I ran the London Marathon 3 times in the early 80's. Best time was 3hrs 29 mins. I still jog but no more marathons.

5) what was your first officially released chess program and, is there still something of it in the current ChessGenius versions?

It was Cyrus for an early Sinclair computer. The program was released soon after I joined "Intelligent Software". There is still much of this program in current versions of ChessGenius. For example I have never used capture searches and rely instead on a static swap off routine. This has changed little over the years.

6) a complete as possible, chronical list of your commercial chess programs including release year, platform and programming language? (please Richard, it would be GREAT)

Here goes! Hope I have not missed too many out. Some of the dates may not be exact.

Programs released whilst I worked for "Intelligent Software"

Cyrus for Sinclair Z80 Assembly language 1981
Chess 2001 Z80 Assembly language 1982?
L'Empereur Z80 Assembly language
L'Regence Z80 Assembly language
Dragon Chess 6809 assembly language

Programs released with Psion Chess

Psion Chess for Sinclair QL 68000 assembly language
Psion Chess for Atari ST 68000 assembly language 1984
Psion Chess for MAC 68000 assembly language
Psion Chess for IBM PC 8086 assembly language
Psion Chess for Psion Organiser 8086 assembly 1991 ?

Hegener + Glaser Chess Computers

(All 68000 assembly language)

Mephisto Amsterdam 1985
Mephisto Dallas 1986
Mephisto Roma 1987
Mephisto Almeria 1988
Mephisto Portorose 1989
Mephisto Lyon 1990
Mephisto Vancouver 1991
Mephisto Berlin ???
the London update 1996
ChessGenius for IBM compatible computers. ( All 80x86 assembly language with Windows code in "C" )
ChessGenius 1 MSDOS 1992
ChessGenius 2 1993
ChessGenius 3 1994
ChessGenius 4. First Windows version 1995
ChessGenius 5 1996
ChessGenius 6 1998
ChessGenius 6.5 1999
ChessGenius Classic 2002
ChessGenius for Handheld devices.
Palm 68000 assembly language and C 2000
Pocket PC "C" 2001
Nokia series 60. Nokia 7650/3650 "C" 2002
Windows powered Smartphones "C" 2003

7) what was the decisive reason to become a professional chess programmer?

My first program, Cyrus, was written as a hobby in my spare time. It won the European championship in 1981 and I was offered a job by Intelligent Software. I was delighted to turn a hobby into a job.

8) current focus of your work?

I am concentrating on Handheld devices, PDA's and phones. New features, playing strength improvements and new versions for new devices

9) have you ever developed basically different chess programs or has one version - more or less - chronologically always been a slight improvement from the previous one?

Most versions have been developments of the previous version. Every now and then the old code has got too complex and messy and there has been a complete rewrite. For example, between the Roma and Almeria

10) have chess players always been involved in the development and - if yes - of which strength?

Except in the beginning yes. Strength has been up to IM.

11) who is responsible for your opening books?

The early opening books, before Hegener and Glaser, were taken from (paper) books. During the H+G time and for ChessGenius for PC's they were written by Ossi Weiner and his team.

12) which positive moment of your career has remained most intensively in your memory?

Winning the Amsterdam World micro computer championship in 1985. It was an overwhelming victory, in 24 games the Mephisto Amsterdam won 21 draw 2 and lost 1. This is closely followed by winning European championship in 1981 (which started my career) and the victory over Kasparov in 94 when ChessGenius became the first program ever to beat him at a non blitz level.

13) how important are tests against other programs - and tests against human chess players for you?

Very important. It is very difficult to know if program changes really do make it stronger and large numbers of "autoplayed" games against other computer are the only way to be sure. Analysis of Human (and computer) games is useful to reveal weak points that need to be worked on.

14) has the particular strength of your programs in rather weak hardware environments always been a target of your development or was it a positive side effect of your programming technique?

This is just the way my programs have turned out. In the early days memory and program space was always tight and it has become second nature to try to use as little as possible.

15) Have you also worked yourself on the development of your PC-programs' GUI?

Pre windows yes, but the windows GUI was part written by someone else.

16) what do you think are the main reasons for the long dominance of your programs in the 80s/early 90s and the persisting change on the top afterwards (until now)?

Looking back on it I am amazed that my programs were dominant for so long. Hard work, enthusiasm, attention to detail and excellent support from, for example, Hegener+Glaser all played a part. More recently I have failed to make progress with top PC programs. In part perhaps due to my programs (and programming technique) not scaling well on very fast hardware. The program has become very complex, and unfortunately the complexity seems necessary and new ideas have not really worked. It is great that there is a new generation of programmers taking things forward.

17) is the high power consumption the only reason you do not want to implement Permanent Brain (even as an option) on the Nokia Genius?

It was the original reason that the first Nokia Genius did not have Permanent Brain or Analysis mode. The current version has analysis mode and the next update will have permanent brain.

18) How many hours of development-work do you invest in your ChessGenius products per week?

I try to work fairly normal office hours. But sometimes when working on something interesting it is much more.

19) any goals for the future?

20) how critical was the change from developing programs for board computers to the PC-development and why?

For many years board computers were the ultimate and more powerful than PC's but quite suddenly PC's overtook them and the market for high end board computers collapsed. This was devastating for board manufacturers. From a programming point of view it meant porting the chess code to a new processor and writing some simple I/O and graphics.


Weblinks