.. PCPMENU.MEX (04/15/90) .. This is the core of the PC-Pursuit script. If this routine is entered .. with a selection already indicated in variable %m, then that selection .. is processed immediately. Otherwise, a menu of systems is displayed on .. the screen. The menu also shows the current baud rate selected for outdial .. connections. This information is drawn separately so that it can be .. updated separately. if %m<100 GOTO PROCESS;. if selection already made, process it .. ---------------------------------------------------------------------- .. .. Main Re-entry Point and Display of BBS Menu .. .. ---------------------------------------------------------------------- LABEL DRAWSCREEN screen on cls box 1 1 20 79 @ 2 32 say "PC-PURSUIT MENU" @ 6 3 say "1. Al Hawley (ZN02)" ..... addition entries omitted here @ 14 3 say "9. Vanhorn (ZN66)" @ 6 27 say "10. Roger Warren (ZN09)" ..... addition entries omitted here @ 14 27 say "18. ...................." @ 6 52 say "19. Terry Pinto" @ 11 52 say "24. ...................." ..... addition entries omitted here @ 12 52 say "25. ...................." @ 14 52 say "27. WLA PCBoard" @ 16 12 say " 0. RESET" @ 17 12 say " 99. QUIT" @ 18 12 say "100. MANUAL ENTRY MENU" .. The following baud-rate-selection choices are allowed only if not .. presently connected to a city. if %a=0 @ 16 45 say "200. 2400 BAUD AUTO" @ 17 45 say "201. 1200 BAUD FIXED" @ 18 45 say "202. 2400 BAUD FIXED" endif .. ---------------------------------------------------------------------- .. .. Baud Rate / City Connection Status Display .. .. ---------------------------------------------------------------------- LABEL DRAWBAUD if %a=0 if %n>0 @ 4 20 say " Set to max ",%b," bps (auto stepdown) " else @ 4 20 say " Set to ",%b," bps " endif else @ 4 20 say "Connected to Citycode ",D," at ",B,"00 bps" endif .. ---------------------------------------------------------------------- .. .. Get / Process Selection .. .. ---------------------------------------------------------------------- LABEL GETSEL @ 22 12 say "Enter Selection: " @ 22 29 input;%m=value LABEL PROCESS .. ---------- special selections if %m=0 GOTO RESET if %m=99 A="User termination";GOTO ABORT if %m=100 READ PCPMAN;. manual entry of city and phone # .. if already connected to a city, do not allow baud rate changes by .. resetting the choice to 9999 if %p<>0 if %m>=200 %m=9999 endif .. handle baud mode selections if %m=200 %n=2;%b=2400;B="24";GOTO DRAWBAUD if %m=201 %n=0;%b=1200;B="12";GOTO DRAWBAUD if %m=202 %n=0;%b=2400:B="24";GOTO DRAWBAUD if %m>27 GOTO BADSELECT if %m<1 GOTO BADSELECT .. ---------- calling selections .. reject unassigned menu choices if %m=12 GOTO BADSELECT if %m=13 GOTO BADSELECT if %m=14 GOTO BADSELECT if %m=15 GOTO BADSELECT if %m=16 GOTO BADSELECT if %m=17 GOTO BADSELECT if %m=18 GOTO BADSELECT if %m=24 GOTO BADSELECT if %m=25 GOTO BADSELECT READ PCPDATA;. chain to data fetch routine LABEL BADSELECT bell 1 GOTO GETSEL .. ---------------------------------------------------------------------- .. .. Reset PCP and Disconnect from City .. .. ---------------------------------------------------------------------- LABEL RESET screen on;cls;say "Resetting city connection/n/n" if %p=0 say " not presently connected to any city ";sleep 1;GOTO DRAWSCREEN %m=100;. reset menu choice %z=3;. max tries say " attempt countdown: " LABEL RESET1 if %z<1 screen on;say "Failed";sleep 1;GOTO RESET2 screen on;say %z," ";screen off %z=%z-1 sendout "/r@/r";. get Telenet prompt wait string 1 "@" if value=0 sleep 1;GOTO RESET1 screen on;say "/n Disconnect from city... " sendout "D/r";. disconnect from city (if any) LABEL RESET2 say "/n Reinitializing variables... " %z=0 %a=0 %p=0 D=" " E=" " F=" " sleep 1 GOTO DRAWSCREEN .. ---------------------------------------------------------------------- .. .. Subroutines .. .. ---------------------------------------------------------------------- LABEL ABORT screen on cls @ 5 0 say A,"; session ended." %z=3;. max tries LABEL ABORT1 %z=%z-1 if %z<1 dsc;GOTO ABORT2;. if soft disconnect fails, just hang up screen on sendout "/r@/r";. send disconnect commands to Telenet wait string 1 "@" if value<>1 GOTO ABORT1 sendout "hangup/r" wait string 10 "NO CARRIER" if value <>1 GOTO ABORT1 LABEL ABORT2 sendout "AT\N1/r" say "/n/nModem MNP mode turned off/n" cpm