Thread View: rec.games.chess.computer
7 messages
7 total messages
Started by - JUSTIN SMITH
Sun, 25 Aug 1996 00:00
Calculator Program
Author: - JUSTIN SMITH
Date: Sun, 25 Aug 1996 00:00
Date: Sun, 25 Aug 1996 00:00
10 lines
971 bytes
971 bytes
Hello. I am a student, that is interested in making a chess sprogram (simple), for a ti82, 85, or my ti92. I would be interested in any help, and am asking for people to post any source code if they have any that would assist me with a chess calculator program. Thank you for your help. This is absolutely NOT school related, it will be used for recreation purposes only, and to impress friends. :) -Justin
Re: Calculator Program
Author: Cyber Linguist
Date: Sun, 25 Aug 1996 00:00
Date: Sun, 25 Aug 1996 00:00
18 lines
1736 bytes
1736 bytes
I like this idea! Hey -- if a 16K Timex/Sinclair can play Chess, so can
a 20K calculator, hm? 8-)> I'll look for BASIC code on the 'Net --
usually, these calculators speak an algebraic language easily translated
to/from BASIC. If you find anything, please post it -- it would be
interesting to see just how cheesy a computer we can get to play a legal,
if BAD, game of chess. Playing a good (2 or 3 ply lookahead) game would be
even better! Hmm -- tune the game to run well on this machine, then port it
to QuickBasic on a P166! About the only way a slow program like this would
really stand a chance would be to have a lot of knowledge -- it couldn't
rely on brute force. With such knowledge, why not then upgrade the
hardware? It may not win any contests, but should be MUCH fun! 8-)
--
Eric Carr <carr@cs.odu.edu> | http://www.cs.odu.edu/~carr
----------------------------------------------------------------------------
GAT d- s+:+ g++ a23 w C+++ US++ P L+ 3 E--- N+++ K- W M-- V-- t+ 5 R+(*) G++
tv-- b++++ D--- B---- e>++ O++ PS+ PE- Y+ PGP X- DI++ h+ r-- n---- !y>+
Re: Calculator Program
Author: Dean Mao
Date: Mon, 26 Aug 1996 00:00
Date: Mon, 26 Aug 1996 00:00
37 lines
2617 bytes
2617 bytes
On 25 Aug 1996 16:45:56 GMT, carr@fog.cs.odu.edu (Cyber Linguist)
wrote:
>I like this idea! Hey -- if a 16K Timex/Sinclair can play Chess, so can
>a 20K calculator, hm? 8-)> I'll look for BASIC code on the 'Net --
not necessarily true. The 16K has all assembly instructions and
therefore, there is no unnecessary checking routines which cause the
program to be faster and smaller. Since the routines in the TI-Basic
are all self checking, the size of the program will be much larger and
slower. It may be possible of it was written solely in ZShell, but I
doubt it could be written in the Basic language.
>usually, these calculators speak an algebraic language easily translated
Another thing. When you program in Basic with the algebraic entry,
the calculator must change it into the reverse entry because that is
how the chip handles bits and digits. Another reason why the program
will be much larger.
>to/from BASIC. If you find anything, please post it -- it would be
>interesting to see just how cheesy a computer we can get to play a legal,
>if BAD, game of chess. Playing a good (2 or 3 ply lookahead) game would be
>even better! Hmm -- tune the game to run well on this machine, then port it
>to QuickBasic on a P166! About the only way a slow program like this would
>really stand a chance would be to have a lot of knowledge -- it couldn't
>rely on brute force. With such knowledge, why not then upgrade the
>hardware? It may not win any contests, but should be MUCH fun! 8-)
___ __ __
| "You can pick your friends, and | ( \ ( \/ ) mao@wuchem.wustl.edu |
| you can pick your nose; but you | ) ) ) ) ( |
| can't pick your friend's nose." | (___/ (_/\/\_) (Dean Mao) |
'--------------------------------------------------------------------------'
Re: Calculator Program
Author: D Kirkland
Date: Mon, 26 Aug 1996 00:00
Date: Mon, 26 Aug 1996 00:00
106 lines
4882 bytes
4882 bytes
JUSTIN SMITH (-) wrote: : Hello. I am a student, that is interested in making a chess sprogram : (simple), for a ti82, 85, or my ti92. I would be interested in any help, : and am asking for people to post any source code if they have any that : would assist me with a chess calculator program. Thank you for your help. : This is absolutely NOT school related, it will be used for recreation : purposes only, and to impress friends. :) Can assembly language programs be written for these calculators? If not, then it is unlikely that a very playabled chess game can be written for them. There was a simple chess game written for a HP48 calculator that was not in assembly. It took 20-30 minutes to make a move, and I beat it in 5 moves. It also had a few bugs. There are also a couple of chess games for the HP48 that are written with a lot of assembly. These are very much better! They can even beat lessor players (read: beginners!). I am currently working on another chess game for the HP48. It will be much better than any of the other HP48 chess programs. It will be able to beat most calculator users. And, it will be written in assembly. So, a chess game can surely be written for a calculator, but to really be a playable chess game it NEEDS to be written in assembly! SORRY, while I am an expert HP48 programmer and THE expert for chess programming on such a machine, I know nothing about TI calculators. Try and find a simple chess program written in a language that you understand. Then you can use it as a guideline to write your own chess program. Then just write the program a step (subroutine) at a time. DrawBoard - Draws board to screen. MoveGen - Generates moves. MakeMove - Makes move. SortMoves - Move ordering. UnMakeMove - Unmakes move in search. ScoreMove - Scores move in search. Search - Search for computer move. Keep things simple to start with. First put DrawBoard, MoveGen, and MakeMove together with user input to make a two player game. Then add the rest with a simple two-ply search (no capture search) for the computer move. You will need some scoring but keep it very simple. Some simple piece tables are good enough to start with. You can add more as needed later. Any move ordering is better than none. Keep it simple to start. If you don't write the program in assembly, you will likely stop about here. It will play a very lousy game, but hey... If the program takes longer than 10 minutes to make a move, it is just not worth going any further. If you decide to go on, the next step is to improve the move ordering. GOOD MOVE ORDERING IS A MUST! You will get bigger speed gains in move ordering than in any other part of the program. There is MUCH more speed to be gained from move ordering than there is from optomizing code. Next add a simple capture search. Keep in mind that a reasonably good capture search is as important for quality of play as move ordering is for speed. Now you can go back and improve the scoring. You will likely want to do most of the scoring in the main search. Only doing material scoring in the capture search. A one-ply main search plus capture search will be somewhat playable (much better than the two-ply search without the capture search). A two-ply main search plus capture search will beat many a wimpy chess player (read: average ti82, ti85 owner). If you can get to a three-ply or four-ply main search plus capture search, you should be very happy. This should beat most of the calculator owners (but maybe not the chess club geeks). If you can get the program to do a four-ply (or more) search plus capture search in a reasonable time, then you are on your way to making a REAL chess program! (An assembly language program on the ti92 should qualify!) If you get this far, then there are lots of things you may want to add. Much improved scoring, null moves, search extensions, and more! (If you have the memory, you may even want to try hash tables!) Good luck! dan (kirkland@ee.utah.edu)
Re: Calculator Program
Author: Andrew Platt
Date: Mon, 26 Aug 1996 00:00
Date: Mon, 26 Aug 1996 00:00
16 lines
1497 bytes
1497 bytes
Cyber Linguist wrote: > > I like this idea! Hey -- if a 16K Timex/Sinclair can play Chess, so can > a 20K calculator, hm? 8-)> I'll look for BASIC code on the 'Net -- I seem to remember that there was actually a version of chess that worked on the 1K Sinclair ZX81! It actually required 4K to create the program, should you type it in, but off the cassette used just 1K. It had to use the screen memory as temporary storage (not a problem on the ZX81 because it "fast" mode, the refreshing of the screen was turned off. Of course my memory may have exaggerated the feat - I am not 100% sure that it wasn't a draughts program (that's checkers for those on the other side of the Atlantic). Still quite some achievement.
Re: Calculator Program
Author: Matthew Woodcraft
Date: Mon, 26 Aug 1996 00:00
Date: Mon, 26 Aug 1996 00:00
13 lines
1112 bytes
1112 bytes
In article <3221EAEE.2200@platty.demon.co.uk>, Andrew Platt <andy@platty.demon.co.uk> wrote: >I seem to remember that there was actually a version of chess that >worked on the 1K Sinclair ZX81! >Of course my memory may have exaggerated the feat - I am not 100% sure >that it wasn't a draughts program No, that was indeed a chess program. -MHF-
Re: Calculator Program
Author: Steven Wolfe
Date: Mon, 26 Aug 1996 00:00
Date: Mon, 26 Aug 1996 00:00
25 lines
1462 bytes
1462 bytes
In <4vsg52$4bl@news.cc.utah.edu> dbk6a50@cc.utah.edu (D Kirkland)
writes:
>
>
>If you can get the program to do a four-ply (or more)
>search plus capture search in a reasonable time, then
>you are on your way to making a REAL chess program!
>(An assembly language program on the ti92 should
>qualify!)
>
>If you get this far, then there are lots of things you
>may want to add. Much improved scoring, null moves,
>search extensions, and more! (If you have the memory,
>you may even want to try hash tables!)
>
>Good luck!
>dan (kirkland@ee.utah.edu)
Another idea (as if I could even program a regular chess game)
would be Battle Chess. I suppose this would only be possible with
92Fargo, but still, it's a snazzy idea.
-DAN Wolfe
^^^
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads