home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / pub / ucsdappleii / kermglob.text < prev    next >
Text File  |  2020-01-01  |  5KB  |  145 lines

  1. (* >>>> KERMGLOB.TEXT  ************************************************)
  2.  
  3. (*$S+*)
  4. (*$I-*)
  5. (*$R-*)
  6. (*$V-*)
  7.  
  8. UNIT kermglob;   INTRINSIC CODE 16   DATA  17;
  9.  
  10. INTERFACE
  11.  
  12.   CONST version = 'RUG/PT 1.0';
  13.         cs_file = 'CONSOLE:';
  14.         pr_file = 'PRINTER:';
  15.         setup_file = '*KERMIT.DATA';
  16.         sys_misc_file = '*SYSTEM.MISCINFO';
  17.         blk_size = 512;
  18.         page_size = 1024;
  19.         outport = 8;        (* output port #  remout*)
  20.         inport = 7;         (* input  port #  remin *)
  21.         keyport = 2;
  22.         consol  = 1;
  23.         line_printer = 6;
  24.         bell = 7;           (* ASCII bell *)
  25.         linefeed = 10;      (* ASCII line feed *)
  26.         formfeed = 12;      (* ASCII formfeed *)
  27.         backspace = 8;      (* ASCII backspace *)
  28.         del = 127;          (* ASCII delete char *)
  29.         xdle = 16;          (* ASCII DLE *)
  30.                             (* space compression prefix for p_system *)
  31.         eoline = 13;        (* end of line character  *)
  32.         at_eof = -1;        (* value to return if at eof *)
  33.         def_maxpack = 94;   (* default max packet size I can handle *)
  34.         max_buf = 96;       (* max packetsize(94) + 2 *)
  35.  
  36.     (* screen control information *)
  37.     (* console line on which to put specified info *)
  38.  
  39.         title_line = 0;
  40.         status_line = 2;
  41.         packet_line = 3;
  42.         retry_line = 5;
  43.         file_line = 7;
  44.         error_line = 8;
  45.         debug_line = 10;
  46.         pack_line = 13;
  47.         ack_line = 17;
  48.         prompt_line = 23;
  49.     (* position on line to put info *)
  50.         statuspos = 36;
  51.         packet_pos = 19;
  52.         retry_pos = 17;
  53.         file_pos = 11;
  54.  
  55. (*-------------------------------------------------------------------*)
  56.  
  57. TYPE packettype = packed array[ 0..maxbuf ] of char;
  58.  
  59.      parity_type = (nopar, oddpar, evenpar, markpar, spacepar);
  60.  
  61.      statustype = (null, at_eol, unconfirmed, parm_expected, ambiguous,
  62.                    unrec, fn_expected, pn_expected, ch_expected, num_expected);
  63.  
  64.      vocab = (nullsym, allsym, baudsym, consym, debugsym, delsym, dirsym,
  65.               emulatesym, eolnsym, escsym, evensym, exitsym, filewarnsym,
  66.               helpsym, ibmsym, localsym, marksym, maxtrysym, maxpsym, nofeedsym,
  67.               nonesym, oddsym, offsym, onsym, paritysym, pdirsym, phelpsym,
  68.               prefixsym, pshowsym, quitsym, recsym, rejectsym, sendsym,
  69.               setsym, showsym, spacesym, stopbsym, textfsym, timeoutsym,
  70.               wordlensym, xoffsym, xoffwaitsym, xonsym);
  71.  
  72.      scrcommands = (sc_up, sc_right, sc_clreol, sc_clreos, sc_home,
  73.                     sc_delchar, sc_clrall, sc_clrline, sc_left, sc_down);
  74.  
  75.      rem_stat_rec = (all_sp_char, stop_flush_break_sp_char, scr_40_sp_char,
  76.                      no_sp_char, mask_msbit_remin, no_mask_msbit_remin);
  77.  
  78.      cntrl_word_rec = packed record
  79.                          channel    : ( out, inp );
  80.                          purpose    : ( status, control );
  81.                          reserved   :   0..2047  ;
  82.                          special_req: ( none, rw_req );
  83.                          filler     :   0..3 ;
  84.                       end;
  85.  
  86.      acia_type   =  ( unknown, A6551, A6850, Fut1, Fut2, Fut3 );
  87.  
  88. (*--------------------------------------------------------------------*)
  89.  
  90. VAR rec_pkt, packet  : packet_type;
  91.  
  92.     noun, verb, adj: vocab;
  93.  
  94.     vocablist: ARRAY[vocab] OF STRING;
  95.  
  96.     err_string, prefix_vol, newprefix_vol, xfilename, line: STRING;
  97.  
  98.     newescchar, escchar, bstodel, newxonchar, xonchar, newxoffchar, xoffchar,
  99.     newxeolchar, xeolchar, eolnchar, sohchar, mypchar, padchar, quote,
  100.     currstate, prefix, rlf, ndfs, eraseol, eraseos, home, delchar, clrscreen,
  101.     clrline, backsp, lf, cr, ff, xdle_char, int_key, my_quote : CHAR;
  102.  
  103.     expected: SET OF vocab;
  104.     ctl_set, ctlq_set : SET OF CHAR;
  105.  
  106.     my_time, max_try, init_try,  data_bit, stop_bit, baud, newdbit, newstopbit,
  107.     newbaud, xoffwtime, newxoffwait, newtimeout, newmaxtry, vol_num, crpos,
  108.     bufpos, bufend, maxpack,mypad, pad, xtime, errplen, iostatus,
  109.     acia_cntrl_reg, acia_comm_reg, temp, new_maxpack, spsiz, max1_data,
  110.     max2_data : INTEGER;
  111.  
  112.     def : FILE OF INTEGER;   (* setup file at init  *)
  113.     p, pr : INTERACTIVE; (* printer or console file *)
  114.     untyped_f, apple_file, rec_file : FILE;
  115.  
  116.     reject_cntrl_char, fwarn, ibm, half_duplex, debug, pr_out,
  117.     text_file, print_enable, no_ffeed,  send_ok, rec_ok, dle_flag, emulate
  118.      : BOOLEAN;
  119.  
  120.     acia_implem : acia_type;
  121.  
  122.     new_par, parity : parity_type;
  123.  
  124.     control_word : cntrl_word_rec;
  125.  
  126.     no_sfb_char, sfb_char : rem_stat_rec;
  127.  
  128.     prefixed : ARRAY[scr_commands] OF BOOLEAN;
  129.  
  130.     filebuf: PACKED ARRAY[1..page_size] OF CHAR;
  131.  
  132. (*-----------------------------------------------------------------------*)
  133.  
  134. PROCEDURE Dummy;
  135.  
  136. IMPLEMENTATION
  137.  
  138. PROCEDURE dummy;
  139. begin
  140. end;
  141.  
  142. BEGIN
  143. END. { kermglob }
  144.  
  145.