Found this on an old floppy - throwing it away!

Discussion of chess software programming and technical issues.

Moderators: hgm, Harvey Williamson, bob

Michael Sherwin
Posts: 2799
Joined: Fri May 26, 2006 1:00 am
Location: OH, USA

Found this on an old floppy - throwing it away!

Post by Michael Sherwin » Sat Aug 11, 2007 4:41 am

Code: Select all

1 '*******************
2 '* CHESSMASTER     *
3 '*   BY:           *
4 '* HAROLD SNYDER   *
5 '* P.O. BOX 3330   *
6 '* CHEYENNE,  WY   *
7 '*           82003 *
8 '*******************
9 CLS(3)
10 PRINT@128,"        *  CHESSMASTER  *"
11 PRINT@192,"               BY"
12 PRINT@256,"         HAROLD  SNYDER"
13 FORQZ=1TO2999:NEXT
14 A=0:B=0:X=0:Y=0:S=0:A0=0:T=0:A8=0:A2=0:A3=0:A4=0:B1=0:B6=0:H=0:M=0:N=0:P=0:A5=0:I=1:DIMA(9,9),C(64):POKE248,&H32:POKE249,&H62:POKE250,&H1C:POKE251,&HAF:POKE252,&H7E:POKE253,&HAD:POKE254,&HA5:POKE410,&H7E:POKE411,0:POKE412,&HF8
15 CLS:PRINT:PRINT"  * CAN THIS COMPUTER USE THE       HIGH SPEED POKE  Y/N"
16 IN$=INKEY$:IFIN$=""THEN16
17 IFIN$<>"Y"ANDIN$<>"N"THEN16
18 IFIN$="Y"THENPOKE65495,0
19 CLS&#58;PRINT&#58;PRINT"DO YOU WANT INSTRUCTIONS Y/N"
20 IN$=INKEY$&#58;IFIN$<>"Y"ANDIN$<>"N"THEN20
21 IFIN$="Y"THENGOSUB194
22 PRINT&#58;PRINT"WHAT LEVEL OF PLAY 1-7"
23 IN$=INKEY$&#58;IFIN$=""THEN23
24 B8=VAL&#40;IN$)-1&#58;IFB8<0ORB8>6THEN23
25 B7=B8*2
26 IFB7=0THENB7=1
27 PRINT&#58;PRINT"DO YOU WANT WHITE Y/N"
28 IN$=INKEY$&#58;IFIN$=""THEN28
29 IFIN$<>"Y"ANDIN$<>"N"THEN28
30 GOSUB111
31 IFIN$<>"N"THENGOSUB122&#58;GOTO41
32 GOSUB120
33 'COMPUTER MOVE
34 F=-99&#58;A0=0&#58;FORJ=1TO8&#58;FORK=1TO8&#58;IFA&#40;J,K&#41;=99THENA6=J&#58;A7=K&#58;GOTO35ELSENEXT&#58;NEXT
35 FORX=1TO8&#58;FORY=1TO8&#58;IFA&#40;X,Y&#41;<0THENGOSUB52&#58;IFF>=B7 THEN37
36 NEXT&#58;NEXT&#58;IFF>=-9THEN37ELSE190
37 A&#40;R,U&#41;=A&#40;E,Q&#41;&#58;A&#40;E,Q&#41;=1&#58;IFA&#40;R,U&#41;=-2ANDU=1THENA&#40;R,U&#41;=-9
38 X=R&#58;Y=U&#58;A0=4&#58;GOSUB52&#58;SOUND190,1&#58;SOUND110,1&#58;SOUND160,1&#58;SOUND140,1&#58;PRINT@89,"MY MOVE";&#58;PRINT@121,"  WAS  ";&#58;PRINT@155,CHR$&#40;E+64&#41;;CHR$&#40;Q+48&#41;;CHR$&#40;R+64&#41;;CHR$&#40;U+48&#41;;
39 GOSUB124&#58;X=E&#58;Y=Q&#58;GOSUB124&#58;IFC=1THENPRINT@185," check ";&#58;C=0ELSEPRINT@185,"       ";&#58;
40 'PLAYER MOVE
41 GOSUB152&#58;D=0&#58;B4=A&#58;B9=B&#58;B5=0
42 IFX$="K"ORX$="Q"THEN34
43 A0=3&#58;GOSUB48&#58;IFD=0THENPRINT@25,"illegal";&#58;PRINT@57," move  ";&#58;FORJ=1TO1500&#58;NEXT&#58;GOTO41
44 PRINT@89,"       ";&#58;PRINT@121,"       ";&#58;PRINT@155,"    ";&#58;PRINT@217,"       ";&#58;PRINT@249,"       ";&#58;PRINT@315,"    ";&#58;A=B4&#58;B=B9&#58;A&#40;A,B&#41;=A&#40;X,Y&#41;&#58;A&#40;X,Y&#41;=1&#58;GOSUB124&#58;X=A&#58;Y=B&#58;GOSUB124
45 IFA&#40;A,B&#41;=2ANDB=8THENGOSUB180&#58;GOSUB124
46 IFB5=1THENA&#40;A,B-1&#41;=1&#58;X=A&#58;Y=B-1&#58;GOSUB124&#58;GOTO34ELSE34
47 'COMPUTER PIECE MOVE
48 PRINT@31,CHR$&#40;191&#41;;&#58;ONA&#40;X,Y&#41;GOTO9,74,9,65,59,9,54,9,59
49 'KING MOVE
50 FORA=X-1TOX+1&#58;FORB=Y-1TOY+1&#58;IFA&#40;A,B&#41;<>0THENGOSUB94&#58;NEXT&#58;NEXT&#58;RETURNELSENEXT&#58;NEXT&#58;RETURN
51 'PLAYER PIECE MOVE
52 ON-A&#40;X,Y&#41;GOTO9,80,9,65,59,9,54,9,59&#58;GOTO50
53 'ROOK/QUEEN MOVE
54 B=Y&#58;FORA=X+1TO8&#58;GOSUB93&#58;IFS=0THENNEXT
55 FORA=X-1TO1STEP-1&#58;GOSUB93&#58;IFS=0THENNEXT
56 A=X&#58;FORB=Y+1TO8&#58;GOSUB93&#58;IFS=0THENNEXT
57 FORB=Y-1TO1STEP-1&#58;GOSUB93&#58;IFS=0THENNEXT&#58;RETURNELSERETURN
58 'BISHOP/QUEEN MOVE
59 B=Y&#58;FORA=X+1TO8&#58;B=B+1&#58;GOSUB93&#58;IFS=0THENNEXT
60 B=Y&#58;FORA=X-1TO1STEP-1&#58;B=B-1&#58;GOSUB93&#58;IFS=0THENNEXT
61 B=Y&#58;FORA=X-1TO1STEP-1&#58;B=B+1&#58;GOSUB93&#58;IFS=0THENNEXT
62 B=Y&#58;FORA=X+1TO8&#58;B=B-1&#58;GOSUB93&#58;IFS=0THENNEXT
63 IFABS&#40;A&#40;X,Y&#41;)=9THEN54ELSERETURN
64 'KNIGHT MOVE
65 A=X+2&#58;B=Y+1&#58;IFA<9ANDB<9THENGOSUB94
66 B=B-2&#58;IFB>0ANDA<9THENGOSUB94
67 A=A-4&#58;IFA>0ANDB>0THENGOSUB94
68 B=B+2&#58;IFB<9ANDA>0THENGOSUB94
69 A=A+1&#58;B=B+1&#58;IFA>0ANDA<9ANDB<9THENGOSUB94
70 B=B-4&#58;IFB>0ANDA>0ANDA<9THENGOSUB94
71 A=A+2&#58;IFA>0ANDA<9ANDB>0THENGOSUB94
72 B=B+4&#58;IFB<9ANDA>0ANDA<9THENGOSUB94&#58;RETURNELSERETURN
73 'PLAYER PAWN MOVE
74 A=X&#58;IFY>2THEN76
75 B=Y+1&#58;IFA&#40;A,B&#41;=1THENGOSUB95&#58;B=B+1&#58;IFA&#40;A,B&#41;=1THENGOSUB95&#58;GOTO77ELSE77ELSE77
76 B=Y+1&#58;IFA&#40;A,B&#41;=1THENGOSUB95
77 A=X+1&#58;B=Y+1&#58;IFA&#40;A,B&#41;<0THENGOSUB95
78 A=A-2&#58;IFA&#40;A,B&#41;<0THENGOSUB95&#58;RETURNELSERETURN
79 'COMPUTER PAWN MOVE
80 A=X&#58;IFY<7THEN82
81 B=Y-1&#58;IFA&#40;A,B&#41;=1THENGOSUB95&#58;B=B-1&#58;IFA&#40;A,B&#41;=1THENGOSUB95&#58;GOTO83ELSE83ELSE83
82 B=Y-1&#58;IFA&#40;A,B&#41;=1THENGOSUB95
83 A=X-1&#58;B=Y-1&#58;IFA&#40;A,B&#41;>1THENGOSUB95
84 A=A+2&#58;IFA&#40;A,B&#41;>1THENGOSUB95&#58;RETURNELSERETURN
85 'PROTECT ROUTINE
86 T=A&#40;A,B&#41;&#58;IFT=-99THENB1=T&#58;RETURN
87 A5=S&#58;IFABS&#40;T&#41;<=A&#40;X,Y&#41;THENA&#40;A,B&#41;=A&#40;X,Y&#41;&#58;A&#40;X,Y&#41;=1&#58;GOTO89
88 IFT<B1 THENB1=T&#58;S=A5&#58;RETURNELSES=A5&#58;RETURN
89 A1=X&#58;A2=Y&#58;A3=A&#58;A4=B&#58;A8=T&#58;A0=2&#58;FORX=1TO8&#58;FORY=1TO8&#58;IFA&#40;X,Y&#41;<0THENGOSUB52&#58;IFT=0THEN91
90 NEXT&#58;NEXT
91 X=A1&#58;Y=A2&#58;A=A3&#58;B=A4&#58;A0=5&#58;A&#40;X,Y&#41;=A&#40;A,B&#41;&#58;A&#40;A,B&#41;=A8&#58;GOTO88
92 'LEGAL MOVE CHECK
93 S=0&#58;IFA&#40;A,B&#41;=1THEN95ELSEIFA&#40;A,B&#41;=0THENS=1&#58;RETURNELSEIFSGN&#40;A&#40;A,B&#41;)=SGN&#40;A&#40;X,Y&#41;&#41;THENS=1&#58;RETURNELSES=1&#58;GOTO95
94 IFA&#40;A,B&#41;<>1THENIFSGN&#40;A&#40;A,B&#41;)=SGN&#40;A&#40;X,Y&#41;&#41;THENRETURN
95 PRINT@31," ";&#58;ONA0 GOTO96,97,98,99,100&#58;GOTO102
96 IFA6=A ANDA7=B THENB1=B1+1&#58;RETURNELSERETURN
97 IFA3=A ANDA4=B THENT=0&#58;RETURNELSERETURN
98 IFB4=A ANDB9=B THEND=1&#58;RETURNELSERETURN
99 IFA6=A ANDA7=B THENC=1&#58;RETURNELSERETURN
100 IFA&#40;A,B&#41;<0THEN86ELSERETURN
101 'LOOK-AHEAD ROUTINE
102 B3=S&#58;W=X&#58;M=Y&#58;N=A&#58;H=B&#58;P=A&#40;A,B&#41;&#58;A&#40;A,B&#41;=A&#40;X,Y&#41;&#58;A&#40;X,Y&#41;=1&#58;B1=0
103 A0=5&#58;FORX=1TO8&#58;FORY=1TO8&#58;IFA&#40;X,Y&#41;>1THENGOSUB48
104 NEXT&#58;NEXT&#58;X=N&#58;Y=H&#58;A0=1&#58;GOSUB52&#58;A0=0&#58;S=B3&#58;X=W&#58;Y=M&#58;A=N&#58;B=H&#58;A&#40;X,Y&#41;=A&#40;A,B&#41;&#58;A&#40;A,B&#41;=P
105 'EVALUATE MOVE
106 B6=1/&#40;ABS&#40;4.5-A&#41;+ABS&#40;4.5-B&#41;+1&#41;&#58;IFA&#40;X,Y&#41;<-2ANDA&#40;X,Y&#41;>-9THENB6=B6+1/&#40;ABS&#40;A6-A&#41;+ABS&#40;A7-B&#41;+5&#41;+RND&#40;0&#41;/15
107 G=P+B1+B6&#58;IFP=99THENGOSUB178&#58;PRINT@89,"       ";&#58;PRINT@121," mate! ";&#58;PRINT@153,B$;&#58;PRINT@185,"       ";&#58;GOTO192
108 IFG<=F THENRETURN
109 F=G&#58;E=X&#58;Q=Y&#58;R=A&#58;U=B&#58;RETURN
110 'INITIALIZATION ROUTINE
111 CLS&#58;FORY=8TO1STEP-1&#58;FORX=1TO8&#58;READA&#40;X,Y&#41;&#58;NEXT&#58;NEXT
112 FORJ=1TO4&#58;SB$=SB$+STRING$&#40;3,CHR$&#40;140&#41;)+STRING$&#40;3,CHR$&#40;131&#41;)&#58;SW$=SW$+STRING$&#40;3,CHR$&#40;131&#41;)+STRING$&#40;3,CHR$&#40;140&#41;)&#58;NEXT
113 FORJ=32TO416STEP128&#58;PRINT@J,SB$;&#58;PRINT@J+64,SW$;&#58;NEXT&#58;FORJ=1TO7STEP2&#58;PRINT@477+J*3,CHR$&#40;128&#41;;CHR$&#40;J+96&#41;;CHR$&#40;128&#41;;CHR$&#40;140&#41;;CHR$&#40;J+65&#41;;CHR$&#40;140&#41;;&#58;NEXT&#58;FORJ=1TO8&#58;PRINT@J*64-8,CHR$&#40;128&#41;;&#58;PRINT@J*64-40,CHR$&#40;57-J&#41;;&#58;NEXT&#58;PRINT@504,CHR$&#40;128&#41;;&#58;RETURN
114 DATA-7,-4,-5,-9,-99,-5,-4,-7
115 DATA-2,-2,-2,-2,-2,-2,-2,-2
116 DATA1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
117 DATA2,2,2,2,2,2,2,2
118 DATA7,4,5,9,99,5,4,7
119 'PLAYER REQUESTS BLACK
120 I=-I&#58;A&#40;4,1&#41;=99&#58;A&#40;5,1&#41;=9&#58;A&#40;4,8&#41;=-99&#58;A&#40;5,8&#41;=-9
121 'GRAPHIC DRIVER-FULL SCREEN
122 FORY=1TO8&#58;FORX=1TO8&#58;GOSUB124&#58;NEXT&#58;NEXT&#58;RETURN
123 'GRAPHIC DRIVER-ONE PIECE
124 L=509+X*3-Y*64&#58;IFX+Y-INT&#40;&#40;X+Y&#41;/2&#41;*2=0THEN126
125 IFI*A&#40;X,Y&#41;>0THENONABS&#40;A&#40;X,Y&#41;&#41;GOTO127,128,9,129,130,9,131,9,132&#58;PRINT@L," K ";&#58;RETURNELSEONABS&#40;A&#40;X,Y&#41;&#41;GOTO127,133,9,134,135,9,136,9,137&#58;PRINT@L," k ";&#58;RETURN
126 IFI*A&#40;X,Y&#41;>0THENONABS&#40;A&#40;X,Y&#41;&#41;GOTO138,139,9,140,141,9,142,9,143&#58;PRINT@L,CHR$&#40;128&#41;;"K";CHR$&#40;128&#41;;&#58;RETURNELSEONABS&#40;A&#40;X,Y&#41;&#41;GOTO138,144,9,145,146,9,147,9,148&#58;PRINT@L,CHR$&#40;128&#41;;"k";CHR$&#40;128&#41;;&#58;RETURN
127 PRINT@L,"   ";&#58;RETURN
128 PRINT@L," P ";&#58;RETURN
129 PRINT@L," N ";&#58;RETURN
130 PRINT@L," B ";&#58;RETURN
131 PRINT@L," R ";&#58;RETURN
132 PRINT@L," Q ";&#58;RETURN
133 PRINT@L," p ";&#58;RETURN
134 PRINT@L," n ";&#58;RETURN
135 PRINT@L," b ";&#58;RETURN
136 PRINT@L," r ";&#58;RETURN
137 PRINT@L," q ";&#58;RETURN
138 PRINT@L,STRING$&#40;3,CHR$&#40;128&#41;);&#58;RETURN
139 PRINT@L,CHR$&#40;128&#41;;"P";CHR$&#40;128&#41;;&#58;RETURN
140 PRINT@L,CHR$&#40;128&#41;;"N";CHR$&#40;128&#41;;&#58;RETURN
141 PRINT@L,CHR$&#40;128&#41;;"B";CHR$&#40;128&#41;;&#58;RETURN
142 PRINT@L,CHR$&#40;128&#41;;"R";CHR$&#40;128&#41;;&#58;RETURN
143 PRINT@L,CHR$&#40;128&#41;;"Q";CHR$&#40;128&#41;;&#58;RETURN
144 PRINT@L,CHR$&#40;128&#41;;"p";CHR$&#40;128&#41;;&#58;RETURN
145 PRINT@L,CHR$&#40;128&#41;;"n";CHR$&#40;128&#41;;&#58;RETURN
146 PRINT@L,CHR$&#40;128&#41;;"b";CHR$&#40;128&#41;;&#58;RETURN
147 PRINT@L,CHR$&#40;128&#41;;"r";CHR$&#40;128&#41;;&#58;RETURN
148 PRINT@L,CHR$&#40;128&#41;;"q";CHR$&#40;128&#41;;&#58;RETURN
149 'INPUT ROUTINE
150 PRINT@25,"cannot ";&#58;PRINT@57,"castle ";&#58;FORJ=1TO1500&#58;NEXT&#58;GOTO152
151 PRINT@25," entry ";&#58;PRINT@57," error ";&#58;FORJ=1TO1500&#58;NEXT
152 GOSUB175&#58;GOSUB178&#58;PRINT@217,"  your ";&#58;PRINT@249,"  move ";
153 X$=INKEY$&#58;IFX$=""THEN153
154 PRINT@315,X$;
155 SOUND120,1
156 X1$=INKEY$&#58;IFX1$=""THEN156
157 PRINT@316,X1$;
158 SOUND120,1
159 X2$=INKEY$&#58;IFX2$=""THEN159
160 PRINT@317,X2$;
161 SOUND120,1
162 X3$=INKEY$&#58;IFX3$=""THEN162
163 PRINT@318,X3$;&#58;IN$=X$+X1$+X2$+X3$
164 SOUND150,1
165 IFX$>="A"ANDX$<="H"THEN173
166 IFX$="K"THENIFA&#40;5,1&#41;=99ANDA&#40;8,1&#41;=7ANDA&#40;6,1&#41;<2ANDA&#40;7,1&#41;<2THENA&#40;5,1&#41;=1&#58;A&#40;6,1&#41;=7&#58;A&#40;7,1&#41;=99&#58;A&#40;8,1&#41;=1&#58;GOTO176
167 IFX$="Q"THENIFA&#40;5,1&#41;=99ANDA&#40;1,1&#41;=7ANDA&#40;4,1&#41;<2ANDA&#40;3,1&#41;<2THENA&#40;5,1&#41;=1&#58;A&#40;4,1&#41;=7&#58;A&#40;3,1&#41;=99&#58;A&#40;1,1&#41;=1&#58;GOTO176
168 IFX$="K"THENIFA&#40;4,1&#41;=99ANDA&#40;1,1&#41;=7ANDA&#40;3,1&#41;<2ANDA&#40;2,1&#41;<2THENA&#40;4,1&#41;=1&#58;A&#40;3,1&#41;=7&#58;A&#40;2,1&#41;=99&#58;A&#40;1,1&#41;=1&#58;GOTO176
169 IFX$="Q"THENIFA&#40;4,1&#41;=99ANDA&#40;8,1&#41;=7ANDA&#40;5,1&#41;<2ANDA&#40;6,1&#41;<2THENA&#40;4,1&#41;=1&#58;A&#40;5,1&#41;=7&#58;A&#40;6,1&#41;=99&#58;A&#40;8,1&#41;=1&#58;GOTO176
170 'DECODE INPUT
171 IFX$="I"THENGOSUB194&#58;GOSUB113&#58;GOSUB122&#58;GOTO152
172 IFX$="P"THENRUNELSE151
173 IFLEN&#40;IN$)=4THENX=ASC&#40;X$)-64&#58;Y=ASC&#40;MID$&#40;IN$,2,1&#41;)-48&#58;A=ASC&#40;MID$&#40;IN$,3,1&#41;)-64&#58;B=ASC&#40;MID$&#40;IN$,4,1&#41;)-48ELSE151
174 IFY<1ORY>8ORA<1ORA>8ORB<1ORB>8THEN151ELSEIFA&#40;X,Y&#41;<2ORA&#40;A,B&#41;>1THEN151ELSEGOSUB175&#58;RETURN
175 PRINT@25,"       ";&#58;PRINT@57,"       ";&#58;RETURN
176 PRINT@313,"CASTLE ";&#58;PRINT@345,X$;"-SIDE ";&#58;GOSUB175&#58;GOSUB122&#58;RETURN
177 'BLANK MESSAGE AREA
178 FORJ=217TO345STEP32&#58;PRINT@J,"       ";&#58;NEXT&#58;RETURN
179 'PROMOTE PLAYER PAWN
180 GOSUB178&#58;PRINT@217,"  what ";&#58;PRINT@249," piece ";&#58;PRINT@281," PNBRQ ";&#58;
181 IN$=INKEY$&#58;IFIN$=""THEN181
182 IFIN$<>"P"ANDIN$<>"N"ANDIN$<>"B"ANDIN$<>"R"ANDIN$<>"Q"THENPRINT@315,"  ";&#58;GOTO181
183 PRINT@316,IN$;
184 IFIN$="P"THENA&#40;A,B&#41;=2&#58;RETURN
185 IFIN$="N"THENA&#40;A,B&#41;=4&#58;RETURN
186 IFIN$="B"THENA&#40;A,B&#41;=5&#58;RETURN
187 IFIN$="R"THENA&#40;A,B&#41;=7&#58;RETURN
188 IFIN$="Q"THENA&#40;A,B&#41;=9&#58;RETURNELSE181
189 'END OF GAME
190 GOSUB178&#58;PRINT@89,"       ";&#58;PRINT@121,"  YOU  ";&#58;PRINT@153,"  WIN! ";
191 POKE65494,0
192 GOTO192
193 'INSTRUCTIONS
194 CLS
195 PRINT"        * INSTUCTIONS *"
196 PRINT"ENTER KKKK TO CASTLE KING SIDE"
197 PRINT"      QQQQ TO CASTLE QUEEN SIDE"
198 PRINT"      IIII TO GET INSTUCTIONS"
199 PRINT"      PPPP TO START NEW GAME"
200 PRINT
201 PRINT"  TO PROMOTE TO P, N, B, R OR Q"
202 PRINT"  ENTER LETTER WHEN PROMPTED"
203 PRINT&#58;PRINT"  TO MOVE, CAPTURE OR CAPTURE"
204 PRINT"  EN PASSANT, SPECIFY FROM/TO"
205 PRINT"  &#40;E.G. 'B1C3')"
206 PRINT&#58;PRINT"  LEVELS OF PLAY ARE 1 THRU 7"
207 PRINT
208 PRINT"         &#40;HIT ANY KEY&#41;";
209 IN$=INKEY$&#58;IFIN$=""THEN209
210 CLS&#58;RETURN
Regards,
Mike

