  100 ! GRACHA EXPORTED
  110 !
  120 SET KEYCLICKOFF
  130 LET D=2
  140 ENVELOPE NUMBER1;0,63,63,D;1,-63,-63,D;-1,63,63,D;1,-63,-63,D;1,63,63,D;-1,-63,-63,D;1,63,63,D;-1,-63,-63,D
  141 LET D=3
  150 ENVELOPE NUMBER2;0,63,63,D;1,-63,-63,D;-1,63,63,D;1,-63,-63,D;1,63,63,D;-1,-63,-63,D;1,63,63,D;-1,-63,-63,D
  151 LET D=4
  160 ENVELOPE NUMBER3;0,63,63,D;1,-63,-63,D;-1,63,63,D;1,-63,-63,D;1,63,63,D;-1,-63,-63,D;1,63,63,D;-1,-63,-63,D
  170 ENVELOPE NUMBER5;0,63,63,2;3,-63,-63,2;0,63,63,2
  180 STRING FLAP1$(4)*2
  190 STRING FLAP2$(4)*2
  200 LET FLAP1$(1)="uv"
  210 LET FLAP2$(1)="wx"
  220 LET FLAP1$(2)="qr"
  230 LET FLAP2$(2)="st"
  240 LET FLAP1$(3)="mn"
  250 LET FLAP2$(3)="op"
  260 LET FLAP1$(4)="qr"
  270 LET FLAP2$(4)="st"
  280 STRING LEV$(24)*42
  290 DIM RAS(24,8)
  300 LET BBB=200
  310 TEXT 40:SET STATUSOFF:SET BORDERBBB
  320 SET CHARACTERORD("["),0
  330 SET CHARACTERORD("/"),0,255,255,255,255,255,255
  340 CALL OP
  350 CALL SETFONTS:CALL BIGABC
  360 !
  370 CALL DRAWLEVEL
  380 CALL RASZT
  390 PRINT #102,AT10,15:"[SPACE[TO[START"
  400 PRINT #102,AT10,15:"[[[[[[[[[[[[[[["
  410 IF INKEY$=""THEN 390
  420 CALL GAME
  430 SET #102:PALETTEBBB,203,219,255
  431 CLEAR SOUND
  432 SOUND SOURCE3,STYLE8,ENVELOPE1,DURATION15
  433 SOUND SOURCE3,STYLE8,ENVELOPE2,DURATION15
  434 SOUND SOURCE3,STYLE8,ENVELOPE3,DURATION15
  440 FOR X=1TO100
  450   PRINT #102,AT10,15:"[GAME[OVER["
  460   PRINT #102,AT10,15:"[[[[[[[[[[[[[[["
  470   LET I$=INKEY$
  480 NEXT X
  490 GOTO  380
  500 ! LEVEL
  510 DATA "e╝╚óöecdc╝╚óöecdcdcd╝╚óöecdd╝╚óöedddd╝╚óöe"
  520 DATA "e╝╚óöeddd╝╚óöedccdcd╝╚óöedcd╝╚óöecdcd╝╚óöe"
  530 DATA "e╝╚óöejdd╝╚óöecijdij╝╚óöedcd╝╚óöeccdd╝╚óöe"
  540 DATA "e╝╚óöejij╝╚óöejklijl╝╚óöejcd╝╚óöejdij╝╚óöe"
  550 DATA "e╝╚óöejkl╝╚óökl[[kl[╝╚óöklij╝╚óöklijl╝╚óöe"
  560 DATA "e╝╚óökl[[╝╚óö[[[[[[[╝╚óö[[kl©áíÍ[[kl[╝╚óök"
  570 DATA "[╝╚óö[[[[╝╚óö[[[[[[[╝╚óö[[[[[[[[[[[[[╝╚óö["
  580 DATA "[╝╚óö[[[[╝╚óö[[[[[[[©áíÍ[[[[[[[[[[[[[╝╚óö["
  590 DATA "[╝╚óö[[[[©áíÍ[[[[[[[[[[[[[[[[[[[[[[[[©áíÍ["
  600 DATA "[©áíÍ[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[["
  610 DATA "[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[["
  620 DATA "[[[[[[[[[[[[[[[[[[[[[[[[[[[[©áíÍ[[[[[[[[[["
  630 DATA "[[[[[[[[[[[[[[[[[[[[[[[[[[[[╝╚óö[[[[[[[[[["
  640 DATA "[[[[[[[[[[[[[[[[[[[[©áíÍ[[[[╝╚óö[[[[[[[[[["
  650 DATA "[[[[[[[[[©áíÍ[[[[[[[╝╚óö[[[[╝╚óö[[[[[©áíÍ["
  660 DATA "[[[[[[[[[╝╚óö[[[[[[[╝╚óö[[[[╝╚óö[[[[[╝╚óö["
  670 DATA "[[[[[[[[[╝╚óö[[[[[[[╝╚óö[[[[╝╚óö[[[[[╝╚óö["
  680 DATA "[©áíÍ[[[[╝╚óö[[[[[[[╝╚óö[[[[╝╚óö[[[[[╝╚óö["
  690 DATA "[╝╚óö[[[[╝╚óö[[[[[[[╝╚óö[[[[╝╚óö[[[ab╝╚óö["
  700 DATA "e╝╚óö[[[[╝╚óö[[[[[[[╝╚óö[[ab╝╚óöab[cd╝╚óöa"
  710 DATA "e╝╚óöab[[╝╚óö[[[[[[[╝╚óöabcd╝╚óöedacc╝╚óöe"
  720 DATA "e╝╚óöedab╝╚óö[ab[ab[╝╚óöedcd╝╚óöeccdd╝╚óöe"
  730 DATA "[/////////////////////////               ["
  740 DATA "e╝╚óöedcd╝╚óöeddcdcd╝╚óöedcd╝╚óöeddcd╝╚óöe"
  750 ! COLOR ROWS
  760 DATA 0,104,97,121,204,80,152,74,
  770 DATA 0,104,97,121,200,144,138,154,
  780 DATA 0,76,101,173,88,2,58,243,
  790 DATA 0,76,101,173,17,18,211,255,
  800 DATA 0,5,45,253,145,18,211,255,
  810 DATA 0,5,45,253,145,144,138,154,
  820 DATA 0,101,61,111,145,64,233,159,
  830 DATA 0,101,61,111,67,64,233,159,
  840 DATA 0,13,253,127,67,64,233,159,
  850 DATA 0,13,253,127,195,64,233,159,
  860 DATA 0,164,180,46,195,64,233,159,
  870 DATA 0,166,254,255,195,64,233,159,
  880 DATA 0,166,254,255,195,64,233,159,
  890 DATA 0,166,254,255,131,64,233,159,
  900 DATA 0,166,254,255,3,64,233,159,
  910 DATA 0,166,254,255,3,64,233,159,
  920 DATA 0,166,254,255,145,64,233,159,
  930 DATA 0,180,62,247,216,212,6,118,
  940 DATA 0,180,62,247,216,18,211,255,
  950 DATA 0,52,38,54,88,18,211,255,
  960 DATA 0,52,38,54,88,2,58,243,
  970 DATA 0,164,180,46,200,144,138,154,
  980 DATA 0,203,219,255,0,  203,219,255
  990 DATA 0,4,164,180,136,128,80,144,
 1000 ! FONTS
 1010 DEF SETFONTS
 1020   SET CHARACTER128,0,0,7,55,55,55,7,0,0,
 1030   SET CHARACTER129,0,0,15,255,255,255,15,0,0,
 1040   SET CHARACTER130,55,39,55,55,55,55,55,55,39,
 1050   SET CHARACTER131,175,143,223,143,175,79,143,207,159,
 1060   SET CHARACTER132,0,0,15,255,255,255,15,0,0,
 1070   SET CHARACTER133,0,0,14,142,78,142,14,0,0,
 1080   SET CHARACTER134,30,15,90,30,45,30,30,75,30,
 1090   SET CHARACTER135,160,224,192,224,160,192,104,192,224,
 1100   SET CHARACTER136,140,121,157,76,209,196,214,116,36,
 1110   SET CHARACTER137,254,250,18,128,213,234,92,248,79,
 1120   SET CHARACTER138,65,106,124,164,215,152,196,72,29,
 1130   SET CHARACTER139,190,67,203,134,212,123,175,151,9,
 1140   SET CHARACTER140,233,205,53,9,100,122,6,159,180,
 1150   SET CHARACTER141,20,159,134,241,223,226,184,228,135,
 1160   SET CHARACTER142,86,111,114,241,32,225,139,129,153,
 1170   SET CHARACTER143,153,27,132,195,236,249,12,42,27,
 1180   SET CHARACTER144,127,54,54,54,54,54,54,0,0,
 1190   SET CHARACTER145,126,102,48,24,48,102,126,0,0,
 1200   SET CHARACTER146,102,0,60,6,62,102,62,0,0,
 1210   SET CHARACTER147,102,0,60,102,102,102,60,0,0,
 1220   SET CHARACTER148,102,0,102,102,102,102,60,0,0,
 1230   SET CHARACTER149,24,0,60,6,62,102,62,0,0,
 1240   SET CHARACTER150,0,2,60,110,102,118,60,64,0,
 1250   SET CHARACTER151,0,0,62,10,62,104,62,0,0,
 1260   SET CHARACTER97,16,48,112,240,225,249,135,90,244,
 1270   SET CHARACTER98,128,192,224,224,248,244,210,165,249,
 1280   SET CHARACTER99,135,95,121,189,150,105,182,182,105,
 1290   SET CHARACTER100,214,235,167,250,239,180,122,105,180,
 1300   SET CHARACTER101,210,240,225,240,240,210,240,240,225,
 1310   SET CHARACTER102,0,0,0,0,0,0,0,0,0,
 1320   SET CHARACTER103,0,0,0,0,0,0,0,0,0,
 1330   SET CHARACTER104,0,0,0,0,0,0,0,0,0,
 1340   SET CHARACTER105,242,124,105,150,181,249,215,143,240,
 1350   SET CHARACTER106,90,91,180,254,251,182,203,210,249,
 1360   SET CHARACTER107,218,195,241,227,240,112,48,16,0,
 1370   SET CHARACTER108,181,210,244,248,240,240,224,224,192,
 1380   SET CHARACTER109,48,113,115,114,114,114,225,135,135,
 1390   SET CHARACTER110,192,232,236,228,228,224,30,30,30,
 1400   SET CHARACTER111,135,231,247,247,247,247,247,246,96,
 1410   SET CHARACTER112,224,30,150,150,224,128,128,0,0,
 1420   SET CHARACTER113,48,113,115,114,114,114,225,240,247,
 1430   SET CHARACTER114,192,232,236,228,228,224,30,30,150,
 1440   SET CHARACTER115,247,247,240,135,240,0,0,0,0,
 1450   SET CHARACTER116,224,150,30,30,224,0,0,0,0,
 1460   SET CHARACTER117,96,246,247,247,247,247,247,247,231,
 1470   SET CHARACTER118,192,224,228,228,228,224,30,30,30,
 1480   SET CHARACTER119,135,135,135,135,112,0,0,0,0,
 1490   SET CHARACTER120,224,30,30,30,224,0,0,0,0,
 1500 END DEF 
 1510 DEF DRAWLEVEL
 1520   PRINT #102,AT1,1:;
 1530   RESTORE  510
 1540   LET C=102
 1550   FOR X=1TO24
 1560     READ LEV$(X)
 1570     PRINT #C:LEV$(X);
 1580   NEXT X
 1590 END DEF 
 1600 DEF RASZT
 1610   RESTORE  760
 1620   LET P=14608:LET RMO=SPEEK(255,P+3)BOR192
 1630   FOR X=1TO24
 1640     FOR Y=1TO8
 1650       READ RAS(X,Y)
 1660       SPOKE 255,P+Y+7,RAS(X,Y)
 1670     NEXT Y
 1680     SPOKE 255,P+3,RMO:!SPOKE 255,P+1,168
 1690     LET P=P+16
 1700   NEXT X
 1710 END DEF 
 1720 DEF OP
 1730   CLOSE #102
 1740   SET VIDEOY24
 1750   SET VIDEOX42
 1760   SET VIDEOCOLOR1
 1770   OPEN #102:"video:"
 1780   PRINT #102:CHR$(27);"o";:SET #102:SCROLLOFF
 1790   SET #102:PALETTEBBB,104,97,121
 1800   DISPLAY #102:AT1FROM1TO24
 1810 END DEF 
 1820 DEF GAME
 1830   LET X=1:LET Y=12:LET I=.5:LET AN=1:LET OX=X:LET OY=Y:LET C=1:LET E=26
 1840   PRINT #102,AT23,2:"/////////////////////////           "
 1850   PRINT #102,ATY,X:FLAP1$(AN):PRINT #102,ATY+1,X:FLAP2$(AN)
 1860   !  CALL KANIM(MOD(C,4))
 1870   LET I$=INKEY$
 1880   LET AN=MOD(AN,4)+1
 1890   LET OX=X:LET OY=Y
 1900   PRINT #102,AT23,29:"SCORE ";STR$(C);"  "
 1910   LET C=C+1
 1920   ! PRINT £102,AT 23,2:"ENERGY ";STR$(C)
 1930   ! FOR W=0 TO 2000
 1940   ! NEXT W
 1950   SOUND DURATION15,LEFT60-X,RIGHTX+20,PITCH70-Y*2+RND,ENVELOPERND(3)+1,INTERRUPT,SOURCEMOD(C,3)
 1960   LET X=X+1:LET Y=Y+I
 1970   LET I=1
 1980   IF JOY(0)BAND16THENLET I=-1
 1990   LET D=0
 2000   IF (LEV$(Y)(X+1)<>"["ORLEV$(Y+1)(X+1)<>"[")ANDX<41THENLET D=1
 2010   IF (LEV$(Y)(X)<>"["ORLEV$(Y+1)(X)<>"[")ANDX<41THENLET D=1
 2020   IF D=1THEN
 2030     SET BORDER75
 2040     PRINT #102,AT23,E:" "
 2050     LET E=E-1
 2060     IF E=0THENLET E=1
 2070     SOUND SOURCE3,INTERRUPT,STYLE12,DURATION5,ENVELOPE5
 2080     SET BORDERBBB
 2090   END IF 
 2100   ! IF Y<8 THEN LET I=.5
 2110   ! IF Y>15 THEN LET I=-.5
 2120   IF X>41THENLET X=1
 2130   IF Y>20THENLET Y=20
 2140   IF Y<5THENLET Y=5
 2150   PRINT #102,ATOY,OX:LEV$(OY)(OX:OX+1):PRINT #102,ATOY+1,OX:LEV$(OY+1)(OX:OX+1)
 2160   IF E=1THENGOTO  2180
 2170   IF I$<>CHR$(27)THENGOTO  1850
 2180 END DEF 
 2190 DEF BIGABC
 2200   SET CHARACTERORD("A"),68,206,138,10,14,40,160,160,0
 2210   SET CHARACTERORD("B"),204,170,138,140,40,40,160,192,0
 2220   SET CHARACTERORD("C"),68,138,136,136,8,8,160,64,0
 2230   SET CHARACTERORD("D"),204,138,138,168,40,40,160,192
 2240   SET CHARACTERORD("E"),238,136,136,140,8,8,128,224,0
 2250   SET CHARACTERORD("F"),238,136,136,140,8,128,128,128,0
 2260   SET CHARACTERORD("G"),68,138,136,136,104,40,160,64,0
 2270   SET CHARACTERORD("H"),138,138,138,172,40,40,160,160,0
 2280   SET CHARACTERORD("I"),68,68,4,4,4,64,64,64,0
 2290   SET CHARACTERORD("J"),238,34,2,6,2,160,160,64,0
 2300   SET CHARACTERORD("K"),170,138,10,12,72,160,160,160,0
 2310   SET CHARACTERORD("L"),136,136,8,8,8,128,128,224,0
 2320   SET CHARACTERORD("M"),168,202,44,104,40,160,160,160,0
 2330   SET CHARACTERORD("N"),138,138,104,44,74,160,160,160,0
 2340   SET CHARACTERORD("O"),68,170,138,168,40,40,160,64,0
 2350   SET CHARACTERORD("P"),204,170,138,140,8,8,128,128,0
 2360   SET CHARACTERORD("Q"),204,170,138,138,40,40,164,66,0
 2370   SET CHARACTERORD("R"),204,170,138,140,40,40,160,160,0
 2380   SET CHARACTERORD("S"),68,138,136,4,2,32,160,64,0
 2390   SET CHARACTERORD("T"),206,68,4,4,64,64,64,64,0
 2400   SET CHARACTERORD("U"),170,138,138,40,40,160,160,64,0
 2410   SET CHARACTERORD("V"),170,138,138,40,160,64,64,64,0
 2420   SET CHARACTERORD("W"),170,138,138,40,160,164,10,160,0
 2430   SET CHARACTERORD("X"),170,138,10,64,64,224,10,160,0
 2440   SET CHARACTERORD("Y"),170,138,10,4,4,64,64,64,0
 2450   SET CHARACTERORD("Z"),206,2,32,4,64,128,128,224,0
 2460   !
 2470   SET CHARACTERORD("0"),68,172,138,168,40,40,160,64,0
 2480   SET CHARACTERORD("1"),34,70,10,2,32,32,32,32,0
 2490   SET CHARACTERORD("2"),68,170,2,4,64,128,128,224,0
 2500   SET CHARACTERORD("3"),68,170,2,4,32,32,160,64,0
 2510   SET CHARACTERORD("4"),136,136,136,8,44,64,64,64,0
 2520   SET CHARACTERORD("5"),238,136,136,12,32,32,32,192,0
 2530   SET CHARACTERORD("6"),68,138,136,12,40,160,160,64,0
 2540   SET CHARACTERORD("7"),238,2,2,66,4,64,64,64,0
 2550   SET CHARACTERORD("8"),68,138,138,4,40,160,160,64,0
 2560   SET CHARACTERORD("9"),68,138,138,36,32,32,160,64,0
 2570   !
 2580   SET CHARACTERORD("""),38,68,128
 2590   SET CHARACTERORD("("),68,136,136,136,8,8,128,64,0
 2600   SET CHARACTERORD(")"),68,34,2,2,32,32,64,0
 2610   SET CHARACTERORD(","),0,0,0,0,0,0,68,4,64
 2620   !
 2630   SET CHARACTERORD("?"),240,240,240,240,240,240,240,240,240
 2640   SET CHARACTERORD("║"),15,15,15,15,15,15,15,15,15
 2650   SET CHARACTERORD("ő"),255,255,255,255,255,255,255,255,255
 2660   SET CHARACTERORD("ú"),175,95,175,95,175,95,175,95,175
 2670   SET CHARACTERORD("ü"),90,165,90,165,90,165,90,165,90
 2680   SET CHARACTERORD("ű"),160,80,160,80,160,80,160,80,160
 2690 END DEF 
 2700 DEF KANIM(BE)
 2710   IF BE=0THENSET CHARACTER91,207,207,248,248,72,72,72,72,72
 2720   IF BE=1THENSET CHARACTER91,241,241,129,129,129,129,129,159,159
 2730   IF BE=2THENSET CHARACTER91,18,18,18,18,18,63,63,242,242
 2740   IF BE=3THENSET CHARACTER91,36,36,36,111,111,244,244,36,36
 2750 END DEF 

