Blue Box Programs
Programs sent in by Ford Prefect, thanks.
Texas Instrument 99/4A
FROM BASIC: 0: CALL SOUND(100, 1300, 0, 1500, 0) 1: CALL SOUND(100, 700, 0, 900, 0) 2: CALL SOUND(100, 700, 0, 1100, 0) 3: CALL SOUND(100, 900, 0, 1100, 0) 4: CALL SOUND(100, 700, 0, 1300, 0) 5: CALL SOUND(100, 900, 0, 1300, 0) 6. CALL SOUND(100, 1100, 0, 1300, 0) 7: CALL SOUND(100, 700, 0, 1500, 0) 8: CALL SOUND(100, 900, 0, 1500, 0) 9. CALL SOUND(100, 1100, 0 ,1500, 0) KP: CALL SOUND(100, 1100, 0, 1700, 0) KP2: CALL SOUND(100, 1300, 0, 1700, 0) 11: CALL SOUND(100, 700, 0, 1700, 0) 12: CALL SOUND(100, 900, 0, 1700, 0) ST: CALL SOUND(100, 1500, 0, 1700, 0)
Commodore 64
5 S=54272 6 DIM B(7),AC(7) 10 FOR LS=S TO S+24:POKE LS,0:NEXT 20 POKE S+5,64:POKE S+6,100 25 POKE S+12,64:POKE S+13,100 30 POKE S+24,15 40 FOR T=1 TO 7 50 READ A(T),B(T) 60 NEXT T 70 PRINT "USE 1-0 FOR DIGITS 1-0" 80 PRINT "USE K FOR KP : USE S FOR ST" 88 PRINT "USE + FOR 11 : USE - FOR 12" 90 PRINT "USE L FOR KP2" 95 PRINT "PRESS SPACE BAR FOR 2600 HZ" 100 PRINT "PRESS THE APPROPRIATE KEY AND THE TONE WILL BE EMITTED FROM THE TV" 110 GET A$: IF A$="" THEN 110 120 IF A$="S" THEN T=5:U=6 125 IF A$="L" THEN T=4:U=6 130 IF A$="K" THEN T=3:U=6 140 IF A$="+" THEN T=2:U=6 150 IF A$="-" THEN T=1:U=6 152 IF A$="1" THEN T=1:U=2 154 IF A$="2" THEN T=1:U=3 156 IF A$="3" THEN T=2:U=3 158 IF A$="4" THEN T=1:U=4 160 IF A$="5" THEN T=2:U=4 162 IF A$="6" THEN T=3:U=4 163 IF A$="7" THEN T=1:U=5 164 IF A$="8" THEN T=2:U=5 166 IF A$="9" THEN T=3:U=5 168 IF A$="0" THEN T=4:U=5 169 IF A$=" " THEN T=7:U=7 170 POKE S+1,A(T):POKE S,B(U) 175 POKE S+8,A(T):POKE S+7,B(U) 180 POKE S+4,17:POKE S+11,17 190 GET Z$:IF Z$="" THEN 190 200 POKE S+4,16:POKE S+11,16 210 GOTO 110 500 DATA 44,0,57,0,70,0,83,0,96,0,10B,0,166,0 510 REM THE ABOVE DATA STATEMENT MAY HAVE TO BE ADJUSTED TO GET THE EXACT TONE.Atari
1 POKE 82,0:POKE 755,0 2 OPEN #1,4,0,"K:" 50 PRINT "ATARI BLUE BOX PROGRAM" 51 PRINT "0-9 = MF 0-9" 52 PRINT "K = KEYPULSE" 53 PRINT "S = START" 54 PRINT "SPACE BAR = 2600 HZ ON/OFF" 55 PRINT "You must press the space bar twice" 56 PRINT "for the program to work correctly." 60 REM 140 DIM N$(1) 144 GET #1,N 145 N$="" 146 LET N$=CHR$(N):? N$;" "; 150 IF N$=" " THEN ? "2600Hz ";:GOSUB 290 160 FOR LOOP=1 TO LEN(N$) 170 IF LEN(N$)=0 THEN GOTO 500 190 CHAR=ASC(N$(LOOP,LOOP))-ASC("0"):TRAP 200: RESTORE 360+CHAR*10:GOTO 220 200 IF N$(LOOP,LOOP)="K" THEN RESTORE 460:GOTO 220 210 IF N$(LOOP,LOOP)="S" THEN RESTORE 470:GOTO 220 215 CLR: GOTO 60 220 READ A,B,C,D 230 POKE 53760,A:POKE 53762,B:POKE 53764,C:POKE 53766,D 240 POKE 53767,168:POKE 53763,168 250 FOR A=1 TO 15:NEXT A 260 POKE 53767,160:POKE 53763,160 270 NEXT LOOP 280 CLR: GOTO 60 290 SOUND 0,0,0,0:POKE 53768,120 300 POKE 53760,81:POKE 53762,1:POKE 53764,0:POKE 53766,0 310 POKE 53767,168:POKE 53763,168 320 GET #1,N:IF N<>32 THEN 320 330 POKE 53767,160:POKE 53763,160 340 N$="" 350 RETURN 360 DATA 165,2,80,2 370 DATA 240,4,210,3 380 DATA 240,4,40,3 390 DATA 210,3,40,3 400 DATA 240,4,165,2 410 DATA 210,3,165,2 420 DATA 40,3,165,2 430 DATA 240,4,80,2 440 DATA 210,3,80,2 450 DATA 40,3,80,2 460 DATA 40,3,8,2 470 DATA 80,2,8,2 480 FOR A=1 TO 700:NEXT A 490 NEXT LOOP 500 CLR:GOTO 60 510 REM --- BY: DEVIOUS XEVIOUS ---