| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646 |
- (* Release 3.10 *)
- (*-------------------------------------------------------------------------*
- * *
- * COMSETUP.MOD - COMMS Toolkit setup *
- * *
- * COPYRIGHT (C) 1988..1992 Clarion Software Corporation. *
- * All Rights Reserved *
- * *
- *--------------------------------------------------------------------------*)
- IMPLEMENTATION MODULE ComSetup;
- IMPORT CommUtil,FIO,IO,Lib,MenuLib,MPRINTF,RS232,SPRINTF,Str,Window;
- FROM CommUtil IMPORT FuncKeys;
- FROM RS232 IMPORT ParityCodes,FlowControls;
- TYPE
- String30 = ARRAY[0..30] OF CHAR;
- String10 = ARRAY[0..10] OF CHAR;
- String3 = ARRAY[0..3] OF CHAR;
- AsciiStd = ARRAY[0..32] OF String3;
- CONST
- Template = Window.WinDef(0,0,0,0,Window.Yellow,Window.Black,TRUE,FALSE,FALSE,TRUE,Window.SingleFrame,Window.LightGray,Window.Black);
- Code = AsciiStd('NUL','SOH','STX','ETX','EOT','ENQ','ACK','BEL','BS',
- 'HT','LF','VT','FF','CR','SO','SI','DLE','DC1','DC2',
- 'DC3','DC4','NAK','SYN','ETB','CAN','EM','SUB','ESC',
- 'FS','GS','RS','US','SP');
- VAR
- OldEmulation : Term.Emulations;
- BoolStr : ARRAY BOOLEAN OF String3;
- SMenu : MenuLib.MenuRec;
- (*........................................*)
- PROCEDURE AsciiCode(c:CHAR):String3;
- VAR
- s : String3;
- BEGIN
- IF c<=' ' THEN
- s:=Code[ORD(c)];
- ELSE
- s:=' ';
- s[0]:=c;
- END;
- RETURN s;
- END AsciiCode;
- (*........................................*)
- PROCEDURE GetDefaultSetup;
- VAR
- i : CARDINAL;
- BEGIN
- WITH Setup DO
- WITH Serial DO
- Port:=1;
- Baud:=1200;
- DataBits:=8;
- StopBits:=1;
- Parity:=None;
- FlowControl:=RtsCts;
- END;
- WITH General DO
- MaskBit7:=TRUE;
- CRInTranslation:=CR;
- CROutTranslation:=CR;
- ScriptDir:='';
- DownloadDir:='';
- END;
- WITH Kermit DO
- Sync:=1C;
- MaxPacketSize:=90;
- PadChar:=0C;
- NumPadChars:=0;
- CtlQuote:='#';
- ReptPrefix:='~';
- EightBitQuote:='&';
- ImageMode:=TRUE;
- IBMMode:=FALSE;
- EolChar:=CHR(13);
- END;
- WITH ASCII DO
- CharDelayMS:=20;
- LineDelayMS:=40;
- END;
- Emulation:=Term.EmVT100;
- FOR i:=0 TO 9 DO
- Macros[i]:='';
- END;
- END;
- END GetDefaultSetup;
- (*........................................*)
- PROCEDURE InitSetup;
- VAR
- f : FIO.File;
- BEGIN
- FIO.IOcheck := FALSE;
- f := FIO.Open('TERM.CFG');
- IF FIO.IOresult()=0 THEN
- IF NOT (FIO.RdBin(f,Setup,SIZE(SetupRec))=SIZE(SetupRec)) THEN
- GetDefaultSetup;
- END;
- FIO.Close(f);
- ELSE
- GetDefaultSetup;
- END;
- END InitSetup;
- (*................................................*)
- PROCEDURE Value(VAR s:ARRAY OF CHAR; VAR Result:CARDINAL);
- VAR
- c : CHAR;
- x,i : CARDINAL;
- BEGIN
- IF s[0]<>0C THEN
- x:=0; i:=0;
- FOR i:=0 TO HIGH(s) DO
- c := CAP(s[i]);
- IF c=0C THEN
- Result:=x;
- RETURN;
- ELSIF (c>='0') AND (c<='9') THEN
- x := x*10 + ORD(c)-48
- ELSE
- RETURN;
- END;
- END;
- Result := x;
- END;
- END Value;
- (*........................................*)
- PROCEDURE ReadNum(x,y:CARDINAL; Prompt:ARRAY OF CHAR; Min,Max:CARDINAL;VAR Result:CARDINAL);
- VAR
- Ok : BOOLEAN;
- Num,Lnth : CARDINAL;
- NumStr : ARRAY[0..3] OF CHAR;
- Def : Window.WinDef;
- Win : Window.WinType;
- BEGIN
- Def := Template;
- WITH Def DO
- X1:=x;
- Y1:=y;
- X2:=X1+39;
- Y2:=Y1+2;
- Foreground := CommUtil.Colors.PromptFore;
- Background := CommUtil.Colors.PromptBack;
- FrameFore := CommUtil.Colors.PromptFrFore;
- FrameBack := CommUtil.Colors.PromptFrBack;
- END;
- Win := Window.Open(Def);
- Window.TextColor(CommUtil.Colors.PromptFore);
- Window.GotoXY(1,1);
- IO.WrStr(Prompt);
- Window.TextColor(CommUtil.Colors.PromptHigh);
- Str.CardToStr(LONGCARD(Result),NumStr,10,Ok);
- CommUtil.ReadLine(NumStr,4);
- Num := Result;
- Value(NumStr,Num);
- IF (Num>=Min) AND (Num<=Max) THEN
- Result:=Num;
- END;
- Window.Close(Win);
- END ReadNum;
- (*........................................*)
- PROCEDURE ReadChar(x,y:CARDINAL; Prompt:ARRAY OF CHAR; VAR Ch:CHAR);
- VAR
- c : CHAR;
- Lnth : CARDINAL;
- Def : Window.WinDef;
- Win : Window.WinType;
- BEGIN
- Lnth := Str.Length(Prompt)+20;
- Def := Template;
- WITH Def DO
- X1:=x;
- Y1:=y;
- X2:=X1+39;
- Y2:=Y1+2;
- Foreground := CommUtil.Colors.PromptFore;
- Background := CommUtil.Colors.PromptBack;
- FrameFore := CommUtil.Colors.PromptFrFore;
- FrameBack := CommUtil.Colors.PromptFrBack;
- END;
- Win := Window.Open(Def);
- Window.TextColor(CommUtil.Colors.PromptFore);
- Window.GotoXY(1,1);
- IO.WrStr(Prompt);
- Window.TextColor(CommUtil.Colors.PromptHigh);
- IO.WrStr(AsciiCode(Ch));
- Window.GotoXY(Str.Length(Prompt)+1,1);
- CommUtil.Read(c);
- IF c<>CHR(27) THEN
- Ch:=c;
- END;
- Window.Close(Win);
- END ReadChar;
- (*........................................*)
- PROCEDURE ModemSetup(MenuX,MenuY:CARDINAL);
- VAR
- i,Count : CARDINAL;
- Serial : MenuLib.MenuRec;
- (*. . . . . . . . . . . . . . . . . . . . .*)
- PROCEDURE ParStr(Parity:ParityCodes):String10;
- BEGIN
- CASE Parity OF
- Odd : RETURN ' ODD'; |
- Even : RETURN ' EVEN'; |
- Mark : RETURN ' MARK'; |
- Space : RETURN 'SPACE'; |
- None : RETURN ' NONE'; |
- END;
- END ParStr;
- (*. . . . . . . . . . . . . . . . . . . . .*)
- PROCEDURE FlowStr(Ctrl:FlowControls):String10;
- BEGIN
- CASE Ctrl OF
- NoFlowControl: RETURN ' NONE'; |
- RtsCts : RETURN ' RTS/CTS'; |
- XonXoff : RETURN 'XON/XOFF'; |
- END;
- END FlowStr;
- (*. . . . . . . . . . . . . . . . . . . . .*)
- PROCEDURE MsChangeMenu;
- BEGIN
- WITH Setup.Serial DO
- WITH Serial DO
- SPRINTF.SPrintF1(' Comm Port: %5u ',Port,Option[0].Name);
- SPRINTF.SPrintF1(' Baud Rate: %5u ',Baud,Option[1].Name);
- SPRINTF.SPrintF1(' Data Bits: %5u ',DataBits,Option[2].Name);
- SPRINTF.SPrintF1(' Parity: %s ',ParStr(Parity),Option[3].Name);
- SPRINTF.SPrintF1(' Stop bits: %5u ',StopBits,Option[4].Name);
- SPRINTF.SPrintF1(' Flow Ctrl: %s ',FlowStr(FlowControl),Option[5].Name);
- END; (*WITH*)
- END; (*WITH*)
- END MsChangeMenu;
- (*. . . . . . . . . . . . . . . . . . . . .*)
- BEGIN (* ModemSetup *)
- MenuLib.InitMenu(Serial,'',MenuX,MenuY,22);
- Serial.EscapeOK := TRUE;
- Serial.ExitOnChar := TRUE;
- FOR i:=0 TO 5 DO
- MenuLib.AddOption(Serial,' Comm Port: ');
- END;
- MsChangeMenu;
- MenuLib.DispMenu(Serial);
- LOOP
- WITH Setup.Serial DO
- CASE MenuLib.MenuDrive(Serial) OF
- -1 : EXIT; |
- 0 : Port := (Port MOD 4)+1; |
- 1 : Baud := Baud*2;
- IF Baud>19200 THEN
- Baud := 75;
- END; |
- 2 : DataBits := 7+ORD(DataBits=7); |
- 3 : CASE Parity OF
- None : Parity:=Even; |
- Even : Parity:=Odd; |
- Odd : Parity:=Mark; |
- Mark : Parity:=Space; |
- Space: Parity:=None; |
- END; |
- 4 : StopBits := 1+ORD(StopBits=1); |
- 5 : IF FlowControl=NoFlowControl THEN
- FlowControl:=RtsCts
- ELSIF FlowControl=RtsCts THEN
- FlowControl:=XonXoff
- ELSE
- FlowControl:=NoFlowControl
- END; |
- END;
- END;
- MsChangeMenu;
- END;
- MenuLib.KillMenu(Serial);
- RS232.UnInstall;
- WITH Setup.Serial DO
- RS232.SelectPort(Port);
- RS232.InitPort(Baud,DataBits,StopBits,Parity);
- RS232.Install;
- RS232.SetFlowControl(FlowControl);
- END;
- END ModemSetup;
- (*........................................*)
- PROCEDURE GeneralSetup(MenuX,MenuY:CARDINAL);
- VAR
- i : CARDINAL;
- GMenu : MenuLib.MenuRec;
- Selection : INTEGER;
- CRText : ARRAY CrTypes OF String10;
- (*. . . . . . . . . . . . . . . . . . . . .*)
- PROCEDURE GsChangeMenu;
- BEGIN
- WITH Setup.General DO
- WITH GMenu DO
- SPRINTF.SPrintF1(' Strip Parity Bit: %3s ',BoolStr[MaskBit7],Option[0].Name);
- SPRINTF.SPrintF1(' CR-in Translation: %4s ',CRText[CRInTranslation],Option[1].Name);
- SPRINTF.SPrintF1(' CR-out Translation: %4s ',CRText[CROutTranslation],Option[2].Name);
- END;
- END;
- END GsChangeMenu;
- (*. . . . . . . . . . . . . . . . . . . . .*)
- BEGIN (* GeneralSetup *)
- CRText[CR]:='CR';
- CRText[CRLF]:='CRLF';
- MenuLib.InitMenu(GMenu,'',MenuX,MenuY,26);
- GMenu.EscapeOK := TRUE;
- FOR i:=0 TO 2 DO
- MenuLib.AddOption(GMenu,' X ');
- END;
- MenuLib.AddOption(GMenu,' Directory for Scripts ');
- MenuLib.AddOption(GMenu,' Directory for Downloads ');
- GsChangeMenu;
- MenuLib.DispMenu(GMenu);
- LOOP
- Selection := MenuLib.MenuDrive(GMenu);
- WITH Setup.General DO
- CASE Selection OF
- -1 : EXIT; |
- 0 : MaskBit7 := (NOT MaskBit7); |
- 1 : IF CRInTranslation=CR THEN
- CRInTranslation:=CRLF
- ELSE
- CRInTranslation:=CR
- END; |
- 2 : IF CROutTranslation=CR THEN
- CROutTranslation:=CRLF
- ELSE
- CROutTranslation:=CR
- END; |
- 3 : CommUtil.ReadString(MenuX+1,MenuY+5,'','',ScriptDir);|
- 4 : CommUtil.ReadString(MenuX+1,MenuY+6,'','',DownloadDir);|
- END;
- END;
- IF (Selection>=0) AND (Selection<=2) THEN
- GsChangeMenu;
- END;
- END;
- MenuLib.KillMenu(GMenu);
- END GeneralSetup;
- (*........................................*)
- PROCEDURE KermitSetup(MenuX,MenuY:CARDINAL);
- VAR
- i : CARDINAL;
- KMenu : MenuLib.MenuRec;
- ModeStr : ARRAY BOOLEAN OF String10;
- (*. . . . . . . . . . . . . . . . . . . .*)
- PROCEDURE KsChangeMenu;
- BEGIN
- WITH Setup.Kermit DO
- WITH KMenu DO
- SPRINTF.SPrintF1(' Sync Char: %3s ',AsciiCode(Sync),Option[0].Name);
- SPRINTF.SPrintF1(' Packet Size: %4u ',MaxPacketSize,Option[1].Name);
- SPRINTF.SPrintF1(' Pad Char: %3s ',AsciiCode(PadChar),Option[2].Name);
- SPRINTF.SPrintF1(' No. Pad Chars: %4u ',NumPadChars,Option[3].Name);
- SPRINTF.SPrintF1(' Control Quote: %c ',CtlQuote,Option[4].Name);
- SPRINTF.SPrintF1(' Repeat Prefix: %c ',ReptPrefix,Option[5].Name);
- SPRINTF.SPrintF1(' 8th bit Quote: %c ',EightBitQuote,Option[6].Name);
- SPRINTF.SPrintF1(' Transfer Mode: %4s ',ModeStr[ImageMode],Option[7].Name);
- SPRINTF.SPrintF1(' IBM Mode: %3s ',BoolStr[IBMMode],Option[8].Name);
- SPRINTF.SPrintF1(' EOL Char: %3s ',AsciiCode(EolChar),Option[9].Name);
- END;
- END;
- END KsChangeMenu;
- (*. . . . . . . . . . . . . . . . . . . .*)
- BEGIN (* KermitSetup *)
- ModeStr[TRUE] := '8Bit';
- ModeStr[FALSE] := '7Bit';
- MenuLib.InitMenu(KMenu,'',MenuX,MenuY,21);
- KMenu.EscapeOK := TRUE;
- FOR i:=0 TO 9 DO
- MenuLib.AddOption(KMenu,' x ');
- END;
- KsChangeMenu;
- MenuLib.DispMenu(KMenu);
- LOOP
- WITH Setup.Kermit DO
- CASE MenuLib.MenuDrive(KMenu) OF
- -1 : EXIT; |
- 0 : ReadChar(MenuX+1,MenuY+2,' Sync Char? ',Sync); |
- 1 : ReadNum(MenuX+1,MenuY+3,' Packet Size? ',30,90,MaxPacketSize);|
- 2 : ReadChar(MenuX+1,MenuY+4,' Pad Char? ',PadChar);|
- 3 : ReadNum(MenuX+1,MenuY+5,' No. Pad Chars? ',0,256,NumPadChars);|
- 4 : ReadChar(MenuX+1,MenuY+6,' Ctl Quote Char? ',CtlQuote);|
- 5 : ReadChar(MenuX+1,MenuY+7,' Repeat Prefix? ',ReptPrefix);|
- 6 : ReadChar(MenuX+1,MenuY+8,' 8th Bit Quote? ',EightBitQuote);|
- 7 : ImageMode := NOT ImageMode; |
- 8 : IBMMode := NOT IBMMode; |
- 9 : ReadChar(MenuX+1,MenuY+11,' EOL Char? ',EolChar);|
- END;
- END;
- KsChangeMenu;
- END;
- MenuLib.KillMenu(KMenu);
- END KermitSetup;
- (*........................................*)
- PROCEDURE AsciiSetup(MenuX,MenuY:CARDINAL);
- VAR
- i : CARDINAL;
- AMenu : MenuLib.MenuRec;
- (*. . . . . . . . . . . . . . . . . . . .*)
- PROCEDURE AsChangeMenu;
- BEGIN
- WITH Setup.ASCII DO
- WITH AMenu.Option[0] DO
- SPRINTF.SPrintF1(' Character Delay (ms): %4u ',CharDelayMS,Name);
- END;
- WITH AMenu.Option[1] DO
- SPRINTF.SPrintF1(' Line Delay (ms): %4u ',LineDelayMS,Name);
- END;
- END;
- END AsChangeMenu;
- (*. . . . . . . . . . . . . . . . . . . .*)
- BEGIN (* AsciiSetup *)
- MenuLib.InitMenu(AMenu,'',MenuX,MenuY,28);
- AMenu.EscapeOK := TRUE;
- AMenu.ExitOnChar := TRUE;
- FOR i:=0 TO 1 DO
- MenuLib.AddOption(AMenu,' x ');
- END;
- AsChangeMenu;
- MenuLib.DispMenu(AMenu);
- LOOP
- WITH Setup.ASCII DO
- CASE MenuLib.MenuDrive(AMenu) OF
- -1 : EXIT; |
- 0 : ReadNum(MenuX+1,MenuY+2,' Char Delay? ',0,9999,CharDelayMS); |
- 1 : ReadNum(MenuX+1,MenuY+3,' Line Delay? ',0,9999,LineDelayMS); |
- END;
- END;
- AsChangeMenu;
- END;
- MenuLib.KillMenu(AMenu);
- END AsciiSetup;
- (*........................................*)
- PROCEDURE ChangeMacro(MenuX,MenuY:CARDINAL);
- VAR
- i : CARDINAL;
- Def : Window.WinDef;
- Win : Window.WinType;
- (*. . . . . . . . . . . . . . . . . . . . .*)
- PROCEDURE Highlight(MacroNo:CARDINAL; On:BOOLEAN);
- BEGIN
- Window.GotoXY(1,MacroNo+1);
- Window.TextBackground(CommUtil.Colors.MacroBack);
- Window.TextColor(CommUtil.Colors.MacroFore);
- MPRINTF.PrintF1(' %u ',MacroNo);
- IF On THEN
- Window.TextBackground(CommUtil.Colors.MacroHighBack);
- Window.TextColor(CommUtil.Colors.MacroHighFore);
- ELSE
- Window.TextBackground(CommUtil.Colors.MacroLowBack);
- Window.TextColor(CommUtil.Colors.MacroLowFore);
- END;
- MPRINTF.PrintF1('%-70s\r',Setup.Macros[MacroNo]);
- Window.GotoXY(4,MacroNo+1);
- END Highlight;
- (*. . . . . . . . . . . . . . . . . . . . .*)
- PROCEDURE EditMacros;
- VAR
- Ch : CHAR;
- MacroNo,
- NextMacroNo : CARDINAL;
- ch : ARRAY[0..1] OF CHAR;
- BEGIN
- ch:=' ';
- MacroNo:=0;
- LOOP
- Highlight(MacroNo,TRUE);
- NextMacroNo := MacroNo;
- CommUtil.Read(Ch);
- CASE CommUtil.FuncKeyTyped OF
- Cup : IF MacroNo>0 THEN
- NextMacroNo:=MacroNo-1;
- END; |
- Cdown : IF MacroNo<9 THEN
- NextMacroNo:=MacroNo+1;
- END; |
- Escape : EXIT; |
- EndKey,Del,
- Cright : IF Setup.Macros[MacroNo,0]<>0C THEN
- CommUtil.PushBack(Ch);
- CommUtil.SpacesOK:=TRUE;
- CommUtil.ReadLine(Setup.Macros[MacroNo],70);
- IF MacroNo<9 THEN
- NextMacroNo:=MacroNo+1;
- END;
- END; |
- NotRecognised:CommUtil.PushBack(Ch);
- CommUtil.SpacesOK:=TRUE;
- CommUtil.ReadLine(Setup.Macros[MacroNo],70);
- IF MacroNo<9 THEN
- NextMacroNo:=MacroNo+1;
- END; |
- END;
- Highlight(MacroNo,FALSE);
- MacroNo := NextMacroNo;
- END;
- END EditMacros;
- (*. . . . . . . . . . . . . . . . . . . . .*)
- BEGIN (* ChangeMacro *)
- Def := Template;
- WITH Def DO
- X1:=3;
- Y1:=6;
- X2:=74;
- Y2:=17;
- Foreground := CommUtil.Colors.MacroFore;
- Background := CommUtil.Colors.MacroBack;
- FrameFore := CommUtil.Colors.MacroFrFore;
- FrameBack := CommUtil.Colors.MacroFrBack;
- END;
- Win := Window.Open(Def);
- Window.SetTitle(Win,'Macros',Window.LeftUpperTitle);
- FOR i:=0 TO 9 DO
- Highlight(i,FALSE);
- END;
- EditMacros;
- Window.Close(Win);
- END ChangeMacro;
- (*........................................*)
- PROCEDURE ChangeEmulation(MenuX,MenuY:CARDINAL);
- BEGIN
- WITH Setup DO
- CASE Emulation OF
- Term.EmVT100 : Emulation := Term.EmVT52;
- SMenu.Option[5].Name := ' E - Emulating VT52 '; |
- Term.EmVT52 : Emulation := Term.EmANSI;
- SMenu.Option[5].Name := ' E - Emulating ANSI '; |
- Term.EmANSI : Emulation := Term.EmVT100;
- SMenu.Option[5].Name := ' E - Emulating VT100 '; |
- END;
- END;
- END ChangeEmulation;
- (*........................................*)
- PROCEDURE SaveSetup;
- VAR
- f : FIO.File;
- BEGIN
- f := FIO.Create('TERM.CFG');
- FIO.WrBin(f,Setup,SIZE(SetupRec));
- FIO.Close(f);
- END SaveSetup;
- (*........................................*)
- PROCEDURE ChangeSetup;
- VAR
- Result : INTEGER;
- BEGIN
- OldEmulation := Setup.Emulation;
- MenuLib.InitMenu(SMenu,'Setup',1,1,21);
- SMenu.ExitOnChar := TRUE;
- SMenu.EscapeOK := TRUE;
- MenuLib.AddOption(SMenu,' C - Comms Setup ');
- MenuLib.AddOption(SMenu,' G - General Setup ');
- MenuLib.AddOption(SMenu,' K - Kermit Setup ');
- MenuLib.AddOption(SMenu,' A - ASCII Setup ');
- MenuLib.AddOption(SMenu,' M - Edit Macros ');
- CASE Setup.Emulation OF
- Term.EmVT100 : MenuLib.AddOption(SMenu,' E - Emulating VT100 '); |
- Term.EmVT52 : MenuLib.AddOption(SMenu,' E - Emulating VT52 '); |
- Term.EmANSI : MenuLib.AddOption(SMenu,' E - Emulating ANSI '); |
- END;
- MenuLib.AddOption(SMenu,' S - Save Setup ');
- MenuLib.DispMenu(SMenu);
- LOOP
- Result := MenuLib.MenuDrive(SMenu);
- CASE Result OF
- -1 : EXIT; |
- 0 : ModemSetup(2,3); |
- 1 : GeneralSetup(2,4); |
- 2 : KermitSetup(2,5); |
- 3 : AsciiSetup(2,6); |
- 4 : ChangeMacro(2,7); |
- 5 : ChangeEmulation(2,8); |
- 6 : SaveSetup; |
- END;
- END;
- MenuLib.KillMenu(SMenu);
- IF Setup.Emulation<>OldEmulation THEN
- CASE Setup.Emulation OF
- Term.EmVT100 : Term.EmulateVT100; |
- Term.EmVT52 : Term.EmulateVT52; |
- Term.EmANSI : Term.EmulateANSI; |
- END;
- END;
- END ChangeSetup;
- (*........................................*)
- BEGIN
- BoolStr[TRUE] := 'YES';
- BoolStr[FALSE] := 'NO';
- END ComSetup.
|