home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 1B / DATAFILE_PDCD1B.iso / _pocketbk / pocketbook / 004 / greydm16_z / G16PROG2.OPL < prev    next >
Text File  |  1994-05-07  |  1KB  |  96 lines

  1. REM This program scrolls a randomly graduated grey
  2. REM background up the screen - 16 greys with dithering!
  3.  
  4. PROC g16prog2:
  5.  
  6.     GLOBAL id%(8)
  7.     local i%,g%,r%,d%
  8.  
  9.     init:
  10.     gupdate off
  11.     i%=1
  12.  
  13.     id%(3)=gCREATE(0,0,480,164,1,1)
  14.  
  15.     d%=1
  16.     g%=0
  17.     DO
  18.         gGREY 2
  19.         gAT 0,i%*4
  20.         gCOPY id%(1),0,g%*4,480,4,3
  21.         IF d%=1
  22.             g%=g%+1
  23.             IF g%>16
  24.                 g%=16
  25.             ENDIF
  26.         ELSE
  27.             g%=g%-1
  28.             IF g%<0
  29.                 g%=0
  30.             ENDIF
  31.         ENDIF
  32.         r%=RND*10
  33.         IF r%=8
  34.             IF d%
  35.                 d%=0
  36.             ELSE
  37.                 d%=1
  38.             ENDIF
  39.         ENDIF
  40.         i%=i%+1
  41.     UNTIL i%=41
  42.     gUPDATE 
  43.  
  44.     DO
  45.         gSCROLL 0,-4,0,0,480,160
  46.         gUPDATE
  47.         gGREY 2
  48.         gAT 0,156
  49.         gCOPY id%(1),0,g%*4,480,4,3
  50.         IF d%=1
  51.             g%=g%+1
  52.             IF g%>16
  53.                 g%=16
  54.             ENDIF
  55.         ELSE
  56.             g%=g%-1
  57.             IF g%<0
  58.                 g%=0
  59.             ENDIF
  60.         ENDIF
  61.         r%=RND*10
  62.         IF r%=8
  63.             IF d%
  64.                 d%=0
  65.             ELSE
  66.                 d%=1
  67.             ENDIF
  68.         ENDIF
  69.  
  70.         IF KEY
  71.             STOP
  72.         ENDIF
  73.  
  74.     UNTIL 0
  75.  
  76. ENDP
  77.  
  78. PROC init:
  79.     LOCAL yf%,cnt%
  80.  
  81.     id%(6)=gLOADBIT("\pic\grey.pic")
  82.     id%(1)=gCREATE(0,0,480,68,0,1)
  83.  
  84.     gGREY 1
  85.     gAT 0,0
  86.     gFILL 480,36,0
  87.     gGREY 0
  88.  
  89.     gPATT id%(6),480,32,3
  90.     gGREY 1
  91.     gAT 0,32
  92.     gPATT id%(6),480,32,3
  93.  
  94. ENDP
  95.  
  96.