1000 '********************************
1010 '*                              *
1020 '*    TESTBEELD GENERATOR       *
1030 '*                              *  
1040 '* door R. Wassenaar en P.Z.    *
1050 '*                              * 
1060 '* naar een idee van J. Deykers *  
1070 '* (zie Radio Amateur Magazine) * 
1080 '*   (RAM nr.59 1985 blz.46)    *
1090 '*                              * 
1100 '******************************** 
1110 :
1120 '  onderbreking afhandeling
1130 : 
1140  ON STOP GOSUB 2930:STOP ON
1150 :
1160 '        INITUS
1170 :
1180 MSX = PEEK(0)=243
1190 IF MSX THEN OPEN "grp:" AS 1
1200 COLOR 15, 14, 14: A=0:   B=2*3.14:SCREEN 1-MSX
1210 : 
1220 '       vertikale lijnen 
1230 : 
1240 FOR T=7 TO 255 STEP 8
1250  IF T>128 THEN I=1 ELSE I=0
1260  LINE(T+I,1)-(T+I,187),15
1270 NEXT
1280 :
1290 '      horizontale lijnen
1300 :
1310 FOR T=1 TO 188 STEP 11
1320  LINE (7,T)-(255,T),15
1330 NEXT
1340 :
1350 '   zwarte cirkel en verven
1360 :
1370 C=1 :GOSUB 2880
1380 PAINT (130,93),1
1390 :
1400 '   witte cirkel en gedeeltes  verven
1410 : 
1420 C=15:GOSUB 2880
1430 LINE (91,31)-(171,31),15
1440 LINE (82,143)-(179,143),15
1450 PAINT (131,18),15
1460 PAINT (131,158),15
1470 :
1480 '    zwarte blok bovenin
1490 :
1500 LINE (112,18)-(150,31),1,BF
1510 :
1520 '    witte blok bovenin
1530 :
1540 LINE (101,32)-(161,45),15,BF
1550 :
1560 '    zwarte blok onderin
1570 :
1580 LINE (101,143)-(161,157),1  ,BF
1590 :
1600 '  gele blok van kleurenbalk
1610 :
1620 C=11:A=2.71:B=3.05:GOSUB 2880
1630 DRAW"bm77,60c11r14d27l 22"
1640 PAINT(81,67),11
1650 :
1660 '   de 4 binnenste blokken van de kleurenbalk
1670 :
1680 FOR T=91 TO 151 STEP 20
1690  READ K
1700  LINE (T,60)-(T+25,87),K,BF
1710 NEXT
1720 DATA 7,12,13,6
1730 :
1740 '    het blauwe blok van de kleuren balk
1750 :
1760 C=4 :A=.1:B=.46:GOSUB 2880
1770 DRAW"bm184,60c4l14d27r20"
1780 PAINT(180,78),C
1790 LINE(191,67)-STEP(-2,0),15
1800 PSET(191,78),15
1810 :
1820 '  zwarte cirkel randen bijwerken
1830 :
1840 C= 1:A=2.33:B=2.68:GOSUB 2880
1850 C= 1:A=.47 :B=.82 :GOSUB 2880
1860 C= 1:A=5.82:B=.1:GOSUB 2880
1870 C= 1:A=3.07:B=3.81:GOSUB 2880
1880 :
1890 '      zwart/wit balken varierend in breedte
1900 :
1910 A=6
1920 FOR X=81 TO 161 STEP 20
1930  A=A-1
1940  T=X+1:XX=X
1950  DRAW"bm=t;,102 c15 d27"
1960  T=T+1
1970  IF T>XX+A THEN T=T+A:XX=XX+2*A
1980  IF T>X+19 THEN 2000
1990  GOTO 1950
2000 NEXT X
2010 : 
2020 '     kleuren balkje onderin vervanging van zwart naar wit
2030 :
2040 FOR T=91 TO 151 STEP 20
2050  READ C
2060  LINE (T,130)-(T+23,142),C,BF
2070 NEXT T
2080 DATA 15,14,10, 1
2090 :
2100 '        wit vlakje naast vervangend kleuren balkje
2110 :
2120 DRAW"bm171,130c15r14l14d13r8"
2130 PAINT (172,132),15
2140 :
2150 ' zwart balkje in midden cirkel
2160 :
2170 LINE (126,73)-(136,115),1,BF
2180 :
2190 '     witte strepen en streepjes in midden cirkel
2200 :
2210 LINE(71,94)-(191,94),15
2220  FOR T=76 TO  186 STEP 10
2230   LINE  (T,88)-(T,101),15
2240  NEXT
2250 'LINE  (184,87)-(184,101),15
2260 LINE (131,73)-(131,115),15
2270 :
2280  '  rij zwart/wit blokjes bovenin
2290  :
2300  FOR X=88 TO 174 STEP 9
2310  LINE(X ,46)-(X+4,59),15,BF
2320  NEXT X
2330  :
2340  '      gekleurde balken links van cirkel
2350  :
2360  LINE( 39, 13)-( 55, 44), 4,BF
2370  LINE( 39, 13)-( 46, 94), 2,BF
2380  LINE( 39,145)-( 55,176),10,BF
2390  LINE( 39, 95)-( 46,176), 8,BF
2400  :
2410  '      gekleurde balken rechts van cirkel
2420  :
2430  LINE(208, 13)-(224, 44), 4,BF
2440  LINE(217, 13)-(224, 94),12,BF
2450  LINE(208,145)-(224,176),10,BF
2460  LINE(217, 95)-(224,176),13,BF
2470  :
2480  '        zwart lijntje in witte balk bovenin
2490  :
2500  LINE (106,32)-(106,45),1
2510  :
2520 '       tekst in cirkel printen
2530 :
2540 IF MSX THEN GOTO 2600
2550 LOCATE 117,21:PRINT"C U C"
2560 FOR Y=146 TO 147
2570  LOCATE 105,  Y;PRINT"E R W E E"
2580 NEXT Y: GOTO 2650
2590 :
2600 DRAW "BM120,21": PRINT #1, "TV "
2610 FOR Y=146 TO 147
2620  DRAW "BM113,=Y;"
2630  PRINT #1, "TEST "
2640 NEXT Y
2650 '       onderste deel cirkel geel verven
2660 :
2670 LINE (92,157)-(170,157),10
2680 C=10:A=4  :B=5.45:GOSUB 2880
2690 PAINT (126,162),10
2700 :
2710 '        rood vlakje geel deel verven
2720 :
2730 DRAW"bm128,157 c6 nd20 r7 d20
2740 C=6: A=4.67 : B=4.8 : GOSUB 2880
2750 PAINT (130,162),6
2760 :
2770 '     toon voor testbeeld
2780 :
2790 SOUND 0,&B01110000
2800 SOUND 1,&B00000000
2810 SOUND 7,&B11111110
2820 SOUND 8,&B00111
2830 :
2840 GOTO 2840
2850 :
2860 '  subroutine: cirkel tekenen
2870 :
2880 CIRCLE(131,94),84,C,A,B,1.4
2890 A=0:B=2*3.14: RETURN
2900 :
2910 '  na ctrl.stop
2920 :
2930 COLOR 15,4,5: RETURN 2940
2940 SCREEN 0: BEEP
2950 END