Listing of file='ASK?TTY' on disk='vmedia/731-0110A.wvd.zip'
# Sector 258, program filename = 'ASK?TTY' 0010 REM ASK?TTY 04/07/83,COPYRIGHT WANG LABS,1981 : GOTO 1500 : ON A GOTO 2010,2030 1490 REM %Prompt screen load 1 1500 P0=40 : P=1 : GOSUB '33 : GOSUB 2600 1540 REM %Prompt screen load 2 1550 P0=31 : P=2 : GOSUB '33 1552 IF STR(Z$,37,2)="10"THEN STR(Z$,38,1)="1" : REM /.Adjust TC board 0 to 1 1555 REM .Save input selection 1560 A=1 : GOSUB 2400 : A=VAL(C$(A)) : STR(N$,21)=D$(A) : ON AGOSUB 100,1820,1830 : GOSUB 2510 : STR(W$,17)=STR(D$(A),1,8) 1582 REM .Save Host Responds 1585 GOSUB 2950 1590 REM .Save output selection 1600 A=3 : GOSUB 2400 : A=VAL(C$(A)) : STR(N$,43)=D$(A) : ON AGOTO 1620 : A=VAL(C$(4))+1 1620 GOSUB 2550 : STR(W$,25)=STR(D$(A),1,8) : LOAD DC T#0,N$(6) 1820 A=VAL(C$(4))+1 : RETURN 1830 A=4 : RETURN 1990 REM %..ASKAPARM -- TTY question interface 2000 REM ......TTY I/O 2010 ON PGOSUB 2160,2390 : RETURN 2030 ON PGOSUB 2140,2390 : RETURN 2130 REM %^.TTY Screen 1 Prompts 2140 D$="T T Y P a r a m e t e r s" : P9=7 : IF L=80THEN 2160 : D1=1 : D=1 2160 INIT(20)D$() : ON AGOTO 2170,2200,2230,2260,2280,2290,2320 2169 REM .?1 2170 A$="BAUD RATE" : D$(1)="110" : D$(2)="150" : D$(3)="300" : D$(4)="1200" : D$(5)="7200 (null modem)" : D$(6)="9600 (null modem)" : RETURN 2199 REM .?2 2200 A$="PARITY" : D$(1)="Even" : D$(2)="Odd" : D$(3)="None" : RETURN 2229 REM .?3 2230 A$="STOP BITS" : D$(1)="1" : D$(2)="1.5" : D$(3)="2" : RETURN 2259 REM .?4 2260 A$="BITS PER CHARACTER" : D$(1)="7" : D$(2)="8" : RETURN 2279 REM .?5 2280 A$="LINE PROTOCOL" : D$(1)="TTY Terminal" : D$(2)="TTY Host" : RETURN 2289 REM .?6 2290 A$="MODEM OPERATION" : D$(1)="Full Duplex" : D$(2)="Half Duplex" : RETURN 2319 REM .?7 2320 IF C$(6)=HEX(02)THEN 110 : IF C$(5)=HEX(02)THEN 110 2330 A$="HOST ECHO EACH CHAR.?" : D$(1)="No" : D$(2)="Yes" : RETURN 2380 REM %^.TTY Screen 2 Prompts 2390 D$="I n p u t / O u t p u t M o d u l e s" : P9=7 2395 IF L=80THEN 2400 : D1=1 : D=1 2400 INIT(20)D$() : ON AGOTO 2410,2430,2440,2450,2460,2470,2480 2409 REM .? 1 2410 A$="SEND FROM" : D$(1)="Keyboard Only" : D$(2)="Disk" : RETURN 2420 D$(3)="Memory" : RETURN 2429 REM .? 2 2430 IF C$(1)=HEX(01)THEN 110 : IF STR(Z$,45,1)="2"THEN 2434 2432 A$="HOST REPLIES WITH" : D$(1)="LF only" : D$(2)="LF + other" : D$(3)="Nothing" : RETURN 2434 C$(2)=HEX(03) : GOTO 110 2439 REM .? 3 2440 A$="RECEIVE TO" : D$(1)="CRT/Line printer" : D$(2)="Disk" : RETURN 2449 REM .? 4 2450 IF C$(1)=HEX(02)THEN 2454 : REM /Branch if send from disk 2452 IF C$(3)=HEX(01)THEN 110 : REM /Branch if not buffered print 2454 A$="DISK ACCESS METHOD" : D$(1)="via Search" : D$(2)="via On Error" : RETURN 2459 REM .? 5 2460 A$="BUFFER PRINT IN CPU?" : D$(1)="No" : D$(2)="Yes--uses 2K memory" : RETURN 2469 REM .? 6 2470 A$="T.C. BOARD TYPE" : D$(1)="2227B, 28B or 28C" : D$(2)="MXE" : RETURN 2479 REM .? 7 2480 A$="T.C. BOARD ADDRESS" : IF C$(6)=HEX(02)THEN 2490 : AND (C$(7),0F) : D$(1)="1C" : D$(2)="1D" : D$(3)="1E" : D$(4)="1F" : RETURN 2490 GOSUB '205("T.C. PORT ON MXE",29,2,"08") : RETURN 2500 DEFFN'205(A$,C1,C2,D1$) : E=2 : D$(3)="Use MXE port number 02-16" : D$(4)="02 03 04 05 06 07 08 09 10 11 12" : D$(5)="13 14 15 16" : BIN(C$)=1 : IF STR(Z$,C1,C2)=" "THEN STR(Z$,C1,C2)=D1$ : D$(1)=STR(Z$,C1,C2) : RETURN 2505 REM %.INPUT MODULES 2506 REM . 1=KBD 2=DISK/SEARCH 3=DISK/ERROR 4=(MEMORY) 2510 D$(1)=" " : D$(2)="CIOA010" : D$(3)="CIOA070" : D$(4)="CIO*180" : RETURN 2545 REM %.OUTPUT MODULES 2546 REM . 1=CRT 2=DISK/SEARCH 3=DISK/ERROR 2550 D$(1)=" " : D$(2)="CIOA040" : D$(3)="CIOA080" : RETURN 2580 REM %..SET PARAMETERS FROM RESPONSES 2590 REM .Set TTY Communications Control Vector 2600 INIT(00)STR(Z$,1,20) 2610 STR(Z$,4,1)=HEX(5E) : REM /.PARITY FRAMING CHARACTER 2620 STR(Z$,6,1)=HEX(01) : REM /ENABLE END OF RECORD DETECTION 2630 STR(Z$,9,2)=HEX(120C) : REM /BREAK SEND DETECT INTERVALS 2640 STR(Z$,2,1)=HEX(01) : REM /FULL W/DEL BREAK ENABLED 2650 STR(Z$,5,1)=HEX(02) : REM /TIMEOUT INTERVAL (.2 SECONDS) 2660 REM .? 1 **** BAUD RATE **** 110/150/300/1200/7200/9600 2670 A$=HEX(030507090E0F) : B$=STR(A$,VAL(C$(1))) : OR (STR(Z$,1,1),B$) 2690 REM .? 2 **** PARITY **** EVEN/ODD/NO 2700 A$=HEX(010300) : B$=STR(A$,VAL(C$(2))) : OR (STR(Z$,3,1),B$) 2705 REM .? 3 **** STOP BITS **** 1/1.5/2 2710 A$=HEX(102030) : B$=STR(A$,VAL(C$(3))) : OR (STR(Z$,1,1),B$) 2720 REM .? 4 **** BITS/CHAR **** 7/8 2730 A$=HEX(2030) : B$=STR(A$,VAL(C$(4))) : OR (STR(Z$,3,1),B$) 2740 REM .? 5 **** LINE PROTOCOL **** Terminal/Host 2750 IF C$(5)=HEX(01)THEN 2790 : C$(7)=HEX(01) 2780 REM .? 6 **** MODEM DUPLEX **** FULL/HALF 2790 A$=HEX(3010) : B$=STR(A$,VAL(C$(6))) : OR (STR(Z$,2,1),B$) 2810 REM .? 7 **** HOST ECHO **** NO/YES 2820 A$=HEX(0001) : STR(Z$,19,1)=STR(A$,VAL(C$(7)),1) : W$="TTY*010B" : N$="TELETYPE EMULATOR" : RETURN 2940 REM ? 2 **** HOST RESPONDS **** LF/LF+/Nothing 2950 A$=HEX(010200) : STR(Z$,20,1)=STR(A$,VAL(C$(2)),1) 2960 REM %.Operator may modify the following before saving configuration. 2970 IF STR(Z$,45,1)<>"2"THEN 2975 : STR(Z$,21,8)=HEX(0D0A) : REM /1-8 BYTE EOM SEQ ON SEND (FROM HOST) : GOTO 2980 2975 STR(Z$,21,8)=HEX(0D) : REM /1-8 BYTE EOM SEQ ON SEND (FROM TERMINAL) 2980 STR(Z$,51)=HEX(5BC75DC35CCC5FC45CA15F827F81) 2990 REM ...........[sin]cos\pi _exp\Lod_RunClr 3000 REM .Special symbols are keyed by the following keys. 3010 REM .. 1B--5B [ or SIN( 1D--5D ] or COS( 1E--5E ^ 3020 REM .. 1C--5C \ PI or LOAD 1F--5F _ EXP( or RUN 7F CLEAR 3030 RETURN