10 ' Self - Destruct
20 ' By Rufus Cable
30 ' For Amstrad Action
40 MODE 1:CALL &BC02:PEN 1:PAPER 0
50 POKE &BDEE,&C9:KEY DEF 66,0,0,0,0
60 OUT &BC00,8:OUT &BD00,0
70 PRINT:PRINT" Amstrad 64K Microcomputer (v1)"
80 PRINT:PRINT" ";CHR$(164);"1984 Amstrad Consumer Electronics plc"
90 PRINTSPC(11);"and Locomotive Software Ltd."
100 PRINT:PRINT" BASIC 1.0":FOR t=1 TO 300:NEXT:PRINT:PRINT"Ready":PRINTCHR$(143)
110 CALL &BB18:FOR k=64 TO 1 STEP -1:LOCATE 10,2:PRINTUSING"##";k
120 SOUND 1,0,1,7:FOR t=1 TO 50:NEXT t,k
130 LOCATE 10,2:PRINT"00"
140 LOCATE 3,4:PRINT"99BC"
150 LOCATE 8,7:PRINT CHR$(180)CHR$(188)CHR$(170)
160 LOCATE 30,2:PRINT"v0"
170 FOR v=7 TO 0 STEP -1
180 SOUND 1,0,10,v,0,0,31
190 OUT &BC00,8:OUT &BD00,RND*254+1
200 SOUND 2,0,15,v,0,0,21
210 OUT &BC00,8:OUT &BD00,RND*254+1
220 SOUND 4,0,20,v,0,0,11
230 OUT &BC00,8:OUT &BD00,RND*254+1
240 NEXT
250 OUT &BC00,8:OUT &BD00,1
260 m$=SPACE$(40)+"<< ATTENTION ALL FREQUENCIES >> - STAND CLEAR - SELF DESTRUCT - REPEAT - SELF DESTRUCT - STAND CLEAR FOR SELF DESTRUCT - OVER - OVER AND OUT - "
270 FOR a=1 TO LEN(m$):LOCATE 1,20:PRINT MID$(m$,a,40);CHR$(7);CHR$(7);CHR$(7);:NEXT
280 FOR v=7 TO 0 STEP -1:SOUND 1,0,10,v,0,0,31
290 r=RND*26:INK 0,r:BORDER r:INK 1,r:NEXT
300 INK 0,0:BORDER 0:INK 1,0
310 OUT &BC00,8:OUT &BD00,0
320 CLS
330 FOR v=7 TO 0 STEP -1:FOR n=1 TO 10
340 FOR vv=v TO 0 STEP -1:SOUND 1,0,5,vv,0,0,RND*31
350 SOUND 2,0,5,vv,0,0,RND*31
360 SOUND 4,0,5,vv,0,0,RND*31
370 IF RND>0.8 THEN INK 0,26:BORDER 26:INK 1,26:FOR tt=0 TO 25:NEXT:INK 0,0:BORDER 0:INK 1,0
380 NEXT vv,n,v
390 CALL &BB18:RUN