Authors
James DuPuy
Publication
Pub Details
Date
August 1985
Pages
12
See all articles from The RAMTOP August 1985
This program for the 2068 uses the SOUND command to dial touch tone numbers. It has a 20 number memory and redial. You must have the mic of the phone next to the 2068 speaker.
5 DIM a$(20,30): DIM b$(20,10)
10 REM TONE DIALER by James DuPuy 10/25/84
11 BORDER 6
12 CLS: PRINT " T O N E D I A L E R "
14 PRINT ''"0 - 9,#,* TO DIAL MANUALLY"'"R --- TO REDIAL LAST NUMBER"'"S --- TO STORE A NUMBER"'"M --- TO DIAL FROM MEMORY"'"C --- TO CLEAR REDIAL"'"S AND CAP SHIFT TO SAVE TO TAPE"'" WITH THE NUMBERS IN THE MEMORY"'''
15 LET r$=""
16 POKE 23609,10
20 LET n$=INKEY$: IF n$="" THEN GO TO 20
22 IF n$="m" THEN GO TO 2000
24 IF n$="s" THEN GO TO 3000
26 IF n$="r" THEN GO TO 4000
27 IF n$="c" THEN GO TO 12
28 IF n$="S" THEN GO TO 5000
29 IF n$="*" OR n$="#" THEN GO TO 32
30 IF n$>"9" or n$<"0" THEN GO TO 20
32 PRINT n$;"-";
35 LET r$=r$+n$
36 IF n$="#" THEN GO TO 1010
37 IF n$="*" THEN GO TO 1011
38 IF n$="p" THEN PAUSE 0
40 GO TO VAL n$ + 1000
100 SOUND 0,l;1,0;2,h;3,0;7,60;8,15;9,15
105 IF n$="r" or n$="m" THEN PRINT r$(i);"-";
110 IF INKEY$<>"" THEN GO TO 110
120 PAUSE 5
130 SOUND 8,0;9,0;7,63
134 IF n$="r" or n$="m" THEN RETURN
140 GO TO 20
1000 LET l=127: LET h=82: GO TO 100
1001 LET l=158: LET h=91: GO TO 100
1002 LET l=158: LET h=82: GO TO 100
1003 LET l=158: LET h=75: GO TO 100
1004 LET l=143: LET h=91: GO TO 100
1005 LET l=143: LET h=82: GO TO 100
1006 LET l=143: LET h=75: GO TO 100
1007 LET l=129: LET h=91: GO TO 100
1008 LET l=129: LET h=82: GO TO 100
1009 LET l=129: LET h=75: GO TO 100
1010 LET l=117: LET h=75: GO TO 100
1011 LET l=117: LET h=91: GO TO 100
2000 REM MEMORY DIAL
2005 GO SUB 2010: GO TO 2100
2010 CLS: PRINT "Memory List"
2015 LET v=0
2020 FOR j=1 to 20
2030 PRINT AT j,0;j;"- ";b$(j);" - ";a$(j)
2035 IF a$(j)-" " THEN LET v=v+1
2040 NEXT j
2050 RETURN
2100 IF v=20 then PRINT "No numbers stored yet.": PAUSE 120: GO TO 12
2110 INPUT "Which # to dial? ";Q: IF Q>20 or Q<1 THEN GO TO 2110
2120 IF A$(q)=" " THEN PRINT "No # at ";q: PAUSE 100: GO TO 12
2130 PRINT B$(q);" - ";
2140 LET 4$=A$(q)
2150 GO TO 4005
3000 REM Memory # store
3010 GO SUB 2010
3020 INPUT "Which # to store? ";q: IF q>20 OR q<1 THEN GO TO 3020
3030 PRINT q;
3040 INPUT "Name? "; LINE B$(q): IF b$(q)=" " THEN GO TO 3040
3045 PRINT " - ";b$(q);" - ";
3050 INPUT "Phone #? "; LINE z$: IF LEN z$>30 OR LEN z$<1 THEN GO TO 3050
3055 LET a$(q)=z$
3060 PRINT a$(q)
3070 INPUT "C-CORRECT, ENT-CONT.";X$: IF X$="c" THEN GO TO 3030
3075 GO SUB 2010: INPUT "ENT-MENU, S- To store a # ";x$: IF x$="s" THEN GO TO 3020
3080 GO TO 12
4000 REM Redial
4002 IF INKEY$<>"" THEN GO TO 4002
4003 PRINT "REDIAL ";
4005 FOR i=1 to LEN r$
4008 IF r$(i)=" " THEN GO TO 4020
4010 IF r$(i)="#" THEN GO SUB 1010: GO TO 4020
4012 IF r$(i)="*" THEN GO SUB 1011: GO TO 4020
4013 IF r$(i)="p" THEN PAUSE 0: GO TO 4020
4015 GO SUB 1000 + VAL r$(i)
4020 NEXT i
4025 PRINT
4030 GO TO 20
5000 REM Save to tape
5005 CLS: PRINT FLASH 1;"Enter program name. You can only enter up to 10 characters."
5010 INPUT x$; IF LEN x$>10 OR LEN x$<1 THEN GO TO 5010
5015 CLS: PRINT AT 10,12; FLASH 1;"Saving"
5020 SAVE x$ LINE 12
5030 GO TO 12