Line 10:
DEFINTA-Z ... Define INT all the variables between A-Z.
SCREEN1:WIDTH32 ... Screen Mode 1 width 32 Characters per line.
C$= CHR$(0)+CHR$(48)+CHR$(24)+CHR$(63)+CHR$(24)+CHR$(12)+CHR$(0)+CHR$(0)  ... C$ = Character String$ 0+48+24+63+24+12+0+0
The String Means:
00000000 = 000
00110000 = 32+16=48
00011000 = 16+8 =24
00111111 = 32+16+8+4+2+1=63
00011000 = 16+8 =24
00001100 = 8+4  = 12
00000000 = 000
00000000 = 000
This is the form of the ship.
SPRITE$(0)=C$ ... Assign The Character String$ into C$ to the Sprite$(0).
X=0:Y=0:B=0:D=0 ... Initialize the Variables.
KEYOFF ... Turn Off the Function Key Display. 
S$=CHR$(0)+CHR$(0)+CHR$(0)+CHR$(24)+CHR$(24)+CHR$(0)+CHR$(0)+CHR$(0) ... S$ =  Shot String$ 0+0+0+24+24+0+0+0
The String Means:
00000000 = 000
00000000 = 000
00000000 = 000
00011000 = 16+8 =24
00011000 = 16+8 =24
00000000 = 000
00000000 = 000
00000000 = 000
It is the form of the Shot ...

Line 20:
SPRITE$(1)=S$ ... Assign the Shot String$ to Sprite$(1).
FORN=0TO30 ... Start Loop N 0 ...30 (the Width of the Screen less one ).
FORLY=0TOINT(RND(-TIME)*10+1):LOCATEN,24-LY:PRINT"H";:NEXT ... Start Loop LY (Lenght Y of Building) with a pseudo RANDomic Number and prints the "H" of the Building at Position  N,24-LY. next end LY Loop.
NEXT ... End N Loop.

Line 30:
PUTSPRITE0,(X*8+PX,Y*8),15 ... Put the Sprite 0 at Position X*8+PX,Y*8 with Sprite Colour 15 (White) .
IFVPEEK(&H1800+X+Y*32)=ASC("H")THENGOTO10 ... If There is a "H" at position X+Y*32 (X + Y * Width) Go To Start (Line 10).

Line 40:
 IFVPEEK(&H1800+BX+BY*32)=ASC("H")ANDB=1THENE=1 .. IF Bomb at position BX+BY*32( Bomb X + Bomb Y * Width 32) colide with Building and B=1 then set E=1. 
IFE=1THENVPOKE&H1800+BX+BY*32,32 ... IF E is Set execute a Video Poke with code 32 (SPACE) into the place of the Building.
IFE=1THENB=0:E=0 ... If E=1 Then B (Bomb) = 0.Set  E= 0.

Line 50:
PX=PX+1:IFPX=8THENX=X+1:IFPX=8THENPX=0 ... Increment PlayerX (PX) if it hits 8 then Move the Player One X point. Reset PX to Zero.
:IFX=31THENY=Y+1:IFX=31THENX=0  ... If Reach end of LIne (31) then increment Player Y .Reset X.

Line 60:
D=0 ... Reset D (Drop Bomb).
K$=INKEY$:IFK$<>""THEND=1 ... K$ (Keyboard$) = INput Key$ .If K$ (Keyboard$) different than "" Then D (Drop Bomb) = 1.
IFD=1ANDB=0THENB=1 ... IF D (Drop Bomb) = 1 and B (Bomb) = 0  Then B (Bomb) =  1. 

Line 70:
BY=BY+1 ..  Increment BY (Bomb Y ) .
IFD=1THENBY=Y:IFB=1THENBX=X ... If D (Drop Bomb) equal 1 (Yes) then BY (Bomb Y) equal Y (Ship Y).  If D (Drop Bomb) = 1 (Yes) then BX (Bomb X) = X (Ship X).
IFD=1THENB=1 ... If D (Drop Bomb)=1 (Yes) then B (Bomb) = 1 (Yes).
D=0 ... Redundant D (Drop) = 0.

Line 80:
IFB=1THENPUTSPRITE1,(BX*8+PX,BY*8),6ELSEPUTSPRITE1,(BX*8,BY*8),0 ... IF B (Bomb) equal 1 (Yes) then display Sprite 1 else hide Sprite 1.

Line 90:
IFBY>23THENB=0 ... If Bomb Y (BY) reached the end of the Screen then reset Bomb (B).

Line 100:
IF Y<24 THEN GOTO 30 ELSE GOTO 10 ... If Ship Y (Y) is not at the end of the Screen Go to 30 else Restart.
