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

##### Functions

    FieldFind         X
    WhereTermAttrByte X

##### Variables

    CIABuffer         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:
      23: /* this file implements primitives to drive the screen. */
      24: #if defined(DOSCCS) && !defined(lint)
      25: static  char    sccsid[] = "@(#)screen.c	2.2	1/1/94";
      26: #endif
      27:
      28: #include <stdio.h>
      29:
      30: #include "screen.h"
      31: #include "3270.h"
      32:
      33: char CIABuffer[64] = {
      34:     0x40, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
      35:     0xc8, 0xc9, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
      36:     0x50, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7,
      37:     0xd8, 0xd9, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
      38:     0x60, 0x61, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7,
      39:     0xe8, 0xe9, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
      40:     0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7,
      41:     0xf8, 0xf9, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f
      42: };
      43:
      44: /* These are the routines compiled if we are using a parallel array to hold
      45: 	the field information...
      46:  */
      47:
      48: /* What is the screen address of the attribute byte for the terminal */
      49:
      50: WhereTermAttrByte(p)
      51: register int    p;
      52: {
      53:     register int i;
      54:
      55:     i = p;
      56:
      57:     do {
      58:     if (TermIsStartField(i)) {
      59:         return(i);
      60:     }
      61:     i = ScreenDec(i);
      62:     } while (i != p);
      63:
      64:     return(LowestScreen()); /* unformatted screen... */
      65: }
      66:
      67: /* What we know is that table is of size SCREENSIZE */
      68:
      69: FieldFind(table, position, failure)
      70: register char *table;       /* which table of bytes to use */
      71: register int position;      /* what position to start from */
      72: int failure;            /* if unformatted, what value to return */
      73: {
      74:     register int ourp;
      75:
      76:     ourp = position + 1 + bskip(table+position+1, SCREENSIZE-position-1, 0);
      77:     if (ourp < SCREENSIZE) {
      78:     return(ourp);
      79:     }
      80:     /* No fields in table after position.  Look for fields from beginning
      81:      * of table.
      82:      */
      83:     ourp = bskip(table, position+1, 0);
      84:     if (ourp <= position) {
      85:     return(ourp);
      86:     }
      87:     return(failure);
      88: }

#### Defined functions

FieldFind defined in line 69; used 2 times

- in /usr/src/ucb/tn3270/screen.h line 54-56(2)

WhereTermAttrByte defined in line 50; used 1 times

- in /usr/src/ucb/tn3270/screen.h line 64

#### Defined variables

CIABuffer defined in line 33; used 3 times

- in /usr/src/ucb/tn3270/screen.h line 46-48(3)

sccsid defined in line 25; never used

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