   10 PROGRAM "Flbird3.bas"
  100 SET INTERRUPTSTOPOFF
  110 OUT 191,12
  120 SET KEYCLICKOFF
  130 ENVELOPE NUMBER1;0,63,63,1;10,-20,-20,60;RELEASE;-10,-20,-20,60;-30,-10,-10,100
  140 ENVELOPE NUMBER2;0,43,43,1;RELEASE;-10,-20,-20,60;-30,-10,-10,100
  150 ENVELOPE NUMBER3;0,0,63,1;30,63,-63,10
  160 SET STATUSOFF
  170 GRAPHICS HIRES4
  180 SET PALETTE0,255,8,10
  190 SET LINEMODE3
  200 LET SUCC,FAIL,LS=0
  210 CALL DRAWLEVEL
  220 LET A=2
  230 LET B=300
  240 LET L=1:LET IRANY=1
  250 SET INK1
  260 PLOT A,B
  270 !GOTO 391
  280 SOUND INTERRUPT,PITCH(B-210)/6+20,ENVELOPE2,LEFT255,RIGHT0
  290 WHEN EXCEPTIONUSEHIBA
  300   PLOT A,B
  310   LET A=A+4
  320   LET B=B-L*2
  330   PLOT A,B
  340   LOOK #101,ATA,B:C
  350   IF C<>1THENCAUSE 1
  360   IF L<20THENLET L=L+.5
  370   IF INKEY$=" "THENLET L=-5:SOUND INTERRUPT,PITCH(B-210)/6+20,ENVELOPE1,RIGHTA/5,LEFT255-A/5
  380   GOTO  300
  390 END WHEN 
  400 LET A=1275:LET IRANY=2:LET L=1
  402 SET LINEMODE0
  403 PLOT 1279,0;1279,700
  405 SET LINEMODE3
  410 PLOT A,B
  420 SOUND INTERRUPT,PITCH(B-210)/6+20,ENVELOPE2,LEFT0,RIGHT255
  430 WHEN EXCEPTIONUSEHIBA
  440   PLOT A,B
  450   LET A=A-4
  460   LET B=B-L*2
  470   PLOT A,B
  480   LOOK #101,ATA,B:C
  490   IF C<>1THENCAUSE 1
  500   IF L<20THENLET L=L+.5
  510   IF INKEY$=" "THENLET L=-5:SOUND INTERRUPT,PITCH(B-210)/6+20,ENVELOPE1,RIGHTA/5,LEFT255-A/5
  520   GOTO  440
  530 END WHEN 
  540 DEF DRAWLEVEL
  550   POKE 56,201
  560   SET INK2
  570   FOR X=200TO1200STEP70
  580     LET Q1=300+RND(100)
  590     LET Q2=Q1+110
  600     FOR S=0TO16STEP4
  610       PLOT X+S,0;X+S,Q1
  620       PLOT X+S,Q2;X+S,700
  630     NEXT S
  640   NEXT X
  650   PLOT 0,0;1279,0 !PLOT 0,719;1279,719
  655   SET INK1
  660   PLOT 1279,0;1279,700
  670   SET #102:COLOR1,5
  680   PRINT AT2,5:"SUCCESS:          FAILED:  ":PRINT AT4,13:"LAST SCORE:"LS"   ";
  690   PRINT AT2,13:SUCC
  700   PRINT AT2,30:FAIL
  710   POKE 56,245
  720 END DEF 
  730 HANDLER HIBA
  740   IF IRANY=1THENLET LS=A
  750   IF IRANY=2THENLET LS=1280+(1280-A)
  760   IF LS<>1278THENPRINT AT4,13:"LAST SCORE:"LS"   ";
  770   IF A>=1278THEN
  800     GOTO  400
  810   END IF 
  820   IF A<=1THEN
  830     LET SUCC=SUCC+1
  840     PRINT AT2,13:SUCC
  850     GOTO  220
  860   END IF 
  870   CLEAR SOUND
  880   SOUND ENVELOPE3,STYLE48,PITCH50,SOURCE1
  890   LET FAIL=FAIL+1
  900   PRINT AT2,30:FAIL
  910   GOTO  220
  920 END HANDLER 

