10 ! save F[RGTEST 100 ! PROGRAM F\R ATT TESTA UT\KADE F[RGKOMBINATIONER I 256 * 240 GRAFIKMODE 110 ! ENDAST F\R ABC806 120 ! INSKICKAT AV BO OLSSON 130 ! 140 INTEGER : EXTEND : RANDOMIZE 150 FGCTL BLK+BLK+BLK+BLK+BLK+BLK+BLK+BLK+BLK+BLK+BLK+BLK+BLK+BLK+BLK+BLK 160 ! 170 ; CHR$(12) 180 ; FNHrerase$(255,239,0) 190 ! 200 INPUT "Antal rektanglar? "Antrekt 210 ; "V{nta..." 220 FOR I=1 TO Antrekt 230 FGPOINT RND*239,RND*239,RND*15 240 FGFILL RND*239,RND*239 250 NEXT I 260 ! 270 ; CHR$(12); 280 FGCTL BLK+RED+BLU+YEL 290 GET I$ 300 WHILE ASCII(I$)<>192 310 \=FNBytf{rg 320 GET I$ 330 WEND 340 ! 350 ! 360 ; CUR(22,0); 370 ! 380 DEF FNBytf{rg 390 FGCTL BLK+CHR$(144+RND*8,144+RND*8,144+RND*8) 400 RETURN 0 410 FNEND 420 END 430 ! 440 ! 450 DEF FNTest$ 460 ; CUR(19,0) "Ange f{rgkombination och f{rgnummer enligt F{rg1,F{rg2,f{rgnummer" 470 ; CUR(20,0) " (F{rg=BLU,RED,GRN,WHT,BLK,YEL,CYA,MAG F{rgnummer 0-15)" 480 RETURN ' ' 490 FNEND 500 ! 510 ! 520 ! 530 DEF FNHrerase$(X,Y,Xy) 540 FGPOINT Xy,Xy,0 550 FGFILL X,Y 560 RETURN ' ' 570 FNEND 580 ! 590 ! 600 DEF FNRekt$(Xu,Yu,X|,Y|,F{rg) 610 FGPOINT Xu,Yu,F{rg 620 FGLINE X|,Yu 630 FGLINE X|,Y| 640 FGLINE Xu,Y| 650 FGLINE Xu,Yu 660 RETURN ' ' 670 FNEND 680 ! 690 ! 700 DEF FNFgctl$(F{rg1$,F{rg2$,F{rgnr) LOCAL F{rger$=56,Out7$=6,Dot1,Dot2,Hrc 710 ! LB B,D 720 ! LD C,7 730 ! OUT (C),E 740 ! RET 750 Out7$=CHR$(66,14,7,237,59,201) 760 F{rger$="BLKREDGRNYELBLUMAGCYAWHTGBLKGREDGGRNGYELGBLUGMAGGCYAGWHT" 770 Dot1=INT(INSTR(1,F{rger$,F{rg1$)/3)*16 780 Dot2=INT(INSTR(1,F{rger$,F{rg2$)/3) 790 Hrc=CALL(VARPTR(Out7$),256*F{rgnr+(Dot1+Dot2)) 800 RETURN ' ' 810 FNEND