kaustubh

Re: Found this on an old floppy - throwing it away!

Post by kaustubh » Sat Aug 11, 2007 12:14 pm

Download qbasic or some basic interpreter and compile or have you compiled it and run it. :D

YL84

Re: Found this on an old floppy - throwing it away!

Post by YL84 » Sat Aug 11, 2007 1:36 pm

Thks !
Would be nice to compile in modern basic.
I wonder what programme it is, an older version of the ChessMaster, or one of your first programme Michael 8-) ?

kaustubh

Re: Found this on an old floppy - throwing it away!

Post by kaustubh » Sat Aug 11, 2007 1:49 pm

Which interpreter will run this, i tried it with qbasic its not working.

YL84

Re: Found this on an old floppy - throwing it away!

Post by YL84 » Sat Aug 11, 2007 2:05 pm

In my opinion all of the "spaces" between commands are missing. So we have to put them back in the programme. There are only 200 lines or so, could be possible to do 8-)

User avatar
mclane
Posts: 14899
Joined: Thu Mar 09, 2006 5:40 pm
Location: germany
Contact:

Re: Found this on an old floppy - throwing it away!

Post by mclane » Sat Aug 11, 2007 2:12 pm

when i remember it right, in those days, there were machines that were able to run /interprete listings that had NO spaces between commands. wasn't the commodore C64 or his predecessor such a thing ?

