Casse-Briques

# Introduction

Casse-Briques (Breakout) is a small game released as listing by the French magazine Tilt. It was published in issue HS1 of November 1985.

Casse-Briques
Casse-Briques
Casse-Briques

# Instructions

You thought you mastered all the subtleties of the brick-breaker? Try this version where the classic rackets have been replaced by two flippers ...

Use the LEFT and RIGHT arrow keys (or the joystick) to move them, the spacebar (or the joystick button) to activate them.

Note: The printed listing is buggy. Many changes are required to fix these bugs:

• After some playing time, an 'Overflow' error message is displayed and seems to be related to the intensive using of the POINT instruction. You need to add these lines to bypass the problem:
```5 ON ERROR GOTO 640
...
640 IF ERR=6 THEN 650
650 RESUME 260
660 ON ERROR GOTO 0```
• The displayed game screen and part of the rules using POINT are not coherent. Change the concerned lines as follows (line 145 is a new line, variables P1 and P2 replace the too repeated POINT instructions):
```50 DEFINT V,H,X,Y,R,S,P:V=4:H=1:X=100:Y=100:R=100
...
110 LINE(4,60)-(250,70),12,BF:LINE(4,80)-(250,90),10,BF
...
140 P1=POINT(X+2,Y+V):P2=POINT(X+2+H,Y)
145 IF P1=15 THEN BL=BL-1:X=100:Y=100:R=100:IF BL=0 THEN 600
150 IF P2=6 THEN H=-H
160 IF P1=6 THEN V=-V
170 IF P2=10 THEN PSET(X+H,Y),12:GOSUB30:SC=SC+1
180 IF P1=10 THEN PSET(X,Y+V),12:V=-V:SC=SC+1:GOSUB20
190 IF P2=12 THEN PSET(X+H,Y),9:GOSUB30:SC=SC+1
200 IF P1=12 THEN PSET(X,Y+V),9:V=-V:SC=SC+1:GOSUB20
210 IF P2=9 THEN PSET(X+H,Y),4:GOSUB30:SC=SC+1
220 IF P1=9 THEN PSET(X,Y+V),4:V=-V:SC=SC+1:GOSUB20
230 IF P2=4 THEN PSET(X+H,Y),1:GOSUB30:SC=SC+1
240 IF P1=4 THEN PSET(X,Y+V),1:V=-V:SC=SC+1:GOSUB20```
• It can happen that the border color of the game zone is modified, what can lead to holes in this border. If a ball goes through one of these holes, then it's impossible to continue the game. You need to add these lines to fix this bug;
```255 IF X<5 AND Y<100 THEN LINE(0,12)-(0,96),6
256 IF X>251 AND Y<100 THEN LINE(252,12)-(252,96),6```

Other improvements and corrections:

• add KEYOFF: at the beginning of line 10
• adding of joystick support by changing lines 270 and 280 as follows (line 275 is a new line):
```270 IFSTRIG(0)=-1 OR STRIG(1)=-1 THEN FI=1
275 ST=STICK(0)ORSTICK(1)
280 ONSTGOSUB290,290,350,290,290,290,360,290```