8-Bit Software Online Conversion
Patience - Listing
10 REM 7 Card Patience (Characters)
20 REM by Carl Wheat 1992 for BBC B
30 REM 8 Bit Software
40 :
50 MODE1:VDU23;8202;0;0;0;:*FX4,1
60 VDU19,2,2,0,0,0:GCOL0,130
70 *LOAD SCREEN FFFF3000
80 *FX21,0
90 *FX229,1
100 K$=GET$
110 IF K$="Y" OR K$="y" PROCinst
120 *FX20,1
130 ?&36C=&9
140 VDU23,160,0,0,0,0,0,1,3,7
150 VDU23,161,15,31,63,127,255,255,255
,255
160 VDU23,162,128,128,192,192,192,192,
224,224
170 VDU23,163,14,28,24,48,48,48,48,48
180 VDU23,164,1,3,4,8,0,6,6,0
190 VDU23,165,7,1,0,0,0,0,0,0
200 VDU23,166,248,62,31,7,3,49,48,128
210 VDU23,167,240,176,144,152,136,168,
168,164
220 VDU23,168,40,56,56,56,16,0,0,0
230 VDU23,169,0,0,4,4,20,12,8,8
240 VDU23,170,48,48,40,44,27,26,15,3
250 VDU23,171,0,0,1,0,0,0,0,0
260 VDU23,172,128,0,192,0,0,0,0,0
270 VDU23,173,1,1,3,13,243,74,108,241
280 VDU23,174,164,164,164,162,194,146,
146,145
290 VDU23,175,24,24,30,30,7,7,7,7
300 VDU23,176,15,59,229,201,147,165,20
1,147
310 VDU23,177,0,0,0,8,8,20,20,20
320 VDU23,178,145,145,145,161,137,137,
137,137
330 VDU23,179,15,12,24,17,51,40,36,109
340 VDU23,180,165,201,147,165,201,147,
165,201
350 VDU23,181,0,0,28,12,15,15,7,7
360 VDU23,182,137,137,141,133,165,165,
165,165
370 VDU23,183,0,0,113,113,255,255,255,
255
380 VDU23,184,0,0,192,128,128,128,0,0
390 VDU23,185,20,20,20,20,20,20,20,20
400 VDU23,186,4,4,4,11,8,24,4,3
410 VDU23,187,31,31,15,15,15,7,7,7
420 VDU23,188,0,128,128,128,192,192,22
4,224
430 VDU23,189,4,15,0,0,0,0,0,0
440 VDU23,190,7,255,0,0,0,0,0,0
450 VDU23,191,240,240,0,0,0,0,0,0
460 VDU23,224,24,60,126,255,24,24,24,2
4
470 VDU23,225,129,66,129,129,195,255,1
53,255
480 VDU23,226,112,96,64,76,222,194,193
,193
490 VDU23,227,14,7,3,99,243,7,7,7
500 VDU23,228,0,0,0,0,128,128,128,192
510 VDU23,229,1,1,3,3,32,80,152,152
520 VDU23,230,225,224,247,232,31,15,3,
1
530 VDU23,231,7,7,207,63,248,240,192,1
28
540 VDU23,232,192,192,240,240,0,0,0,0
550 VDU23,233,152,156,156,140,204,76,7
8,78
560 VDU23,234,7,25,52,114,249,244,242,
249
570 VDU23,235,204,204,51,51,204,204,51
,51
580 VDU23,236,224,248,254,255,255,207,
204,252
590 VDU23,237,70,102,38,39,39,35,35,35
600 VDU23,238,244,242,249,244,242,249,
244,242
610 VDU23,239,255,255,243,243,255,255,
255,255
620 VDU23,240,0,28,28,107,127,107,8,0
630 VDU23,241,0,8,28,62,62,28,8,0
640 VDU23,242,0,54,127,127,62,28,8,0
650 VDU23,243,0,8,28,62,62,8,28,0
660 VDU23,244,0,0,2,2,2,6,4,12
670 VDU23,245,0,0,170,170,170,170,170,
170
680 VDU23,246,0,0,160,160,176,144,152,
136
690 VDU23,247,20,20,20,50,50,113,113,2
55
700 VDU23,248,4,4,7,7,4,12,15,15
710 VDU23,249,208,208,48,48,208,216,56
,56
720 VDU23,250,30,51,97,64,64,96,63,0
730 VDU23,251,0,0,3,254,0,0,128,192
740 VDU23,252,96,240,144,24,8,12,4,6
750 VDU23,253,12,12,12,0,0,0,0,0
760 VDU23,254,204,12,3,3,4,0,3,1
770 VDU23,255,200,200,60,52,204,206,54
,55
780 L$=CHR$8:X$=CHR$9
790 Y$=CHR$10:U$=CHR$11
800 BJ$=CHR$247+L$+U$+CHR$185+CHR$189+
CHR$190+CHR$191+STRING$(4,L$)+U$+CHR$185
+CHR$186+CHR$187+CHR$188+STRING$(4,L$)+U
$+CHR$177+L$+STRING$(3,Y$)
810 RJ$=X$+CHR$248+CHR$235+CHR$249+STR
ING$(3,L$)+STRING$(3,U$)+CHR$181+CHR$183
+CHR$184+STRING$(4,L$)+STRING$(3,Y$)
820 GJ$=U$+X$+CHR$244+CHR$245+CHR$246
830 BQ$=CHR$175+U$+CHR$171+CHR$172+L$+
L$+U$+CHR$164+CHR$166+STRING$(3,L$)+Y$+Y
$
840 RQ$=X$+X$+CHR$235+STRING$(3,L$)+U$
+CHR$168+CHR$170+CHR$173+L$+L$+U$+CHR$16
3+CHR$165+L$+L$+U$+CHR$160+CHR$161+L$+U$
+CHR$160+STRING$(3,L$)+STRING$(4,Y$)
850 GQ$=X$+CHR$176+X$+CHR$178+STRING$(
4,L$)+U$+CHR$169+X$+X$+CHR$174+L$+U$+CHR
$167+L$+U$+CHR$162
860 BK$=CHR$233+U$+L$+CHR$229+CHR$230+
CHR$231+CHR$232+U$+STRING$(3,L$)+CHR$226
+CHR$227+CHR$228+Y$+Y$+STRING$(4,L$)
870 RK$=X$+CHR$234+X$+CHR$236+STRING$(
3,U$)+STRING$(3,L$)+CHR$225+CHR$225+STRI
NG$(3,L$)+STRING$(3,Y$)
880 GK$=X$+X$+CHR$235
890 P$=STRING$(3,CHR$235)+STRING$(3,L$
)+Y$:P$=STRING$(5,P$)
900 BJ=&1100 : $BJ=BJ$
910 RJ=&111B : $RJ=RJ$
920 GJ=&1130 : $GJ=GJ$
930 BQ=&113B : $BQ=BQ$
940 RQ=&114A : $RQ=RQ$
950 GQ=&1169 : $GQ=GQ$
960 BK=&1184 : $BK=BK$
970 RK=&1199 : $RK=RK$
980 GK=&11AC : $GK=GK$
990 P=&11B3 : $P=P$
1000 PAGE=&1200:CHAIN"NEWPAT"
1010 END
1020 :
1030 DEFPROCinst:VDU28,3,11,36,1
1040 CLG:COLOUR 128:COLOUR 3:CLS
1050 PRINT''" The game is played like
normal"
1060 PRINT" patience, build the column
s in"
1070 PRINT" descending order alterna
ting"
1080 PRINT" red & black."
1090 PRINT" KINGS can be moved to an e
mpty":PRINT" column."
1100 PRINT" Stack on top of ACES move
d to":PRINT" the left side of the scree
n."
1110 VDU28,2,26,37,13:CLS
1120 PRINT''" Left & Right arrow keys m
ove marker"
1130 PRINTSPC(2)"A - Pick up a card or
column"
1140 PRINTSPC(2)"D - Drop a card or col
umn"
1150 PRINTSPC(2)"S - Move a card to the
stack"''SPC(4)"Escape - Quit"
1160 PRINT" SPACE BAR - Turn over three
cards"'SPC(13)"from the pack."
1170 PRINT" C - A small cheat to move t
he top"
1180 PRINTSPC(5)"card to the back of th
e pack."
1190 VDU28,5,30,34,29:CLS:VDU5
1200 PROCbubble("= PATIENCE =",420,972)
1210 PROCbubble("= USER KEYS =",400,584
)
1220 PROCbubble("PRESS ANY KEY TO CONTI
NUE.",228,72)
1230 K$=GET$:ENDPROC
1240 :
1250 DEFPROCbubble(P$,X%,Y%)
1260 GCOL0,3
1270 MOVEX%-4,Y%-4:PRINT P$
1280 MOVEX%+4,Y%-4:PRINT P$
1290 MOVEX%-4,Y%+4:PRINT P$
1300 MOVEX%+4,Y%+4:PRINT P$
1310 GCOL0,1
1320 MOVEX%,Y%:PRINT P$
1330 ENDPROC