Michael Sherwin
Posts: 2799
Joined: Fri May 26, 2006 1:00 am
Location: OH, USA

Re: Found this on an old floppy - throwing it away!

Post by Michael Sherwin » Sat Aug 11, 2007 2:41 pm

YL84 wrote:Thks !
Would be nice to compile in modern basic.
I wonder what programme it is, an older version of the ChessMaster, or one of your first programme Michael 8-) ?
Not mine at all, just something that I had on an old floppy. I have no idea what dialect of basic this is or what machine it was for or if it even works. I may try to translate it to C since it is so small. Or I may download Free Basic and give that a try. Better, if someone that knows modern basic were to do it though. Please give credit to Harold Snyder!
Regards,
Mike

F. Bluemers
Posts: 836
Joined: Thu Mar 09, 2006 10:21 pm
Location: Nederland
Contact:

Re: Found this on an old floppy - throwing it away!

Post by F. Bluemers » Sat Aug 11, 2007 3:36 pm

It seems to be radio shack or derivate basic
the high speed poke is a give away :wink:
see:http://www.everything2.com/index.pl?node_id=476116

Best
Fonzy

User avatar
Bill Rogers
Posts: 3562
Joined: Thu Mar 09, 2006 2:54 am
Location: San Jose, California

Re: Found this on an old floppy - throwing it away!

