home *** CD-ROM | disk | FTP | other *** search
/ RUN Flagazine: Run 12 / run12.zip / OPGELOST.BAS < prev    next >
BASIC Source File  |  1994-05-01  |  3KB  |  46 lines

  1. 100 REM MOOIERE EGA-SCHERMEN DOOR KOOS VAN EGMOND (C) RUN FLAGAZINE
  2. 110 SCREEN 9:KEY OFF:CLS:DIM GAK%(100),B%(2500):DET$=" Druk een toets "
  3. 120 PI=4*ATN(1):LINE(5,5)-(635,345),14,B:FOR M=0 TO 1:FOR N=1 TO 0 STEP -1
  4. 130 LINE(5+ABS(N-M)*585,5+M*307)-STEP(45,33),0,BF:EP=EP+.5*PI:X=50+540*ABS(N-M)
  5. 140 CIRCLE(X,38+274*M),45,14,BP,EP:BP=BP+.5*PI:NEXT N,M:PAINT(60,6),1,14
  6. 150 FOR M=0 TO 1:FOR N=0 TO 1:CIRCLE(75+500*N-8*M,53-6*M),20,12*M:HK=12*M+N
  7. 160 LINE(75-8*M,38+N-6*M)-STEP(500,30-N*2),HK,BF:NEXT N:PAINT(100,55),8*M,12*M
  8. 170 NEXT M:GPRINT$="In grafische mode teksten een achtergrondkleur geven"
  9. 180 GCOLOR$="7,8":GLOCATE$="4,13":GOSUB 10000:GCOLOR$="10,1":GLOCATE$="6,31"
  10. 190 GPRINT$="Kent u dit probleem?":GOSUB 10000:LINE(50,100)-STEP(30,30),7,BF
  11. 200 Q$=CHR$(34):FOR N=0 TO 1:LINE(50+N,130-N)-STEP(30-2*N,0),8
  12. 210 LINE-STEP(0,-30+2*N),8:LINE-STEP(-30+N*2,0),15:LINE-STEP(0,30-2*N),15
  13. 220 LINE(60+N,120-N)-STEP(10-2*N,0),15:LINE-STEP(0,-10+2*N),15
  14. 230 LINE-STEP(-10+2*N,0),8:LINE-STEP(0,10-2*N),8:NEXT N:GET(65,100)-(80,130),B%
  15. 240 FOR N=0 TO 510 STEP 2:PUT(65+N,100),B%,PSET:NEXT N:GET(50,114)-(590,130),B%
  16. 250 FOR N=0 TO 190 STEP 5:PUT(50,113+N),B%,PSET:NEXT N:FOR N=1 TO 7:READ VK$,R$
  17. 260 READ GPRINT$:GCOLOR$=VK$+",7":GLOCATE$=R$+",10":GOSUB 10000:GCOLOR$="9,14"
  18. 270 NEXT N:GLOCATE$="17,47":GPRINT$=" DIM GAK%(100) ":GOSUB 10000:GCOLOR$="15,7"
  19. 280 GLOCATE$="22,55":GPRINT$="<Esc>=stoppen":GOSUB 10000:GCOLOR$="1,7"
  20. 290 GLOCATE$="13,18":GPRINT$="GPRINT$="+Q$+DET$+Q$+":GOSUB 10000":GOSUB 10000
  21. 300 RVK$="+15":RAK$="+1":WHILE INKEY$<>"":WEND:GOTO 330
  22. 310 RVK$=STR$(INT(RND*16)):RAK$=STR$(INT(RND*16)):IF RVK$=RAK$ THEN GOTO 310
  23. 320 WHILE I$="":I$=INKEY$:WEND:IF I$=CHR$(27) THEN GOTO 360
  24. 330 GCOLOR$="1,7":GLOCATE$="12,18":VAK$=MID$(RVK$,2,2)+","+MID$(RAK$,2,2)
  25. 340 GPRINT$="GCOLOR$="+Q$+VAK$+Q$+":GLOCATE$="+Q$+"24,60"+Q$+"  ":GOSUB 10000
  26. 350 GCOLOR$=VAK$:GLOCATE$="24,58":GPRINT$=DET$:GOSUB 10000:I$="":GOTO 310
  27. 360 GET(50,95)-(590,110),B%:FOR N=0 TO 185 STEP 5:PUT(50,100+N),B%,PSET:NEXT N
  28. 370 GET(45,290)-(60,320),B%:FOR N=0 TO 510 STEP 2:PUT(45+N,290),B%,PSET:NEXT N
  29. 380 LINE(456,285)-(590,335),1,BF:GCOLOR$="14,1":GLOCATE$="14,21"
  30. 390 GPRINT$="WEER EEN PROBLEEM DE WERELD UIT GEHOLPEN":GOSUB 10000:END
  31. 400 DATA 0,9,"Onder in beeld staat de tekst: Druk een toets."
  32. 410 DATA 0,10,"Deze tekst is geplaatst volgens onderstaand methode."
  33. 420 DATA 4,15,"GOSUB 10000 roept de routine aan die de tekst plaatst."
  34. 430 DATA 4,16,"Deze routine werkt alleen als in het begin van een programma"
  35. 440 DATA 4,17,"de array GAK% is geDIMensioneerd."
  36. 450 DATA 10,19,"Bij elke druk op een toets verandert random de voor- en achter-"
  37. 460 DATA 10,20,"grondkleur van de tekst onder in beeld (ter demonstratie)."
  38. 10000 GCOLA=VAL(MID$(GCOLOR$,INSTR(GCOLOR$,",")+1)):GCOLV=GCOLA XOR VAL(GCOLOR$)
  39. 10010 GLOCY=VAL(GLOCATE$):GLOCX=VAL(MID$(GLOCATE$,INSTR(GLOCATE$,",")+1))
  40. 10020 LINE(GLOCX*8-8,GLOCY*14-14)-(GLOCX*8-1,GLOCY*14-1),GCOLA,BF
  41. 10030 GET(GLOCX*8-8,GLOCY*14-14)-(GLOCX*8-1,GLOCY*14-1),GAK%:COLOR GCOLV
  42. 10040 FOR KARPLAATS=1 TO LEN(GPRINT$):LOCATE GLOCY,GLOCX+KARPLAATS-1
  43. 10050 PRINT MID$(GPRINT$,KARPLAATS,1);
  44. 10060 PUT((GLOCX*8-8)+(KARPLAATS)*8-8,(GLOCY*14-14)),GAK%,XOR
  45. 10070 NEXT KARPLAATS:RETURN
  46.