home *** CD-ROM | disk | FTP | other *** search
- CLEA
- CURS N8,N9
- ON ESCA GOSU Exit
- LEGE " Multi-dialer pop-up"
- SET TTHR OFF
- CLOG "* Dialer multi-dialer invoked"
- GOSU Window
- GOSU Get_Last
- GOSU Parse_Pa
- GOSU All_Fiel
- LOCA 7,8
- Main_Loo:
- SET TTHR OFF
- KEYG S0
- Have_Key:
- SWIT S0
- CASE "4900"
- GOTO PgUp
- ENDC
- CASE "5100"
- GOTO PgDn
- ENDC
- CASE "4700"
- GOTO Home
- ENDC
- CASE "4F00"
- GOTO End
- ENDC
- CASE "0D"
- GOTO Perform
- ENDC
- CASE "4800"
- GOTO UpLine
- ENDC
- CASE "5000"
- GOTO DnLine
- ENDC
- CASE "4B00"
- GOTO Left
- ENDC
- CASE "4D00"
- GOTO Right
- ENDC
- CASE "09"
- GOTO Right
- ENDC
- CASE "0F00"
- GOTO Left
- ENDC
- ENDS
- IF NOT NULL S0(1:3)
- SOUN 100,100
- GOTO Main_Loo
- ENDI
- CURS N0,N1
- IF GE N1 11
- GOSU Enter_DD
- GOTO Have_Key
- ELSE
- GOSU Enter_LD
- GOTO Right
- ENDI
- PgUp:
- CURS N1,N2
- IF GE N2 11
- N0=N10[N1-7]
- N3=N0/1000
- N0=N0-(N0/1000)*1000
- N0=N0-1
- IF LT N0 0 N0=100
- N0=N0+N3*1000
- ELSE
- N0=N10[N1-7]
- N3=N0-(N0/1000)*1000
- N0=N0/1000
- N0=N0-1
- IF LT N0 0 N0=4
- N0=N3+N0*1000
- ENDI
- N10[N1-7]=N0
- GOSU One_Fiel
- GOTO Main_Loo
- PgDn:
- CURS N1,N2
- IF GE N2 11
- N0=N10[N1-7]
- N3=N0/1000
- N0=N0-(N0/1000)*1000
- N0=N0+1
- IF GT N0 100 N0=0
- N0=N0+N3*1000
- N10[N1-7]=N0
- GOSU One_Fiel
- ELSE
- N0=N10[N1-7]
- N3=N0-(N0/1000)*1000
- N0=N0/1000
- N0=N0+1
- IF GT N0 4 N0=0
- N0=N3+N0*1000
- ENDI
- N10[N1-7]=N0
- GOSU One_Fiel
- GOTO Main_Loo
- UpLine:
- CURS N0,N1
- N0=N0-1
- IF LT N0 7 N0=16
- N1=8
- IF GE N1 11 N1=11
- LOCA N0,N1
- GOTO Main_Loo
- DnLine:
- CURS N0,N1
- N0=N0+1
- IF GT N0 16 N0=7
- N1=8
- IF GE N1 11 N1=11
- LOCA N0,N1
- GOTO Main_Loo
- Home:
- LOCA 7,8
- GOTO Main_Loo
- End:
- LOCA 11,8
- GOTO Main_Loo
- Left:
- CURS N0,N1
- IF GE N1 11
- N1=8
- ELSE
- N0=N0-1
- N1=11
- ENDI
- IF LT N0 7 N0=16
- LOCA N0,N1
- GOTO Main_Loo
- Right:
- CURS N0,N1
- IF GE N1 11
- N0=N0+1
- N1=8
- ELSE
- N1=11
- ENDI
- IF GT N0 16 N0=7
- LOCA N0,N1
- GOTO Main_Loo
- Exit:
- REST
- LOCA N8,N9
- EXIT
- Enter_DD:
- CURS N1,N2
- N0=N10[N1-7]
- N0=(N0/1000)*1000
- GOSU One_Fiel
- N6=0
- S9=""
- IF STRCMP S0 " "
- N10[N1-7]=N0
- GOTO DD_Keypr
- ENDI
- IF STRCMP S0 "08"
- N10[N1-7]=N0
- GOTO DD_Keypr
- ENDI
- DD_Test:
- IF STRCMP S0 " "
- S0="4D00"
- GOTO DD_Store
- ENDI
- IF STRCMP S0 "?"
- GOSU Ask_Dial
- IF SUCCESS
- S9=S2
- LENG S9 N6
- S0="4D00"
- GOTO DD_Store
- ENDI
- GOTO DD_Keypr
- ENDI
- SWIT S0
- CASE "09"
- GOTO DD_Store
- ENDC
- CASE "0D"
- S0="4D00"
- GOTO DD_Store
- ENDC
- CASE "08"
- IF GT N6 0
- CURS N1,N2
- N2=N2-1
- LOCA N1,N2
- ATSA N1,N2 (default) " "
- S1(N6:N6)=" "
- N6=N6-1
- ENDI
- GOTO DD_Keypr
- ENDC
- ENDS
- IF NOT NULL S0(1:3) GOTO DD_Store
- CTOI S0 N0
- IF LT N0 48 GOTO DD_Invalid
- IF GT N0 57 GOTO DD_Invalid
- S9(N6:N6)=S0
- N6=N6+1
- CURS N1,N2
- ATSA N1,N2 (default) S0(0:0)
- N2=N2+1
- LOCA N1,N2
- IF GE N6 3
- S0="4D00"
- GOTO DD_Store
- ENDI
- GOTO DD_Keypr
- DD_Inval:
- SOUN 100,100
- DD_Keypr:
- KEYG S0
- GOTO DD_Test
- DD_Store:
- IF EQ N6 0 GOTO DD_Exit
- N3=S9
- IF GT N3 100 N3=100
- IF LT N3 1 N3=1
- N0=N10[N1-7]
- N0=N3+(N0/1000)*1000
- N10[N1-7]=N0
- DD_Exit:
- N0=N10[N1-7]
- GOSU One_Fiel
- RETU
- Enter_LD:
- SWIT S0
- CASE "+"
- N0=1
- ENDC
- CASE "-"
- N0=2
- ENDC
- CASE "#"
- N0=3
- ENDC
- CASE "@"
- N0=4
- ENDC
- CASE "1"
- N0=1
- ENDC
- CASE "2"
- N0=2
- ENDC
- CASE "3"
- N0=3
- ENDC
- CASE "4"
- N0=4
- ENDC
- DEFA
- N0=0
- S0=" "
- ENDC
- ENDS
- CURS N1,N2
- ATSA N1,N2 (Default) S0(0:0)
- N3=N0
- N0=N10[N1-7]
- N0=N0-(N0/1000)*1000
- N0=N0+N3*1000
- N10[N1-7]=N0
- GOSU One_Fiel
- RETU
- One_Fiel:
- S10=" "
- ATSA N1,7 (Default) S10(0:67)
- IF ZERO N0 RETURN
- N2=N0/1000
- N3=N0-(N0/1000)*1000
- IF NOT ZERO N2
- S10(0:2)=" "*N2
- LD S11 N2
- S10(8:30)=S11
- ENDI
- IF NOT ZERO N3
- S10(4:6)=N3
- DNUM S11 N3
- S10(32:45)=S11
- DIRE S11 N3
- S10(47:79)=S11(0:19)
- ENDI
- PRES S10
- ATSA N1,7 (Default) S10
- RETU
- All_Fiel:
- FOR N20=0,9
- N0=N10[N20]
- N1=N20+7
- IF NOT ZERO N0 GOSUB One_Field
- ENDF
- RETU
- Parse_Pa:
- FOR N0=0,45,5
- N1=N0+3
- ATOI S19(N0:N1) N1
- IF ERROR N1=0
- N10=N11
- N11=N12
- N12=N13
- N13=N14
- N14=N15
- N15=N16
- N16=N17
- N17=N18
- N18=N19
- N19=N1
- ENDF
- RETU
- Get_Last:
- S19="DIALER.DAT"
- IF ISFILE S19
- FOPENI "DIALER.Dat" TEXT
- IF FAILURE GOTO No_Get
- ELSE
- GOTO No_Get
- ENDI
- READ S19 80 N0
- IF EOF GOTO No_Get
- FCLOSEI
- RETU
- No_Get:
- S19=" "
- RETU
- Window:
- SAVE 1,5 23 75
- BOX 1,5 23 75 (default)
- ATSA 1,7 (default) " COM-AND Multi-dialer "
- ATSA 2,7 (default) "Select up to 10 dialing directory entries (using or not using a long"
- ATSA 3,7 (default) "distance prefix). Sequential redial begins when you hit return."
- ATSA 4,5 (default) "├─────────────────────────────────────────────────────────────────────┤"
- ATSA 5,7 (default) "LD# DD# (from LD directory) (from dialing directory)"
- ATSA 6,7 (default) "--- --- ----------------------- -------------- --------------------"
- ATSA 17,5 (default) "├─────────────────────────────────────────────────────────────────────┤"
- ATSA 18,7 (default) "Use cursor up/down to select a line in the display. Use cursor left"
- ATSA 19,7 (default) "and right to select a field. ?/PgUp/PgDn cycle possible values. LD"
- ATSA 20,7 (default) "codes are 0,' ' = none, 1 or +, 2 or -, 3 or #, 4 or @. DD codes"
- ATSA 21,7 (default) "are 1-100. Current values are always displayed. Empty entries "
- ATSA 22,7 (default) "are ignored. A carriage return begins the dialing sequence."
- ATSA 23,30 (default) " Press ESC to exit "
- RETU
- Exit_Per:
- HANG
- REST
- GOTO Exit
- Perform:
- N6=0
- FOR N1=7,16
- N0=N10[N1-7]
- N2=N0-N0/1000*1000
- IF NOT ZERO N2 GOTO Set_up
- ENDF
- SOUN 100,100
- GOTO Main_Loo
- Set_Up:
- SET TTHR ON
- KFLU
- SET RDIS OFF
- ON ESCA GOSU Exit_Per
- LEGE " Cycling through selected #'s"
- GOSU Set_Last
- SAVE 17,5 23 75
- BOX 17,5 23 75 (default)
- ATSA 17,7 (default) " COM-AND Dialing "
- ATSA 23,22 (default) " CR to move to next, ESC to terminate "
- N6=0
- N5=35
- Loop:
- FOR N1=7,16
- N0=N10[N1-7]
- N2=N0-N0/1000*1000
- N3=N0/1000*1000
- IF NOT ZERO N2
- RFLU
- ATSA 22,7 (default) "Hanging up "
- S0="_CLOG"
- SET CALL OFF
- HANG
- SET CALL S0
- WAIT "OK" 10
- N6=N6+1
- ATSA 18,7 (default) "Retry #: "*N6*"; Started: "*"_time"*"; Timeout = "*N5*" seconds"
- SCRO 0,19,7 22,36 (defa)
- DIRE S1 N2
- PRES S1
- DNUM S2 N2
- LJ S2
- IF NOT NULL "_DDAC"
- S0="1-"*"_DDAC"
- LENG S0 N21
- IF STRCMP S0 S2(0:N21-1) S2=S2(N21:79)
- IF FIND S2(0:0) "-" S2=S2(1:79)
- ENDI
- LD S3 N3
- ATSA 19,7 (default) S1
- ATSA 20,7 (default) S2&S3
- GOSU Set_Dial
- PAUS 1
- S0="_DPRE"&S3&""&S2&""&"_DSUF"&""
- TRAN S0
- ATSA 22,7 (default) "Dialing "
- N0=N5
- SET TIME
- WHIL GT N0 0
- RGET S0 80 N0
- IF NOT NULL S0
- IF FIND S0 "_MCONNECT"&"" GOTO Got_It
- ATSA 22,7 (default) " "
- ATSA 22,7 (default) S0
- IF NOT FIND S0 S2&"" and NOT FIND S0 "RINGING"
- PAUS 5
- ATSA 22,7 (default) "Cycling "
- N0=-N5
- ENDI
- ENDI
- TSIN N3,N3,N4
- IF N0 GT 0 N0=N5-N4
- ENDW
- ENDI
- ENDF
- GOTO Loop
- Set_Dial:
- DPAR S0 N2
- S1=S0(5:5)
- SWIT S1
- CASE "E"
- SET PARI EVEN
- ENDC
- CASE "O"
- SET PARI ODD
- ENDC
- CASE "N"
- SET PARI NONE
- ENDC
- ENDS
- S1=S0(7:7)
- SET DATA S1
- S1=S0(9:9)
- SET STOP S1
- IF NOT STRCMP "_DDOVER" "ON"
- SET BAUD S0(0:3)
- ELSE
- S0(0:3)="_PARM"(0:3)
- ENDI
- ATSA 21,7 (default) S0
- SET DUPL FULL
- IF STRCMP S0(11:11) "Y" SET DUPLEX HALF
- RETU
- Got_It:
- REST
- REST
- LOCA N8,N9
- SET RDIS ON
- N0=0
- N10[N1-7]=N0
- GOSU Set_Last
- DIRE S0 N2
- SET CLOC NEW
- CLOG "CONNECT (dialer.cmd): "*S0
- DSCR S0,N2
- IF NOT NULL S0
- SET LINK ON
- EXEC S0
- ENDI
- ALAR
- CONN
- Set_Last:
- S19="DIALER.DAT"
- FOPENO "DIALER.Dat" TEXT
- IF FAILURE RETURN
- S19(0:4)=N10
- S19(5:9)=N11
- S19(10:14)=N12
- S19(15:19)=N13
- S19(20:24)=N14
- S19(25:29)=N15
- S19(30:34)=N16
- S19(35:39)=N17
- S19(40:44)=N18
- S19(45:49)=N19
- WRIT S19 50
- FCLOSEO
- RETU
- Ask_Dial:
- N20=0
- WOPE 2 20 15 60 (contrast) ASK_ESC
- ATSA 2 22 (contrast) " Learn Dial "
- ATSA 13 20 (contrast) "├───────────────────────────────────────┤"
- ATSA 14 22 (contrast) "Entry# (or m):"
- ATSA 15 30 (contrast) " Press ESC to cancel "
- CURS N5 N6
- SET FLAG(9) OFF
- Dial_Loo:
- SCRO 0,3,22 12,58 (contrast)
- FOR N21=1,10
- N24=N20+N21
- DIRE S0 N24
- ATSA (2+N21) 22 (contrast) N24*")"
- ATSA (2+N21) 27 (contrast) S0
- ENDF
- LOCA 14 37
- N22=37
- S2=""
- Dial_Key:
- IF NOT FLAG(9) KEYGET S0
- IF FLAG(9)
- WCLO
- SET SUCC OFF
- RETU
- ENDI
- LENG S0 N21
- SWIT N21
- CASE 1
- IF FIND S0 "m"
- S2=S0
- SET SUCC ON
- GOTO Dial_End
- ENDI
- IF NOT FIND "+-@#0123456789" S0
- SOUN 100,100
- GOTO Dial_Key
- ENDI
- S2=S2*S0
- ATSA 14 N22 (contrast) S0
- INC N22
- LOCA 14 N22
- GOTO Dial_Key
- ENDC
- CASE 2
- SWIT S0
- CASE "0D"
- SET SUCC ON
- GOTO DIAL_End
- ENDC
- CASE "08"
- LENG S2 N20
- IF GT N20 1
- S2=S2(0:N20-2)
- DEC N22
- LOCA 14 N22
- ATSA 14 N22 (contrast) " "
- ELSE
- S2=""
- N22=37
- ATSA 14 N22 (contrast) " "
- ENDI
- GOTO Dial_Key
- ENDC
- DEFA
- SOUN 100,100
- GOTO Dial_Key
- ENDC
- ENDS
- ENDC
- CASE 4
- SWIT S0
- CASE "4900"
- N20=N20-10
- IF LT N20 0
- N20=90
- ENDI
- GOTO Dial_Loo
- ENDC
- CASE "5100"
- N20=N20+10
- IF GE N20 100
- N20=0
- ENDI
- GOTO Dial_Loo
- ENDC
- CASE "4700"
- N20=0
- GOTO Dial_Loo
- ENDC
- CASE "4F00"
- N20=90
- GOTO Dial_Loo
- ENDC
- DEFA
- SOUN 100,100
- GOTO Dial_Key
- ENDC
- ENDS
- ENDC
- DEFA
- SET SUCC OFF
- ENDC
- ENDS
- Dial_End:
- SET SUCC ON
- LOCA N5 N6
- WCLO
- RETU
- Ask_Esc:
- SET FLAG(9) ON
- RETU
-