Post by Bill Rogers » Sat Aug 11, 2007 3:37 pm

Yves
I think that the first version of Chessmaster was actually a rewritten version of 'MyChess'. I can't remember the authors name. I have both programs and they seem to play identical to me.
The program that was just found is written in either Radio Shacks Basic or MS GWBasic. The main concern is the peeks and pokes as if they are done on a maching that does not support these commands it can wreck havock on some machines.
I would be interested, however, in receiving a copy of the program from the person who already converted it into Qbasic.
Thanks
Bill

Michael Sherwin
Posts: 2799
Joined: Fri May 26, 2006 1:00 am
Location: OH, USA

Re: Found this on an old floppy - throwing it away!

Post by Michael Sherwin » Sat Aug 11, 2007 4:11 pm

Bill Rogers wrote:Yves
I think that the first version of Chessmaster was actually a rewritten version of 'MyChess'. I can't remember the authors name. I have both programs and they seem to play identical to me.
The program that was just found is written in either Radio Shacks Basic or MS GWBasic. The main concern is the peeks and pokes as if they are done on a maching that does not support these commands it can wreck havock on some machines.
I would be interested, however, in receiving a copy of the program from the person who already converted it into Qbasic.
Thanks
Bill
The pokes are most likely only for the display. So, isolate the graphics drivers and rewrite them. The rest should be easy.
Regards,
Mike

Post Reply