# 2.11BSD#431 - /usr/src/ucb/tn3270/options.c

##### Functions

    OptInit           X
    OptOrder          X

       1: /*
       2:  *	Copyright 1984, 1985 by the Regents of the University of
       3:  *	California and by Gregory Glenn Minshall.
       4:  *
       5:  *	Permission to use, copy, modify, and distribute these
       6:  *	programs and their documentation for any purpose and
       7:  *	without fee is hereby granted, provided that this
       8:  *	copyright and permission appear on all copies and
       9:  *	supporting documentation, the name of the Regents of
      10:  *	the University of California not be used in advertising
      11:  *	or publicity pertaining to distribution of the programs
      12:  *	without specific prior permission, and notice be given in
      13:  *	supporting documentation that copying and distribution is
      14:  *	by permission of the Regents of the University of California
      15:  *	and by Gregory Glenn Minshall.  Neither the Regents of the
      16:  *	University of California nor Gregory Glenn Minshall make
      17:  *	representations about the suitability of this software
      18:  *	for any purpose.  It is provided "as is" without
      19:  *	express or implied warranty.
      20:  */
      21:
      22: /* this file contains the definitions, initialization, and processing of
      23: 	commands to handle the various local options (APL ON, etc.)
      24:  */
      25:
      26: #include "options.h"
      27:
      28: OptInit()
      29: {
      30:     register int i;
      31:
      32:     OptAPLmode = 0;
      33:     OptNullProcessing = 1;      /* improved null processing */
      34:     OptZonesMode = 0;       /* zones mode off */
      35:     OptEnterNL = 0;     /* regular enter/new line keys */
      36:     OptColFieldTab = 0;     /* regular column/field tab keys */
      37:     OptPacing = 1;          /* do pacing */
      38:     OptAlphaInNumeric = 0;      /* allow alpha in numeric fields */
      39:     for (i = 0; i < sizeof OptColTabs; i++) {
      40:     OptColTabs[i] = ((i%8) == 0);   /* every 8 columns */
      41:     }
      42:     OptHome = 0;
      43:     OptLeftMargin = 0;
      44:     OptWordWrap = 0;
      45: }
      46:
      47: OptOrder(pointer, count, control)
      48: char *pointer;
      49: int count;
      50: int control;
      51: {
      52:     int i, j, character, origCount;
      53:
      54:     origCount = count;
      55:
      56:     if (count == 0) {
      57:     return(0);
      58:     }
      59:     character = *pointer&0xff;
      60:     pointer++;
      61:     count--;
      62:     switch (character) {
      63:     case 0xa0:
      64:     OptAPLmode = 1;
      65:     break;
      66:     case 0x61:
      67:     OptAPLmode = 0;
      68:     break;
      69:     case 0x95:
      70:     OptNullProcessing = 0;
      71:     break;
      72:     case 0xd5:
      73:     OptNullProcessing = 1;
      74:     break;
      75:     case 0xa9:
      76:     OptZonesMode = 1;
      77:     break;
      78:     case 0xe9:
      79:     OptZonesMode = 0;
      80:     break;
      81:     case 0x85:
      82:     OptEnterNL = 1;
      83:     break;
      84:     case 0xc5:
      85:     OptEnterNL = 0;
      86:     break;
      87:     case 0x83:
      88:     OptColFieldTab = 1;
      89:     break;
      90:     case 0xc3:
      91:     OptColFieldTab = 0;
      92:     break;
      93:     case 0x97:
      94:     OptPacing = 0;
      95:     break;
      96:     case 0xd7:
      97:     OptPacing = 1;
      98:     break;
      99:     case 0xa5:
     100:     OptAlphaInNumeric = 1;
     101:     break;
     102:     case 0xe5:
     103:     OptAlphaInNumeric = 0;
     104:     break;
     105:     case 0xe3:
     106:     if (!control && count < 30) {
     107:         return(0);      /* want more! */
     108:     }
     109:     for (i = 0; i < sizeof OptColTabs; i++) {
     110:         OptColTabs[i] = 0;
     111:     }
     112:     if (!count) {
     113:         break;
     114:     }
     115:     j = (*pointer&0xff)-0x40;
     116:     count--;
     117:     pointer++;
     118:     if (j < 0 || j >= 24) {
     119:         break;
     120:     }
     121:     OptHome = j;
     122:     if (!count) {
     123:         break;
     124:     }
     125:     j = (*pointer&0xff)-0x40;
     126:     count--;
     127:     pointer++;
     128:     if (j < 0 || j >= 80) {
     129:         break;
     130:     }
     131:     OptLeftMargin = j;
     132:     if (!count) {
     133:         break;
     134:     }
     135:     i = count;
     136:     if (i > 28) {
     137:         i = 28;
     138:     }
     139:     while (i) {
     140:         j = (*pointer&0xff)-0x40;
     141:         if (j < 0 || j >= sizeof OptColTabs) {
     142:         break;
     143:         }
     144:         OptColTabs[j] = 1;
     145:         i --;
     146:         pointer++;
     147:         count--;
     148:     }
     149:     break;
     150:     case 0xa6:
     151:     OptWordWrap = 1;
     152:     break;
     153:     case 0xe6:
     154:     OptWordWrap = 0;
     155:     break;
     156:     default:
     157:     break;
     158:     }
     159:     return(origCount - count);
     160: }

#### Defined functions

OptInit defined in line 28; used 1 times

- in /usr/src/ucb/tn3270/tn3270.c line 1026

OptOrder defined in line 47; used 1 times

- in /usr/src/ucb/tn3270/datastream.c line 752

Last modified: 1994-01-01 Generated: 2016-12-26 | Generated by src2html V0.67 page hit count: 885 |