home *** CD-ROM | disk | FTP | other *** search
/ Power Programming / powerprogramming1994.iso / progtool / pibterm / pibt41s4.arc / SETDEFAU.MOD < prev    next >
Text File  |  1988-03-23  |  37KB  |  1,112 lines

  1. (*----------------------------------------------------------------------*)
  2. (*        Set_Defaults --- Set Default Communications Parameters        *)
  3. (*----------------------------------------------------------------------*)
  4.  
  5. PROCEDURE Set_Defaults;
  6.  
  7. (*----------------------------------------------------------------------*)
  8. (*                                                                      *)
  9. (*     Procedure:  Set_Defaults                                         *)
  10. (*                                                                      *)
  11. (*     Purpose:    Set default communications parameters                *)
  12. (*                                                                      *)
  13. (*     Calling Sequence:                                                *)
  14. (*                                                                      *)
  15. (*        Set_Defaults;                                                 *)
  16. (*                                                                      *)
  17. (*      Calls:   None                                                   *)
  18. (*                                                                      *)
  19. (*      Remarks:  Note that defaults for color-related variables are    *)
  20. (*                set in PibTerm so that error messages will appear     *)
  21. (*                in a readable form.                                   *)
  22. (*                                                                      *)
  23. (*----------------------------------------------------------------------*)
  24.  
  25. VAR
  26.    I: INTEGER;
  27.    J: INTEGER;
  28.    F: FILE;
  29.  
  30. (*----------------------------------------------------------------------*)
  31.  
  32. PROCEDURE Set_Parameter_Addresses;
  33.  
  34. BEGIN (* Set_Parameter_Addresses *)
  35.  
  36.    Parameters[  1].PDesc := @Desc_01;
  37.  
  38.    Parameters[  2].PDesc := @Desc_02;
  39.  
  40.    Parameters[  3].PDesc := @Desc_03;
  41.  
  42.    Parameters[  4].PDesc := @Desc_04;
  43.  
  44.    Parameters[  5].PDesc := @Desc_05;
  45.  
  46.    Parameters[  6].PAddr := @Command_Key_Name;
  47.    Parameters[  6].PDesc := @Desc_06;
  48.  
  49.    Parameters[  7].PAddr := @Use_Military;
  50.    Parameters[  7].PDesc := @Desc_07;
  51.  
  52.    Parameters[  8].PAddr := @Date_Format_String;
  53.    Parameters[  8].PDesc := @Desc_08;
  54.  
  55.    Parameters[  9].PAddr := @Script_Order_String;
  56.    Parameters[  9].PDesc := @Desc_09;
  57.  
  58.    Parameters[ 10].PAddr := @Ascii_CRLF;
  59.    Parameters[ 10].PDesc := @Desc_10;
  60.  
  61.    Parameters[ 11].PDesc := @Desc_11;
  62.  
  63.    Parameters[ 12].PDesc := @Desc_12;
  64.  
  65.    Parameters[ 13].PAddr := @Host_Auto_Baud;
  66.    Parameters[ 13].PDesc := @Desc_AB;
  67.  
  68.    Parameters[ 14].PAddr := @Ascii_Char_Delay;
  69.    Parameters[ 14].PDesc := @Desc_AC;
  70.  
  71.    Parameters[ 15].PAddr := @Ascii_Show_Text;
  72.    Parameters[ 15].PDesc := @Desc_AD;
  73.  
  74.    Parameters[ 16].PAddr := @Ascii_CR_LF_String;
  75.    Parameters[ 16].PDesc := @Desc_AE;
  76.  
  77.    Parameters[ 17].PAddr := @Ascii_Send_Blank;
  78.    Parameters[ 17].PDesc := @Desc_AF;
  79.  
  80.    Parameters[ 18].PAddr := @Auto_Load_FunKeys;
  81.    Parameters[ 18].PDesc := @Desc_AK;
  82.  
  83.    Parameters[ 19].PAddr := @Ascii_Line_Delay;
  84.    Parameters[ 19].PDesc := @Desc_AL;
  85.  
  86.    Parameters[ 20].PAddr := @Attended_Mode;
  87.    Parameters[ 20].PDesc := @Desc_AM;
  88.  
  89.    Parameters[ 21].PAddr := @Ascii_Pacing_Char;
  90.    Parameters[ 21].PDesc := @Desc_AP;
  91.  
  92.    Parameters[ 22].PAddr := @Ascii_Line_Size;
  93.    Parameters[ 22].PDesc := @Desc_AS;
  94.  
  95.    Parameters[ 23].PAddr := @Ascii_Translate;
  96.    Parameters[ 23].PDesc := @Desc_AT;
  97.  
  98.    Parameters[ 24].PAddr := @Host_CTTY_Device;
  99.    Parameters[ 24].PDesc := @Desc_AU;
  100.  
  101.    Parameters[ 25].PAddr := @ATI_Ega_Wonder;
  102.    Parameters[ 25].PDesc := @Desc_AW;
  103.  
  104.    Parameters[ 26].PAddr := @Ascii_Send_Asis;
  105.    Parameters[ 26].PDesc := @Desc_AX;
  106.  
  107.    Parameters[ 27].PAddr := @Ascii_Use_CtrlZ;
  108.    Parameters[ 27].PDesc := @Desc_AZ;
  109.  
  110.    Parameters[ 28].PAddr := @Baud_Rate;
  111.    Parameters[ 28].PDesc := @Desc_BA;
  112.  
  113.    Parameters[ 29].PAddr := @Max_Review_Length;
  114.    Parameters[ 29].PDesc := @Desc_BB;
  115.  
  116.    Parameters[ 30].PAddr := @Box_Chars;
  117.    Parameters[ 30].PDesc := @Desc_BC;
  118.  
  119.    Parameters[ 31].PAddr := @Alter_Baud_Rate;
  120.    Parameters[ 31].PDesc := @Desc_BD;
  121.  
  122.    Parameters[ 32].PAddr := @Break_Length;
  123.    Parameters[ 32].PDesc := @Desc_BL;
  124.  
  125.    Parameters[ 33].PAddr := @CompuServe_B_On;
  126.    Parameters[ 33].PDesc := @Desc_BP;
  127.  
  128.    Parameters[ 34].PAddr := @BS_String;
  129.    Parameters[ 34].PDesc := @Desc_BS;
  130.  
  131.    Parameters[ 35].PAddr := @New_Menu_Text_Color_2;
  132.    Parameters[ 35].PDesc := @Desc_CA;
  133.  
  134.    Parameters[ 36].PAddr := @New_BackGround_Color;
  135.    Parameters[ 36].PDesc := @Desc_CB;
  136.  
  137.    Parameters[ 37].PAddr := @New_Menu_Title_Color;
  138.    Parameters[ 37].PDesc := @Desc_CC;
  139.  
  140.    Parameters[ 38].PAddr := @New_ForeGround_Color;
  141.    Parameters[ 38].PDesc := @Desc_CF;
  142.  
  143.    Parameters[ 39].PAddr := @Modem_Carrier_High;
  144.    Parameters[ 39].PDesc := @Desc_CH;
  145.  
  146.    Parameters[ 40].PAddr := @Close_Comm_For_Dos;
  147.    Parameters[ 40].PDesc := @Desc_CJ;
  148.  
  149.    Parameters[ 41].PAddr := @Command_Key;
  150.    Parameters[ 41].PDesc := @Desc_CK;
  151.  
  152.    Parameters[ 42].PAddr := @New_Menu_Frame_Color;
  153.    Parameters[ 42].PDesc := @Desc_CM;
  154.  
  155.    Parameters[ 43].PAddr := @New_Border_Color;
  156.    Parameters[ 43].PDesc := @Desc_CS;
  157.  
  158.    Parameters[ 44].PAddr := @New_Menu_Text_Color;
  159.    Parameters[ 44].PDesc := @Desc_CT;
  160.  
  161.    Parameters[ 45].PAddr := @Data_Bits;
  162.    Parameters[ 45].PDesc := @Desc_DA;
  163.  
  164.    Parameters[ 46].PAddr := @New_Max_Screen_Col;
  165.    Parameters[ 46].PDesc := @Desc_DC;
  166.  
  167.    Parameters[ 47].PAddr := @Download_Dir_Path;
  168.    Parameters[ 47].PDesc := @Desc_DD;
  169.  
  170.    Parameters[ 48].PAddr := @Ctrl_BS_String;
  171.    Parameters[ 48].PDesc := @Desc_DE;
  172.  
  173.    Parameters[ 49].PAddr := @Date_Format;
  174.    Parameters[ 49].PDesc := @Desc_DF;
  175.  
  176.    Parameters[ 50].PAddr := @Use_Dos_Buffer_In;
  177.    Parameters[ 50].PDesc := @Desc_DI;
  178.  
  179.    Parameters[ 51].PAddr := @New_Max_Screen_Line;
  180.    Parameters[ 51].PDesc := @Desc_DL;
  181.  
  182.    Parameters[ 52].PAddr := @Use_Dos_Con_Output;
  183.    Parameters[ 52].PDesc := @Desc_DO;
  184.  
  185.    Parameters[ 53].PAddr := @Default_Prefix;
  186.    Parameters[ 53].PDesc := @Desc_DP;
  187.  
  188.    Parameters[ 54].PAddr := @Drop_Dtr_At_End;
  189.    Parameters[ 54].PDesc := @Desc_DR;
  190.  
  191.    Parameters[ 55].PAddr := @Dialing_Dir_Size_Max;
  192.    Parameters[ 55].PDesc := @Desc_DS;
  193.  
  194.    Parameters[ 56].PAddr := @Default_Postfix;
  195.    Parameters[ 56].PDesc := @Desc_DT;
  196.  
  197.    Parameters[ 57].PAddr := @Downsize_Ymodem;
  198.    Parameters[ 57].PDesc := @Desc_DY;
  199.  
  200.    Parameters[ 58].PAddr := @Mahoney_On;
  201.    Parameters[ 58].PDesc := @Desc_EB;
  202.  
  203.    Parameters[ 59].PAddr := @Exact_Capture;
  204.    Parameters[ 59].PDesc := @Desc_EC;
  205.  
  206.    Parameters[ 60].PAddr := @Allow_EGA_Graphics;
  207.    Parameters[ 60].PDesc := @Desc_EG;
  208.  
  209.    Parameters[ 61].PAddr := @Extended_Keypad;
  210.    Parameters[ 61].PDesc := @Desc_EK;
  211.  
  212.    Parameters[ 62].PAddr := @Editor_Name;
  213.    Parameters[ 62].PDesc := @Desc_EN;
  214.  
  215.    Parameters[ 63].PAddr := @Evict_Partial_Trans;
  216.    Parameters[ 63].PDesc := @Desc_EP;
  217.  
  218.    Parameters[ 64].PAddr := @Extended_Keyboard;
  219.    Parameters[ 64].PDesc := @Desc_EU;
  220.  
  221.    Parameters[ 65].PAddr := @External_Trans_Def[1];
  222.    Parameters[ 65].PDesc := @Desc_F0;
  223.  
  224.    Parameters[ 66].PAddr := @External_Trans_Def[2];
  225.    Parameters[ 66].PDesc := @Desc_F1;
  226.  
  227.    Parameters[ 67].PAddr := @External_Trans_Def[3];
  228.    Parameters[ 67].PDesc := @Desc_F2;
  229.  
  230.    Parameters[ 68].PAddr := @External_Trans_Def[4];
  231.    Parameters[ 68].PDesc := @Desc_F3;
  232.  
  233.    Parameters[ 69].PAddr := @External_Trans_Def[5];
  234.    Parameters[ 69].PDesc := @Desc_F4;
  235.  
  236.    Parameters[ 70].PAddr := @External_Trans_Def[6];
  237.    Parameters[ 70].PDesc := @Desc_F5;
  238.  
  239.    Parameters[ 71].PAddr := @External_Trans_Def[7];
  240.    Parameters[ 71].PDesc := @Desc_F6;
  241.  
  242.    Parameters[ 72].PAddr := @External_Trans_Def[8];
  243.    Parameters[ 72].PDesc := @Desc_F7;
  244.  
  245.    Parameters[ 73].PAddr := @External_Trans_Def[9];
  246.    Parameters[ 73].PDesc := @Desc_F8;
  247.  
  248.    Parameters[ 74].PAddr := @External_Trans_Def[10];
  249.    Parameters[ 74].PDesc := @Desc_F9;
  250.  
  251.    Parameters[ 75].PAddr := @FK_CR;
  252.    Parameters[ 75].PDesc := @Desc_FC;
  253.  
  254.    Parameters[ 76].PAddr := @FK_Delay;
  255.    Parameters[ 76].PDesc := @Desc_FD;
  256.  
  257.    Parameters[ 77].PAddr := @Auto_Find_FileNames;
  258.    Parameters[ 77].PDesc := @Desc_FF;
  259.  
  260.    Parameters[ 78].PAddr := @FK_Delay_Time;
  261.    Parameters[ 78].PDesc := @Desc_FH;
  262.  
  263.    Parameters[ 79].PAddr := @FK_Ctrl_Mark;
  264.    Parameters[ 79].PDesc := @Desc_FM;
  265.  
  266.    Parameters[ 80].PAddr := @FileName;
  267.    Parameters[ 80].PDesc := @Desc_FN;
  268.  
  269.    Parameters[ 81].PAddr := @Function_Key_Path;
  270.    Parameters[ 81].PDesc := @Desc_FP;
  271.  
  272.    Parameters[ 82].PAddr := @FK_Script_Ch;
  273.    Parameters[ 82].PDesc := @Desc_FS;
  274.  
  275.    Parameters[ 83].PAddr := @FK_Wait_For;
  276.    Parameters[ 83].PDesc := @Desc_FW;
  277.  
  278.    Parameters[ 84].PAddr := @GMT_Difference;
  279.    Parameters[ 84].PDesc := @Desc_GD;
  280.  
  281.    Parameters[ 85].PAddr := @Gossip_Line_Mode;
  282.    Parameters[ 85].PDesc := @Desc_GL;
  283.  
  284.    Parameters[ 86].PAddr := @Gossip_Window_Size;
  285.    Parameters[ 86].PDesc := @Desc_GW;
  286.  
  287.    Parameters[ 87].PAddr := @Host_Mode_Blank_Time;
  288.    Parameters[ 87].PDesc := @Desc_HB;
  289.  
  290.    Parameters[ 88].PAddr := @Host_Mode_Download;
  291.    Parameters[ 88].PDesc := @Desc_HD;
  292.  
  293.    Parameters[ 89].PAddr := @Privilege;
  294.    Parameters[ 89].PDesc := @Desc_HP;
  295.  
  296.    Parameters[ 90].PAddr := @Host_Mode_Upload;
  297.    Parameters[ 90].PDesc := @Desc_HU;
  298.  
  299.    Parameters[ 91].PAddr := @Hard_Wired;
  300.    Parameters[ 91].PDesc := @Desc_HW;
  301.  
  302.    Parameters[ 92].PAddr := @Default_Com_Irq[1];
  303.    Parameters[ 92].PDesc := @Desc_I1;
  304.  
  305.    Parameters[ 93].PAddr := @Default_Com_Irq[2];
  306.    Parameters[ 93].PDesc := @Desc_I2;
  307.  
  308.    Parameters[ 94].PAddr := @Default_Com_Irq[3];
  309.    Parameters[ 94].PDesc := @Desc_I3;
  310.  
  311.    Parameters[ 95].PAddr := @Default_Com_Irq[4];
  312.    Parameters[ 95].PDesc := @Desc_I4;
  313.  
  314.    Parameters[ 96].PAddr := @Async_Buffer_Length;
  315.    Parameters[ 96].PDesc := @Desc_IB;
  316.  
  317.    Parameters[ 97].PAddr := @Edit_Insert_Mode;
  318.    Parameters[ 97].PDesc := @Desc_IM;
  319.  
  320.    Parameters[ 98].PAddr := @Kermit_Quote_8_Char;
  321.    Parameters[ 98].PDesc := @Desc_K8;
  322.  
  323.    Parameters[ 99].PAddr := @Kermit_Handshake_Char;
  324.    Parameters[ 99].PDesc := @Desc_KA;
  325.  
  326.    Parameters[100].PAddr := @Kermit_Chk_Type;
  327.    Parameters[100].PDesc := @Desc_KC;
  328.  
  329.    Parameters[101].PAddr := @Kermit_Debug;
  330.    Parameters[101].PDesc := @Desc_KD;
  331.  
  332.    Parameters[102].PAddr := @Kermit_EOL;
  333.    Parameters[102].PDesc := @Desc_KE;
  334.  
  335.    Parameters[103].PAddr := @Kermit_Header_Char;
  336.    Parameters[103].PDesc := @Desc_KH;
  337.  
  338.    Parameters[104].PAddr := @Kermit_AutoDownload;
  339.    Parameters[104].PDesc := @Desc_KK;
  340.  
  341.    Parameters[105].PAddr := @Kermit_Window_Size;
  342.    Parameters[105].PDesc := @Desc_KL;
  343.  
  344.    Parameters[106].PAddr := @Kermit_Npad;
  345.    Parameters[106].PDesc := @Desc_KN;
  346.  
  347.    Parameters[107].PAddr := @Kermit_Pad_Char;
  348.    Parameters[107].PDesc := @Desc_KP;
  349.  
  350.    Parameters[108].PAddr := @Kermit_Quote_Char;
  351.    Parameters[108].PDesc := @Desc_KQ;
  352.  
  353.    Parameters[109].PAddr := @Kermit_Repeat_Char;
  354.    Parameters[109].PDesc := @Desc_KR;
  355.  
  356.    Parameters[110].PAddr := @Kermit_Init_Packet_Size;
  357.    Parameters[110].PDesc := @Desc_KS;
  358.  
  359.    Parameters[111].PAddr := @Kermit_TimeOut;
  360.    Parameters[111].PDesc := @Desc_KT;
  361.  
  362.    Parameters[112].PAddr := @Kermit_Delay_Time;
  363.    Parameters[112].PDesc := @Desc_KW;
  364.  
  365.    Parameters[113].PAddr := @Kermit_Extended_Block;
  366.    Parameters[113].PDesc := @Desc_KX;
  367.  
  368.    Parameters[114].PAddr := @Local_Echo;
  369.    Parameters[114].PDesc := @Desc_LE;
  370.  
  371.    Parameters[115].PAddr := @Add_Lf;
  372.    Parameters[115].PDesc := @Desc_LF;
  373.  
  374.    Parameters[116].PAddr := @Browser_Name;
  375.    Parameters[116].PDesc := @Desc_LN;
  376.  
  377.    Parameters[117].PAddr := @Logging_On;
  378.    Parameters[117].PDesc := @Desc_LO;
  379.  
  380.    Parameters[118].PAddr := @Modem_Answer;
  381.    Parameters[118].PDesc := @Desc_MA;
  382.  
  383.    Parameters[119].PAddr := @Modem_Busy;
  384.    Parameters[119].PDesc := @Desc_MB;
  385.  
  386.    Parameters[120].PAddr := @Modem_Connect;
  387.    Parameters[120].PDesc := @Desc_MC;
  388.  
  389.    Parameters[121].PAddr := @Modem_Dial;
  390.    Parameters[121].PDesc := @Desc_MD;
  391.  
  392.    Parameters[122].PAddr := @Modem_Escape;
  393.    Parameters[122].PDesc := @Desc_ME;
  394.  
  395.    Parameters[123].PAddr := @Modem_Dial_End;
  396.    Parameters[123].PDesc := @Desc_MF;
  397.  
  398.    Parameters[124].PAddr := @Modem_Ring;
  399.    Parameters[124].PDesc := @Desc_MG;
  400.  
  401.    Parameters[125].PAddr := @Modem_Hang_Up;
  402.    Parameters[125].PDesc := @Desc_MH;
  403.  
  404.    Parameters[126].PAddr := @Modem_Init;
  405.    Parameters[126].PDesc := @Desc_MI;
  406.  
  407.    Parameters[127].PAddr := @Modem_Hold_Line;
  408.    Parameters[127].PDesc := @Desc_ML;
  409.  
  410.    Parameters[128].PAddr := @Modem_No_Carrier;
  411.    Parameters[128].PDesc := @Desc_MN;
  412.  
  413.    Parameters[129].PAddr := @Modem_Time_Out;
  414.    Parameters[129].PDesc := @Desc_MO;
  415.  
  416.    Parameters[130].PAddr := @Modem_Redial_Delay;
  417.    Parameters[130].PDesc := @Desc_MR;
  418.  
  419.    Parameters[131].PAddr := @Modem_Host_Set;
  420.    Parameters[131].PDesc := @Desc_MS;
  421.  
  422.    Parameters[132].PAddr := @Modem_Escape_Time;
  423.    Parameters[132].PDesc := @Desc_MT;
  424.  
  425.    Parameters[133].PAddr := @Modem_Command_Delay;
  426.    Parameters[133].PDesc := @Desc_MW;
  427.  
  428.    Parameters[134].PAddr := @Modem_Host_UnSet;
  429.    Parameters[134].PDesc := @Desc_MX;
  430.  
  431.    Parameters[135].PAddr := @New_Line_Param;
  432.    Parameters[135].PDesc := @Desc_NL;
  433.  
  434.    Parameters[136].PAddr := @Async_OBuffer_Length;
  435.    Parameters[136].PDesc := @Desc_OB;
  436.  
  437.    Parameters[137].PAddr := @Default_Com_Base[1];
  438.    Parameters[137].PDesc := @Desc_P1;
  439.  
  440.    Parameters[138].PAddr := @Default_Com_Base[2];
  441.    Parameters[138].PDesc := @Desc_P2;
  442.  
  443.    Parameters[139].PAddr := @Default_Com_Base[3];
  444.    Parameters[139].PDesc := @Desc_P3;
  445.  
  446.    Parameters[140].PAddr := @Default_Com_Base[4];
  447.    Parameters[140].PDesc := @Desc_P4;
  448.  
  449.    Parameters[141].PAddr := @Parity;
  450.    Parameters[141].PDesc := @Desc_PA;
  451.  
  452.    Parameters[142].PAddr := @Play_Music_On;
  453.    Parameters[142].PDesc := @Desc_PM;
  454.  
  455.    Parameters[143].PAddr := @Comm_Port;
  456.    Parameters[143].PDesc := @Desc_PO;
  457.  
  458.    Parameters[144].PAddr := @Printer_Setup;
  459.    Parameters[144].PDesc := @Desc_PS;
  460.  
  461.    Parameters[145].PAddr := @Status_ForeGround_Color;
  462.    Parameters[145].PDesc := @Desc_SA;
  463.  
  464.    Parameters[146].PAddr := @Status_BackGround_Color;
  465.    Parameters[146].PDesc := @Desc_SB;
  466.  
  467.    Parameters[147].PAddr := @Script_Learn_Buffer_Size;
  468.    Parameters[147].PDesc := @Desc_SC;
  469.  
  470.    Parameters[148].PAddr := @Screen_Dump_Name;
  471.    Parameters[148].PDesc := @Desc_SD;
  472.  
  473.    Parameters[149].PAddr := @Show_Status_Time;
  474.    Parameters[149].PDesc := @Desc_SE;
  475.  
  476.    Parameters[150].PAddr := @Script_Path;
  477.    Parameters[150].PDesc := @Desc_SF;
  478.  
  479.    Parameters[151].PAddr := @Graphics_Dump_Name;
  480.    Parameters[151].PDesc := @Desc_SG;
  481.  
  482.    Parameters[152].PAddr := @Auto_Strip_High_Bit;
  483.    Parameters[152].PDesc := @Desc_SH;
  484.  
  485.    Parameters[153].PAddr := @Script_Learn_Lines;
  486.    Parameters[153].PDesc := @Desc_SL;
  487.  
  488.    Parameters[154].PAddr := @Silent_Mode;
  489.    Parameters[154].PDesc := @Desc_SM;
  490.  
  491.    Parameters[155].PAddr := @Script_Search_Order;
  492.    Parameters[155].PDesc := @Desc_SO;
  493.  
  494.    Parameters[156].PAddr := @Script_Parameter_Marker;
  495.    Parameters[156].PDesc := @Desc_SP;
  496.  
  497.    Parameters[157].PAddr := @Reverse_Status_Colors;
  498.    Parameters[157].PDesc := @Desc_SR;
  499.  
  500.    Parameters[158].PAddr := @Show_Status_Line;
  501.    Parameters[158].PDesc := @Desc_SS;
  502.  
  503.    Parameters[159].PAddr := @Stop_Bits;
  504.    Parameters[159].PDesc := @Desc_ST;
  505.  
  506.    Parameters[160].PAddr := @Auto_Unload_Scripts;
  507.    Parameters[160].PDesc := @Desc_SU;
  508.  
  509.    Parameters[161].PAddr := @Software_Scroll_Par;
  510.    Parameters[161].PDesc := @Desc_SZ;
  511.  
  512.    Parameters[162].PAddr := @User_Term_Name[1];
  513.    Parameters[162].PDesc := @Desc_T1;
  514.  
  515.    Parameters[163].PAddr := @User_Term_Name[2];
  516.    Parameters[163].PDesc := @Desc_T2;
  517.  
  518.    Parameters[164].PAddr := @User_Term_Name[3];
  519.    Parameters[164].PDesc := @Desc_T3;
  520.  
  521.    Parameters[165].PAddr := @User_Term_Name[4];
  522.    Parameters[165].PDesc := @Desc_T4;
  523.  
  524.    Parameters[166].PAddr := @User_Term_Name[5];
  525.    Parameters[166].PDesc := @Desc_T5;
  526.  
  527.    Parameters[167].PAddr := @Transfer_Bells;
  528.    Parameters[167].PDesc := @Desc_TB;
  529.  
  530.    Parameters[168].PAddr := @Terminal_To_Emulate;
  531.    Parameters[168].PDesc := @Desc_TE;
  532.  
  533.    Parameters[169].PAddr := @Time_Format;
  534.    Parameters[169].PDesc := @Desc_TF;
  535.  
  536.    Parameters[170].PAddr := @New_Text_Mode;
  537.    Parameters[170].PDesc := @Desc_TM;
  538.  
  539.    Parameters[171].PAddr := @Default_Transfer_Type;
  540.    Parameters[171].PDesc := @Desc_TT;
  541.  
  542.    Parameters[172].PAddr := @Send_Upper_Case_Only;
  543.    Parameters[172].PDesc := @Desc_TU;
  544.  
  545.    Parameters[173].PAddr := @Use_Block_Zero;
  546.    Parameters[173].PDesc := @Desc_U0;
  547.  
  548.    Parameters[174].PAddr := @Use_Prev_Key_Text;
  549.    Parameters[174].PDesc := @Desc_UP;
  550.  
  551.    Parameters[175].PAddr := @Use_Short_Dial_Menu;
  552.    Parameters[175].PDesc := @Desc_US;
  553.  
  554.    Parameters[176].PAddr := @Default_Com_Int[1];
  555.    Parameters[176].PDesc := @Desc_V1;
  556.  
  557.    Parameters[177].PAddr := @Default_Com_Int[2];
  558.    Parameters[177].PDesc := @Desc_V2;
  559.  
  560.    Parameters[178].PAddr := @Default_Com_Int[3];
  561.    Parameters[178].PDesc := @Desc_V3;
  562.  
  563.    Parameters[179].PAddr := @Default_Com_Int[4];
  564.    Parameters[179].PDesc := @Desc_V4;
  565.  
  566.    Parameters[180].PAddr := @VT100_Answerback_Message;
  567.    Parameters[180].PDesc := @Desc_VA;
  568.  
  569.    Parameters[181].PAddr := @VT100_BackGround_Color;
  570.    Parameters[181].PDesc := @Desc_VB;
  571.  
  572.    Parameters[182].PAddr := @Auto_Change_Arrows;
  573.    Parameters[182].PDesc := @Desc_VC;
  574.  
  575.    Parameters[183].PAddr := @VT100_Bold_Color;
  576.    Parameters[183].PDesc := @Desc_VE;
  577.  
  578.    Parameters[184].PAddr := @VT100_ForeGround_Color;
  579.    Parameters[184].PDesc := @Desc_VF;
  580.  
  581.    Parameters[185].PAddr := @KeyPad_Appl_On_File;
  582.    Parameters[185].PDesc := @Desc_VK;
  583.  
  584.    Parameters[186].PAddr := @KeyPad_Appl_Off_File;
  585.    Parameters[186].PDesc := @Desc_VN;
  586.  
  587.    Parameters[187].PAddr := @VT100_Border_Color;
  588.    Parameters[187].PDesc := @Desc_VS;
  589.  
  590.    Parameters[188].PAddr := @VT100_Underline_Color;
  591.    Parameters[188].PDesc := @Desc_VU;
  592.  
  593.    Parameters[189].PAddr := @Window_Hold_Time;
  594.    Parameters[189].PDesc := @Desc_WH;
  595.  
  596.    Parameters[190].PAddr := @Wait_For_Retrace_Par;
  597.    Parameters[190].PDesc := @Desc_WR;
  598.  
  599.    Parameters[191].PAddr := @Write_Screen_Memory_Par;
  600.    Parameters[191].PDesc := @Desc_WS;
  601.  
  602.    Parameters[192].PAddr := @Xmodem_Ack_Wait;
  603.    Parameters[192].PDesc := @Desc_XA;
  604.  
  605.    Parameters[193].PAddr := @Max_Write_Buffer;
  606.    Parameters[193].PDesc := @Desc_XB;
  607.  
  608.    Parameters[194].PAddr := @Xmodem_Char_Wait;
  609.    Parameters[194].PDesc := @Desc_XC;
  610.  
  611.    Parameters[195].PAddr := @Check_DSR;
  612.    Parameters[195].PDesc := @Desc_XD;
  613.  
  614.    Parameters[196].PAddr := @Xmodem_Block_Wait;
  615.    Parameters[196].PDesc := @Desc_XH;
  616.  
  617.    Parameters[197].PAddr := @Exploding_Menus;
  618.    Parameters[197].PDesc := @Desc_XM;
  619.  
  620.    Parameters[198].PAddr := @Do_Xon_Xoff_Checks;
  621.    Parameters[198].PDesc := @Desc_XO;
  622.  
  623.    Parameters[199].PAddr := @Check_CTS;
  624.    Parameters[199].PDesc := @Desc_XS;
  625.  
  626.    Parameters[200].PAddr := @Xmodem_Max_Errors;
  627.    Parameters[200].PDesc := @Desc_XT;
  628.  
  629.    Parameters[201].PAddr := @Use_Ymodem_Header;
  630.    Parameters[201].PDesc := @Desc_Y0;
  631.  
  632.    Parameters[202].PAddr := @Use_Full_Path_Name;
  633.    Parameters[202].PDesc := @Desc_YF;
  634.  
  635.    Parameters[203].PAddr := @YTerm_On;
  636.    Parameters[203].PDesc := @Desc_YT;
  637.  
  638.    Parameters[204].PAddr := @Honor_XOff_Ymodem;
  639.    Parameters[204].PDesc := @Desc_YX;
  640.  
  641.    Parameters[205].PAddr := @Zmodem_AutoDownload;
  642.    Parameters[205].PDesc := @Desc_ZA;
  643.  
  644.    Parameters[206].PAddr := @Zmodem_BlockSize;
  645.    Parameters[206].PDesc := @Desc_ZB;
  646.  
  647. END   (* Set_Parameter_Addresses *);
  648.  
  649. (*----------------------------------------------------------------------*)
  650.  
  651. BEGIN (* Set_Defaults *)
  652.                                    (* Version number and date *)
  653.  
  654.    PibTerm_Version := '4.1.3 Production.';
  655.    PibTerm_Date    := 'Released March 23, 1988.';
  656.  
  657.                                    (* Assume text mode from    *)
  658.                                    (* current system setting.  *)
  659.  
  660.    Start_Video_Mode := Current_Video_Mode;
  661.  
  662.    CASE Start_Video_Mode OF
  663.  
  664.       0, 2 : Text_Mode := BW80;
  665.       7    : Text_Mode := Mono;
  666.       ELSE   Text_Mode := C80;
  667.  
  668.    END (* CASE *);
  669.  
  670.    TextMode( Text_Mode );
  671.    DirectVideo := FALSE;
  672.                                    (* Set screen sizes         *)
  673.  
  674.    Get_Screen_Size( New_Max_Screen_Line , New_Max_Screen_Col );
  675.  
  676.    Max_Screen_Line     := New_Max_Screen_Line;
  677.    Max_Screen_Col      := New_Max_Screen_Col;
  678.  
  679.    Wrap_Screen_Col     := Max_Screen_Col;
  680.  
  681.                                    (* Set window sizes         *)
  682.    Upper_Left_Column   := 1;
  683.    Upper_Left_Row      := 1;
  684.    Lower_Right_Column  := Max_Screen_Col;
  685.    Lower_Right_Row     := Max_Screen_Line;
  686.  
  687.    Ansi_Last_Line      := Max_Screen_Line;
  688.  
  689.                                    (* No terminal attributes *)
  690.  
  691.    FillChar( Line_Attributes, 100, 0 );
  692.  
  693.                                    (* Get session start time   *)
  694.  
  695.    Session_Start_Time := TimeOfDay;
  696.    Dialing_Start_Time := Session_Start_Time;
  697.  
  698.                                    (* Select color/mono screen *)
  699.  
  700.    Get_Screen_Address( Actual_Screen );
  701.  
  702.                                    (* Set colors as black and white *)
  703.  
  704.    Set_Global_Colors( White, Black );
  705.    Set_Border_Color ( Black );
  706.  
  707.    WITH Phone_Entry_Data DO
  708.       BEGIN
  709.          FOR I := 1 TO 25 Do
  710.             Phone_Name[I] := ' ';
  711.          FOR I := 1 TO 15 DO
  712.             Phone_Number[I] := ' ';
  713.       END;
  714.                                    (* Set retrace based upon display type *)
  715.  
  716.    VGA_Present          := VGA_Installed;
  717.    EGA_Present          := EGA_Installed OR VGA_Present;
  718.  
  719.    Wait_For_Retrace_Par := NOT ( EGA_Present OR ( Text_Mode = 7 ) );
  720.    Wait_For_Retrace     := Wait_For_Retrace_Par;
  721.  
  722.                                    (* Initial translate maps each *)
  723.                                    (* character into itself.      *)
  724.    FOR I := 0 TO 255 DO
  725.       TrTab[ CHR( I ) ] := CHR( I );
  726.  
  727.                                    (* No key strings yet defined. *)
  728.    FOR I := 0 TO Max_Key_Def DO
  729.       BEGIN
  730.          Key_Definitions[I].Def  := NIL;
  731.          Key_Definitions[I].Name := '';
  732.          Key_Indices[ I ]        := I;
  733.       END;
  734.                                    (* Initialize command table *)
  735.    FOR I := 0 TO 255 DO
  736.       Pibterm_Command_Table[I] := Null_Command;
  737.  
  738.    PibTerm_Command_Table[Alt_A] := EditSy;
  739.    PibTerm_Command_Table[Alt_B] := BreakSy;
  740.    PibTerm_Command_Table[Alt_C] := ClearSy;
  741.    PibTerm_Command_Table[Alt_D] := DialSy;
  742.    PibTerm_Command_Table[Alt_E] := EchoSy;
  743.    PibTerm_Command_Table[Alt_F] := FileSy;
  744.    PibTerm_Command_Table[Alt_G] := ScriptSy;
  745.    PibTerm_Command_Table[Alt_H] := HangUpSy;
  746.    PibTerm_Command_Table[Alt_I] := InfoSy;
  747.    PibTerm_Command_Table[Alt_J] := DosSy;
  748.    PibTerm_Command_Table[Alt_K] := KeySy;
  749.    PibTerm_Command_Table[Alt_L] := LogSy;
  750.    PibTerm_Command_Table[Alt_M] := MuteSy;
  751.    PibTerm_Command_Table[Alt_N] := FastCSy;
  752.    PibTerm_Command_Table[Alt_O] := CaptureSy;
  753.    PibTerm_Command_Table[Alt_P] := ParamSy;
  754.    PibTerm_Command_Table[Alt_Q] := RedialSy;
  755.    PibTerm_Command_Table[Alt_R] := ReceiveSy;
  756.    PibTerm_Command_Table[Alt_S] := SendSy;
  757.    PibTerm_Command_Table[Alt_T] := TranslateSy;
  758.    PibTerm_Command_Table[Alt_U] := SDumpSy;
  759.    PibTerm_Command_Table[Alt_V] := ViewSy;
  760.    PibTerm_Command_Table[Alt_W] := HostSy;
  761.    PibTerm_Command_Table[Alt_X] := QuitSy;
  762.    PibTerm_Command_Table[Alt_Y] := TimersSy;
  763.    PibTerm_Command_Table[Alt_Z] := AreaCodeSy;
  764.  
  765.    PibTerm_Command_Table[U_Arrow]      := KeySendSy;
  766.    PibTerm_Command_Table[Alt_U_Arrow]  := KeySendSy;
  767.    PibTerm_Command_Table[Ctrl_U_Arrow] := KeySendSy;
  768.  
  769.    PibTerm_Command_Table[L_Arrow]      := KeySendSy;
  770.    PibTerm_Command_Table[Alt_L_Arrow]  := KeySendSy;
  771.    PibTerm_Command_Table[Ctrl_L_Arrow] := KeySendSy;
  772.  
  773.    PibTerm_Command_Table[R_Arrow]      := KeySendSy;
  774.    PibTerm_Command_Table[Alt_R_Arrow]  := KeySendSy;
  775.    PibTerm_Command_Table[Ctrl_R_Arrow] := KeySendSy;
  776.  
  777.    PibTerm_Command_Table[D_Arrow]      := KeySendSy;
  778.    PibTerm_Command_Table[Alt_D_Arrow]  := KeySendSy;
  779.    PibTerm_Command_Table[Ctrl_D_Arrow] := KeySendSy;
  780.  
  781.    PibTerm_Command_Table[Home]         := KeySendSy;
  782.    PibTerm_Command_Table[Alt_Home]     := KeySendSy;
  783.    PibTerm_Command_Table[Ctrl_Home]    := KeySendSy;
  784.  
  785.    PibTerm_Command_Table[PgUp]         := KeySendSy;
  786.    PibTerm_Command_Table[Alt_PgUp]     := KeySendSy;
  787.    PibTerm_Command_Table[Ctrl_PgUp]    := KeySendSy;
  788.  
  789.    PibTerm_Command_Table[End_Key]      := KeySendSy;
  790.    PibTerm_Command_Table[Alt_End_Key]  := KeySendSy;
  791.    PibTerm_Command_Table[Ctrl_End_Key] := KeySendSy;
  792.  
  793.    PibTerm_Command_Table[PgDn]         := KeySendSy;
  794.    PibTerm_Command_Table[Alt_PgDn]     := KeySendSy;
  795.    PibTerm_Command_Table[Ctrl_PgDn]    := KeySendSy;
  796.  
  797.    PibTerm_Command_Table[Ins_Key]      := KeySendSy;
  798.    PibTerm_Command_Table[Alt_Ins_Key]  := KeySendSy;
  799.    PibTerm_Command_Table[Ctrl_Ins_Key] := KeySendSy;
  800.  
  801.    PibTerm_Command_Table[Del_Key]      := KeySendSy;
  802.    PibTerm_Command_Table[Alt_Del_Key]  := KeySendSy;
  803.    PibTerm_Command_Table[Ctrl_Del_Key] := KeySendSy;
  804.  
  805.    PibTerm_Command_Table[Kpd_Minus]      := KeySendSy;
  806.    PibTerm_Command_Table[Alt_Kpd_Minus]  := KeySendSy;
  807.    PibTerm_Command_Table[Ctrl_Kpd_Minus] := KeySendSy;
  808.  
  809.    PibTerm_Command_Table[Kpd_Plus]       := KeySendSy;
  810.    PibTerm_Command_Table[Alt_Kpd_Plus]   := KeySendSy;
  811.    PibTerm_Command_Table[Ctrl_Kpd_Plus]  := KeySendSy;
  812.  
  813.    PibTerm_Command_Table[Kpd_5]          := KeySendSy;
  814.    PibTerm_Command_Table[Alt_Kpd_5]      := KeySendSy;
  815.    PibTerm_Command_Table[Ctrl_Kpd_5]     := KeySendSy;
  816.  
  817.    PibTerm_Command_Table[Alt_Enter]      := KeySendSy;
  818.    PibTerm_Command_Table[Alt_BS]         := KeySendSy;
  819.  
  820.    PibTerm_Command_Table[Kpd_Enter]      := KeySendSy;
  821.    PibTerm_Command_Table[Alt_Kpd_Enter]  := KeySendSy;
  822.    PibTerm_Command_Table[Ctrl_Kpd_Enter] := KeySendSy;
  823.  
  824.    PibTerm_Command_Table[Kpd_Star]       := KeySendSy;
  825.    PibTerm_Command_Table[Alt_Kpd_Star]   := KeySendSy;
  826.    PibTerm_Command_Table[Ctrl_Kpd_Star]  := KeySendSy;
  827.  
  828.    PibTerm_Command_Table[Kpd_Slash]      := KeySendSy;
  829.    PibTerm_Command_Table[Alt_Kpd_Slash]  := KeySendSy;
  830.    PibTerm_Command_Table[Ctrl_Kpd_Slash] := KeySendSy;
  831.  
  832.    PibTerm_Command_Table[PrtSc]          := KeySendSy;
  833.    PibTerm_Command_Table[Alt_PrtSc]      := KeySendSy;
  834.    PibTerm_Command_Table[Ctrl_PrtSc]     := KeySendSy;
  835.  
  836.    PibTerm_Command_Table[X_U_Arrow]      := KeySendSy;
  837.    PibTerm_Command_Table[Alt_X_U_Arrow]  := KeySendSy;
  838.    PibTerm_Command_Table[Ctrl_X_U_Arrow] := KeySendSy;
  839.  
  840.    PibTerm_Command_Table[X_L_Arrow]      := KeySendSy;
  841.    PibTerm_Command_Table[Alt_X_L_Arrow]  := KeySendSy;
  842.    PibTerm_Command_Table[Ctrl_X_L_Arrow] := KeySendSy;
  843.  
  844.    PibTerm_Command_Table[X_R_Arrow]      := KeySendSy;
  845.    PibTerm_Command_Table[Alt_X_R_Arrow]  := KeySendSy;
  846.    PibTerm_Command_Table[Ctrl_X_R_Arrow] := KeySendSy;
  847.  
  848.    PibTerm_Command_Table[X_D_Arrow]      := KeySendSy;
  849.    PibTerm_Command_Table[Alt_X_D_Arrow]  := KeySendSy;
  850.    PibTerm_Command_Table[Ctrl_X_D_Arrow] := KeySendSy;
  851.  
  852.    PibTerm_Command_Table[X_Home]         := KeySendSy;
  853.    PibTerm_Command_Table[Alt_X_Home]     := KeySendSy;
  854.    PibTerm_Command_Table[Ctrl_X_Home]    := KeySendSy;
  855.  
  856.    PibTerm_Command_Table[X_PgUp]         := KeySendSy;
  857.    PibTerm_Command_Table[Alt_X_PgUp]     := KeySendSy;
  858.    PibTerm_Command_Table[Ctrl_X_PgUp]    := KeySendSy;
  859.  
  860.    PibTerm_Command_Table[X_End_Key]      := KeySendSy;
  861.    PibTerm_Command_Table[Alt_X_End_Key]  := KeySendSy;
  862.    PibTerm_Command_Table[Ctrl_X_End_Key] := KeySendSy;
  863.  
  864.    PibTerm_Command_Table[X_PgDn]         := KeySendSy;
  865.    PibTerm_Command_Table[Alt_X_PgDn]     := KeySendSy;
  866.    PibTerm_Command_Table[Ctrl_X_PgDn]    := KeySendSy;
  867.  
  868.    PibTerm_Command_Table[X_Ins_Key]      := KeySendSy;
  869.    PibTerm_Command_Table[Alt_X_Ins_Key]  := KeySendSy;
  870.    PibTerm_Command_Table[Ctrl_X_Ins_Key] := KeySendSy;
  871.  
  872.    PibTerm_Command_Table[X_Del_Key]      := KeySendSy;
  873.    PibTerm_Command_Table[Alt_X_Del_Key]  := KeySendSy;
  874.    PibTerm_Command_Table[Ctrl_X_Del_Key] := KeySendSy;
  875.  
  876.                                    (* Initialize key names *)
  877.    FOR I := F1 TO F10 DO
  878.       BEGIN
  879.          PibTerm_Command_Table[I] := KeySendSy;
  880.          Key_Definitions[I].Name  := 'F' + IToS( I - F1 + 1 );
  881.       END;
  882.  
  883.    FOR I := Alt_F1 TO Alt_F10 DO
  884.       BEGIN
  885.          PibTerm_Command_Table[I] := KeySendSy;
  886.          Key_Definitions[I].Name  := 'A' + IToS( I - Alt_F1 + 1 );
  887.       END;
  888.  
  889.    FOR I := Shift_F1 TO Shift_F10 DO
  890.       BEGIN
  891.          PibTerm_Command_Table[I] := KeySendSy;
  892.          Key_Definitions[I].Name  := 'S' + IToS( I - Shift_F1 + 1 );
  893.       END;
  894.  
  895.    FOR I := Ctrl_F1 TO Ctrl_F10 DO
  896.       BEGIN
  897.          PibTerm_Command_Table[I] := KeySendSy;
  898.          Key_Definitions[I].Name  := 'C' + IToS( I - Ctrl_F1 + 1 );
  899.       END;
  900.  
  901.    FOR I := Alt_1 TO Alt_Equal DO
  902.       BEGIN
  903.          PibTerm_Command_Table[I] := KeySendSy;
  904.          Key_Definitions[I].Name  := 'N'+ COPY( '1234567890-+', I - Alt_1 + 1, 1 );
  905.       END;
  906.  
  907.    FOR I := F11 TO Alt_F12 DO
  908.       PibTerm_Command_Table[I] := KeySendSy;
  909.  
  910.    Key_Definitions[F11].Name          := 'F11';
  911.    Key_Definitions[F12].Name          := 'F12';
  912.    Key_Definitions[Shift_F11].Name    := 'S11';
  913.    Key_Definitions[Shift_F12].Name    := 'S12';
  914.    Key_Definitions[Ctrl_F11].Name     := 'C11';
  915.    Key_Definitions[Ctrl_F12].Name     := 'C12';
  916.    Key_Definitions[Alt_F11].Name      := 'A11';
  917.    Key_Definitions[Alt_F12].Name      := 'A12';
  918.  
  919.    Key_Definitions[U_Arrow].Name      := 'K8';
  920.    Key_Definitions[Alt_U_Arrow].Name  := 'AK8';
  921.    Key_Definitions[Ctrl_U_Arrow].Name := 'CK8';
  922.  
  923.    Key_Definitions[L_Arrow].Name      := 'K4';
  924.    Key_Definitions[Alt_L_Arrow].Name  := 'AK4';
  925.    Key_Definitions[Ctrl_L_Arrow].Name := 'CK4';
  926.  
  927.    Key_Definitions[R_Arrow].Name      := 'K6';
  928.    Key_Definitions[Alt_R_Arrow].Name  := 'AK6';
  929.    Key_Definitions[Ctrl_R_Arrow].Name := 'CK6';
  930.  
  931.    Key_Definitions[D_Arrow].Name      := 'K2';
  932.    Key_Definitions[Alt_D_Arrow].Name  := 'AK2';
  933.    Key_Definitions[Ctrl_D_Arrow].Name := 'CK2';
  934.  
  935.    Key_Definitions[Home].Name         := 'K7';
  936.    Key_Definitions[Alt_Home].Name     := 'AK7';
  937.    Key_Definitions[Ctrl_Home].Name    := 'CK7';
  938.  
  939.    Key_Definitions[PgUp].Name         := 'K9';
  940.    Key_Definitions[Alt_PgUp].Name     := 'AK9';
  941.    Key_Definitions[Ctrl_PgUp].Name    := 'CK9';
  942.  
  943.    Key_Definitions[End_Key].Name      := 'K1';
  944.    Key_Definitions[Alt_End_Key].Name  := 'AK1';
  945.    Key_Definitions[Ctrl_End_Key].Name := 'CK1';
  946.  
  947.    Key_Definitions[PgDn].Name         := 'K3';
  948.    Key_Definitions[Alt_PgDn].Name     := 'AK3';
  949.    Key_Definitions[Ctrl_PgDn].Name    := 'CK3';
  950.  
  951.    Key_Definitions[Ins_Key].Name      := 'K0';
  952.    Key_Definitions[Alt_Ins_Key].Name  := 'AK0';
  953.    Key_Definitions[Ctrl_Ins_Key].Name := 'CK0';
  954.  
  955.    Key_Definitions[Del_Key].Name      := 'K.';
  956.    Key_Definitions[Alt_Del_Key].Name  := 'AK.';
  957.    Key_Definitions[Ctrl_Del_Key].Name := 'CK.';
  958.  
  959.    Key_Definitions[Kpd_Minus].Name      := 'K-';
  960.    Key_Definitions[Alt_Kpd_Minus].Name  := 'AK-';
  961.    Key_Definitions[Ctrl_Kpd_Minus].Name := 'CK-';
  962.  
  963.    Key_Definitions[Kpd_Plus].Name       := 'K+';
  964.    Key_Definitions[Alt_Kpd_Plus].Name   := 'AK+';
  965.    Key_Definitions[Ctrl_Kpd_Plus].Name  := 'CK+';
  966.  
  967.    Key_Definitions[Kpd_5].Name          := 'K5';
  968.    Key_Definitions[Alt_Kpd_5].Name      := 'AK5';
  969.    Key_Definitions[Ctrl_Kpd_5].Name     := 'CK5';
  970.  
  971.    Key_Definitions[Alt_Enter].Name      := 'AEN';
  972.  
  973.    Key_Definitions[Alt_BS].Name         := 'ABS';
  974.    Key_Definitions[BS_Key].Name         := 'BS';
  975.    Key_Definitions[Ctrl_BS_Key].Name    := 'CBS';
  976.  
  977.    Key_Definitions[PrtSc].Name          := 'PS';
  978.    Key_Definitions[Alt_PrtSc].Name      := 'APS';
  979.    Key_Definitions[Ctrl_PrtSc].Name     := 'CPS';
  980.  
  981.    Key_Definitions[Kpd_Enter].Name      := 'KE';
  982.    Key_Definitions[Alt_Kpd_Enter].Name  := 'AKE';
  983.    Key_Definitions[Ctrl_Kpd_Enter].Name := 'CKE';
  984.  
  985.    Key_Definitions[Kpd_Star].Name       := 'K*';
  986.    Key_Definitions[Alt_Kpd_Star].Name   := 'AK*';
  987.    Key_Definitions[Ctrl_Kpd_Star].Name  := 'CK*';
  988.  
  989.    Key_Definitions[Kpd_Slash].Name      := 'K/';
  990.    Key_Definitions[Alt_Kpd_Slash].Name  := 'AK/';
  991.    Key_Definitions[Ctrl_Kpd_Slash].Name := 'CK/';
  992.  
  993.    Key_Definitions[X_U_Arrow].Name      := 'XU';
  994.    Key_Definitions[Alt_X_U_Arrow].Name  := 'AXU';
  995.    Key_Definitions[Ctrl_X_U_Arrow].Name := 'CXU';
  996.  
  997.    Key_Definitions[X_L_Arrow].Name      := 'XL';
  998.    Key_Definitions[Alt_X_L_Arrow].Name  := 'AXL';
  999.    Key_Definitions[Ctrl_X_L_Arrow].Name := 'CXL';
  1000.  
  1001.    Key_Definitions[X_R_Arrow].Name      := 'XR';
  1002.    Key_Definitions[Alt_X_R_Arrow].Name  := 'AXR';
  1003.    Key_Definitions[Ctrl_X_R_Arrow].Name := 'CXR';
  1004.  
  1005.    Key_Definitions[X_D_Arrow].Name      := 'XD';
  1006.    Key_Definitions[Alt_X_D_Arrow].Name  := 'AXD';
  1007.    Key_Definitions[Ctrl_X_D_Arrow].Name := 'CXD';
  1008.  
  1009.    Key_Definitions[X_Home].Name         := 'XH';
  1010.    Key_Definitions[Alt_X_Home].Name     := 'AXH';
  1011.    Key_Definitions[Ctrl_X_Home].Name    := 'CXH';
  1012.  
  1013.    Key_Definitions[X_PgUp].Name         := 'XPU';
  1014.    Key_Definitions[Alt_X_PgUp].Name     := 'AXPU';
  1015.    Key_Definitions[Ctrl_X_PgUp].Name    := 'CXPU';
  1016.  
  1017.    Key_Definitions[X_End_Key].Name      := 'XE';
  1018.    Key_Definitions[Alt_X_End_Key].Name  := 'AXE';
  1019.    Key_Definitions[Ctrl_X_End_Key].Name := 'CXE';
  1020.  
  1021.    Key_Definitions[X_PgDn].Name         := 'XPD';
  1022.    Key_Definitions[Alt_X_PgDn].Name     := 'AXPD';
  1023.    Key_Definitions[Ctrl_X_PgDn].Name    := 'CXPD';
  1024.  
  1025.    Key_Definitions[X_Ins_Key].Name      := 'XI';
  1026.    Key_Definitions[Alt_X_Ins_Key].Name  := 'AXI';
  1027.    Key_Definitions[Ctrl_X_Ins_Key].Name := 'CXI';
  1028.  
  1029.    Key_Definitions[X_Del_Key].Name      := 'XDE';
  1030.    Key_Definitions[Alt_X_Del_Key].Name  := 'AXDE';
  1031.    Key_Definitions[Ctrl_X_Del_Key].Name := 'CXDE';
  1032.  
  1033.                                    (* Get sort index vector of key names *)
  1034.  
  1035.  
  1036.                                    (* Define BackSpace and Ctrl-BackSpace *)
  1037.  
  1038.    Key_Definitions[BS_Key].Def      := @BS_String;
  1039.    Key_Definitions[Ctrl_BS_Key].Def := @Ctrl_BS_String;
  1040.  
  1041.                                    (* Allow extended keyboard if there    *)
  1042.  
  1043.    Extended_KeyBoard    := ( ( Mem[$40:$96] AND $10 ) <> 0 );
  1044.  
  1045.                                    (* Debugging in Kermit *)
  1046.  
  1047.    Kermit_Debug          := Debug_Mode;
  1048.  
  1049.                                    (* Allocate keyboard/consol file       *)
  1050.    Script_File_Used[0]   := TRUE;
  1051.  
  1052.    NEW( Script_File_List[0] );
  1053.  
  1054.    IF( Script_File_List[0] = NIL ) THEN
  1055.       HALT( HeapTooSmall );
  1056.  
  1057.    WITH Script_File_List[0]^ DO
  1058.       BEGIN
  1059.          ReadOnly  := FALSE;
  1060.          EOF_Seen  := FALSE;
  1061.          Opened    := TRUE;
  1062.       END;
  1063.                                    (* Other files not used yet            *)
  1064.  
  1065.    FOR I := 1 TO MaxScriptOpenFiles DO
  1066.       Script_File_Used[I] := FALSE;
  1067.  
  1068.                                    (* Initialize display actions and *)
  1069.                                    (* character sets.                *)
  1070.  
  1071.    FOR I := 1 TO MaxDisplayStates DO
  1072.       Display_Action_Ptr[I] := NIL;
  1073.  
  1074.    FOR I := 1 TO MaxDisplayCharSets DO
  1075.       Display_Char_Set_Ptr[I] := NIL;
  1076.  
  1077.    NEW( Display_Action_Ptr[1]   );
  1078.  
  1079.    IF( Display_Action_Ptr[1] = NIL ) THEN
  1080.       HALT( HeapTooSmall );
  1081.  
  1082.    NEW( Display_Char_Set_Ptr[1] );
  1083.  
  1084.    IF( Display_Char_Set_Ptr[1] = NIL ) THEN
  1085.       HALT( HeapTooSmall );
  1086.  
  1087.    NEW( Display_Char_Set_Ptr[2] );
  1088.  
  1089.    IF( Display_Char_Set_Ptr[2] = NIL ) THEN
  1090.       HALT( HeapTooSmall );
  1091.  
  1092.                                    (* Set menu box characters *)
  1093.    WITH Menu_Box_Chars DO
  1094.       BEGIN
  1095.          Top_Left_Corner     := Box_Chars[1];
  1096.          Top_Line            := Box_Chars[2];
  1097.          Top_Right_Corner    := Box_Chars[3];
  1098.          Right_Line          := Box_Chars[4];
  1099.          Bottom_Right_Corner := Box_Chars[5];
  1100.          Bottom_Line         := Box_Chars[6];
  1101.          Bottom_Left_Corner  := Box_Chars[7];
  1102.          Left_Line           := Box_Chars[8];
  1103.       END;
  1104.                                    (* Set parameter addresses  *)
  1105.    Set_Parameter_Addresses;
  1106.                                    (* Clear screen             *)
  1107.  
  1108.    Scroll( 1, Max_Screen_Line, 1, Max_Screen_Col, 0, White, Black );
  1109.    MoveToXY( 1 , 1 );
  1110.  
  1111. END   (* Set_Defaults *);
  1112.