Sinclair QL User Manual page 119

Hide thumbs Also See for QL:
Table of Contents

Advertisement

Some Techniques
410
LET camp = sort<dartl
420
LET sort
(0)
= camp
430
REPeat campa re
440
IF camp >= sort<dart-1l : EXIT compare
450
LET sort(dart) = sort(dart-1)
460
LET dart = dart -1
470
END REPeat compare
480
LET sort(dart) = camp
490
END FOR; tem
500 END DEFine
510 DEFine PROCedure layout
520
PAPER #6,4 : CLS #6
530
BORDER #6,10,0
540
BLOCK #6,100,60,150,60,2,4
550 END DEFine
560 DEFine PROCedure printem
570
LET inc = 12 : INK #6,7
580
LET p = 0
590
FOR seat = 1 TO 4
600
READ ac, dn
610
FOR row = 1 TO 4
620
getLine
630
CURSOR #6,ac,dn
640
PRINT #6,lin$
650
LET dn = dn + inc
660
END FOR row
670
END FOR seat
680 END DEFine
690 DEFine PROCedure getLine
700
IF row MOD 2 = 0 THEN STRIP #6,0
710
IF row MOD 2 = 1 THEN STRIP #6,2
720
LET lin$ = tok$(row)
730
LET max = row*13
740
REPeat one suit
750
LET p =
p
+ 1
760
LET n = card (p)
770
IF n >max THEN p = p-1
EXIT one suit
780
LET n = n MOD 13
790
IFn=OTHENn=13
800
IF n = 1 : LET ch$ = "A"
810
IF n >= 2 AND n <= 9 : LET ch$ = n
820
IF n = 10
LET ch$ = "T"
830
IF n = 11
LET ch$ =
"J"
840
IF n = 12
LET ch$ = "Q"
850
IF n = 13
LET ch$ = "K"
860
LETLin$=Lin$&""&ch$
870
IF P = 52 : EXIT one=suit
880
IF card(p»card(p+ll
EXIT one suit
890
END REPeat one sui t
900 END DEFine
-
910 DATA "H:
II
,"C:","D:","S:"
920 DATA 150,10,260,60,150,130,30,60
The program works in the 256 mode But the various lines of card symbols may overlap
COMMENT
the ',able" or overflow at the edge of the window. A simple change in procedure
getline
from:
860 LET lin$ = Lin$ &"" & ch$
to:
860 LET Lin$ = Lin$ & ch$
will correct this, The spaces between characters disappear but the larger sized characters
enable the rO'NS to be easily readable. The program thus works well in either graphics
mode.

Advertisement

Table of Contents
loading

Table of Contents